import type { Optic, TryA, TryT, A, B, S, T } from './optic.js'; import type { NoSuchProperty } from './errors.js'; interface PropA extends A { 0: TryA ? S[K] : NoSuchProperty>>; } interface PropT extends T { 0: TryT ? Omit, K> & { [KK in K]: B; } : NoSuchProperty>>; } export type Prop = Optic<'Lens', PropA, PropT>; export declare const prop: (key: K) => Prop; export {};