import type { Option } from "@effect-ts/core/Option"; import type { HashMap } from "@effect-ts/system/Collections/Immutable/HashMap"; import type { At } from "../At/index.js"; import * as _ from "../Internal/index.js"; import type { Iso } from "../Iso/index.js"; import type { Optional } from "../Optional/index.js"; export interface Index { readonly index: (i: I) => Optional; } export declare const fromAt: (at: At>) => Index; /** * Lift an instance of `Index` using an `Iso` */ export declare const fromIso: (iso: _.Iso) => (sia: Index) => Index; export declare const indexArray: () => Index, number, A>; export declare const indexRecord: () => Index>, string, A>; export declare const indexHashMap: () => Index>, K, A>; //# sourceMappingURL=index.d.ts.map