import * as check from "../../../../../generated/sync/check/maybe/dictionary-of/dictionary"; import {AssertError} from "../../../../../sync/error/AssertError"; export function assertMaybeDictionaryOfHasKeys (name : string, mixed : any, keys : T[]) : (null|undefined|({ [key : string] : { [key : string] : any } }))|never { const error = check.checkMaybeDictionaryOfHasKeys(mixed, keys); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, keys); } } export function assertMaybeDictionaryOfHasKeysHandler (keys : T[]) : (name : string, mixed : any) => (null|undefined|({ [key : string] : { [key : string] : any } }))|never { return (name : string, mixed : any) : (null|undefined|({ [key : string] : { [key : string] : any } }))|never => { return assertMaybeDictionaryOfHasKeys(name, mixed, keys); }; } export function assertMaybeDictionaryOfNotHasKeys (name : string, mixed : any, keys : T[]) : (null|undefined|({ [key : string] : { [key : string] : any } }))|never { const error = check.checkMaybeDictionaryOfNotHasKeys(mixed, keys); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, keys); } } export function assertMaybeDictionaryOfNotHasKeysHandler (keys : T[]) : (name : string, mixed : any) => (null|undefined|({ [key : string] : { [key : string] : any } }))|never { return (name : string, mixed : any) : (null|undefined|({ [key : string] : { [key : string] : any } }))|never => { return assertMaybeDictionaryOfNotHasKeys(name, mixed, keys); }; }