import * as dom from "../../../base/browser/dom.js"; import { CancellationToken } from "../../../base/common/cancellation.js"; import { Event } from "../../../base/common/event.js"; import { Disposable } from "../../../base/common/lifecycle.js"; import { IInputBox, IInputOptions, IKeyMods, IPickOptions, IQuickInput, IQuickNavigateConfiguration, IQuickPick, IQuickPickItem, IQuickWidget, QuickInputHideReason, QuickPickInput, IQuickTree, IQuickTreeItem } from "../common/quickInput.js"; import { IQuickInputStyles, IQuickInputOptions } from "./quickInput.js"; import { ILayoutService } from "../../layout/browser/layoutService.service.js"; import { IInstantiationService } from "../../instantiation/common/instantiation.js"; import { IContextMenuService } from "../../contextview/browser/contextView.service.js"; import { IContextKeyService } from "../../contextkey/common/contextkey.service.js"; import { IStorageService } from "../../storage/common/storage.service.js"; import { IKeybindingService } from "../../keybinding/common/keybinding.service.js"; export declare class QuickInputController extends Disposable { private options; private readonly layoutService; private readonly instantiationService; private readonly storageService; private readonly contextMenuService; private readonly keybindingService; private static readonly MAX_WIDTH; private idPrefix; private ui; private dimension?; private titleBarOffset?; private enabled; private readonly onDidAcceptEmitter; private readonly onDidCustomEmitter; private readonly onDidTriggerButtonEmitter; private keyMods; private controller; get currentQuickInput(): IQuickInput | undefined; private _container; get container(): HTMLElement; private styles; private onShowEmitter; readonly onShow: Event; private onHideEmitter; readonly onHide: Event; private previousFocusElement?; private viewState; private dndController; private readonly inQuickInputContext; private readonly quickInputTypeContext; private readonly endOfQuickInputBoxContext; constructor(options: IQuickInputOptions, layoutService: ILayoutService, instantiationService: IInstantiationService, contextKeyService: IContextKeyService, storageService: IStorageService, contextMenuService: IContextMenuService, keybindingService: IKeybindingService); private registerKeyModsListeners; private getUI; private reparentUI; pick>(picks: Promise[]> | QuickPickInput[], options?: IPickOptions, token?: CancellationToken): Promise<(O extends { canPickMany: true; } ? T[] : T) | undefined>; private setValidationOnInput; input(options?: IInputOptions, token?: CancellationToken): Promise; backButton: { iconClass: string; tooltip: string; handle: number; }; createQuickPick(options: { useSeparators: true; }): IQuickPick; createQuickPick(options?: { useSeparators: boolean; }): IQuickPick; createInputBox(): IInputBox; setAlignment(alignment: "top" | "center" | { top: number; left: number; }): void; createQuickWidget(): IQuickWidget; createQuickTree(): IQuickTree; private show; isVisible(): boolean; private setVisibilities; private setEnabled; hide(reason?: QuickInputHideReason): void; focus(): void; toggle(): void; toggleHover(): void; navigate(next: boolean, quickNavigate?: IQuickNavigateConfiguration): void; accept(keyMods?: IKeyMods): Promise; back(): Promise; cancel(reason?: QuickInputHideReason): Promise; layout(dimension: dom.IDimension, titleBarOffset: number): void; private updateLayout; applyStyles(styles: IQuickInputStyles): void; private updateStyles; private loadViewState; private saveViewState; } export interface IQuickInputControllerHost extends ILayoutService { }