/** * RuntimeContext — encapsulates module-level mutable state that previously * lived as `let`/`const` declarations across several modules. * * MCP stdio transport is single-session in practice, so a process-wide * default singleton is provided via `getDefaultRuntimeContext()`. All legacy * top-level functions in `registry.ts`, `recorder-tools.ts`, and * `context/shared-state.ts` delegate to that singleton, so existing * call-sites continue to work unchanged. * * For tests that need clean state, use `setDefaultRuntimeContext(createRuntimeContext())`. */ import { ToolRegistry } from "../tools/tool-registry.js"; import { RecorderState } from "../tools/recorder-state.js"; import { SharedState } from "../tools/context/shared-state-class.js"; export interface RuntimeContext { readonly registry: ToolRegistry; readonly recorder: RecorderState; readonly sharedState: SharedState; } export declare function createRuntimeContext(): RuntimeContext; export declare function getDefaultRuntimeContext(): RuntimeContext; export declare function setDefaultRuntimeContext(ctx: RuntimeContext): void; /** Reset the default context (helper for tests). */ export declare function resetDefaultRuntimeContext(): void; //# sourceMappingURL=runtime-context.d.ts.map