/** * **This module is experimental** * * Experimental features are published in order to get early feedback from the community. * * A feature tagged as _Experimental_ is in a high state of flux, you're at risk of it changing without notice. * * @since 2.3.0 */ import * as O from 'fp-ts/lib/Option' import { At } from './At' import { Iso } from './Iso' import { Optional } from './Optional' import { Eq } from 'fp-ts/lib/Eq' import Option = O.Option import { ReadonlyRecord } from 'fp-ts/lib/ReadonlyRecord' import { ReadonlyNonEmptyArray } from 'fp-ts/lib/ReadonlyNonEmptyArray' /** * @category model * @since 2.3.0 */ export interface Index { readonly index: (i: I) => Optional } /** * @category constructors * @since 2.3.8 */ export declare const index: (index: Index['index']) => Index /** * @category constructors * @since 2.3.0 */ export declare const fromAt: (at: At>) => Index /** * Lift an instance of `Index` using an `Iso`. * * @category constructors * @since 2.3.0 */ export declare const fromIso: (iso: Iso) => (sia: Index) => Index /** * @category constructors * @since 2.3.7 */ export declare const indexReadonlyArray: () => Index, number, A> /** * @category constructors * @since 2.3.8 */ export declare const indexReadonlyNonEmptyArray: () => Index, number, A> /** * @category constructors * @since 2.3.7 */ export declare const indexReadonlyRecord: () => Index, string, A> /** * @category constructors * @since 2.3.7 */ export declare const indexReadonlyMap: (E: Eq) => () => Index, K, A> /** * Use `indexReadonlyArray` instead. * * @category constructors * @since 2.3.2 * @deprecated */ export declare const indexArray: () => Index, number, A> /** * Use `indexReadonlyRecord` instead. * * @category constructors * @since 2.3.2 * @deprecated */ export declare const indexRecord: () => Index, string, A>