import React from 'react';
export type SupportedFormat = {
    type: string;
    maxSize: number;
    extensions: string[];
    icon: React.ReactNode;
    content?: React.ReactNode;
};
export type AttachmentButtonPopoverProps = {
    children?: React.ReactNode;
    supportedFormat?: SupportedFormat;
    /** 上传图片的处理函数 */
    uploadImage?: (forGallery?: boolean) => Promise<void>;
};
export declare const SupportedFileFormats: {
    image: {
        icon: React.JSX.Element;
        type: string;
        maxSize: number;
        extensions: string[];
    };
    document: {
        icon: React.JSX.Element;
        type: string;
        maxSize: number;
        extensions: string[];
    };
    audio: {
        icon: React.JSX.Element;
        type: string;
        maxSize: number;
        extensions: string[];
    };
    video: {
        icon: React.JSX.Element;
        type: string;
        maxSize: number;
        extensions: string[];
    };
};
export declare const AttachmentSupportedFormatsContent: React.FC<AttachmentButtonPopoverProps>;
export declare const AttachmentButtonPopover: React.FC<AttachmentButtonPopoverProps>;
export default AttachmentButtonPopover;
