import * as check from "../../../../../../generated/sync/check/maybe/dictionary-of/generic/mixed"; import {AssertError} from "../../../../../../sync/error/AssertError"; export function assertMaybeDictionaryOfOneOf (name : string, mixed : any, arr : T[]) : (null|undefined|({ [key : string] : T }))|never { const error = check.checkMaybeDictionaryOfOneOf(mixed, arr); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, arr); } } export function assertMaybeDictionaryOfOneOfHandler (arr : T[]) : (name : string, mixed : any) => (null|undefined|({ [key : string] : T }))|never { return (name : string, mixed : any) : (null|undefined|({ [key : string] : T }))|never => { return assertMaybeDictionaryOfOneOf(name, mixed, arr); }; } export function assertMaybeDictionaryOfNotOneOf (name : string, mixed : any, arr : NotT[]) : (null|undefined|({ [key : string] : T }))|never { const error = check.checkMaybeDictionaryOfNotOneOf(mixed, arr); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, arr); } } export function assertMaybeDictionaryOfNotOneOfHandler (arr : NotT[]) : (name : string, mixed : any) => (null|undefined|({ [key : string] : T }))|never { return (name : string, mixed : any) : (null|undefined|({ [key : string] : T }))|never => { return assertMaybeDictionaryOfNotOneOf(name, mixed, arr); }; }