import { IcBrandForeground, IcThemeMode } from "../../utils/types";
export declare class HorizontalScroll {
    private buttonStateSet;
    private isScrolling;
    private itemOffsets;
    private items;
    private itemsContainerEl;
    private resizeObserver;
    private scrollDelay;
    el: HTMLIcHorizontalScrollElement;
    firstItemVisible: boolean;
    itemOverflow: boolean;
    lastItemVisible: boolean;
    /**
     * The appearance of the horizontal scroll, e.g. dark, light or the default.
     */
    appearance?: IcBrandForeground;
    /** @internal Determines whether black variant of the tabs should be displayed. */
    monochrome?: boolean;
    /**
     * @internal  Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component.
     */
    theme?: IcThemeMode;
    /**
     * @internal The name of the event that triggers focus handler logic.
     */
    focusTrigger?: string;
    componentWillLoad(): void;
    componentDidLoad(): void;
    disconnectedCallback(): void;
    /**
     * @internal if side scrolling enabled, scrolls the specified item into view.
     */
    scrollItemIntoView(itemPosition: number): Promise<void>;
    private focusHandler;
    private itemFocusHandler;
    private resizeObserverCallback;
    private runResizeObserver;
    private scrollLeft;
    private scrollRight;
    private longScrollRight;
    private longScrollLeft;
    private leftArrowMouseDownHandler;
    private rightArrowMouseDownHandler;
    private arrowMouseUpHandler;
    private getCurrentLeftItem;
    private scrollHandler;
    private scrollStopped;
    render(): any;
}
