import type { StreamID } from '@dustil/streamid'; import type { BaseQuery, Pagination, Page } from '@dustil/common'; import type { CID } from 'multiformats/cid'; import { ModelRelationsDefinition } from '@dustil/stream-model'; export declare const INDEXED_MODEL_CONFIG_TABLE_NAME = "ceramic_models"; export interface IndexStreamArgs { readonly streamID: StreamID; readonly model: StreamID; readonly controller: string; readonly streamContent: Record; readonly tip: CID; readonly lastAnchor: Date | null; readonly firstAnchor: Date | null; } export interface IndexModelArgs { readonly model: StreamID; readonly relations?: ModelRelationsDefinition; } export interface DatabaseIndexApi { indexModels(models: Array): Promise; stopIndexingModels(models: Array): Promise; indexStream(args: IndexStreamArgs): Promise; getActiveModelsToIndex(): Array; count(query: BaseQuery): Promise; page(query: BaseQuery & Pagination): Promise>; init(): Promise; close(): Promise; } //# sourceMappingURL=database-index-api.d.ts.map