import { IRPCProtocol } from '@opensumi/ide-connection'; import { ILogger, PreferenceService } from '@opensumi/ide-core-browser'; import { ITerminalDimensions } from '@opensumi/ide-terminal-next'; import { SerializableEnvironmentVariableCollection } from '@opensumi/ide-terminal-next/lib/common/environmentVariable'; import { IMainThreadTerminal } from '../../../common/vscode'; import { IActivationEventService } from '../../types'; import type vscode from 'vscode'; export declare class MainThreadTerminal implements IMainThreadTerminal { private rpcProtocol; private readonly proxy; shortId2LongIdMap: Map; private readonly _terminalProcessProxies; private readonly _profileProviders; /** * A single shared terminal link provider for the exthost. When an ext registers a link * provider, this is registered with the terminal on the renderer side and all links are * provided through this, even from multiple ext link providers. Xterm should remove lower * priority intersecting links itself. */ private _linkProvider; private environmentVariableService; private terminalApi; private controller; private profileService; private profileInternalSerivce; private terminalGroupViewService; protected readonly preference: PreferenceService; protected readonly activationEventService: IActivationEventService; protected readonly logger: ILogger; private disposable; constructor(rpcProtocol: IRPCProtocol); dispose(): void; private bindEvent; private initData; transform(id: string, cb: (sessionId: string) => T): T; $sendText(id: string, text: string, addNewLine?: boolean): void; $show(id: string, preserveFocus?: boolean): void; $hide(id: string): void; $dispose(id: string): void; $getProcessId(id: string): Promise; $createTerminal(options: vscode.TerminalOptions, shortId: string): Promise; private _onRequestStartExtensionTerminal; private _getTerminalProcess; $sendProcessTitle(id: string, title: string): void; $sendProcessData(terminalId: string, data: string): void; $sendProcessReady(terminalId: string, pid: number, cwd: string): void; $sendProcessExit(terminalId: string, exitCode: number | undefined): void; $sendOverrideDimensions(terminalId: string, dimensions: ITerminalDimensions | undefined): void; $sendProcessInitialCwd(terminalId: string, initialCwd: string): void; $sendProcessCwd(terminalId: string, cwd: string): void; $startLinkProvider(): void; $stopLinkProvider(): void; $registerProfileProvider(id: string, extensionIdentifier: string): void; $unregisterProfileProvider(id: string): void; private _updateDefaultProfile; $setEnvironmentVariableCollection(extensionIdentifier: string, persistent: boolean, collection: SerializableEnvironmentVariableCollection | undefined): void; } //# sourceMappingURL=main.thread.terminal.d.ts.map