import { QWidget } from "./QWidget"; import { AcceptMode, DialogLabel, FileMode, Option, ViewMode } from "../QtEnums"; import { QDialog, QDialogSignals } from "./QDialog"; /** > Create and control file dialogs. * **This class is a JS wrapper around Qt's [QFileDialog class](https://doc.qt.io/qt-5/qfiledialog.html)** A `QFileDialog` class provides a dialog that allow users to select files or directories. ### Example ```javascript import { QFileDialog } from "@vixen-js/core"; const fileDialog = new QFileDialog(); fileDialog.setFileMode(FileMode.AnyFile); fileDialog.setNameFilter('Images (*.png *.xpm *.jpg)'); fileDialog.exec(); const selectedFiles = fileDialog.selectedFiles(); console.log(selectedFiles); ``` */ export declare class QFileDialog extends QDialog { constructor(); constructor(parent: QWidget, caption?: string, directory?: string, filter?: string); supportedSchemes(): string[]; setSupportedSchemes(schemes: string[]): void; setNameFilter(filter: string): void; selectedFiles(): string[]; labelText(label: DialogLabel): string; setLabelText(label: DialogLabel, text: string): void; setOption(option: Option, on?: boolean): void; acceptMode(): AcceptMode; defaultSuffix(): string; fileMode(): FileMode; options(): Option; viewMode(): ViewMode; setAcceptMode(acceptMode: AcceptMode): void; setDefaultSuffix(defaultSuffix: string): void; setFileMode(fileMode: FileMode): void; setOptions(options: Option): void; } export interface QFileDialogSignals extends QDialogSignals { onCurrentChange: (path: string) => void; onCurrentUrlChange: (url: string) => void; onDirectoryEnter: (directory: string) => void; onDirectoryUrlEnter: (url: string) => void; onFileSelect: (file: string) => void; onFilesSelect: (selected: string[]) => void; onFilterSelect: (filter: string) => void; onUrlSelect: (url: string) => void; onUrlsSelect: (urls: string[]) => void; }