import type * as React from 'react'; import type { DraggableCore } from 'react-draggable'; export type ReactRef = { current: T | null; }; export type Axis = 'both' | 'x' | 'y' | 'none'; export type ResizeHandleAxis = 's' | 'w' | 'e' | 'n' | 'sw' | 'nw' | 'se' | 'ne'; export type ResizableState = {}; export type ResizableBoxState = { width: number; height: number; propsWidth: number; propsHeight: number; }; export type DragCallbackData = { node: HTMLElement; x: number; y: number; deltaX: number; deltaY: number; lastX: number; lastY: number; }; export type ResizeCallbackData = { node: HTMLElement; size: { width: number; height: number; }; handle: ResizeHandleAxis; }; export type DefaultProps = { axis: Axis; handleSize: [number, number]; lockAspectRatio: boolean; minConstraints: [number, number]; maxConstraints: [number, number]; resizeHandles: ResizeHandleAxis[]; transformScale: number; }; export type ResizeHandleFn = (resizeHandleAxis: ResizeHandleAxis, ref: React.RefObject) => React.ReactElement; export type Props = DefaultProps & { children: React.ReactElement; className?: string | null; draggableOpts?: Partial> | null; height: number; handle?: React.ReactElement | ResizeHandleFn; onResizeStop?: ((e: React.SyntheticEvent, data: ResizeCallbackData) => any) | null; onResizeStart?: ((e: React.SyntheticEvent, data: ResizeCallbackData) => any) | null; onResize?: ((e: React.SyntheticEvent, data: ResizeCallbackData) => any) | null; width: number; }; export declare const resizableProps: { [key: string]: any; };