import { Options } from './Options'; import Scroller, { MountedBScrollHTMLElement } from './scroller/Scroller'; import { ApplyOrder, EventEmitter } from '@better-scroll/shared-utils'; interface PluginCtor { pluginName: string; applyOrder?: ApplyOrder; new (scroll: BScroll): any; } interface PluginItem { name: string; applyOrder?: ApplyOrder.Pre | ApplyOrder.Post; ctor: PluginCtor; } interface PluginsMap { [key: string]: boolean; } interface PropertyConfig { key: string; sourceKey: string; } export default class BScroll extends EventEmitter { static plugins: PluginItem[]; static pluginsMap: PluginsMap; scroller: Scroller; options: Options; hooks: EventEmitter; plugins: { [name: string]: any; }; wrapper: HTMLElement; [key: string]: any; static use(ctor: PluginCtor): typeof BScroll; constructor(el: HTMLElement | string, options?: Partial); private init; private setOptions; private applyPlugins; private handleAutoBlur; private eventBubbling; private innerRefresh; proxy(propertiesConfig: PropertyConfig[]): void; refresh(): void; enable(): void; disable(): void; destroy(): void; eventRegister(names: string[]): void; } export { Options, MountedBScrollHTMLElement }; export { TranslaterPoint } from './translater'; export { default as Behavior } from './scroller/Behavior';