import { DialogValues, InputBase, InputBaseOptions } from ".."; import * as vscode from "vscode"; /** * Namespace for any open dialogs */ export declare namespace OpenDialog { /** * Base Type for the options. This removes {@link vscode.OpenDialogOptions.title | title}, * because it will be set by the multi-step-input and should be the same. */ type BaseOpenDialogOptions = Omit; /** * Type that requires the {@link vscode.OpenDialogOptions.openLabel | openLabel} from the {@link vscode.OpenDialogOptions} * in order to have a input for the user what to select. */ type RequiredOpenDialogOptions = BaseOpenDialogOptions & { openLabel: NonNullable; }; /** * Any options for Open Dialogs. */ export interface OpenDialogOptions extends InputBaseOptions { /** * Any vscode options for the open dialog */ readonly openDialogOptions: RequiredOpenDialogOptions; } export {}; } /** * Input for any Open Dialog (files and directory). */ export declare class OpenDialog extends InputBase { /** * @override */ showDialog(currentResults: DialogValues, title: string): Promise; /** * Finds out the default URI that should be used for the dialog options. * * If there are previous values from the dialog values, then these will be used. * Otherwise the configured option will used. * * @param currentResults - the current dialog values * @param defaultUriFromOptions - the defaultUri from the options that were given from the user * @returns the default uri that should be used for the dialog options */ private findOutDefaultUri; }