import { ESLCarouselRenderer } from '../core/esl-carousel.renderer';
import { ESLCarouselDirection } from '../core/esl-carousel.types';
import type { ESLCarouselActionParams } from '../core/esl-carousel.types';
export declare class ESLCSSCarouselRenderer extends ESLCarouselRenderer {
    static is: string;
    static classes: string[];
    static readonly NEXT_SLIDE_TOLERANCE = 0.25;
    static readonly OFFSET_PROP = "--esl-carousel-offset";
    static readonly OFFSET_PROP_REL = "--esl-carousel-offset-ratio";
    /** Active index */
    protected currentIndex: number;
    protected get tolerance(): number;
    get offset(): number;
    set offset(offset: number);
    /**
     * Processes binding of defined renderer to the carousel {@link ESLCarousel}.
     * Prepare to renderer animation.
     */
    onBind(): void;
    /**
     * Processes unbinding of defined view from the carousel {@link ESLCarousel}.
     * Clear animation.
     */
    onUnbind(): void;
    /** Processes animation. */
    onAnimate(index: number, direction: ESLCarouselDirection): Promise<void>;
    /** Post-processing animation action. */
    onAfterAnimate(index: number, direction: ESLCarouselDirection, params: ESLCarouselActionParams): Promise<void>;
    move(offset: number, from: number, params: ESLCarouselActionParams): void;
    commit(params: ESLCarouselActionParams): Promise<void>;
}
