choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
72 lines (71 loc) • 2.81 kB
TypeScript
/// <reference types="lodash" />
import * as React from 'react';
import PropTypes from 'prop-types';
export declare type FixedType = boolean | 'left' | 'right';
export interface Client {
clientX?: number;
clientY?: number;
preventDefault?: Function;
}
export interface ColumnResizeHandlerProps {
height?: number;
defaultColumnWidth?: number;
columnLeft?: number;
columnFixed?: FixedType;
className?: string;
classPrefix?: string;
minWidth?: number;
style?: React.CSSProperties;
onColumnResizeStart?: (client: Client) => void;
onColumnResizeEnd?: (columnWidth?: number, cursorDelta?: number) => void;
onColumnResizeMove?: (columnWidth?: number, columnLeft?: number, columnFixed?: FixedType) => void;
onMouseEnterHandler?: (left: number) => void;
onMouseLeaveHandler?: () => void;
}
declare class ColumnResizeHandler extends React.Component<ColumnResizeHandlerProps> {
static get contextType(): React.Context<import("./TableContext").Props>;
static propTypes: {
height: PropTypes.Requireable<number>;
defaultColumnWidth: PropTypes.Requireable<number>;
columnLeft: PropTypes.Requireable<number>;
columnFixed: PropTypes.Requireable<string | boolean>;
className: PropTypes.Requireable<string>;
classPrefix: PropTypes.Requireable<string>;
minWidth: PropTypes.Requireable<number>;
style: PropTypes.Requireable<object>;
onColumnResizeStart: PropTypes.Requireable<(...args: any[]) => any>;
onColumnResizeEnd: PropTypes.Requireable<(...args: any[]) => any>;
onColumnResizeMove: PropTypes.Requireable<(...args: any[]) => any>;
onMouseEnterHandler: PropTypes.Requireable<(...args: any[]) => any>;
onMouseLeaveHandler: PropTypes.Requireable<(...args: any[]) => any>;
};
static defaultProps: {
classPrefix: string;
};
columnWidth: number;
cursorDelta: number;
mouseMoveTracker: any;
isKeyDown: boolean;
handleRef: React.RefObject<any>;
mounted: boolean;
dragging: boolean;
deltaX: any;
touchX: any;
constructor(props: any);
componentDidMount(): void;
componentWillUnmount(): void;
findDOMNode(): HTMLElement;
handleDragStart: (e: any) => void;
handleDrag: (event: any) => void;
handleDragStop: () => void;
onMove: (deltaX: number) => void;
onColumnResizeEnd: () => void;
onColumnResizeMouseDown: (event: React.MouseEvent<Element, MouseEvent>) => void;
showMouseArea: (e: any) => void;
delayShowMouseArea: ((e: any) => void) & import("lodash").Cancelable;
handleShowMouseArea: (e: any) => void;
handleHideMouseArea: () => void;
getMouseMoveTracker(): any;
render(): JSX.Element | null;
}
export default ColumnResizeHandler;