import { DropzoneContentProps, DropzoneHookProps, DropzoneProps } from '../../Dropzone/Dropzone.types';
import { ValueId } from '../FileSelect.types';
interface QaTags {
    /**
     * @since 10.19.0
     */
    attachFiles?: string;
    /**
     * @since 10.19.0
     */
    fileToken?: (id: ValueId) => string;
}
export interface FileSelectDropzoneProps {
    /**
     * @since 10.19.0
     */
    contentRenderer?: (props: DropzoneContentProps) => React.ReactNode;
    /**
     * @since 10.19.0
     */
    hideDropzone?: boolean;
    /**
     * @since 10.19.0
     */
    onAttachFromProject: () => void;
    /**
     * @since 10.19.0
     */
    tooltip: DropzoneProps['tooltip'];
    /**
     * @since 10.19.0
     */
    accept: DropzoneHookProps['accept'];
    /**
     * @since 10.19.0
     */
    maxFileNumber?: number;
    /**
     * @since 10.19.0
     */
    maxFileSize?: number;
    /**
     * @since 10.19.0
     */
    minFileSize?: number;
    /**
     * @since 10.19.0
     */
    disabled: boolean;
    /**
     * @since 10.19.0
     */
    value: DropzoneHookProps['value'];
    /**
     * @since 10.19.0
     */
    onDrop: DropzoneHookProps['onDrop'];
    /**
     * @since 10.19.0
     */
    multiple: boolean;
    /**
     * @since 10.19.0
     */
    noDrag: boolean;
    /**
     * @since 10.19.0
     */
    qa?: QaTags;
}
export interface FileSelectDropzoneRef {
    /**
     * @since 10.19.0
     */
    clearErrors: () => void;
    /**
     * @since 10.19.0
     */
    attachButton: HTMLButtonElement | null;
}
export interface FileSelectDropzoneContentProps extends DropzoneContentProps {
    /**
     * @since 10.19.0
     */
    hideDropzone?: boolean;
    /**
     * @since 10.19.0
     */
    multiple: boolean;
    /**
     * @since 10.19.0
     */
    onAttachFromProject: () => void;
    /**
     * @since 10.19.0
     */
    tooltip?: React.ReactNode | string;
    /**
     * @since 10.19.0
     */
    qa?: QaTags;
}
export {};
