UNPKG

pure-parse

Version:

Strongly typed validation library that decouples type aliases from validation logic

9 lines (8 loc) 2.22 kB
export declare const unionMemo: <T extends readonly [...unknown[]]>(...parsers: { [K in keyof T]: import('../parsers').Parser<T[K]>; }) => import('../parsers').Parser<T[number]>; export declare const objectMemo: <T extends Record<string, unknown>>(schema: { [K in keyof T]-?: {} extends Pick<T, K> ? import('../parsers').OptionalParser<T[K]> : import('../parsers').Parser<T[K]>; }) => import('../parsers').Parser<import('../internals/utility-types').OptionalKeys<T> extends undefined ? T : import('../internals/utility-types').WithOptionalFields<T>>; export declare const objectCompiledMemo: <T extends Record<string, unknown>>(schema: { [K in keyof T]-?: {} extends Pick<T, K> ? import('../parsers').OptionalParser<T[K]> : import('../parsers').Parser<T[K]>; }) => import('../parsers').Parser<import('../internals/utility-types').OptionalKeys<T> extends undefined ? T : import('../internals/utility-types').WithOptionalFields<T>>; export declare const objectStrictMemo: <T extends Record<string, unknown>>(schema: { [K in keyof T]-?: {} extends Pick<T, K> ? import('../parsers').OptionalParser<T[K]> : import('../parsers').Parser<T[K]>; }) => import('../parsers').Parser<import('../internals/utility-types').OptionalKeys<T> extends undefined ? T : import('../internals/utility-types').WithOptionalFields<T>>; export declare const objectStrictCompiledMemo: <T extends Record<string, unknown>>(schema: { [K in keyof T]-?: {} extends Pick<T, K> ? import('../parsers').OptionalParser<T[K]> : import('../parsers').Parser<T[K]>; }) => import('../parsers').Parser<import('../internals/utility-types').OptionalKeys<T> extends undefined ? T : import('../internals/utility-types').WithOptionalFields<T>>; export declare const dictionaryMemo: <K extends string, V>(parseKey: import('../parsers').Parser<K>, parseValue: import('../parsers').Parser<V>) => import('../parsers').Parser<string extends K ? Record<K, V> : Partial<Record<K, V>>>; export declare const tupleMemo: <T extends readonly [...unknown[]]>(parsers: [...{ [K in keyof T]: import('../parsers').Parser<T[K]>; }]) => import('../parsers').Parser<T>; export declare const arrayMemo: <T>(parseItem: import('../parsers').Parser<T>) => import('../parsers').Parser<T[]>;