export type ContinuationUtteranceBlockReason = "in-flight" | "retry-cap-reached" | "same-blocker"; type ContinuationUtteranceRequest = { readonly allowSameBlockerRetry?: boolean; readonly blockerId: string; readonly maxAttempts: number; readonly sessionId: string; }; type ContinuationUtteranceAllowed = { readonly kind: "allowed"; readonly complete: () => void; }; type ContinuationUtteranceBlocked = { readonly kind: "blocked"; readonly reason: ContinuationUtteranceBlockReason; }; export type ContinuationUtteranceDecision = ContinuationUtteranceAllowed | ContinuationUtteranceBlocked; export declare class ContinuationUtteranceGate { private readonly inFlightSessions; private readonly lastBlockerIds; private readonly sentCounts; reset(sessionId: string): void; tryBegin(request: ContinuationUtteranceRequest): ContinuationUtteranceDecision; } export {};