/**-----------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { FileRestrictions } from "../types";
/**
 * Defines the settings interface for the FileSelect functionality used in components that integrate the FileSelect component.
 *
 * @example
 * ```typescript
 * const fileSelectSettings: FileSelectSettings = {
 *   multiple: true,
 *   disabled: false
 * };
 * ```
 */
export interface FileSelectSettings {
    /**
     * Sets the `accept` attribute of the internal `input` element of the component.
     */
    accept?: string;
    /**
     * Disables the component.
     */
    disabled?: boolean;
    /**
     * Allows you to select multiple files. When you set this to `false`, you can select only one file at a time.
     */
    multiple?: boolean;
    /**
     * Specifies the `name` attribute of the `input` element of the FileSelect.
     */
    name?: string;
    /**
     * Sets the restrictions for selected files.
     */
    restrictions?: FileRestrictions;
    /**
     * Controls the visibility of the file list.
     */
    showFileList?: boolean;
    /**
     * Sets the `tabindex` of the component.
     */
    tabindex?: number;
    /**
     * Sets the `id` of the external drop zone that you want to associate with the component.
     */
    zoneId?: string;
}
