import BaseFoundation, { DefaultAdapter } from "../base/foundation"; export interface CropperAdapter
, S = Record {
getContainer: () => HTMLElement;
notifyZoomChange: (zoom: number) => void;
getImg: () => HTMLImageElement;
}
interface Point {
x: number;
y: number;
}
export interface ImageData {
originalWidth: number;
originalHeight: number;
scale: number;
}
export interface ImageDataState {
width: number;
height: number;
centerPoint: Point;
}
export interface CropperBox {
width: number;
height: number;
centerPoint: Point;
}
export interface ContainerData {
width: number;
height: number;
}
export interface CropperBoxBorder {
borderTop: number;
borderLeft: number;
}
export default class CropperFoundation , S = Record );
init(): void;
destroy(): void;
getImgDataWhenResize: (ratio: number) => {
width: number;
height: number;
centerPoint: {
x: number;
y: number;
};
};
getCropperBoxWhenResize: (ratio: number, newContainerData: ContainerData) => {
width: number;
height: number;
centerPoint: {
x: number;
y: number;
};
};
handleResize: () => void;
handleImageLoad: (e: any) => void;
renderPreview: () => void;
updatePreview: (props: {
width: number;
height: number;
translateX: number;
translateY: number;
rotate: number;
}) => void;
removePreview: () => void;
handleWheel: (e: any) => void;
getMoveParamByDir(dir: string): {
paramX: number;
paramY: number;
};
getRangeForAspectChange: () => void;
handleCornerMouseDown: (e: any) => void;
bindResizeEvent: () => void;
unBindResizeEvent: () => void;
viewIMGDragStart: (e: any) => void;
handleCornerAspectMouseMove: (e: any) => void;
changeDir: () => void;
handleCornerMouseMove: (e: any) => void;
handleCornerMouseUp: (e: any) => void;
handleCropperBoxMouseDown: (e: any) => void;
bindMoveEvent: () => void;
unBindMoveEvent: () => void;
handleCropperBoxMouseMove: (e: any) => void;
handleCropperBoxMouseUp: (e: any) => void;
handleMaskMouseDown: (e: any) => void;
bindImgMoveEvent: () => void;
unBindImgMoveEvent: () => void;
handleImgMove: (e: any) => void;
handleImgMoveUp: (e: any) => void;
getCropperCanvas: () => HTMLCanvasElement;
}
export {};