import { PropType } from 'vue';
import { CssClass } from '../../helpers/css-classes';
declare const _default: import("vue").DefineComponent<{
    elevated: {
        type: PropType<boolean>;
        default: boolean;
    };
    rounded: {
        type: PropType<boolean>;
        default: boolean;
    };
    roundedLg: {
        type: PropType<boolean>;
        default: boolean;
    };
    round: {
        type: PropType<boolean>;
        default: boolean;
    };
    dark: {
        type: PropType<boolean>;
        default: boolean;
    };
    light: {
        type: PropType<boolean>;
        default: boolean;
    };
    buttonText: {
        type: PropType<string>;
        default: null;
    };
    buttonColor: {
        type: PropType<string>;
        default: string;
    };
    dropAreaText: {
        type: PropType<string>;
        default: string;
    };
    errorText: {
        type: PropType<string>;
        default: string;
    };
    dropAreaTextWhenDragging: {
        type: PropType<string>;
        default: string;
    };
    dropAreaTextWhenDisabled: {
        type: PropType<string>;
        default: string;
    };
    isButtonHidden: {
        type: PropType<boolean>;
        default: boolean;
    };
    isDropAreaHidden: {
        type: PropType<boolean>;
        default: boolean;
    };
    multipleFiles: {
        type: PropType<boolean>;
        default: boolean;
    };
    color: {
        type: PropType<string>;
        default: string;
    };
    acceptedTypes: {
        type: PropType<string[]>;
        default: () => never[];
    };
    acceptedExtensions: {
        type: PropType<string[]>;
        default: () => never[];
    };
    maxSize: {
        type: NumberConstructor;
        default: null;
    };
}, unknown, {
    isDraggedInDropArea: boolean;
    isDropAreaDisabled: boolean;
}, {
    dropAreaClasses(): CssClass[];
    buttonClasses(): CssClass[];
    btnText(): string | null;
    computedDropAreaText(): string | null;
    uploadErrorText(): string | null;
    uploadSizeFileErrorText(): string | null;
    acceptString(): string;
}, {
    onDrop(ev: DragEvent): void;
    toggleDrag(): void;
    validateFiles(files: FileList): boolean;
    emitFileUpload(files: FileList | null): void;
    addFileFromDisc(): void;
    fileAddedFromDisc(event: Event): void;
    handleDropAreaState(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "upload"[], "upload", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    elevated: {
        type: PropType<boolean>;
        default: boolean;
    };
    rounded: {
        type: PropType<boolean>;
        default: boolean;
    };
    roundedLg: {
        type: PropType<boolean>;
        default: boolean;
    };
    round: {
        type: PropType<boolean>;
        default: boolean;
    };
    dark: {
        type: PropType<boolean>;
        default: boolean;
    };
    light: {
        type: PropType<boolean>;
        default: boolean;
    };
    buttonText: {
        type: PropType<string>;
        default: null;
    };
    buttonColor: {
        type: PropType<string>;
        default: string;
    };
    dropAreaText: {
        type: PropType<string>;
        default: string;
    };
    errorText: {
        type: PropType<string>;
        default: string;
    };
    dropAreaTextWhenDragging: {
        type: PropType<string>;
        default: string;
    };
    dropAreaTextWhenDisabled: {
        type: PropType<string>;
        default: string;
    };
    isButtonHidden: {
        type: PropType<boolean>;
        default: boolean;
    };
    isDropAreaHidden: {
        type: PropType<boolean>;
        default: boolean;
    };
    multipleFiles: {
        type: PropType<boolean>;
        default: boolean;
    };
    color: {
        type: PropType<string>;
        default: string;
    };
    acceptedTypes: {
        type: PropType<string[]>;
        default: () => never[];
    };
    acceptedExtensions: {
        type: PropType<string[]>;
        default: () => never[];
    };
    maxSize: {
        type: NumberConstructor;
        default: null;
    };
}>> & {
    onUpload?: ((...args: any[]) => any) | undefined;
}, {
    color: string;
    dark: boolean;
    light: boolean;
    elevated: boolean;
    rounded: boolean;
    roundedLg: boolean;
    round: boolean;
    errorText: string;
    buttonText: string;
    buttonColor: string;
    dropAreaText: string;
    dropAreaTextWhenDragging: string;
    dropAreaTextWhenDisabled: string;
    isButtonHidden: boolean;
    isDropAreaHidden: boolean;
    multipleFiles: boolean;
    acceptedTypes: string[];
    acceptedExtensions: string[];
    maxSize: number;
}>;
export default _default;
