import * as check from "../../../../../generated/sync/check/maybe/generic/string"; import {AssertError} from "../../../../../sync/error/AssertError"; export function assertMaybeOneOf (name : string, mixed : any, arr : T[]) : (null|undefined|(T))|never { const error = check.checkMaybeOneOf(mixed, arr); if (error === undefined) { return mixed; } else { throw new AssertError(name, error, mixed, arr); } } export function assertMaybeOneOfHandler (arr : T[]) : (name : string, mixed : any) => (null|undefined|(T))|never { return (name : string, mixed : any) : (null|undefined|(T))|never => { return assertMaybeOneOf(name, mixed, arr); }; }