react-advanced-cropper
Version:
The react cropper library that gives the possibility to create croppers exactly suited for your website design
40 lines (39 loc) • 1.77 kB
TypeScript
import { CSSProperties, FC, ReactNode } from 'react';
import { AbstractCropperIntrinsicProps, AbstractCropperRef, AbstractCropperSettings } from './components/AbstractCropper';
export declare type ArbitraryProps = Record<string, any>;
export declare type StencilComponent = any;
export declare type CropperWrapperComponent = FC<{
cropper: any;
className?: string;
style?: CSSProperties;
children?: ReactNode;
}>;
export declare type CropperBoundaryComponent = any;
export declare type CropperBackgroundComponent = any;
export declare type CropperBackgroundWrapperComponent = FC<{
cropper: any;
children?: ReactNode;
className?: string;
style?: CSSProperties;
disabled?: boolean;
}>;
export declare type StencilOptions = Record<string, unknown>;
export declare type StencilConstraints<Settings extends {}> = (settings: Settings, stencilOptions: StencilOptions) => Partial<Settings>;
export interface ScaleImageOptions {
touch?: boolean;
wheel?: boolean | {
ratio?: number;
};
adjustStencil?: boolean;
}
export interface RotateImageOptions {
touch?: boolean;
}
export interface MoveImageOptions {
touch?: boolean;
mouse?: boolean;
}
export declare type CustomCropperProps<Extension extends SettingsExtension = {}> = AbstractCropperIntrinsicProps<ExtendedSettings<Extension>> & Partial<Pick<ExtendedSettings<Extension>, keyof AbstractCropperSettings>> & Omit<ExtendedSettings<Extension>, keyof AbstractCropperSettings>;
export declare type CustomCropperRef<Extension extends SettingsExtension = {}> = AbstractCropperRef<ExtendedSettings<Extension>>;
export declare type ExtendedSettings<Extension extends {} = {}> = Extension & AbstractCropperSettings;
export declare type SettingsExtension = object;