import { DocumentFormattingEditProvider, DocumentRangeFormattingEditProvider } from '@opensumi/ide-monaco'; import { ITextModel } from '@opensumi/ide-monaco/lib/browser/monaco-api/types'; import { IMessageService } from '@opensumi/ide-overlay'; import { FormattingKind, FormattingMode, IFormattingEditProviderSelector } from '@opensumi/monaco-editor-core/esm/vs/editor/contrib/format/browser/format'; type IFormattingEditProvider = DocumentFormattingEditProvider | DocumentRangeFormattingEditProvider; interface IFormattingSelector { selectFormatter: IFormattingEditProviderSelector; } export declare class FormattingSelector implements IFormattingSelector { private quickPickService; private preferenceService; private modelService; protected readonly messageService: IMessageService; selectFormatter(formatters: T[], document: ITextModel, mode: FormattingMode, _kind: FormattingKind): Promise; protected doPick(elements: { [key: string]: T; }): Promise<{ selected: string; value: T; } | { selected?: undefined; value?: undefined; }>; protected getPreferedFormatter(languageId: string): string | undefined; protected savePreferredFormatter(languageId: string, formatterId: string): Promise; pickFormatter(formatters: T[], document: ITextModel): Promise; } export {}; //# sourceMappingURL=formatter-selector.d.ts.map