export interface Lens { get(root: A): B; set(root: A, newValue: B): A; } export declare function prop(key: K): Lens; export declare function item(index: number): Lens; export declare function identityLens(): { get: (root: A) => A; set: (root: A, newValue: any) => any; };