tdesign-react
Version:
TDesign Component for React
61 lines (60 loc) • 1.89 kB
TypeScript
import React, { KeyboardEvent, MouseEvent } from 'react';
import type { TNode } from '../common';
import type { ImageViewerProps } from './ImageViewer';
import type { ImageInfo, ImageScale, ImageViewerScale, TdImageViewerProps } from './type';
interface ImageModalItemProps {
rotateZ: number;
scale: number;
mirror: number;
src: string | File;
preSrc?: string | File;
errorText: string;
imageReferrerpolicy?: TdImageViewerProps['imageReferrerpolicy'];
isSvg: boolean;
}
export declare const ImageModalItem: React.FC<ImageModalItemProps>;
interface ImageViewerUtilsProps {
scale: number;
currentImage: ImageInfo;
tipText: {
mirror: string;
rotate: string;
originalSize: string;
};
zIndex: number;
onMirror: () => void;
onRotate: (ROTATE_COUNT: number) => void;
onZoom: () => void;
onZoomOut: () => void;
onReset: () => void;
onDownload?: TdImageViewerProps['onDownload'];
}
export declare const ImageViewerUtils: React.FC<ImageViewerUtilsProps>;
export interface ImageModalProps {
title?: TNode;
visible: boolean;
closeOnOverlay: boolean;
showOverlay: boolean;
index: number;
defaultIndex?: number;
images: ImageInfo[];
imageScale: ImageScale;
viewerScale: ImageViewerScale;
zIndex: number;
isMini: boolean;
draggable: boolean;
closeBtn: boolean | TNode;
closeOnEscKeydown?: boolean;
imageReferrerpolicy?: ImageViewerProps['imageReferrerpolicy'];
onClose: (context: {
trigger: 'close-btn' | 'overlay' | 'esc';
e: MouseEvent<HTMLElement> | KeyboardEvent;
}) => void;
onOpen: () => void;
onDownload?: TdImageViewerProps['onDownload'];
onIndexChange?: (index: number, context: {
trigger: 'prev' | 'next';
}) => void;
}
export declare const ImageModal: React.FC<ImageModalProps>;
export {};