@ducor/react
Version:
admin template ui interface
44 lines (43 loc) • 1.52 kB
TypeScript
import React from "react";
interface OnchangeValues {
width: number | null | string;
height: number | null | string;
}
interface ResizerProps {
children?: React.ReactNode;
target: "top" | "right" | "bottom" | "left";
onChange?: (value: OnchangeValues) => void;
onActive?: (active: boolean) => void;
maxWidth?: number;
minWidth?: number;
barClassName?: string;
disabled?: boolean;
}
interface ResizerState {
height: number | string | null;
width: number | string | null;
active: boolean;
isVertical: boolean;
}
declare class Resizer extends React.Component<ResizerProps, ResizerState> {
ref: React.RefObject<HTMLDivElement | null>;
isResizing: boolean;
constructor(props: ResizerProps);
handleMouseMove(e: MouseEvent): void;
handleTouchMove(e: TouchEvent): void;
handleMouseUp(): void;
handleTouchEnd(): void;
handleMouseDown(): void;
handleTouchStart(): void;
handleActive(isActive: boolean): void;
getStyle(): {
width: string;
height?: undefined;
} | {
height: string;
width?: undefined;
};
render(): string | number | bigint | boolean | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
componentWillUnmount(): void;
}
export default Resizer;