import { EasingFunction } from "./default-settings"; declare type ElementOrQuery = Window | Element | string; declare type ScrollOptions = [number?, EasingFunction?]; declare type ScrollType = ((value: number, ...args: ScrollOptions) => Scroll) & { size: (value: number, ...args: ScrollOptions) => Scroll; scrollSize: (value: number, ...args: ScrollOptions) => Scroll; element: (elementOrQuery: ElementOrQuery, value?: number, ...args: ScrollOptions) => Scroll; }; declare class Scroll { private animationManager; private element; private horizontal; duration: number; onScroll: ((external?: boolean) => void) | null | undefined; easing: EasingFunction; constructor(options?: { element?: ElementOrQuery; horizontal?: boolean; onScroll?: (external?: boolean) => void; duration?: number; easing?: EasingFunction; }); readonly size: number; readonly scrollSize: number; readonly scrollPosition: number; getRelativeElementPosition(elementOrQuery: ElementOrQuery): number; stopAllAnimations(): void; scrollTo: ScrollType; scrollBy: ScrollType; } export { Scroll };