import { ClassValue, CSSProperties, PropType, StyleValue, VNodeChild } from 'vue';
import { FileCardProps, FileCardSlotInfo, SemanticType as CardSemanticType } from './FileCard';
export type SemanticType = "root" | "card";
export interface FileCardListProps {
    prefixCls?: string;
    class?: ClassValue;
    classes?: Partial<Record<SemanticType | CardSemanticType, string>>;
    rootClass?: string;
    style?: StyleValue;
    styles?: Partial<Record<SemanticType | CardSemanticType, CSSProperties>>;
    items: FileCardProps[];
    size?: "small" | "default";
    removable?: boolean | ((item: FileCardProps) => boolean);
    onRemove?: (item: FileCardProps) => void;
    extension?: VNodeChild;
    overflow?: "scrollX" | "scrollY" | "wrap";
}
export interface FileCardListSlotInfo extends FileCardSlotInfo {
    item: FileCardProps;
    index: number;
}
export declare const XFileCardList: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    prefixCls: {
        type: StringConstructor;
        default: string;
    };
    class: {
        type: PropType<ClassValue>;
        default: undefined;
    };
    classes: {
        type: PropType<Partial<Record<SemanticType | CardSemanticType, string>>>;
        default: () => {};
    };
    rootClass: {
        type: StringConstructor;
        default: string;
    };
    style: {
        type: PropType<StyleValue>;
        default: undefined;
    };
    styles: {
        type: PropType<Partial<Record<SemanticType | CardSemanticType, CSSProperties>>>;
        default: () => {};
    };
    items: {
        type: PropType<FileCardProps[]>;
        default: () => never[];
    };
    size: {
        type: PropType<"small" | "default">;
        default: string;
    };
    removable: {
        type: PropType<boolean | ((item: FileCardProps) => boolean)>;
        default: boolean;
    };
    onRemove: {
        type: PropType<(item: FileCardProps) => void>;
        default: undefined;
    };
    extension: {
        type: PropType<VNodeChild>;
        default: undefined;
    };
    overflow: {
        type: PropType<"scrollX" | "scrollY" | "wrap">;
        default: undefined;
    };
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    prefixCls: {
        type: StringConstructor;
        default: string;
    };
    class: {
        type: PropType<ClassValue>;
        default: undefined;
    };
    classes: {
        type: PropType<Partial<Record<SemanticType | CardSemanticType, string>>>;
        default: () => {};
    };
    rootClass: {
        type: StringConstructor;
        default: string;
    };
    style: {
        type: PropType<StyleValue>;
        default: undefined;
    };
    styles: {
        type: PropType<Partial<Record<SemanticType | CardSemanticType, CSSProperties>>>;
        default: () => {};
    };
    items: {
        type: PropType<FileCardProps[]>;
        default: () => never[];
    };
    size: {
        type: PropType<"small" | "default">;
        default: string;
    };
    removable: {
        type: PropType<boolean | ((item: FileCardProps) => boolean)>;
        default: boolean;
    };
    onRemove: {
        type: PropType<(item: FileCardProps) => void>;
        default: undefined;
    };
    extension: {
        type: PropType<VNodeChild>;
        default: undefined;
    };
    overflow: {
        type: PropType<"scrollX" | "scrollY" | "wrap">;
        default: undefined;
    };
}>> & Readonly<{}>, {
    size: "small" | "default";
    prefixCls: string;
    overflow: "wrap" | "scrollX" | "scrollY";
    style: StyleValue;
    rootClass: string;
    class: ClassValue;
    classes: Partial<Record<"name" | "icon" | "root" | "file" | "description" | "card", string>>;
    styles: Partial<Record<"name" | "icon" | "root" | "file" | "description" | "card", CSSProperties>>;
    items: FileCardProps[];
    removable: boolean | ((item: FileCardProps) => boolean);
    onRemove: (item: FileCardProps) => void;
    extension: VNodeChild;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default XFileCardList;
