export default class ScrollerPlugin {
    /**
     * @typedef {Object} ScrollerPluginOptions
     * @property {number} [speed] Movement and inertia speed.
     * @property {number} [multiplier] Movement multiplier.
     * @property {number} [threshold] Movement threshold.
     * @property {string} [ease] Timing function.
     * @property {boolean} [overwrite] GSAP overwrite mode.
     * @property {boolean} [bothDirection] Allow movement in both directions.
     * @property {boolean} [reversed] Reverse scroll movement.
     * @property {boolean} [stopOnEnd] Use IntersectionObserver to auto stop movement.
     * @property {function} [scrollProxy] Use ResizeObserver to auto update clones number.
     */
    /**
     * Plugin name.
     *
     * @type {string}
     */
    static pluginName: string;
    /**
     * Default options.
     *
     * @type {ScrollerPluginOptions}
     */
    static defaultOptions: {
        /**
         * Movement and inertia speed.
         */
        speed?: number;
        /**
         * Movement multiplier.
         */
        multiplier?: number;
        /**
         * Movement threshold.
         */
        threshold?: number;
        /**
         * Timing function.
         */
        ease?: string;
        /**
         * GSAP overwrite mode.
         */
        overwrite?: boolean;
        /**
         * Allow movement in both directions.
         */
        bothDirection?: boolean;
        /**
         * Reverse scroll movement.
         */
        reversed?: boolean;
        /**
         * Use IntersectionObserver to auto stop movement.
         */
        stopOnEnd?: boolean;
        /**
         * Use ResizeObserver to auto update clones number.
         */
        scrollProxy?: Function;
    };
    /**
     * Reeller ScrollerPlugin.
     *
     * @param {Reeller} reeller Reeller instance.
     * @param {object} options Options
     */
    constructor(reeller: Reeller, options: object);
    /** @type {ScrollerPluginOptions} **/
    options: {
        /**
         * Movement and inertia speed.
         */
        speed?: number;
        /**
         * Movement multiplier.
         */
        multiplier?: number;
        /**
         * Movement threshold.
         */
        threshold?: number;
        /**
         * Timing function.
         */
        ease?: string;
        /**
         * GSAP overwrite mode.
         */
        overwrite?: boolean;
        /**
         * Allow movement in both directions.
         */
        bothDirection?: boolean;
        /**
         * Reverse scroll movement.
         */
        reversed?: boolean;
        /**
         * Use IntersectionObserver to auto stop movement.
         */
        stopOnEnd?: boolean;
        /**
         * Use ResizeObserver to auto update clones number.
         */
        scrollProxy?: Function;
    };
    reeller: Reeller;
    gsap: any;
    tl: any;
    /**
     * Return scroll position.
     *
     * @return {number} Scroll position.
     */
    getScrollPos(): number;
    /**
     * Initialize plugin.
     */
    init(): void;
    tickerFn: () => void;
    tween: any;
    /**
     * Destroy plugin.
     */
    destroy(): void;
}
//# sourceMappingURL=ScrollerPlugin.d.ts.map