//#region extensions/crypto/src/services/interrupt-service.d.ts /** * Interrupt Service — shared interrupt flag per session. * * When `/interrupt` is called, the flag is set for the current session. * The `message_sending` hook checks the flag and cancels the LLM response. * The `after_tool_call` hook checks the flag to skip further tool calls. * * Flags auto-expire after TTL_MS to prevent stale interrupts from * silencing future responses. */ declare class InterruptService { private flags; private sweepTimer; constructor(); /** * Set the interrupt flag for a session. * Returns true if a flag was newly set (wasn't already active). */ interrupt(sessionKey: string, reason?: string): boolean; /** * Check and consume the interrupt flag. * Returns true if an interrupt was pending (and consumes it). */ consume(sessionKey: string): boolean; /** * Check if an interrupt is pending without consuming it. */ isPending(sessionKey: string): boolean; /** Remove expired entries. */ private sweep; /** Stop the sweep timer (for shutdown). */ stop(): void; /** Number of active flags (for testing). */ get size(): number; } declare function getInterruptService(): InterruptService; declare function resetInterruptService(): void; //#endregion export { getInterruptService, resetInterruptService }; //# sourceMappingURL=interrupt-service.d.mts.map