declare const _default: import("vue-demi").DefineComponent<import("vue-demi").ExtractPropTypes<{
    [x: string]: {
        type: BooleanConstructor;
        default: undefined;
    } | {
        type: BooleanConstructor;
        default: undefined;
    } | {
        validator: (value: unknown) => boolean;
    } | {
        validator?: undefined;
    };
    srcAt: {};
    minCount: {};
    maxCount: {};
    minSize: {};
    maxSize: {};
    width: {};
    height: {};
    resolution: {};
    aspectRatio: {};
    upload: {};
    outputType: {};
    validator: {};
    locale: {};
}>, {}, {
    isVue3: boolean;
    queue: never[];
    editor: {
        queue: never[];
        show: boolean;
        value: null;
    };
    files: never[];
    sortablejs: null;
    updatingModelValue: boolean;
    fileURLToBePreviewed: undefined;
}, {
    uploading(): boolean;
    Count(): {
        tip: string | undefined;
        validate: (v: any) => boolean;
        min: number | undefined;
        minLabel: string | undefined;
        max: number | undefined;
        maxLabel: string | undefined;
        options: number[] | undefined;
        optionsLabel: string | undefined;
        target: number | undefined;
        targetLabel: string | undefined;
    };
    Size(): {
        tip: string | undefined;
        validate: (v: any) => boolean;
        min: number | undefined;
        minLabel: string | undefined;
        max: number | undefined;
        maxLabel: string | undefined;
        options: number[] | undefined;
        optionsLabel: string | undefined;
        target: number | undefined;
        targetLabel: string | undefined;
    };
    Width(): {
        tip: string | undefined;
        validate: (v: any) => boolean;
        min: number | undefined;
        minLabel: string | undefined;
        max: number | undefined;
        maxLabel: string | undefined;
        options: number[] | undefined;
        optionsLabel: string | undefined;
        target: number | undefined;
        targetLabel: string | undefined;
    };
    Height(): {
        tip: string | undefined;
        validate: (v: any) => boolean;
        min: number | undefined;
        minLabel: string | undefined;
        max: number | undefined;
        maxLabel: string | undefined;
        options: number[] | undefined;
        optionsLabel: string | undefined;
        target: number | undefined;
        targetLabel: string | undefined;
    };
    Resolution(): {
        tip: string | undefined;
        validate: (v: any) => boolean;
        min: number | undefined;
        minLabel: string | undefined;
        max: number | undefined;
        maxLabel: string | undefined;
        options: number[] | undefined;
        optionsLabel: string | undefined;
        target: number | undefined;
        targetLabel: string | undefined;
    };
    AspectRatio(): {
        tip: string | undefined;
        validate: (v: any) => boolean;
        min: number | undefined;
        minLabel: string | undefined;
        max: number | undefined;
        maxLabel: string | undefined;
        options: number[] | undefined;
        optionsLabel: string | undefined;
        target: number | undefined;
        targetLabel: string | undefined;
    };
    dimensionTip(): string;
    Locale(): any;
    OutputType(): any;
    SrcAt(): any;
    Validator(): any;
    Upload(): any;
    Disabled(): any;
    Editable(): any;
    Arrayed(): any;
    Stringified(): any;
    isFull(): any;
    canSort(): boolean;
    isInsideTable(): boolean;
    ElUploadProps(): any;
    Type(): {
        extensions: any;
        tip: string;
        mimeMap: {};
    };
}, {
    httpRequest(output: any): Promise<void>;
    emitInput(): void;
    validateTypeAndSize(source: any): Promise<any>;
    validateDimension(file: any): Promise<any>;
    openEditor(input: any): Promise<void>;
    onChange(file: any, _fileList: any): Promise<void>;
    onEditorOpened(): void;
    onEditorClosed(): void;
    onEditorConfirm(output: any): void;
    onEditorClose(): void;
    sort(): void;
    onExceed(): any;
    onPreview(uploadFile: any): void;
    onBeforeRemove(): false | undefined;
    onRemove(file: any, fileList: any): void;
    formatModelValue(modelValue: any): any;
    valueToFile(value: any): any;
}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, string[], string, import("vue-demi").PublicProps, Readonly<import("vue-demi").ExtractPropTypes<{
    [x: string]: {
        type: BooleanConstructor;
        default: undefined;
    } | {
        type: BooleanConstructor;
        default: undefined;
    } | {
        validator: (value: unknown) => boolean;
    } | {
        validator?: undefined;
    };
    srcAt: {};
    minCount: {};
    maxCount: {};
    minSize: {};
    maxSize: {};
    width: {};
    height: {};
    resolution: {};
    aspectRatio: {};
    upload: {};
    outputType: {};
    validator: {};
    locale: {};
}>> & Readonly<{
    [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
}>, {}, {}, {
    FaImage: import("vue-demi").DefineComponent<import("vue-demi").ExtractPropTypes<{
        [model
            .
                prop]: {};
        srcAt: {};
        pattern: {};
        swiperOptions: {};
        qrcode: {
            type: (BooleanConstructor | FunctionConstructor)[];
            default: undefined;
        };
        qrcodeOptions: {};
        viewable: {
            type: BooleanConstructor;
            default: undefined;
        };
        viewerOptions: {};
    }>, {}, {
        files: never[];
        viewer: null;
        swiper: null;
        loading: boolean;
        cleanup: null;
    }, {
        Viewable(): any;
        ViewerOptions(): any;
        SwiperOptions(): any;
        isInsideTable(): boolean;
        Pattern(): any;
        Value(): any;
        SrcAt(): any;
        QRCode(): any;
        QRCodeOptions(): any;
        Attrs(): any;
    }, {
        createItem(src: any): Promise<{
            src: string;
        }>;
        hydrate(): void;
        formatModelValue(modelValue: any): Promise<any>;
    }, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, import("vue-demi").PublicProps, Readonly<import("vue-demi").ExtractPropTypes<{
        [model
            .
                prop]: {};
        srcAt: {};
        pattern: {};
        swiperOptions: {};
        qrcode: {
            type: (BooleanConstructor | FunctionConstructor)[];
            default: undefined;
        };
        qrcodeOptions: {};
        viewable: {
            type: BooleanConstructor;
            default: undefined;
        };
        viewerOptions: {};
    }>> & Readonly<{}>, {}, {}, {}, {}, "viewer" | "swiper" | "hydrate", import("vue-demi").ComponentProvideOptions, true, {}, any>;
    ImageEditor: import("vue-demi").DefineComponent<import("vue-demi").ExtractPropTypes<{
        show: {
            type: BooleanConstructor;
            required: true;
        };
        value: ({
            new (blobParts?: BlobPart[], options?: BlobPropertyBag): Blob;
            prototype: Blob;
        } | StringConstructor | {
            new (fileBits: BlobPart[], fileName: string, options?: FilePropertyBag): File;
            prototype: File;
        })[];
        outputType: StringConstructor;
        size: ObjectConstructor;
        width: ObjectConstructor;
        height: ObjectConstructor;
        aspectRatio: ObjectConstructor;
        resolution: ObjectConstructor;
        validator: FunctionConstructor;
        locale: {
            type: ObjectConstructor;
            default: () => {};
        };
    }>, {}, {
        isVue3: boolean;
        fullscreen: boolean;
        blobLike: null;
        cnum: null;
        localURL: null;
        imageTag: null;
        loading: boolean;
        cropper: null;
        originalSizeLabel: string;
        inputWidth: undefined;
        inputHeight: undefined;
        flippedX: boolean;
        flippedY: boolean;
        dimensionScaleFactor: null;
        pngDecodingError: null;
        rotateDegree: number;
        quality: number;
        isAspectRatioLocked: boolean;
    }, {
        Debounce(): 100;
        sizeTooltip(): any;
        isWidthSpecified(): boolean;
        isHeightSpecified(): boolean;
        specifiedAspectRatio(): any;
        isAspectRatioSpecified(): boolean;
        specifiedAspectRatioLabel(): any;
        impliedAspectRatio(): number | null;
        lockedAspectRatio(): any;
        isCompressible(): null;
        compressTooltip(): null;
    }, {
        initSetting(): void;
        initCropBox(): void;
        onWidthChange(newVal: any, oldVal: any): void;
        onHeightChange(newVal: any, oldVal: any): void;
        onIsAspectRatioSpecifiedChange(): void;
        onFullscreenChange(v: any): void;
        onRotateDegreeChange(n: any): void;
        getSizeDiffText(before: any, after: any): string;
        getSizeTooltip(blobLike: any): any;
        shouldCrop(): any;
        onConfirm(): Promise<any>;
        doConfirm(blob: any, resolve: any, reject: any): void;
        flipX(): void;
        flipY(): void;
        getCropBoxData(): void;
        getData(): void;
        move(offsetX: any, offsetY: any): void;
        reset(): void;
        rotate(deg: any): void;
        setCropBoxData(): void;
        zoom(percent: any): void;
        rotateCropBox(): void;
        onCropmove(): void;
    }, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, ("update:show" | "confirm")[], "update:show" | "confirm", import("vue-demi").PublicProps, Readonly<import("vue-demi").ExtractPropTypes<{
        show: {
            type: BooleanConstructor;
            required: true;
        };
        value: ({
            new (blobParts?: BlobPart[], options?: BlobPropertyBag): Blob;
            prototype: Blob;
        } | StringConstructor | {
            new (fileBits: BlobPart[], fileName: string, options?: FilePropertyBag): File;
            prototype: File;
        })[];
        outputType: StringConstructor;
        size: ObjectConstructor;
        width: ObjectConstructor;
        height: ObjectConstructor;
        aspectRatio: ObjectConstructor;
        resolution: ObjectConstructor;
        validator: FunctionConstructor;
        locale: {
            type: ObjectConstructor;
            default: () => {};
        };
    }>> & Readonly<{
        onConfirm?: ((...args: any[]) => any) | undefined;
        "onUpdate:show"?: ((...args: any[]) => any) | undefined;
    }>, {
        locale: Record<string, any>;
    }, {}, {
        FaFormDialog: import("vue-demi").DefineComponent<import("vue-demi").ExtractPropTypes<{
            [x: string]: {};
            title: {};
            elFormProps: {};
            retrieve: {};
            confirm: {};
            deny: {};
            save: {};
            reset: {};
            locale: {};
        }>, {}, {
            initialValue: undefined;
            initiated: boolean;
            retrieving_inner: boolean;
            confirming: boolean;
            denying: boolean;
            saving: boolean;
            closing: boolean;
            scrollbar: null;
            isFullscreen: boolean;
            labelWidth: undefined;
            key: number;
            isVue3: boolean;
        }, {
            Readonly(): any;
            Locale(): any;
            Listeners(): any;
            Slots(): any;
            headerSlotName(): "header" | "title";
            ShowFullscreenToggle(): any;
            ShowConfirmButton(): any;
            ShowDenyButton(): any;
            ShowSaveButton(): any;
            ShowResetButton(): any;
            ShowCancelButton(): any;
            ReverseButtons(): any;
            ValueIsPlainObject(): boolean;
            Title(): any;
            Retrieving(): any;
            Retrieve(): any;
            Confirm(): any;
            Deny(): any;
            Save(): any;
            Reset(): any;
            ElDialogProps(): any;
            ElFormProps(): any;
        }, {
            isGlobalSlot: typeof import("../../utils").isGlobalSlot;
            toggleFullscreen(newValue?: boolean): void;
            computeLabelWidth(): void;
            onClose(): void;
            onClosed(): void;
            close(): void;
            doClose(): void;
            onAction(type: any, status: any): void;
            onReset(): void;
            highlightError: (selectors?: string | Element | NodeList, container?: Window & typeof globalThis) => void;
        }, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, string[], string, import("vue-demi").PublicProps, Readonly<import("vue-demi").ExtractPropTypes<{
            [x: string]: {};
            title: {};
            elFormProps: {};
            retrieve: {};
            confirm: {};
            deny: {};
            save: {};
            reset: {};
            locale: {};
        }>> & Readonly<{
            [x: `on${Capitalize<string>}`]: ((...args: any[]) => any) | undefined;
        }>, {}, {}, {}, {}, string, import("vue-demi").ComponentProvideOptions, true, {}, any>;
    }, {}, string, import("vue-demi").ComponentProvideOptions, true, {}, any>;
}, {}, "openEditor" | "uploading", import("vue-demi").ComponentProvideOptions, true, {}, any>;
export default _default;
declare namespace model {
    let prop: string;
    let event: string;
}
