/// /// import React from 'react'; import { ThemeProps } from 'amis-core'; import { LocaleProps } from 'amis-core'; export declare enum ImageActionKey { /** 右旋转 */ ROTATE_RIGHT = "rotateRight", /** 左旋转 */ ROTATE_LEFT = "rotateLeft", /** 等比例放大 */ ZOOM_IN = "zoomIn", /** 等比例缩小 */ ZOOM_OUT = "zoomOut", /** 恢复原图缩放比例尺 */ SCALE_ORIGIN = "scaleOrigin" } export interface ImageAction { key: ImageActionKey; label?: string; icon?: string | React.ReactNode; iconClassName?: string; disabled?: boolean; onClick?: (context: ImageGallery) => void; } export interface ImageGalleryProps extends ThemeProps, LocaleProps { children: React.ReactNode | Array; modalContainer?: () => HTMLElement; /** 操作栏 */ actions?: ImageAction[]; imageGallaryClassName?: string; } export interface ImageGalleryState { isOpened: boolean; index: number; items: Array<{ src: string; originalSrc: string; title?: string; caption?: string; }>; /** 图片缩放比例尺 */ scale: number; /** 图片旋转角度 */ rotate: number; /** * 水平位移 */ tx: number; /** * 垂直位移 */ ty: number; /** 是否开启操作栏 */ showToolbar?: boolean; /** 是否显示底部图片集 */ enlargeWithGallary?: boolean; /** 放大详情图类名 */ imageGallaryClassName?: string; /** 工具栏配置 */ actions?: ImageAction[]; } export declare class ImageGallery extends React.Component { static defaultProps: Pick; state: ImageGalleryState; galleryMain?: HTMLDivElement; galleryMainRef(ref: HTMLDivElement): void; onWheelScroll(event: WheelEvent): void; startX: number; startY: number; startTx: number; startTy: number; onMouseDown(event: MouseEvent): void; onMouseMove(event: MouseEvent): void; onMouseUp(): void; handleImageEnlarge(info: { src: string; originalSrc: string; list?: Array<{ src: string; originalSrc: string; title?: string; caption?: string; }>; title?: string; caption?: string; index?: number; showToolbar?: boolean; imageGallaryClassName?: string; toolbarActions?: ImageAction[]; enlargeWithGallary?: boolean; }): void; resetImageAction(): void; close(): void; prev(): void; next(): void; handleItemClick(e: React.MouseEvent): void; handleToolbarAction: import("lodash").DebouncedFuncLeading<(action: ImageAction) => void>; renderToolbar(actions: ImageAction[]): React.JSX.Element; render(): React.JSX.Element; } declare const _default: { new (props: Omit, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps): { ref: any; childRef(ref: any): void; getWrappedInstance(): any; render(): React.JSX.Element; context: unknown; setState(state: {} | ((prevState: Readonly<{}>, props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void; forceUpdate(callback?: (() => void) | undefined): void; readonly props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>; state: Readonly<{}>; refs: { [key: string]: React.ReactInstance; }; componentDidMount?(): void; shouldComponentUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>, nextState: Readonly<{}>, nextContext: any): boolean; componentWillUnmount?(): void; componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void; getSnapshotBeforeUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>, prevState: Readonly<{}>): any; componentDidUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>, prevState: Readonly<{}>, snapshot?: any): void; componentWillMount?(): void; UNSAFE_componentWillMount?(): void; componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>, nextContext: any): void; UNSAFE_componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>, nextContext: any): void; componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>, nextState: Readonly<{}>, nextContext: any): void; UNSAFE_componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }, keyof ThemeProps> & import("packages/amis-core/lib/theme").ThemeOuterProps>, nextState: Readonly<{}>, nextContext: any): void; }; displayName: string; contextType: React.Context; ComposedComponent: React.ComponentType<{ new (props: Pick, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }): { ref: any; childRef(ref: any): void; getWrappedInstance(): any; render(): React.JSX.Element; context: unknown; setState(state: {} | ((prevState: Readonly<{}>, props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>) => {} | Pick<{}, K_1> | null) | Pick<{}, K_1> | null, callback?: (() => void) | undefined): void; forceUpdate(callback?: (() => void) | undefined): void; readonly props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>; state: Readonly<{}>; refs: { [key: string]: React.ReactInstance; }; componentDidMount?(): void; shouldComponentUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): boolean; componentWillUnmount?(): void; componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void; getSnapshotBeforeUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, prevState: Readonly<{}>): any; componentDidUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, prevState: Readonly<{}>, snapshot?: any): void; componentWillMount?(): void; UNSAFE_componentWillMount?(): void; componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextContext: any): void; UNSAFE_componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextContext: any): void; componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): void; UNSAFE_componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): void; }; displayName: string; contextType: React.Context; ComposedComponent: React.ComponentType; } & import("hoist-non-react-statics").NonReactStatics & { ComposedComponent: typeof ImageGallery; }>; } & import("hoist-non-react-statics").NonReactStatics<{ new (props: Pick, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }): { ref: any; childRef(ref: any): void; getWrappedInstance(): any; render(): React.JSX.Element; context: unknown; setState(state: {} | ((prevState: Readonly<{}>, props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>) => {} | Pick<{}, K_1> | null) | Pick<{}, K_1> | null, callback?: (() => void) | undefined): void; forceUpdate(callback?: (() => void) | undefined): void; readonly props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>; state: Readonly<{}>; refs: { [key: string]: React.ReactInstance; }; componentDidMount?(): void; shouldComponentUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): boolean; componentWillUnmount?(): void; componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void; getSnapshotBeforeUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, prevState: Readonly<{}>): any; componentDidUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, prevState: Readonly<{}>, snapshot?: any): void; componentWillMount?(): void; UNSAFE_componentWillMount?(): void; componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextContext: any): void; UNSAFE_componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextContext: any): void; componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): void; UNSAFE_componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): void; }; displayName: string; contextType: React.Context; ComposedComponent: React.ComponentType; } & import("hoist-non-react-statics").NonReactStatics & { ComposedComponent: typeof ImageGallery; }, {}> & { ComposedComponent: { new (props: Pick, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }): { ref: any; childRef(ref: any): void; getWrappedInstance(): any; render(): React.JSX.Element; context: unknown; setState(state: {} | ((prevState: Readonly<{}>, props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>) => {} | Pick<{}, K_1> | null) | Pick<{}, K_1> | null, callback?: (() => void) | undefined): void; forceUpdate(callback?: (() => void) | undefined): void; readonly props: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>; state: Readonly<{}>; refs: { [key: string]: React.ReactInstance; }; componentDidMount?(): void; shouldComponentUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): boolean; componentWillUnmount?(): void; componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void; getSnapshotBeforeUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, prevState: Readonly<{}>): any; componentDidUpdate?(prevProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, prevState: Readonly<{}>, snapshot?: any): void; componentWillMount?(): void; UNSAFE_componentWillMount?(): void; componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextContext: any): void; UNSAFE_componentWillReceiveProps?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextContext: any): void; componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): void; UNSAFE_componentWillUpdate?(nextProps: Readonly, "classnames" | "classPrefix" | "style" | "className" | "theme" | "mobileUI" | "children" | "modalContainer" | "imageGallaryClassName"> & { actions?: ImageAction[] | undefined; } & {} & { locale?: string | undefined; translate?: ((str: string, ...args: any[]) => string) | undefined; }>, nextState: Readonly<{}>, nextContext: any): void; }; displayName: string; contextType: React.Context; ComposedComponent: React.ComponentType; } & import("hoist-non-react-statics").NonReactStatics & { ComposedComponent: typeof ImageGallery; }; }; export default _default;