import { ValueOf } from '../common'; interface ILens { get: (value: T) => ValueOf; set: (value: V) => void; } declare type IView = { (lens: ILens): ILens['get']; (lens: ILens, object: L): R; }; export declare const view: IView; declare type ISet = { (lens: ILens): (value: V) => (object: O) => T; (lens: ILens, value: V): (object: O) => T; (lens: ILens, value: V, object: O): T; }; export declare const set: ISet; export declare const over: (...args: any[]) => any; export declare const lensProp: (key: string) => ILens<{ [x: string]: {}; }>; export declare const lensPath: (key: string[]) => ILens; export {};