UNPKG

react-simple-resizer

Version:
52 lines (51 loc) 1.29 kB
import { RefObject } from 'react'; import { Observable } from 'rxjs'; export interface Coordinate { x: number; y: number; } export declare type Trend = -1 | 0 | 1; export declare enum BarActionType { ACTIVATE = "activate", MOVE = "move", DEACTIVATE = "deactivate" } export interface BarAction { type: BarActionType; coordinate: Coordinate; barID: number; } export interface SizeInfo { isSolid: boolean; currentSize: number; maxSize?: number; minSize?: number; disableResponsive?: boolean; } export interface SizeRelatedInfo { discard?: boolean; sizeInfoArray: SizeInfo[]; flexGrowRatio: number; } export interface ChildProps { size?: number; defaultSize?: number; maxSize?: number; minSize?: number; context: ResizerContext; disableResponsive?: boolean; innerRef?: RefObject<HTMLDivElement>; } export interface ResizerContext { vertical: boolean; createID: (props: ChildProps) => number; populateInstance: (id: number, ref: RefObject<HTMLElement>) => void; triggerBarAction: (action: BarAction) => void; sizeRelatedInfo$: Observable<SizeRelatedInfo>; } export interface ExpandInteractiveArea { top?: number; left?: number; right?: number; bottom?: number; }