Skip to main content

Interface: ArrayValidator<T, I>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:21

Extends​

Type Parameters​

Type ParameterDefault type
T extends unknown[]-
IT[number]

Properties​

constraints​

protected constraints: readonly IConstraint<T, T>[] = []

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:19

Inherited from​

BaseValidator.constraints


description?​

optional description: string

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:16

Inherited from​

BaseValidator.description


isValidationEnabled​

protected isValidationEnabled: null | boolean | () => boolean = null

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:20

Inherited from​

BaseValidator.isValidationEnabled


parent?​

protected optional parent: object

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:18

Inherited from​

BaseValidator.parent


validatorOptions​

protected validatorOptions: ValidatorOptions

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:17

Inherited from​

BaseValidator.validatorOptions

Accessors​

shouldRunConstraints​

Get Signature​

get protected shouldRunConstraints(): boolean

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:143

Returns​

boolean

Inherited from​

BaseValidator.shouldRunConstraints

Methods​

addConstraint()​

protected addConstraint(constraint: IConstraint<T>, validatorOptions: ValidatorOptions): this

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:155

Parameters​

ParameterType
constraintIConstraint<T>
validatorOptionsValidatorOptions

Returns​

this

Inherited from​

BaseValidator.addConstraint


array()​

array(options: ValidatorOptions): ArrayValidator<T[]>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:44

Parameters​

ParameterType
optionsValidatorOptions

Returns​

ArrayValidator<T[]>

Inherited from​

BaseValidator.array


clone()​

protected clone(): this

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:93

Returns​

this

Overrides​

BaseValidator.clone


default()​

default(value: Exclude<T, undefined> | () => Exclude<T, undefined>, options: ValidatorOptions): DefaultValidator<Exclude<T, undefined>>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:81

Parameters​

ParameterType
valueExclude<T, undefined> | () => Exclude<T, undefined>
optionsValidatorOptions

Returns​

DefaultValidator<Exclude<T, undefined>>

Inherited from​

BaseValidator.default


describe()​

describe(description: string): this

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:96

Parameters​

ParameterType
descriptionstring

Returns​

this

Inherited from​

BaseValidator.describe


getValidationEnabled()​

getValidationEnabled(): null | boolean

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:139

Returns​

null | boolean

Inherited from​

BaseValidator.getValidationEnabled


handle()​

protected handle(values: unknown): Result<T, ValidationError | CombinedPropertyError>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:97

Parameters​

ParameterType
valuesunknown

Returns​

Result<T, ValidationError | CombinedPropertyError>

Overrides​

BaseValidator.handle


is()​

is<R>(value: unknown): value is R

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:124

Type Parameters​

Type ParameterDefault type
R extends unknown[]T

Parameters​

ParameterType
valueunknown

Returns​

value is R

Inherited from​

BaseValidator.is


lengthEqual()​

lengthEqual<N>(length: N, options: ValidatorOptions): ArrayValidator<[...Tuple<I, N>[]]>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:57

Type Parameters​

Type Parameter
N extends number

Parameters​

ParameterType
lengthN
optionsValidatorOptions

Returns​

ArrayValidator<[...Tuple<I, N>[]]>


lengthGreaterThan()​

lengthGreaterThan<N>(length: N, options: ValidatorOptions): ArrayValidator<[...Tuple<I, N>[], I, ...T[]]>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:43

Type Parameters​

Type Parameter
N extends number

Parameters​

ParameterType
lengthN
optionsValidatorOptions

Returns​

ArrayValidator<[...Tuple<I, N>[], I, ...T[]]>


lengthGreaterThanOrEqual()​

lengthGreaterThanOrEqual<N>(length: N, options: ValidatorOptions): ArrayValidator<[...Tuple<I, N>[], ...T[]]>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:50

Type Parameters​

Type Parameter
N extends number

Parameters​

ParameterType
lengthN
optionsValidatorOptions

Returns​

ArrayValidator<[...Tuple<I, N>[], ...T[]]>


lengthLessThan()​

lengthLessThan<N>(length: N, options: ValidatorOptions): ArrayValidator<ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, N>[]]>>>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:29

Type Parameters​

Type Parameter
N extends number

Parameters​

ParameterType
lengthN
optionsValidatorOptions

Returns​

ArrayValidator<ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, N>[]]>>>


lengthLessThanOrEqual()​

lengthLessThanOrEqual<N>(length: N, options: ValidatorOptions): ArrayValidator<ExpandSmallerTuples<[...Tuple<I, N>[]]>>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:36

Type Parameters​

Type Parameter
N extends number

Parameters​

ParameterType
lengthN
optionsValidatorOptions

Returns​

ArrayValidator<ExpandSmallerTuples<[...Tuple<I, N>[]]>>


lengthNotEqual()​

lengthNotEqual<N>(length: N, options: ValidatorOptions): ArrayValidator<[...Tuple<I, N>[]]>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:61

Type Parameters​

Type Parameter
N extends number

Parameters​

ParameterType
lengthN
optionsValidatorOptions

Returns​

ArrayValidator<[...Tuple<I, N>[]]>


lengthRange()​

lengthRange<S, E>(start: S, endBefore: E, options: ValidatorOptions): ArrayValidator<Exclude<ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, E>[]]>>, ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, S>[]]>>>>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:65

Type Parameters​

Type Parameter
S extends number
E extends number

Parameters​

ParameterType
startS
endBeforeE
optionsValidatorOptions

Returns​

ArrayValidator<Exclude<ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, E>[]]>>, ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, S>[]]>>>>


lengthRangeExclusive()​

lengthRangeExclusive<S, E>(startAfter: S, endBefore: E, options: ValidatorOptions): ArrayValidator<Exclude<ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, E>[]]>>, ExpandSmallerTuples<[...Tuple<T, S>[]]>>>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:81

Type Parameters​

Type Parameter
S extends number
E extends number

Parameters​

ParameterType
startAfterS
endBeforeE
optionsValidatorOptions

Returns​

ArrayValidator<Exclude<ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, E>[]]>>, ExpandSmallerTuples<[...Tuple<T, S>[]]>>>


lengthRangeInclusive()​

lengthRangeInclusive<S, E>(startAt: S, endAt: E, options: ValidatorOptions): ArrayValidator<Exclude<ExpandSmallerTuples<[...Tuple<I, E>[]]>, ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, S>[]]>>>>

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:73

Type Parameters​

Type Parameter
S extends number
E extends number

Parameters​

ParameterType
startAtS
endAtE
optionsValidatorOptions

Returns​

ArrayValidator<Exclude<ExpandSmallerTuples<[...Tuple<I, E>[]]>, ExpandSmallerTuples<UnshiftTuple<[...Tuple<I, S>[]]>>>>


nullable()​

nullable(options: ValidatorOptions): UnionValidator<null | T>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:36

Parameters​

ParameterType
optionsValidatorOptions

Returns​

UnionValidator<null | T>

Inherited from​

BaseValidator.nullable


nullish()​

nullish(options: ValidatorOptions): UnionValidator<undefined | null | T>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:40

Parameters​

ParameterType
optionsValidatorOptions

Returns​

UnionValidator<undefined | null | T>

Inherited from​

BaseValidator.nullish


optional()​

optional(options: ValidatorOptions): UnionValidator<undefined | T>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:32

Parameters​

ParameterType
optionsValidatorOptions

Returns​

UnionValidator<undefined | T>

Inherited from​

BaseValidator.optional


or()​

or<O>(...predicates: readonly BaseValidator<O>[]): UnionValidator<T | O>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:52

Type Parameters​

Type Parameter
O

Parameters​

ParameterType
...predicatesreadonly BaseValidator<O>[]

Returns​

UnionValidator<T | O>

Inherited from​

BaseValidator.or


parse()​

parse<R>(value: unknown): R

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:114

Type Parameters​

Type ParameterDefault type
R extends unknown[]T

Parameters​

ParameterType
valueunknown

Returns​

R

Inherited from​

BaseValidator.parse


reshape()​

Call Signature​

reshape(cb: (input: T) => Result<T>, options?: ValidatorOptions): this

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:67

Parameters​
ParameterType
cb(input: T) => Result<T>
options?ValidatorOptions
Returns​

this

Inherited from​

BaseValidator.reshape

Call Signature​

reshape<R, O>(cb: (input: T) => R, options?: ValidatorOptions): BaseValidator<O>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:68

Type Parameters​
Type ParameterDefault type
R extends Result<unknown, Error>-
OInferResultType<R>
Parameters​
ParameterType
cb(input: T) => R
options?ValidatorOptions
Returns​

BaseValidator<O>

Inherited from​

BaseValidator.reshape


run()​

run(value: unknown): Result<T, BaseError>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:102

Parameters​

ParameterType
valueunknown

Returns​

Result<T, BaseError>

Inherited from​

BaseValidator.run


set()​

set(options: ValidatorOptions): SetValidator<T>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:48

Parameters​

ParameterType
optionsValidatorOptions

Returns​

SetValidator<T>

Inherited from​

BaseValidator.set


setParent()​

setParent(parent: object): this

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:27

Parameters​

ParameterType
parentobject

Returns​

this

Inherited from​

BaseValidator.setParent


setValidationEnabled()​

setValidationEnabled(isValidationEnabled: null | boolean | () => boolean): this

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:133

Sets if the validator should also run constraints or just do basic checks.

Parameters​

ParameterTypeDescription
isValidationEnablednull | boolean | () => booleanWhether this validator should be enabled or disabled. You can pass boolean or a function returning boolean which will be called just before parsing. Set to null to go off of the global configuration.

Returns​

this

Inherited from​

BaseValidator.setValidationEnabled


transform()​

Call Signature​

transform(cb: (value: T) => T, options?: ValidatorOptions): this

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:56

Parameters​
ParameterType
cb(value: T) => T
options?ValidatorOptions
Returns​

this

Inherited from​

BaseValidator.transform

Call Signature​

transform<O>(cb: (value: T) => O, options?: ValidatorOptions): BaseValidator<O>

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:57

Type Parameters​
Type Parameter
O
Parameters​
ParameterType
cb(value: T) => O
options?ValidatorOptions
Returns​

BaseValidator<O>

Inherited from​

BaseValidator.transform


unique()​

unique(options: ValidatorOptions): this

Defined in: projects/shapeshift/src/validators/ArrayValidator.ts:89

Parameters​

ParameterType
optionsValidatorOptions

Returns​

this


when()​

when<Key, This>(key: Key, options: WhenOptions<This, Key>, validatorOptions?: ValidatorOptions): this

Defined in: projects/shapeshift/src/validators/BaseValidator.ts:88

Type Parameters​

Type ParameterDefault type
Key extends WhenKey-
This extends BaseValidator<any>ArrayValidator<T, I>

Parameters​

ParameterType
keyKey
optionsWhenOptions<This, Key>
validatorOptions?ValidatorOptions

Returns​

this

Inherited from​

BaseValidator.when