interface Source { [key: string]: any; } declare type Result = { [K in keyof T]: any; }; declare type Modifier = (value: any, source: any) => any; declare type Include = (value: any, source: any) => boolean; declare type Path = string | string[]; interface PathConfig { path: Path; modifier?: Modifier; include?: Include; } export declare type SchemaEntry = Path | PathConfig; interface Schema { [key: string]: SchemaEntry; } interface MappetOptions { strict?: boolean; greedy?: boolean; name?: string; } export default function mappet(schema: S, options?: Partial): (source: T) => Result; export {};