import * as check from "../../../../generated/sync/check/dictionary-of/dictionary"; import {AssertError} from "../../../../sync/error/AssertError"; export function assertDictionaryOfHasKeys (name : string, mixed : any, keys : T[]) : ({ [key : string] : { [key : string] : any } })|never { const error = check.checkDictionaryOfHasKeys(mixed, keys); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, keys); } } export function assertDictionaryOfHasKeysHandler (keys : T[]) : (name : string, mixed : any) => ({ [key : string] : { [key : string] : any } })|never { return (name : string, mixed : any) : ({ [key : string] : { [key : string] : any } })|never => { return assertDictionaryOfHasKeys(name, mixed, keys); }; } export function assertDictionaryOfNotHasKeys (name : string, mixed : any, keys : T[]) : ({ [key : string] : { [key : string] : any } })|never { const error = check.checkDictionaryOfNotHasKeys(mixed, keys); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, keys); } } export function assertDictionaryOfNotHasKeysHandler (keys : T[]) : (name : string, mixed : any) => ({ [key : string] : { [key : string] : any } })|never { return (name : string, mixed : any) : ({ [key : string] : { [key : string] : any } })|never => { return assertDictionaryOfNotHasKeys(name, mixed, keys); }; }