UNPKG

webscrollingistheworst

Version:

Web Scrolling is the Worst. This package tries to lessen the pain.

33 lines (32 loc) 1.12 kB
declare type CallbackType = (a: boolean) => void; declare type UnsubscribeType = () => void; declare type ScrollPosition = { scrOfX: number; scrOfY: number; }; export declare class WebScrollingIsTheWorst { private bottomCallbacks; private topCallbacks; private upCallbacks; private downCallbacks; private moveCallbacks; latestPosition: ScrollPosition; constructor(); isOnBottom(): boolean; isOnTop(): boolean; scrollToTop(duration?: number, stepSize?: number): void; scrollToBottom(duration?: number, stepSize?: number): void; onWindowTouchBottom(callback: CallbackType): UnsubscribeType; onWindowTouchTop(callback: CallbackType): UnsubscribeType; onScrollMoveUp(callback: CallbackType): UnsubscribeType; onScrollMoveDown(callback: CallbackType): UnsubscribeType; onScrollMove(callback: CallbackType): UnsubscribeType; private registerCallback; private movedUp; private movedDown; private runCallbacks; private generateUnsubscription; private getScrollXY; private getDocHeight; } export {};