import { AccessorChain } from "../data/createAccessorModelProxy"; import { Selector } from "../data/Selector"; import { Expr } from "./Prop"; type InferAccessorValue = 0 extends 1 & T ? any : T extends AccessorChain ? V : never; export declare function expr(code: string): Expr; export declare function expr(arg1: AccessorChain, compute: (v1: V1) => R): Selector; export declare function expr(arg1: AccessorChain, arg2: AccessorChain, compute: (v1: V1, v2: V2) => R): Selector; export declare function expr(arg1: AccessorChain, arg2: AccessorChain, arg3: AccessorChain, compute: (v1: V1, v2: V2, v3: V3) => R): Selector; export declare function expr(arg1: AccessorChain, arg2: AccessorChain, arg3: AccessorChain, arg4: AccessorChain, compute: (v1: V1, v2: V2, v3: V3, v4: V4) => R): Selector; export declare function expr[], R>(...args: [...accessors: T, compute: (...values: { [K in keyof T]: InferAccessorValue; }) => R]): Selector; export {}; //# sourceMappingURL=expr.d.ts.map