import { default as ViewerJs } from 'viewerjs';
import { ExtractPropTypes } from 'vue';
export declare const imageViewerProps: {
    fileList: import('@yanzhen-libs/utils-vue').EpPropFinalized<ArrayConstructor, unknown, unknown, () => FileItem[], boolean>;
    isUploadViewer: {
        type: BooleanConstructor;
    };
};
export type ImageViewerProps = ExtractPropTypes<typeof imageViewerProps>;
export type ImageInfo = {
    url: string;
    name?: string;
};
export type ImagesInfo = {
    onlyUrl: boolean;
    images: (string | ImageInfo)[];
};
export type ViewerType = {
    ready?: boolean;
    view(index: number): void;
    destroy(): void;
};
export interface ViewerJsType extends ViewerJs {
    ready?: boolean;
    index?: number;
}
export type FileItem = {
    url: string;
};
export type Images = {
    url: string;
};
type ToolbarOptions = {
    zoomIn: boolean;
    zoomOut: boolean;
    oneToOne: boolean;
    reset: boolean;
    prev: boolean;
    play: boolean;
    custom?: {
        title: string;
        onClick: (event: MouseEvent) => void;
    };
    next: boolean;
    rotateLeft: boolean;
    rotateRight: boolean;
    flipHorizontal: boolean;
    flipVertical: boolean;
};
export type ViewerOptions = {
    title: boolean;
    button: boolean;
    minZoomRatio: number;
    maxZoomRatio: number;
    toolbar: ToolbarOptions;
    hide: (e: Event) => void;
};
export declare const imgCanPreviewFormats: string[];
export declare const PICTURE_VIEWER_OPTIONS: {
    title: boolean;
    button: boolean;
    minZoomRatio: number;
    maxZoomRatio: number;
    toolbar: {
        zoomIn: boolean;
        zoomOut: boolean;
        oneToOne: boolean;
        reset: boolean;
        prev: boolean;
        play: boolean;
        custom: {
            title: string;
            onClick: (event: MouseEvent) => void;
        };
        next: boolean;
        rotateLeft: boolean;
        rotateRight: boolean;
        flipHorizontal: boolean;
        flipVertical: boolean;
    };
    hide: (e: Event) => void;
};
export declare const createCustomElementWithChildren: (className: string, children: HTMLElement[], onClick: (() => void) | null) => HTMLDivElement;
export declare const handleViewerHiddenRemoveEl: () => void;
export {};
