UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

73 lines (72 loc) 2 kB
import React, { ReactElement } from 'react'; import { ModalProps } from '../modal'; import { UploadFile, UploadProps } from '../upload/interface'; import AvatarUploader from './avatarUpload'; interface CompoundedComponent extends React.ForwardRefExoticComponent<ImgCropProps> { AvatarUploader: typeof AvatarUploader; } export interface ImageCropLocale { imageCrop?: string; } export declare enum shapeCroper { rect = "rect", round = "round" } export declare type Area = { width: number; height: number; x: number; y: number; zoom: number; rotation: number; }; export interface BalanceRate { x: number; y: number; } export interface EasyCropProps { src?: string; aspect?: number; shape?: shapeCroper; grid?: boolean; hasZoom?: boolean; zoomVal?: number; rotateVal?: number; setZoomVal?: (value: number) => void; setRotateVal?: (rotation: number) => void; onComplete: (croppedAreaPixels: Area) => void; prefixCls?: string; } export interface ImgCropProps { aspect?: number; shape?: shapeCroper; zoom?: boolean; grid?: boolean; src?: string; rotate?: boolean; beforeCrop?: (file: UploadFile, uploadFiles: UploadFile[]) => boolean; modalTitle?: string; modalWidth?: number | string; modalOk?: string; modalCancel?: string; modalProps?: ModalProps; onCancel?: () => void; onOk?: ({ url: string, blob: Blob, area: Area }: { url: any; blob: any; area: any; }) => void; modalVisible?: boolean; children?: React.ReactElement<UploadProps> | React.ReactElement<any>; cropContent?: (crop: ReactElement<EasyCropProps>) => React.ReactElement<any>; onCropComplete?: ({ url: string, blob: Blob, area: Area }: { url: any; blob: any; area: any; }) => void; prefixCls?: string; serverCrop: boolean; rotateStep?: number; } declare const ImgCrop: CompoundedComponent; export default ImgCrop;