1 | import Component from "@egjs/component";
|
2 | import { OnChangeScroll } from "./types";
|
3 | export interface ScrollManagerOptions {
|
4 | container?: HTMLElement | boolean | string;
|
5 | containerTag?: string;
|
6 | horizontal?: boolean;
|
7 | }
|
8 | export interface ScrollManagerStatus {
|
9 | contentSize: number;
|
10 | scrollOffset: number;
|
11 | prevScrollPos: number;
|
12 | }
|
13 | export interface ScrollManagerEvents {
|
14 | scroll: OnChangeScroll;
|
15 | }
|
16 | export declare class ScrollManager extends Component<ScrollManagerEvents> {
|
17 | protected wrapper: HTMLElement;
|
18 | options: Required<ScrollManagerOptions>;
|
19 | protected prevScrollPos: number | null;
|
20 | protected eventTarget: HTMLElement | Window;
|
21 | protected scrollOffset: number;
|
22 | protected contentSize: number;
|
23 | protected container: HTMLElement;
|
24 | protected scrollContainer: HTMLElement;
|
25 | private _orgCSSText;
|
26 | private _isScrollIssue;
|
27 | private _isCreateElement;
|
28 | constructor(wrapper: HTMLElement, options: ScrollManagerOptions);
|
29 | getWrapper(): HTMLElement;
|
30 | getContainer(): HTMLElement;
|
31 | getScrollContainer(): HTMLElement;
|
32 | getScrollOffset(): number;
|
33 | getContentSize(): number;
|
34 | getRelativeScrollPos(): number;
|
35 | getScrollPos(): number;
|
36 | setScrollPos(pos: number): void;
|
37 | getOrgScrollPos(): number;
|
38 | setStatus(status: ScrollManagerStatus): void;
|
39 | getStatus(): ScrollManagerStatus;
|
40 | scrollTo(pos: number): void;
|
41 | scrollBy(pos: number): void;
|
42 | resize(): void;
|
43 | destroy(): void;
|
44 | private _init;
|
45 | private _onCheck;
|
46 | }
|