import { AssistantMode, AssistantSandboxAuthContext, PrewarmLevel } from './types'; export interface RuntimeDeps { product: string; mode: AssistantMode; ttlSeconds: number; isProd: () => boolean; getWorkspaceId: () => string; getAuthContext: () => AssistantSandboxAuthContext; } export declare class AssistantRuntimeManager { private readonly deps; private sandboxId; private sessionId; private provisioningSandboxId; private readonly quarantinedSandboxIds; private inFlight; private keepWarmTimer; private visibilityHandler; constructor(deps: RuntimeDeps); private key; private persist; /** Drop warm refs and optionally quarantine a reaped runtime for this manager's lifetime. */ reset(options?: { quarantineCurrentSandbox?: boolean; }): void; /** Single-flight provision: find-or-create → ready → service-health → session. */ ensureRuntime(): Promise<{ sandboxId: string; sessionId: string; }>; /** Intent pre-warm. 'probe' never creates a paid sandbox; 'full' provisions. */ prewarm(level?: PrewarmLevel): void; /** Start the visibility-gated keep-warm heartbeat while the widget is open. */ startKeepWarm(): void; stopKeepWarm(): void; getSandboxId(): string | null; } //# sourceMappingURL=runtime.d.ts.map