import * as check from "../../../../generated/sync/check/dictionary-of/string"; import {AssertError} from "../../../../sync/error/AssertError"; export function assertDictionaryOfString (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfString(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertDictionaryOfMinLength (name : string, mixed : any, min : number) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfMinLength(mixed, min); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, min); } } export function assertDictionaryOfMinLengthHandler (min : number) : (name : string, mixed : any) => ({ [key : string] : string })|never { return (name : string, mixed : any) : ({ [key : string] : string })|never => { return assertDictionaryOfMinLength(name, mixed, min); }; } export function assertDictionaryOfMaxLength (name : string, mixed : any, max : number) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfMaxLength(mixed, max); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, max); } } export function assertDictionaryOfMaxLengthHandler (max : number) : (name : string, mixed : any) => ({ [key : string] : string })|never { return (name : string, mixed : any) : ({ [key : string] : string })|never => { return assertDictionaryOfMaxLength(name, mixed, max); }; } export function assertDictionaryOfLength (name : string, mixed : any, args : { min? : number, max? : number }) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfLength(mixed, args); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, args); } } export function assertDictionaryOfLengthHandler (args : { min? : number, max? : number }) : (name : string, mixed : any) => ({ [key : string] : string })|never { return (name : string, mixed : any) : ({ [key : string] : string })|never => { return assertDictionaryOfLength(name, mixed, args); }; } export function assertDictionaryOfNonEmpty (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfNonEmpty(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertDictionaryOfContains (name : string, mixed : any, x : string) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfContains(mixed, x); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, x); } } export function assertDictionaryOfContainsHandler (x : string) : (name : string, mixed : any) => ({ [key : string] : string })|never { return (name : string, mixed : any) : ({ [key : string] : string })|never => { return assertDictionaryOfContains(name, mixed, x); }; } export function assertDictionaryOfNoDuplicate (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfNoDuplicate(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertDictionaryOfNotAllWhitespace (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfNotAllWhitespace(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertDictionaryOfNonEmptyAndNotAllWhitespace (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfNonEmptyAndNotAllWhitespace(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertDictionaryOfMatch (name : string, mixed : any, regex : RegExp) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfMatch(mixed, regex); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, regex); } } export function assertDictionaryOfMatchHandler (regex : RegExp) : (name : string, mixed : any) => ({ [key : string] : string })|never { return (name : string, mixed : any) : ({ [key : string] : string })|never => { return assertDictionaryOfMatch(name, mixed, regex); }; } export function assertDictionaryOfEmail (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfEmail(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertDictionaryOfNotOneOf (name : string, mixed : any, arr : T[]) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfNotOneOf(mixed, arr); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, arr); } } export function assertDictionaryOfNotOneOfHandler (arr : T[]) : (name : string, mixed : any) => ({ [key : string] : string })|never { return (name : string, mixed : any) : ({ [key : string] : string })|never => { return assertDictionaryOfNotOneOf(name, mixed, arr); }; } export function assertDictionaryOfBase64 (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfBase64(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } } export function assertDictionaryOfJson (name : string, mixed : any) : ({ [key : string] : string })|never { const error = check.checkDictionaryOfJson(mixed); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed); } }