import { ESLMixinElement } from '../../../esl-mixin-element/core';
import { ESLCarouselAutoplayMixin } from './esl-carousel.autoplay.mixin';
import type { ESLCarousel } from '../../core/esl-carousel';
import type { ESLCarouselAutoplayHostState } from './esl-carousel.autoplay.types';
/**
 * Read-only autoplay state mixin.
 * Resolves the target carousel, subscribes to autoplay invalidation events and reflects current autoplay state on host.
 */
export declare class ESLCarouselAutoplayStateMixin extends ESLMixinElement {
    static is: string;
    static DEFAULT_TARGET: string;
    /** Selector to find target carousel */
    target: string;
    /** Target carousel instance */
    get $carousel(): ESLCarousel | null;
    /** Target autoplay plugin instance */
    get autoplay(): ESLCarouselAutoplayMixin | null;
    /** Controlled carousel id for a11y */
    get targetID(): string | null;
    /** Exclusive summary state for the controlled autoplay instance */
    get state(): ESLCarouselAutoplayHostState;
    connectedCallback(): void;
    disconnectedCallback(): void;
    /** Synchronize host state markers */
    protected syncState(): void;
    /** Handles autoplay state changes on target carousel */
    protected _onStateChange(): void;
}
declare global {
    export interface ESLCarouselNS {
        AutoplayState: typeof ESLCarouselAutoplayStateMixin;
    }
}
