/** * Maps DAP integer variableReference values to SDAPI object_path strings. * * DAP clients request variables by integer reference. The SDAPI uses * dot-delimited object paths for navigating the object tree. This store * bridges the two models and supports scope-filtered variable requests. * * References are cleared whenever execution resumes (continue/step) because * SDAPI variable state is only valid while a thread is halted. * * @module operations/debug/variable-store */ export interface VariableRef { threadId: number; frameIndex: number; objectPath: string; /** If set, this reference is for a scope — filter /variables by this scope. */ scope?: 'local' | 'closure' | 'global'; } export declare class VariableStore { private nextRef; private readonly refs; /** * Get or create an integer reference for the given variable context. */ getOrCreateReference(threadId: number, frameIndex: number, objectPath: string, scope?: 'local' | 'closure' | 'global'): number; /** * Resolve an integer reference back to its variable context. */ resolve(ref: number): VariableRef | undefined; /** * Clear all references. Call on continue/step since variable state becomes stale. */ clear(): void; }