import { TdImageViewerProps } from './type';
declare const _default: import("vue").DefineComponent<{
    attach: {
        type: import("vue").PropType<TdImageViewerProps["attach"]>;
        default: TdImageViewerProps["attach"];
    };
    closeBtn: {
        type: import("vue").PropType<TdImageViewerProps["closeBtn"]>;
        default: TdImageViewerProps["closeBtn"];
    };
    closeOnEscKeydown: {
        type: BooleanConstructor;
        default: boolean;
    };
    closeOnOverlay: BooleanConstructor;
    draggable: {
        type: BooleanConstructor;
        default: any;
    };
    imageReferrerpolicy: {
        type: import("vue").PropType<TdImageViewerProps["imageReferrerpolicy"]>;
        validator(val: TdImageViewerProps["imageReferrerpolicy"]): boolean;
    };
    imageScale: {
        type: import("vue").PropType<TdImageViewerProps["imageScale"]>;
    };
    images: {
        type: import("vue").PropType<TdImageViewerProps["images"]>;
        default: () => TdImageViewerProps["images"];
    };
    index: {
        type: NumberConstructor;
        default: any;
    };
    defaultIndex: {
        type: NumberConstructor;
        default: number;
    };
    mode: {
        type: import("vue").PropType<TdImageViewerProps["mode"]>;
        default: TdImageViewerProps["mode"];
        validator(val: TdImageViewerProps["mode"]): boolean;
    };
    navigationArrow: {
        type: import("vue").PropType<TdImageViewerProps["navigationArrow"]>;
        default: TdImageViewerProps["navigationArrow"];
    };
    showOverlay: {
        type: BooleanConstructor;
        default: any;
    };
    title: {
        type: import("vue").PropType<TdImageViewerProps["title"]>;
    };
    trigger: {
        type: import("vue").PropType<TdImageViewerProps["trigger"]>;
    };
    viewerScale: {
        type: import("vue").PropType<TdImageViewerProps["viewerScale"]>;
    };
    visible: {
        type: BooleanConstructor;
        default: any;
    };
    modelValue: {
        type: BooleanConstructor;
        default: any;
    };
    defaultVisible: BooleanConstructor;
    zIndex: {
        type: NumberConstructor;
    };
    onClose: import("vue").PropType<TdImageViewerProps["onClose"]>;
    onDownload: import("vue").PropType<TdImageViewerProps["onDownload"]>;
    onIndexChange: import("vue").PropType<TdImageViewerProps["onIndexChange"]>;
}, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    attach: {
        type: import("vue").PropType<TdImageViewerProps["attach"]>;
        default: TdImageViewerProps["attach"];
    };
    closeBtn: {
        type: import("vue").PropType<TdImageViewerProps["closeBtn"]>;
        default: TdImageViewerProps["closeBtn"];
    };
    closeOnEscKeydown: {
        type: BooleanConstructor;
        default: boolean;
    };
    closeOnOverlay: BooleanConstructor;
    draggable: {
        type: BooleanConstructor;
        default: any;
    };
    imageReferrerpolicy: {
        type: import("vue").PropType<TdImageViewerProps["imageReferrerpolicy"]>;
        validator(val: TdImageViewerProps["imageReferrerpolicy"]): boolean;
    };
    imageScale: {
        type: import("vue").PropType<TdImageViewerProps["imageScale"]>;
    };
    images: {
        type: import("vue").PropType<TdImageViewerProps["images"]>;
        default: () => TdImageViewerProps["images"];
    };
    index: {
        type: NumberConstructor;
        default: any;
    };
    defaultIndex: {
        type: NumberConstructor;
        default: number;
    };
    mode: {
        type: import("vue").PropType<TdImageViewerProps["mode"]>;
        default: TdImageViewerProps["mode"];
        validator(val: TdImageViewerProps["mode"]): boolean;
    };
    navigationArrow: {
        type: import("vue").PropType<TdImageViewerProps["navigationArrow"]>;
        default: TdImageViewerProps["navigationArrow"];
    };
    showOverlay: {
        type: BooleanConstructor;
        default: any;
    };
    title: {
        type: import("vue").PropType<TdImageViewerProps["title"]>;
    };
    trigger: {
        type: import("vue").PropType<TdImageViewerProps["trigger"]>;
    };
    viewerScale: {
        type: import("vue").PropType<TdImageViewerProps["viewerScale"]>;
    };
    visible: {
        type: BooleanConstructor;
        default: any;
    };
    modelValue: {
        type: BooleanConstructor;
        default: any;
    };
    defaultVisible: BooleanConstructor;
    zIndex: {
        type: NumberConstructor;
    };
    onClose: import("vue").PropType<TdImageViewerProps["onClose"]>;
    onDownload: import("vue").PropType<TdImageViewerProps["onDownload"]>;
    onIndexChange: import("vue").PropType<TdImageViewerProps["onIndexChange"]>;
}>>, {
    mode: "modal" | "modeless";
    draggable: boolean;
    visible: boolean;
    modelValue: boolean;
    attach: import("..").AttachNode;
    defaultVisible: boolean;
    showOverlay: boolean;
    index: number;
    images: (string | File | import("./type").ImageInfo)[];
    closeBtn: boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
    closeOnEscKeydown: boolean;
    navigationArrow: boolean | ((h: typeof import("vue").h) => import("..").TNodeReturnValue);
    closeOnOverlay: boolean;
    defaultIndex: number;
}, {}>;
export default _default;
