@bmunozg/react-image-area
Version:
React component to select multiple areas/regions of images.
52 lines (41 loc) • 1.46 kB
TypeScript
import { CSSProperties } from 'react';
import { FunctionComponent } from 'react';
import { ReactNode } from 'react';
export declare const AreaSelector: FunctionComponent<IAreaSelectorProps>;
declare type CustomAreaRenderer = (areaProps: IAreaRendererProps) => ReactNode;
declare type CustomStyles = Omit<CSSProperties, 'position' | 'touchAction' | 'top' | 'left' | 'width' | 'height' | 'boxSizing'>;
export declare interface IArea extends IRectangle {
unit: 'px' | '%';
isNew?: boolean;
isChanging?: boolean;
areaStyle?: CustomStyles;
}
export declare interface IAreaRendererProps extends Omit<IArea, 'customAreaRenderer'> {
areaNumber: number;
}
export declare interface IAreaSelectorProps extends Partial<IDefaultAreaSelectorProps> {
children?: ReactNode;
areas: IArea[];
onChange: (areas: IArea[]) => void;
maxWidth?: number;
maxHeight?: number;
wrapperStyle?: Omit<CSSProperties, 'touchAction' | 'boxSizing'>;
globalAreaStyle?: CustomStyles;
customAreaRenderer?: CustomAreaRenderer;
mediaWrapperClassName?: string;
}
declare interface IDefaultAreaSelectorProps {
maxAreas: number;
unit: IPropUnit;
minWidth: number;
minHeight: number;
debug: boolean;
}
declare type IPropUnit = 'pixel' | 'percentage';
declare interface IRectangle {
x: number;
y: number;
width: number;
height: number;
}
export { }