import { Ref } from "@cfcs/core"; import Component from "@egjs/component"; import { OnChangeScroll } from "./types"; export interface ScrollManagerOptions { scrollContainer?: HTMLElement | string | Ref | null; container?: boolean | HTMLElement | string | Ref; containerTag?: string; horizontal?: boolean; } export interface ScrollManagerStatus { contentSize: number; scrollOffset: number; prevScrollPos: number; } export interface ScrollManagerEvents { scroll: OnChangeScroll; } export declare class ScrollManager extends Component { protected wrapper: HTMLElement; options: Required; protected prevScrollPos: number | null; protected eventTarget: HTMLElement | Window; protected scrollOffset: number; protected contentSize: number; protected container: HTMLElement; protected scrollContainer: HTMLElement; private _orgCSSText; private _isScrollIssue; private _isCreateElement; constructor(wrapper: HTMLElement, options: ScrollManagerOptions); getWrapper(): HTMLElement; getContainer(): HTMLElement; getScrollContainer(): HTMLElement; getScrollOffset(): number; getContentSize(): number; getRelativeScrollPos(): number; getScrollPos(): number; setScrollPos(pos: number): void; getOrgScrollPos(): number; setStatus(status: ScrollManagerStatus): void; getStatus(): ScrollManagerStatus; scrollTo(pos: number): void; scrollBy(pos: number): void; resize(): void; destroy(): void; private _init; private _onCheck; }