import * as check from "../../../../../generated/sync/check/maybe/array-of/array"; import {AssertError} from "../../../../../sync/error/AssertError"; export function assertMaybeArrayOfArray (name : string, mixed : any) : (null|undefined|((any[])[]))|never { const error = check.checkMaybeArrayOfArray(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertMaybeArrayOfMinLength (name : string, mixed : any, min : number) : (null|undefined|((any[])[]))|never { const error = check.checkMaybeArrayOfMinLength(mixed, min); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, min); } } export function assertMaybeArrayOfMinLengthHandler (min : number) : (name : string, mixed : any) => (null|undefined|((any[])[]))|never { return (name : string, mixed : any) : (null|undefined|((any[])[]))|never => { return assertMaybeArrayOfMinLength(name, mixed, min); }; } export function assertMaybeArrayOfMaxLength (name : string, mixed : any, max : number) : (null|undefined|((any[])[]))|never { const error = check.checkMaybeArrayOfMaxLength(mixed, max); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, max); } } export function assertMaybeArrayOfMaxLengthHandler (max : number) : (name : string, mixed : any) => (null|undefined|((any[])[]))|never { return (name : string, mixed : any) : (null|undefined|((any[])[]))|never => { return assertMaybeArrayOfMaxLength(name, mixed, max); }; } export function assertMaybeArrayOfLength (name : string, mixed : any, args : { min? : number, max? : number }) : (null|undefined|((any[])[]))|never { const error = check.checkMaybeArrayOfLength(mixed, args); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, args); } } export function assertMaybeArrayOfLengthHandler (args : { min? : number, max? : number }) : (name : string, mixed : any) => (null|undefined|((any[])[]))|never { return (name : string, mixed : any) : (null|undefined|((any[])[]))|never => { return assertMaybeArrayOfLength(name, mixed, args); }; } export function assertMaybeArrayOfNonEmpty (name : string, mixed : any) : (null|undefined|((any[])[]))|never { const error = check.checkMaybeArrayOfNonEmpty(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertMaybeArrayOfContains (name : string, mixed : any, x : any) : (null|undefined|((any[])[]))|never { const error = check.checkMaybeArrayOfContains(mixed, x); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, x); } } export function assertMaybeArrayOfContainsHandler (x : any) : (name : string, mixed : any) => (null|undefined|((any[])[]))|never { return (name : string, mixed : any) : (null|undefined|((any[])[]))|never => { return assertMaybeArrayOfContains(name, mixed, x); }; } export function assertMaybeArrayOfNoDuplicate (name : string, mixed : any) : (null|undefined|((any[])[]))|never { const error = check.checkMaybeArrayOfNoDuplicate(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } }