export interface IScrollNavOptions { paging?: boolean; autoCentering?: boolean; } export interface IScrollNavCurrentState { first: HTMLElement; last: HTMLElement; center: HTMLElement; } export interface IScrollNav { options?: IScrollNavOptions; getCurrentState(): IScrollNavCurrentState; goTo(el: Element, cb?: () => void): void; centerElement(el: HTMLElement, behavior: ScrollBehavior): void; destroy(): void; } export interface IBasePlugin { el: E; options?: O; events?: {}; } declare class HSBasePlugin implements IBasePlugin { el: E; options: O; events?: any; constructor(el: E, options: O, events?: any); createCollection(collection: any[] | undefined, element: any): void; fireEvent(evt: string, payload?: any): any; on(evt: string, cb: Function): void; } declare class HSScrollNav extends HSBasePlugin implements IScrollNav { private readonly paging; private readonly autoCentering; private body; private items; private prev; private next; private currentState; constructor(el: HTMLElement, options?: IScrollNavOptions); private init; private setCurrentState; private setPrevToDisabled; private setNextToDisabled; private buildPrev; private buildNext; private buildPrevSingle; private buildNextSingle; private getCenterVisibleItem; private getFirstVisibleItem; private getLastVisibleItem; private getVisibleItemsCount; private scrollToActiveElement; getCurrentState(): IScrollNavCurrentState; goTo(el: Element, cb?: () => void): void; centerElement(el: HTMLElement, behavior?: ScrollBehavior): void; destroy(): void; static getInstance(target: HTMLElement, isInstance?: boolean): any; static autoInit(): void; } export { HSScrollNav as default, }; export {};