import { Event } from "../../../base/common/event.js";
import { IConfirmation, IConfirmationResult, IPromptWithCustomCancel, IPromptResultWithCancel, IPromptWithDefaultCancel, IPromptResult, IPrompt, IInput, IInputResult, type ConfirmResult, type IOpenDialogOptions, type IPickAndOpenOptions, type ISaveDialogOptions } from "@codingame/monaco-vscode-d6e33d82-c101-549d-a885-0807ab3e0cfb-common/vscode/vs/platform/dialogs/common/dialogs";
import { URI } from "../../../base/common/uri.js";
export declare const IDialogService: import("../../instantiation/common/instantiation.js").ServiceIdentifier<IDialogService>;
export interface IDialogService {
    readonly _serviceBrand: undefined;
    onWillShowDialog: Event<void>;
    onDidShowDialog: Event<void>;
    confirm(confirmation: IConfirmation): Promise<IConfirmationResult>;
    prompt<T>(prompt: IPromptWithCustomCancel<T>): Promise<IPromptResultWithCancel<T>>;
    prompt<T>(prompt: IPromptWithDefaultCancel<T>): Promise<IPromptResult<T>>;
    prompt<T>(prompt: IPrompt<T>): Promise<IPromptResult<T>>;
    input(input: IInput): Promise<IInputResult>;
    info(message: string, detail?: string): Promise<void>;
    warn(message: string, detail?: string): Promise<void>;
    error(message: string, detail?: string): Promise<void>;
    about(): Promise<void>;
}
export declare const IFileDialogService: import("../../instantiation/common/instantiation.js").ServiceIdentifier<IFileDialogService>;
export interface IFileDialogService {
    readonly _serviceBrand: undefined;
    defaultFilePath(schemeFilter?: string): Promise<URI>;
    defaultFolderPath(schemeFilter?: string): Promise<URI>;
    defaultWorkspacePath(schemeFilter?: string): Promise<URI>;
    pickFileFolderAndOpen(options: IPickAndOpenOptions): Promise<void>;
    pickFileAndOpen(options: IPickAndOpenOptions): Promise<void>;
    pickFolderAndOpen(options: IPickAndOpenOptions): Promise<void>;
    pickWorkspaceAndOpen(options: IPickAndOpenOptions): Promise<void>;
    pickFileToSave(defaultUri: URI, availableFileSystems?: string[]): Promise<URI | undefined>;
    preferredHome(schemeFilter?: string): Promise<URI>;
    showSaveDialog(options: ISaveDialogOptions): Promise<URI | undefined>;
    showSaveConfirm(fileNamesOrResources: (string | URI)[]): Promise<ConfirmResult>;
    showOpenDialog(options: IOpenDialogOptions): Promise<URI[] | undefined>;
}
