Class: ArrayValidator<T, I>
Type parameters
Name | Type |
---|---|
T | extends unknown [] |
I | T [number ] |
Hierarchy
-
↳
ArrayValidator
Constructors
constructor
• new ArrayValidator<T
, I
>(validator
, constraints?
): ArrayValidator
<T
, I
>
Type parameters
Name | Type |
---|---|
T | extends unknown [] |
I | T [number ] |
Parameters
Name | Type | Default value |
---|---|---|
validator | BaseValidator <I > | undefined |
constraints | readonly IConstraint <T , T >[] | [] |
Returns
ArrayValidator
<T
, I
>
Overrides
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:24
Properties
constraints
• Protected
constraints: readonly IConstraint
<T
, T
>[] = []
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:17
description
• Optional
description: string
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:15
isValidationEnabled
• Protected
isValidationEnabled: null
| boolean
| () => boolean
= null
Inherited from
BaseValidator.isValidationEnabled
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:18
parent
• Protected
Optional
parent: object
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:16
validator
• Private
Readonly
validator: BaseValidator
<I
>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:22
Accessors
array
• get
array(): ArrayValidator
<T
[], T
>
Returns
ArrayValidator
<T
[], T
>
Inherited from
BaseValidator.array
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:41
nullable
• get
nullable(): UnionValidator
<null
| T
>
Returns
UnionValidator
<null
| T
>
Inherited from
BaseValidator.nullable
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:33
nullish
• get
nullish(): UnionValidator
<undefined
| null
| T
>
Returns
UnionValidator
<undefined
| null
| T
>
Inherited from
BaseValidator.nullish
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:37
optional
• get
optional(): UnionValidator
<undefined
| T
>
Returns
UnionValidator
<undefined
| T
>
Inherited from
BaseValidator.optional
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:29
set
• get
set(): SetValidator
<T
>
Returns
SetValidator
<T
>
Inherited from
BaseValidator.set
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:45
shouldRunConstraints
• get
shouldRunConstraints(): boolean
Returns
boolean
Inherited from
BaseValidator.shouldRunConstraints
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:120
unique
• get
unique(): this
Returns
this
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:74
Methods
addConstraint
▸ addConstraint(constraint
): ArrayValidator
<T
, I
>
Parameters
Name | Type |
---|---|
constraint | IConstraint <T , T > |
Returns
ArrayValidator
<T
, I
>
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:132
clone
▸ clone(): ArrayValidator
<T
, I
>
Returns
ArrayValidator
<T
, I
>
Overrides
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:78
default
▸ default(value
): DefaultValidator
<Exclude
<T
, undefined
>>
Parameters
Name | Type |
---|---|
value | Exclude <T , undefined > | () => Exclude <T , undefined > |
Returns
DefaultValidator
<Exclude
<T
, undefined
>>
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:65
describe
▸ describe(description
): ArrayValidator
<T
, I
>
Parameters
Name | Type |
---|---|
description | string |
Returns
ArrayValidator
<T
, I
>
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:73
getValidationEnabled
▸ getValidationEnabled(): null
| boolean
Returns
null
| boolean
Inherited from
BaseValidator.getValidationEnabled
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:116
handle
▸ handle(values
): Result
<T
, ValidationError
| CombinedPropertyError
>
Parameters
Name | Type |
---|---|
values | unknown |
Returns
Result
<T
, ValidationError
| CombinedPropertyError
>
Overrides
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:82
is
▸ is<R
>(value
): value is R
Type parameters
Name | Type |
---|---|
R | extends unknown [] = T |
Parameters
Name | Type |
---|---|
value | unknown |
Returns
value is R
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:101
lengthEqual
▸ lengthEqual<N
>(length
): ArrayValidator
<[...Tuple<I, N>[]], [...Tuple<I, N>[]][number
]>
Type parameters
Name | Type |
---|---|
N | extends number |
Parameters
Name | Type |
---|---|
length | N |
Returns
ArrayValidator
<[...Tuple<I, N>[]], [...Tuple<I, N>[]][number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:45
lengthGreaterThan
▸ lengthGreaterThan<N
>(length
): ArrayValidator
<[...Tuple<I, N>[], I
, ...T[]], [...Tuple<I, N>[], I
, ...T[]][number
]>
Type parameters
Name | Type |
---|---|
N | extends number |
Parameters
Name | Type |
---|---|
length | N |
Returns
ArrayValidator
<[...Tuple<I, N>[], I
, ...T[]], [...Tuple<I, N>[], I
, ...T[]][number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:37
lengthGreaterThanOrEqual
▸ lengthGreaterThanOrEqual<N
>(length
): ArrayValidator
<[...Tuple<I, N>[], ...T[]], [...Tuple<I, N>[], ...T[]][number
]>
Type parameters
Name | Type |
---|---|
N | extends number |
Parameters
Name | Type |
---|---|
length | N |
Returns
ArrayValidator
<[...Tuple<I, N>[], ...T[]], [...Tuple<I, N>[], ...T[]][number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:41
lengthLessThan
▸ lengthLessThan<N
>(length
): ArrayValidator
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, N>[]]>>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, N>[]]>>[number
]>
Type parameters
Name | Type |
---|---|
N | extends number |
Parameters
Name | Type |
---|---|
length | N |
Returns
ArrayValidator
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, N>[]]>>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, N>[]]>>[number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:29
lengthLessThanOrEqual
▸ lengthLessThanOrEqual<N
>(length
): ArrayValidator
<ExpandSmallerTuples
<[...Tuple<I, N>[]]>, ExpandSmallerTuples
<[...Tuple<I, N>[]]>[number
]>
Type parameters
Name | Type |
---|---|
N | extends number |
Parameters
Name | Type |
---|---|
length | N |
Returns
ArrayValidator
<ExpandSmallerTuples
<[...Tuple<I, N>[]]>, ExpandSmallerTuples
<[...Tuple<I, N>[]]>[number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:33
lengthNotEqual
▸ lengthNotEqual(length
): ArrayValidator
<[...T[]], [...T[]][number
]>
Parameters
Name | Type |
---|---|
length | number |
Returns
ArrayValidator
<[...T[]], [...T[]][number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:49
lengthRange
▸ lengthRange<S
, E
>(start
, endBefore
): ArrayValidator
<Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>, Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>[number
]>
Type parameters
Name | Type |
---|---|
S | extends number |
E | extends number |
Parameters
Name | Type |
---|---|
start | S |
endBefore | E |
Returns
ArrayValidator
<Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>, Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>[number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:53
lengthRangeExclusive
▸ lengthRangeExclusive<S
, E
>(startAfter
, endBefore
): ArrayValidator
<Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<[...Tuple<T, S>[]]>>, Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<[...Tuple<T, S>[]]>>[number
]>
Type parameters
Name | Type |
---|---|
S | extends number |
E | extends number |
Parameters
Name | Type |
---|---|
startAfter | S |
endBefore | E |
Returns
ArrayValidator
<Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<[...Tuple<T, S>[]]>>, Exclude
<ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, E>[]]>>, ExpandSmallerTuples
<[...Tuple<T, S>[]]>>[number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:67
lengthRangeInclusive
▸ lengthRangeInclusive<S
, E
>(startAt
, endAt
): ArrayValidator
<Exclude
<ExpandSmallerTuples
<[...Tuple<I, E>[]]>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>, Exclude
<ExpandSmallerTuples
<[...Tuple<I, E>[]]>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>[number
]>
Type parameters
Name | Type |
---|---|
S | extends number |
E | extends number |
Parameters
Name | Type |
---|---|
startAt | S |
endAt | E |
Returns
ArrayValidator
<Exclude
<ExpandSmallerTuples
<[...Tuple<I, E>[]]>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>, Exclude
<ExpandSmallerTuples
<[...Tuple<I, E>[]]>, ExpandSmallerTuples
<UnshiftTuple
<[...Tuple<I, S>[]]>>>[number
]>
Defined in
projects/shapeshift/src/validators/ArrayValidator.ts:60
or
▸ or<O
>(...predicates
): UnionValidator
<T
| O
>
Type parameters
Name |
---|
O |
Parameters
Name | Type |
---|---|
...predicates | readonly BaseValidator <O >[] |
Returns
UnionValidator
<T
| O
>
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:49
parse
▸ parse<R
>(value
): R
Type parameters
Name | Type |
---|---|
R | extends unknown [] = T |
Parameters
Name | Type |
---|---|
value | unknown |
Returns
R
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:91
reshape
▸ reshape(cb
): ArrayValidator
<T
, I
>
Parameters
Name | Type |
---|---|
cb | (input : T ) => Result <T , Error > |
Returns
ArrayValidator
<T
, I
>
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:59
▸ reshape<R
, O
>(cb
): BaseValidator
<O
>
Type parameters
Name | Type |
---|---|
R | extends Result <unknown , Error > |
O | InferResultType <R > |
Parameters
Name | Type |
---|---|
cb | (input : T ) => R |
Returns
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:60
run
▸ run(value
): Result
<T
, BaseError
>
Parameters
Name | Type |
---|---|
value | unknown |
Returns
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:79
setParent
▸ setParent(parent
): ArrayValidator
<T
, I
>
Parameters
Name | Type |
---|---|
parent | object |
Returns
ArrayValidator
<T
, I
>
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:24
setValidationEnabled
▸ setValidationEnabled(isValidationEnabled
): ArrayValidator
<T
, I
>
Sets if the validator should also run constraints or just do basic checks.
Parameters
Name | Type | Description |
---|---|---|
isValidationEnabled | null | boolean | () => boolean | Whether 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
ArrayValidator
<T
, I
>
Inherited from
BaseValidator.setValidationEnabled
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:110
transform
▸ transform(cb
): ArrayValidator
<T
, I
>
Parameters
Name | Type |
---|---|
cb | (value : T ) => T |
Returns
ArrayValidator
<T
, I
>
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:53
▸ transform<O
>(cb
): BaseValidator
<O
>
Type parameters
Name |
---|
O |
Parameters
Name | Type |
---|---|
cb | (value : T ) => O |
Returns
Inherited from
Defined in
projects/shapeshift/src/validators/BaseValidator.ts:54
when
▸ when<Key
, This
>(key
, options
): ArrayValidator
<T
, I
>
Type parameters
Name | Type |
---|---|
Key | extends WhenKey |
This | extends BaseValidator <any > = ArrayValidator <T , I > |
Parameters
Name | Type |
---|---|
key | Key |
options | WhenOptions <This , Key > |
Returns
ArrayValidator
<T
, I
>