import { default as CxIconButton } from '../../../atoms/src/components/icon-button/icon-button.ts';
import { default as CxSpace } from '../../../atoms/src/components/space/space.ts';
import { default as CxTab } from '../../../atoms/src/components/tab/tab.ts';
import { default as CxTabGroup } from '../../../atoms/src/components/tab-group/tab-group.ts';
import { default as CxTabPanel } from '../../../atoms/src/components/tab-panel/tab-panel.ts';
import { default as CortexElement } from '../../../base/src/cortex-element.ts';
import { Transformation } from '../../../types/src/asset-link-format';
import { TimelineItem } from '../../../types/src/timeline';
import { CSSResultGroup } from 'lit';

/**
 * @summary CxTimeline
 */
export default class CxTimeline extends CortexElement {
    #private;
    static readonly styles: CSSResultGroup;
    static readonly dependencies: {
        'cx-icon-button': typeof CxIconButton;
        'cx-space': typeof CxSpace;
        'cx-tab': typeof CxTab;
        'cx-tab-group': typeof CxTabGroup;
        'cx-tab-panel': typeof CxTabPanel;
    };
    private readonly localize;
    private apiSearchAssets;
    private readonly searchToken;
    private thumbnailRequestVersion;
    private get isInEditMode();
    tabGroup?: CxTabGroup;
    data: TimelineItem[];
    /**
     * Whether to show navigation arrows
     */
    navigationArrows: boolean;
    /**
     * Whether to show thumbnails
     */
    showThumbnails: boolean;
    /**
     * The number of tabs per page. This applies when overflow variant is pagination.
     */
    tabsPerPage: number;
    /**
     * Whether to show multi-language.
     */
    multiLanguage: boolean;
    /**
     * The minimum width of the tab.
     */
    minTabWidth: number;
    /**
     * Asset transformation proxy format key.
     */
    format: string;
    /**
     * Asset transformations applied to the image.
     */
    transformations: Transformation[];
    /** Proxy URLs resolved from apiSearchAssets, keyed by item.id. */
    private resolvedThumbnails;
    handleDataChange(): Promise<void>;
    private persistResolvedThumbnailsToData;
    private handlePreviousClick;
    private handleNextClick;
    render(): import('lit').TemplateResult<1>;
}
declare global {
    interface HTMLElementTagNameMap {
        'cx-timeline': CxTimeline;
    }
}
