import { MaskContext } from './masker'; export type InferMasker = T extends (val: infer I, ctx?: MaskContext) => infer O ? O : T extends ObjectMasker ? { [K in keyof S]: InferMasker; } : T; export declare class ObjectMasker> { compiledFn: (obj: any, schema: any, ctx: MaskContext) => any; schema: TSchema; constructor(schema: TSchema); call(value: any, ctx?: MaskContext): any; private compileSchema; } export interface ObjectMaskerCallable> { (value: any, ctx?: MaskContext): any; schema: TSchema; compiledFn: (obj: any, schema: any, ctx: MaskContext) => any; } export declare function object>(schema: TSchema): ObjectMaskerCallable; //# sourceMappingURL=schema.d.ts.map