import { AbstractDialogHandler, IConfirmation, IConfirmationResult, IInput, IInputResult, IPrompt, IAsyncPromptResult } from "@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs"; import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { IWorkbenchLayoutService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/layout/browser/layoutService.service"; /** * Dialog handler for the Agents window that renders confirmations and prompts * as native bottom sheets on phone layout, and otherwise delegates to the * standard {@link BrowserDialogHandler}. * * Because every `IDialogService.confirm` / `prompt` call (sessions-layer or * inherited from chat / workbench) flows through a single handler, routing it * here gives every modal a phone-appropriate presentation without converting * call sites one by one. Text input and the about dialog keep the desktop * rendering for now. */ export declare class MobileAwareDialogHandler extends AbstractDialogHandler { private readonly _layoutService; private readonly _desktop; constructor(instantiationService: IInstantiationService, _layoutService: IWorkbenchLayoutService); confirm(confirmation: IConfirmation): Promise; prompt(prompt: IPrompt): Promise>; input(input: IInput): Promise; about(title: string, details: string, detailsToCopy: string): Promise; private _toSheetButtons; /** * The mobile bottom sheet renders `detail` as plain text, so a Markdown * detail is degraded to its plain-text equivalent rather than shown with * raw Markdown/link syntax. */ private _toSheetDetail; private _titleFor; }