import { DebugConfiguration, DebugStreamConnection } from '@opensumi/ide-debug';
import { ExtensionConnection } from '../../../../common/vscode';
import { StreamDebugAdapter } from './abstract-debug-adapter-session';
import type vscode from 'vscode';
export declare class ExtensionDebugAdapterSession extends StreamDebugAdapter implements vscode.DebugSession {
    protected readonly communicationProvider: DebugStreamConnection;
    protected readonly tracker: vscode.DebugAdapterTracker;
    protected readonly debugSession: vscode.DebugSession;
    readonly type: string;
    readonly name: string;
    readonly workspaceFolder: vscode.WorkspaceFolder | undefined;
    readonly configuration: DebugConfiguration;
    constructor(communicationProvider: DebugStreamConnection, tracker: vscode.DebugAdapterTracker, debugSession: vscode.DebugSession);
    get parentSession(): vscode.DebugSession | undefined;
    start(connection: ExtensionConnection): Promise<void>;
    stop(): Promise<void>;
    customRequest(command: string, args?: any): Promise<any>;
    getDebugProtocolBreakpoint(breakpoint: vscode.Breakpoint): Promise<vscode.DebugProtocolBreakpoint | undefined>;
    protected onDebugAdapterError(error: Error): void;
    protected sendToFrontend(message: string): void;
    protected write(message: string): void;
    protected onDebugAdapterExit(exitCode: number, signal: string | undefined): void;
}
//# sourceMappingURL=extension-debug-adapter-session.d.ts.map