import { EventEmitter } from '@angular/core'; import { Geometry, PerfectScrollbarDirective, Position } from 'ngx-perfect-scrollbar'; /** * Define possible scroll directions for {@link TsScrollbarsComponent}. */ export declare type TsScrollbarsScrollDirections = 'any' | 'both' | 'x' | 'y'; /** * A class that represents the current geometric state of scrolling for {@link TsScrollbarsComponent}. */ export declare class TsScrollbarsGeometry extends Geometry { } /** * A class that represents the current scrollbar positions for {@link TsScrollbarsComponent}. */ export declare class TsScrollbarPosition extends Position { } /** * The scrollbars UI Component * * @example * My content... * * https://getterminus.github.io/ui-demos-release/components/scrollbars */ export declare class TsScrollbarsComponent { /** * Define the default component ID */ protected _uid: string; /** * Define the speed at which to scroll during automated movements */ protected scrollSpeed: number; /** * Return an object containing scrollbar geometry. * * @returns An object with all geometry information */ get geometry(): TsScrollbarsGeometry | null; /** * Return the current scrollbar position. * * @returns The current scrollbar position */ get position(): TsScrollbarPosition | null; /** * Define an ID for the component * * @param value */ set id(value: string); get id(): string; protected _id: string; /** * Define if the scrollbars are disabled */ isDisabled: boolean; /** * Access underlying scrollbar directive */ scrollbar: PerfectScrollbarDirective; /** * Event Emitters */ readonly scrollDown: EventEmitter; readonly scrollLeft: EventEmitter; readonly scrollRight: EventEmitter; readonly scrollUp: EventEmitter; readonly scrollX: EventEmitter; readonly scrollY: EventEmitter; readonly xReachEnd: EventEmitter; readonly xReachStart: EventEmitter; readonly yReachEnd: EventEmitter; readonly yReachStart: EventEmitter; /** * Determine if a direction is scrollable. * * See {@link TsScrollbarsScrollDirections} for all possible options. * * @param direction - The scroll direction to check * @returns Whether the direction is currently scrollable */ scrollable(direction?: TsScrollbarsScrollDirections): boolean | null; /** * Scroll to a location * * @param x - The value to scroll the x axis * @param y - The value to scroll the y axis * @param speed */ scrollTo(x: number, y?: number, speed?: number): void; /** * Scroll to element * * @param queryString - The string to query the DOM for * @param speed - The speed to move at * @param offset - A px offset */ scrollToElement(queryString: string, speed?: number, offset?: number): void; /** * Scroll to the bottom * * @param speed - The rate at which to move * @param offset - An offset when scrolling */ scrollToBottom(speed?: number, offset?: number): void; /** * Scroll to the left * * @param speed - The rate at which to move * @param offset - An offset when scrolling */ scrollToLeft(speed?: number, offset?: number): void; /** * Scroll to the right * * @param speed - The rate at which to move * @param offset - An offset when scrolling */ scrollToRight(speed?: number, offset?: number): void; /** * Scroll to the top * * @param speed - The rate at which to move * @param offset - An offset when scrolling */ scrollToTop(speed?: number, offset?: number): void; /** * Trigger an update on the underlying scrollbar library instance. */ update(): void; }