yanzhen-design-vue
Version:
86 lines (85 loc) • 2.25 kB
TypeScript
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 {};