import { type TSchema, type TSchemaOptions } from '../types/schema.mjs'; import { type TDeferred } from '../types/deferred.mjs'; import { type TKeysToIndexer } from '../engine/helpers/keys_to_indexer.mjs'; import { type TIndexAction } from '../engine/indexed/instantiate.mjs'; /** Creates a deferred Index action. */ export type TIndexDeferred = (TDeferred<'Index', [Type, Indexer]>); /** Creates a deferred Index action. */ export declare function IndexDeferred(type: Type, indexer: Indexer, options?: TSchemaOptions): TIndexDeferred; /** Applies a Index action using the given types. */ export type TIndex = (TIndexAction); /** Applies a Index action using the given types. */ export declare function Index(type: Type, indexer: readonly [...Indexer], options?: TSchemaOptions): TIndex>; /** Applies a Index action using the given types. */ export declare function Index(type: Type, indexer: Indexer, options?: TSchemaOptions): TIndex;