@sussudio/platform
Version:
Internal APIs for VS Code's service injection the base services.
81 lines (79 loc) • 3.12 kB
text/typescript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { CancellationToken } from '@sussudio/base/common/cancellation.mjs';
import { IQuickInputOptions, QuickInputController } from '@sussudio/base/parts/quickinput/browser/quickInput.mjs';
import { IAccessibilityService } from '../../accessibility/common/accessibility.mjs';
import { IContextKeyService } from '../../contextkey/common/contextkey.mjs';
import { IInstantiationService } from '../../instantiation/common/instantiation.mjs';
import { ILayoutService } from '../../layout/browser/layoutService.mjs';
import { IQuickAccessController } from '../common/quickAccess.mjs';
import {
IInputBox,
IInputOptions,
IKeyMods,
IPickOptions,
IQuickInputButton,
IQuickInputService,
IQuickNavigateConfiguration,
IQuickPick,
IQuickPickItem,
QuickPickInput,
} from '../common/quickInput.mjs';
import { IThemeService, Themable } from '../../theme/common/themeService.mjs';
export interface IQuickInputControllerHost extends ILayoutService {}
export declare class QuickInputService extends Themable implements IQuickInputService {
private readonly instantiationService;
protected readonly contextKeyService: IContextKeyService;
private readonly accessibilityService;
protected readonly layoutService: ILayoutService;
readonly _serviceBrand: undefined;
get backButton(): IQuickInputButton;
private readonly _onShow;
readonly onShow: import('@sussudio/base/common/event.mjs').Event<void>;
private readonly _onHide;
readonly onHide: import('@sussudio/base/common/event.mjs').Event<void>;
private _controller;
private get controller();
private get hasController();
private _quickAccess;
get quickAccess(): IQuickAccessController;
private readonly contexts;
constructor(
instantiationService: IInstantiationService,
contextKeyService: IContextKeyService,
themeService: IThemeService,
accessibilityService: IAccessibilityService,
layoutService: ILayoutService,
);
protected createController(
host?: IQuickInputControllerHost,
options?: Partial<IQuickInputOptions>,
): QuickInputController;
private setContextKey;
private resetContextKeys;
pick<T extends IQuickPickItem, O extends IPickOptions<T>>(
picks: Promise<QuickPickInput<T>[]> | QuickPickInput<T>[],
options?: O,
token?: CancellationToken,
): Promise<
| (O extends {
canPickMany: true;
}
? T[]
: T)
| undefined
>;
input(options?: IInputOptions, token?: CancellationToken): Promise<string | undefined>;
createQuickPick<T extends IQuickPickItem>(): IQuickPick<T>;
createInputBox(): IInputBox;
focus(): void;
toggle(): void;
navigate(next: boolean, quickNavigate?: IQuickNavigateConfiguration): void;
accept(keyMods?: IKeyMods): Promise<void>;
back(): Promise<void>;
cancel(): Promise<void>;
updateStyles(): void;
private computeStyles;
}