import { InitModelOf, ObjectWithType, Point, SomeRequired, ViewportScrollerModel } from '../index';
export declare class ViewportScroller implements ViewportScrollerModel, ObjectWithType {
    model: ViewportScrollerModel;
    initModel: SomeRequired<this['model'], 'viewportWidth' | 'viewportHeight'>;
    objectType: string;
    static SPEED_FACTOR_SLOW: number;
    static SPEED_FACTOR_MEDIUM: number;
    static SPEED_FACTOR_FAST: number;
    viewportWidth: number;
    viewportHeight: number;
    e: number;
    f: number;
    initialDelay: number;
    active: () => boolean;
    scroll: (dx: number, dy: number) => void;
    dx: number;
    dy: number;
    started: boolean;
    moved: boolean;
    protected _timeoutId: number;
    constructor(model?: InitModelOf<ViewportScroller>);
    protected _tick(): void;
    /**
     * Normally, it should not be necessary to call this method manually. Use update() instead.
     */
    start(): void;
    /**
     * Normally, it should not be necessary to call this method manually. Use update() instead.
     */
    stop(): void;
    /**
     * This method is intended to be called with the current mouse position (viewport-relative coordinates in pixel)
     * on every mouse move event. It automatically computes the required delta scroll positions in both directions.
     */
    update(mouse: Point): void;
}
//# sourceMappingURL=ViewportScroller.d.ts.map