import type { Task, Mission, AgentConfig, AgentProcess, ChatSession, SSEEvent } from "../client/types.js"; import type { ConnectionStatus } from "../client/event-source.js"; import type { StoreState } from "./types.js"; export type { StoreState, PolpoStats } from "./types.js"; export declare class PolpoStore { private state; private listeners; constructor(); subscribe: (listener: () => void) => (() => void); getSnapshot: () => StoreState; getServerSnapshot: () => StoreState; setTasks(tasks: Task[]): void; setMissions(missions: Mission[]): void; /** Upsert a single mission into the store without replacing the entire map. */ upsertMission(mission: Mission): void; setAgents(agents: AgentConfig[]): void; setProcesses(processes: AgentProcess[]): void; setConnectionStatus(status: ConnectionStatus): void; setMemory(memory: { exists: boolean; content: string; } | null): void; setAgentMemory(agentName: string, memory: { exists: boolean; content: string; }): void; setActiveDelays(delays: Map): void; setSessions(sessions: ChatSession[]): void; /** Insert or replace a single session. Used by `useChat` when it observes * a new `sessionId` arriving in the stream, and by SSE `session:started`. */ upsertSession(session: ChatSession): void; /** Patch a session in place (e.g. on rename / messageCount bump). */ patchSession(sessionId: string, patch: Partial): void; removeSession(sessionId: string): void; applyEvent(event: SSEEvent): void; applyEventBatch(events: SSEEvent[]): void; private notify; } //# sourceMappingURL=polpo-store.d.ts.map