import { SessionManager, type ExtensionContext } from '@earendil-works/pi-coding-agent'; import type { CollectionBoundary, StateStore } from './types.js'; type Session = Pick; /** Owner-private source references only. Never copies or edits pi conversation data. */ export declare class CollectionSessionRegistry { #private; private readonly options; constructor(options: { store: StateStore; sessionRoot: string; }); /** Called by the trusted extension context before a new request. New pi files * may not be flushed yet; the reference is durable before collection begins. */ register(session: Session, signal?: AbortSignal): Promise; resolveSession(id: string, signal?: AbortSignal): Promise; /** Snapshot current persisted leaves for a new grant/resume boundary. Missing * registered files represent never-flushed empty sessions only when no request * has recorded sources; missing collected history fails closed. */ boundaries(signal?: AbortSignal): Promise; } export {};