///
import type { Debugger, InspectorNotification } from 'node:inspector';
import type { StackFrame, StackParser } from '@sentry/types';
import type { LocalVariablesIntegrationOptions, Variables } from './common';
/** Creates a unique hash from stack frames */
export declare function hashFrames(frames: StackFrame[] | undefined): string | undefined;
/**
* We use the stack parser to create a unique hash from the exception stack trace
* This is used to lookup vars when the exception passes through the event processor
*/
export declare function hashFromStack(stackParser: StackParser, stack: string | undefined): string | undefined;
type OnPauseEvent = InspectorNotification;
export interface DebugSession {
/** Configures and connects to the debug session */
configureAndConnect(onPause: (message: OnPauseEvent, complete: () => void) => void, captureAll: boolean): void;
/** Updates which kind of exceptions to capture */
setPauseOnExceptions(captureAll: boolean): void;
/** Gets local variables for an objectId */
getLocalVariables(objectId: string, callback: (vars: Variables) => void): void;
}
type Next = (result: T) => void;
type Add = (fn: Next) => void;
type CallbackWrapper = {
add: Add;
next: Next;
};
/** Creates a container for callbacks to be called sequentially */
export declare function createCallbackList(complete: Next): CallbackWrapper;
/**
* Adds local variables to exception frames.
*/
export declare const localVariablesSyncIntegration: (options?: LocalVariablesIntegrationOptions | undefined, sessionOverride?: DebugSession | undefined) => import("@sentry/types").Integration;
export {};
//# sourceMappingURL=local-variables-sync.d.ts.map