export interface DashboardIndexWorkspace { readonly id: string; readonly projectRoot: string; readonly branch: string | null; readonly head: string | null; readonly current: boolean; readonly generation: number; } export interface DashboardIndexChange { readonly locator: string; readonly workspaceId: string; readonly name: string; readonly status: string; readonly phase: string | null; readonly archiveName: string | null; readonly parentLocator: string | null; readonly generation: number; } export interface DashboardIndexSupervisorChild { readonly parentLocator: string; readonly childName: string; readonly dependsOn: readonly string[]; readonly status: string; readonly phase: string | null; readonly message: string | null; readonly generation: number; } export interface DashboardIndexArtifact { readonly locator: string; readonly key: string; readonly kind: string; readonly filePath: string; readonly size: number | null; readonly modifiedAt: number | null; } export interface DashboardIndexSnapshot { readonly schema: 'comet.dashboard.index.v1'; readonly repositoryId: string; readonly generation: number; readonly refreshedAt: string; readonly workspaces: readonly DashboardIndexWorkspace[]; readonly changes: readonly DashboardIndexChange[]; readonly supervisorChildren: readonly DashboardIndexSupervisorChild[]; readonly artifacts: readonly DashboardIndexArtifact[]; } export interface DashboardIndexStoreOptions { readonly projectRoot: string; readonly cacheRoot?: string; } export interface DashboardNativeIndexQuery { readonly status: 'active' | 'archived' | 'all'; readonly query?: string; readonly limit?: number; readonly offset?: number; } export interface DashboardNativeIndexQueryResult { readonly rows: T[]; readonly total: number; readonly indexed: boolean; } export declare function resolveDashboardIndexPath(projectRoot: string, cacheRoot?: string): string; export declare class DashboardIndexStore { readonly databasePath: string; private database; constructor(options: DashboardIndexStoreOptions); open(): Promise; readSnapshot(): Promise; replaceSnapshot(snapshot: DashboardIndexSnapshot): Promise; readNativeIndex(): Promise; replaceNativeIndex(value: unknown): Promise; queryNativeIndex(options: DashboardNativeIndexQuery): Promise>; close(): Promise; private requireDatabase; } //# sourceMappingURL=index-store.d.ts.map