import * as check from "../../../../../generated/sync/check/array-of/maybe/array-like"; import {AssertError} from "../../../../../sync/error/AssertError"; export function assertArrayOfMaybeArrayLike (name : string, mixed : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { const error = check.checkArrayOfMaybeArrayLike(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertArrayOfMaybeMinLength (name : string, mixed : any, min : number) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { const error = check.checkArrayOfMaybeMinLength(mixed, min); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, min); } } export function assertArrayOfMaybeMinLengthHandler (min : number) : (name : string, mixed : any) => (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { return (name : string, mixed : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never => { return assertArrayOfMaybeMinLength(name, mixed, min); }; } export function assertArrayOfMaybeMaxLength (name : string, mixed : any, max : number) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { const error = check.checkArrayOfMaybeMaxLength(mixed, max); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, max); } } export function assertArrayOfMaybeMaxLengthHandler (max : number) : (name : string, mixed : any) => (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { return (name : string, mixed : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never => { return assertArrayOfMaybeMaxLength(name, mixed, max); }; } export function assertArrayOfMaybeLength (name : string, mixed : any, args : { min? : number, max? : number }) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { const error = check.checkArrayOfMaybeLength(mixed, args); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, args); } } export function assertArrayOfMaybeLengthHandler (args : { min? : number, max? : number }) : (name : string, mixed : any) => (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { return (name : string, mixed : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never => { return assertArrayOfMaybeLength(name, mixed, args); }; } export function assertArrayOfMaybeNonEmpty (name : string, mixed : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { const error = check.checkArrayOfMaybeNonEmpty(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertArrayOfMaybeContains (name : string, mixed : any, x : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { const error = check.checkArrayOfMaybeContains(mixed, x); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, x); } } export function assertArrayOfMaybeContainsHandler (x : any) : (name : string, mixed : any) => (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { return (name : string, mixed : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never => { return assertArrayOfMaybeContains(name, mixed, x); }; } export function assertArrayOfMaybeNoDuplicate (name : string, mixed : any) : (((null|undefined|({ [index : number] : any, length : number, indexOf : (item : any) => number }))|null|undefined)[])|never { const error = check.checkArrayOfMaybeNoDuplicate(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } }