UNPKG

react-advanced-cropper

Version:

The react cropper library that gives the possibility to create croppers exactly suited for your website design

82 lines (81 loc) 8.32 kB
/// <reference types="react" /> import { AbstractCropperInstanceCallbacks, AbstractCropperInstanceParameters, CropperImage, DrawOptions } from 'advanced-cropper'; import { StretchableBoundaryMethods } from '../components/service/StretchableBoundary'; import { CropperCanvasMethods } from '../components/service/CropperCanvas'; import { ExtendedSettings, SettingsExtension } from '../types'; import { AbstractCropperRef, AbstractCropperSettings } from '../components/AbstractCropper'; import { CropperInstanceSettingsProp } from './useCropperInstance'; export interface AbstractCropperHookProps<Settings extends AbstractCropperSettings> extends AbstractCropperInstanceParameters<Settings>, AbstractCropperInstanceCallbacks<AbstractCropperRef<Settings>> { src?: string | null; checkOrientation?: boolean; canvas?: boolean; crossOrigin?: 'anonymous' | 'use-credentials' | boolean; onReady?: (cropper: AbstractCropperRef<Settings>) => void; onError?: (cropper: AbstractCropperRef<Settings>) => void; onUpdate?: (cropper: AbstractCropperRef<Settings>) => void; unloadTime?: number; autoReconcileState?: boolean; settings?: CropperInstanceSettingsProp<Settings>; } export declare function useAbstractCropper<Extension extends SettingsExtension = {}>(props: () => AbstractCropperHookProps<ExtendedSettings<Extension>>): { cropper: { reset: () => Promise<void>; refresh: () => Promise<void>; setImage: (image: CropperImage) => void; reconcileState: (options?: import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions | undefined) => void; moveCoordinates: (directions: Partial<import("advanced-cropper/types").MoveDirections>, options?: (import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").NormalizeOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; moveCoordinatesEnd: (options?: (import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; resizeCoordinates: (anchor: import("advanced-cropper/types").ResizeAnchor, directions: Partial<import("advanced-cropper/types").MoveDirections>, parameters?: unknown, options?: (import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").NormalizeOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; clear: () => void; resizeCoordinatesEnd: (options?: (import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; moveImage: (left: number, top?: number | undefined, options?: (import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").NormalizeOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; flipImage: (horizontal?: boolean | undefined, vertical?: boolean | undefined, options?: (import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").NormalizeOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; zoomImage: (scale: number | import("advanced-cropper/types").Scale, options?: (import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").NormalizeOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; rotateImage: (rotate: number | import("advanced-cropper/types").Rotate, options?: (import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").NormalizeOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; transformImage: (transform: import("advanced-cropper/types").ImageTransform, options?: (import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").NormalizeOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; transformImageEnd: (options?: (import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; setCoordinates: (transforms: import("advanced-cropper/types").CoordinatesTransform | import("advanced-cropper/types").CoordinatesTransform[], options?: (import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; setVisibleArea: (visibleArea: import("advanced-cropper/types").Coordinates, options?: (import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions) | undefined) => void; startTransitions: () => void; setState: (modifier: import("advanced-cropper/types").CropperState | ((state: import("advanced-cropper/types").CropperState | null, settings: import("advanced-cropper/types").CoreSettings) => import("advanced-cropper/types").CropperState | null) | null, options?: (import("advanced-cropper/instance/AbstractCropperInstance").TransitionOptions & import("advanced-cropper/instance/AbstractCropperInstance").ImmediatelyOptions & import("advanced-cropper/instance/AbstractCropperInstance").InteractionOptions & import("advanced-cropper/instance/AbstractCropperInstance").PostprocessOptions) | undefined) => void; hasInteractions: () => boolean; getStencilCoordinates: () => { left: number; top: number; width: number; height: number; }; getCoordinates: (options?: { round?: boolean | undefined; } | undefined) => import("advanced-cropper/types").Coordinates | null; getVisibleArea: () => { width: number; height: number; top: number; left: number; } | null; getTransforms: () => import("advanced-cropper/types").Transforms; getTransitions: () => any; getInteractions: () => import("advanced-cropper/types").CropperInteractions; getSettings: () => ExtendedSettings<Extension>; getState: () => import("advanced-cropper/types").CropperState | null; getDefaultState(): import("advanced-cropper/types").CropperState | null; getCanvas: (options?: DrawOptions | undefined) => HTMLCanvasElement | null; getImage: () => { src: string; revoke: boolean; transforms: import("advanced-cropper/types").Transforms; arrayBuffer: ArrayBuffer | null; width: number; height: number; } | null; isLoading: () => boolean; isLoaded: () => boolean; }; refs: { image: import("react").RefObject<HTMLElement>; boundary: import("react").RefObject<StretchableBoundaryMethods>; canvas: import("react").RefObject<CropperCanvasMethods>; }; image: CropperImage | null; };