import * as check from "../../../../../generated/sync/check/array-of/dictionary-of/array"; import {AssertError} from "../../../../../sync/error/AssertError"; export function assertArrayOfDictionaryOfArray (name : string, mixed : any) : (({ [key : string] : any[] })[])|never { const error = check.checkArrayOfDictionaryOfArray(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertArrayOfDictionaryOfMinLength (name : string, mixed : any, min : number) : (({ [key : string] : any[] })[])|never { const error = check.checkArrayOfDictionaryOfMinLength(mixed, min); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, min); } } export function assertArrayOfDictionaryOfMinLengthHandler (min : number) : (name : string, mixed : any) => (({ [key : string] : any[] })[])|never { return (name : string, mixed : any) : (({ [key : string] : any[] })[])|never => { return assertArrayOfDictionaryOfMinLength(name, mixed, min); }; } export function assertArrayOfDictionaryOfMaxLength (name : string, mixed : any, max : number) : (({ [key : string] : any[] })[])|never { const error = check.checkArrayOfDictionaryOfMaxLength(mixed, max); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, max); } } export function assertArrayOfDictionaryOfMaxLengthHandler (max : number) : (name : string, mixed : any) => (({ [key : string] : any[] })[])|never { return (name : string, mixed : any) : (({ [key : string] : any[] })[])|never => { return assertArrayOfDictionaryOfMaxLength(name, mixed, max); }; } export function assertArrayOfDictionaryOfLength (name : string, mixed : any, args : { min? : number, max? : number }) : (({ [key : string] : any[] })[])|never { const error = check.checkArrayOfDictionaryOfLength(mixed, args); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, args); } } export function assertArrayOfDictionaryOfLengthHandler (args : { min? : number, max? : number }) : (name : string, mixed : any) => (({ [key : string] : any[] })[])|never { return (name : string, mixed : any) : (({ [key : string] : any[] })[])|never => { return assertArrayOfDictionaryOfLength(name, mixed, args); }; } export function assertArrayOfDictionaryOfNonEmpty (name : string, mixed : any) : (({ [key : string] : any[] })[])|never { const error = check.checkArrayOfDictionaryOfNonEmpty(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertArrayOfDictionaryOfContains (name : string, mixed : any, x : any) : (({ [key : string] : any[] })[])|never { const error = check.checkArrayOfDictionaryOfContains(mixed, x); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, x); } } export function assertArrayOfDictionaryOfContainsHandler (x : any) : (name : string, mixed : any) => (({ [key : string] : any[] })[])|never { return (name : string, mixed : any) : (({ [key : string] : any[] })[])|never => { return assertArrayOfDictionaryOfContains(name, mixed, x); }; } export function assertArrayOfDictionaryOfNoDuplicate (name : string, mixed : any) : (({ [key : string] : any[] })[])|never { const error = check.checkArrayOfDictionaryOfNoDuplicate(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } }