import { ISlottable } from '../../../Behaviors/Slottable';
import { Orientation } from '../../../Types/Orientation';
import { SelectorElement } from '../Abstracts/Selector/SelectorElement';
import { ICarousel2ElementProps } from './ICarousel2ElementProps';
declare const Carousel2Element_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Slottable").ISlottableProps & ISlottable) & typeof SelectorElement & import("../../../Behaviors/Themeable").IThemeableCtor;
export declare class Carousel2Element extends Carousel2Element_base implements ISlottable {
    private _page;
    private _numVisible;
    private _numScroll;
    private _orientation;
    private _circular;
    private _showIndicators;
    private _showNavigators;
    private _autoplayInterval;
    private _totalShiftedItems;
    private readonly _remainingItems;
    private _interval;
    /**
     * @public
     */
    constructor();
    /**
     * Gets or sets the `page` property.
     *
     * @public
     * @attr
     */
    get page(): number;
    set page(value: number);
    /**
     * Gets or sets the `numVisible` property.
     *
     * @public
     * @attr
     */
    get numVisible(): number;
    set numVisible(value: number);
    /**
     * Gets or sets the `numScroll` property.
     *
     * @public
     * @attr
     */
    get numScroll(): number;
    set numScroll(value: number);
    /**
     * Gets or sets the `orientation` property.
     *
     * @public
     * @attr
     */
    get orientation(): Orientation;
    set orientation(value: Orientation);
    /**
     * Gets or sets the `circular` property.
     *
     * @public
     * @attr
     */
    get circular(): boolean;
    set circular(value: boolean);
    /**
     * Gets or sets the `showIndicators` property.
     *
     * @public
     * @attr
     */
    get showIndicators(): boolean;
    set showIndicators(value: boolean);
    /**
     * Gets or sets the `showNavigators` property.
     *
     * @public
     * @attr
     */
    get showNavigators(): boolean;
    set showNavigators(value: boolean);
    /**
     * Gets or sets the `autoplayInterval` property.
     *
     * @public
     * @attr
     */
    get autoplayInterval(): number;
    set autoplayInterval(value: number);
    onSlotChanges(slotName?: string): void;
    firstUpdated(): void;
    updated(changedProperties: Map<string | number | symbol, unknown>): void;
    disconnectedCallback(): void;
    isVertical(): boolean;
    private isCircular;
    isForwardNavDisabled(): boolean;
    isBackwardNavDisabled(): boolean;
    ariaPrevButtonLabel(): string;
    ariaNextButtonLabel(): string;
    private ariaSlideLabel;
    private ariaSlideNumber;
    ariaPageLabel(value: number): string;
    navForward(): void;
    navBackward(): void;
    onDotClick(index: number): void;
    onTransitionEnd(): void;
    private startAutoplay;
    private stopAutoplay;
    private step;
    totalDots(): number;
}
/**
 * @public
 */
export declare namespace Carousel2Element {
    type Props = ICarousel2ElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-carousel-2': Carousel2Element;
    }
}
export {};
//# sourceMappingURL=Carousel2Element.d.ts.map