import type { ActivityReport, Cursor, OwnerSnapshot, Result, TaskId, TaskRecord, WaitError, WatchError } from "./contracts.js"; import type { OwnerLease, TaskLease, TaskSupervisor } from "./supervisor.js"; /** Activity previews are bounded independently of authoritative session history. */ export declare const TASK_ACTIVITY_LIMIT = 64; export declare const TASK_ACTIVITY_BYTES = 8192; export type TaskAnchor = { taskId: TaskId; activitySequence: Cursor["sequence"]; cellOffset: number; followBottom: boolean; }; export type TaskActivity = { cursor: Cursor; report: ActivityReport; }; /** A view subscription owns neither the owner nor its executions. */ export declare class OwnerTaskStore { private subscription?; private listeners; private records; private activity; private activityCursors; private omittedActivity; private backgroundIds; private settlements; readonly anchors: Map; private current?; readonly supervisor: TaskSupervisor; private readonly owner; constructor(supervisor: TaskSupervisor, owner: OwnerLease); get snapshot(): OwnerSnapshot | undefined; get cursor(): Cursor | undefined; get tasks(): TaskRecord[]; /** Background membership survives foreground waits and terminal observation cleanup. */ get backgroundTasks(): TaskRecord[]; /** * Journal sequence at which each task settled; higher is more recent. Tasks first seen settled in a * snapshot without their settlement event share that snapshot's sequence, so their order is unknown. */ get settlementOrder(): ReadonlyMap; /** Resolve only within the owner that authorized this store. */ resolveTask(id: TaskId): Result; recentActivity(id: TaskId): TaskActivity[]; activityOmitted(id: TaskId): boolean; subscribe(listener: () => void): () => void; connect(): Result; /** Useful at explicit host barriers; no transcript repaint timer is installed. */ drain(): void; dispose(): void; private reconcile; private observe; private retainActivity; private notify; } export declare function bindOwnerTaskStore(session: object, store: OwnerTaskStore): void; export declare function getOwnerTaskStore(session: object): OwnerTaskStore | undefined; /** Observe lazy producer binding without waiting for another tool/session event. */ export declare function watchOwnerTaskStoreBinding(session: object, listener: () => void): () => void; //# sourceMappingURL=owner-store.d.ts.map