/// <reference types="react" />
/**
 * Props for {@link AttachmentUploadButton} component.
 * @internal
 */
export interface AttachmentUploadButtonProps {
    /**
     * A list of strings containing the comma separated list of supported media (aka. mime) types.
     * i.e. ['image/*', 'video/*', 'audio/*']
     * Default value is `['*']`, meaning all media types are supported.
     * Similar to the `accept` attribute of the `<input type="file" />` element.
     */
    supportedMediaTypes?: string[];
    /**
     * Disable multiple files to be selected if set to `true`.
     * Default value is `false`, meaning multiple files can be selected.
     * Similar to the `multiple` attribute of the `<input type="file" />` element.
     */
    disableMultipleUploads?: boolean;
    /**
     * onChange handler for the attachment upload button.
     * Similar to the `onChange` attribute of the `<input type="file" />` element.
     * Called every time files are selected through the attachment upload button with a {@link FileList}
     * of selected files.
     */
    onChange?: (files: FileList | null) => void;
}
/**
 * @internal
 */
export declare const AttachmentUploadButton: (props: AttachmentUploadButtonProps) => JSX.Element;
/**
 * A wrapper to return {@link AttachmentUploadButton} component conditionally.
 * It will return `<></>` for stable builds.
 * @internal
 */
export declare const AttachmentUploadButtonWrapper: (props: Pick<AttachmentUploadButtonProps, 'supportedMediaTypes' | 'disableMultipleUploads' | 'onChange'>) => JSX.Element;
//# sourceMappingURL=AttachmentUploadButton.d.ts.map