import type { RuntimeServices } from './services.js'; import type { RuntimeTask } from './store/domains/tasks.js'; import type { RuntimeAgent } from './store/domains/agents.js'; import type { SessionDomainState } from './store/domains/session.js'; import type { TurnState } from './store/domains/conversation.js'; import type { UiReadModel } from './ui-read-models-base.js'; export interface UiProvidersSnapshot { readonly providerIds: readonly string[]; } export interface UiSessionSnapshot { readonly session: SessionDomainState; readonly totalTurns: number; readonly messageCount: number; readonly estimatedContextTokens: number; readonly contextWindow: number; /** Context usage as a 0–100 percentage (0 when the window is unknown). Cheap readable for a live context chip. */ readonly contextUsagePct: number; /** Tokens remaining before the context window is full (0 when unknown/exhausted). */ readonly contextRemainingTokens: number; readonly turnState: TurnState; readonly streamToolPreview?: string | undefined; readonly contextWarningActive: boolean; readonly pendingApproval: boolean; readonly denialCount: number; } export interface UiAgentsSnapshot { readonly active: readonly RuntimeAgent[]; readonly totalSpawned: number; readonly totalCompleted: number; readonly totalFailed: number; } export interface UiTasksSnapshot { readonly tasks: readonly RuntimeTask[]; } export interface UiCoreReadModels { readonly providers: UiReadModel; readonly session: UiReadModel; readonly agents: UiReadModel; readonly tasks: UiReadModel; } export declare function createCoreReadModels(runtimeServices: Pick): UiCoreReadModels; //# sourceMappingURL=ui-read-models-core.d.ts.map