import * as React from 'react'; declare type ValueProps = { left: number; top: number; scrollLeft: number; scrollTop: number; scrollWidth: number; scrollHeight: number; clientWidth: number; clientHeight: number; }; declare type ScrollbarEvent = MouseEvent & { target: HTMLDivElement; }; declare type UpdateCallbackProps = (value: ValueProps) => void; export declare type ScrollbarProps = { prefixCls?: string; style?: React.CSSProperties; className?: string; thumbSize?: number; thumbMinSize: number; autoHide: boolean; autoHideTimeout: number; onScroll?: (event: MouseEvent) => void; onScrollStart?: () => void; onScrollStop?: () => void; onScrollFrame?: (value: ValueProps) => void; onUpdate?: UpdateCallbackProps; }; declare class Scrollbar extends React.PureComponent> { static defaultProps: { prefixCls: string; thumbMinSize: number; autoHide: boolean; autoHideTimeout: number; }; scrolling: boolean; dragging: boolean; prevPageY?: number; prevPageX?: number; viewScrollLeft?: number; viewScrollTop?: number; lastViewScrollLeft?: number; lastViewScrollTop?: number; hideTracksTimeout: number; detectScrollingInterval: number; trackMouseOver?: boolean; requestFrame?: any; readonly containerRef: React.RefObject; readonly trackHorizontalRef: React.RefObject; readonly thumbHorizontalRef: React.RefObject; readonly trackVerticalRef: React.RefObject; readonly thumbVerticalRef: React.RefObject; readonly viewRef: React.RefObject; constructor(props: ScrollbarProps); componentDidMount(): void; componentDidUpdate(prevProps: ScrollbarProps): void; componentWillUnmount(): void; render(): JSX.Element; getScrollLeft: () => number; getScrollTop: () => number; getScrollWidth: () => number; getScrollHeight: () => number; getClientWidth: () => number; getClientHeight: () => number; getValues: () => { left: number; top: number; scrollLeft: number; scrollTop: number; scrollWidth: number; scrollHeight: number; clientWidth: number; clientHeight: number; }; getThumbHorizontalWidth: () => number; getThumbVerticalHeight: () => number; getScrollLeftForOffset: (offset: number) => number; getScrollTopForOffset: (offset: number) => number; scrollLeft: (left?: number, duration?: number) => void; scrollTop: (top?: number, duration?: number) => void; scrollToLeft: () => void; scrollToTop: () => void; scrollToRight: () => void; scrollToBottom: () => void; addListeners: () => void; removeListeners: () => void; handleScroll: (event: MouseEvent) => void; handleScrollStart: () => void; handleScrollStartAutoHide: () => void; handleScrollStop: () => void; handleScrollStopAutoHide: () => void; handleWindowResize: () => void; handleHorizontalTrackMouseDown: (event: ScrollbarEvent) => void; handleVerticalTrackMouseDown: (event: ScrollbarEvent) => void; handleHorizontalThumbMouseDown: (event: ScrollbarEvent) => void; handleVerticalThumbMouseDown: (event: ScrollbarEvent) => void; setupDragging: () => void; teardownDragging: () => void; handleDragStart: (event: MouseEvent) => void; handleDrag: (event: MouseEvent) => boolean; handleDragEnd: () => void; handleDragEndAutoHide: () => void; handleTrackMouseEnter: () => void; handleTrackMouseEnterAutoHide: () => void; handleTrackMouseLeave: () => void; handleTrackMouseLeaveAutoHide: () => void; showTracks: () => void; hideTracks: () => void; detectScrolling: () => void; raf: (callback: VoidFunction) => void; update: (callback?: UpdateCallbackProps) => void; updateCallback: (callback?: UpdateCallbackProps) => void; } export default Scrollbar;