/// <reference types="../../index.d.ts" />
import { PropertyValues } from 'lit';
import { PublicLitElement as LitElement, JsxNode, TargetedEvent } from '@arcgis/lumina';
import { Scale } from '../interfaces';
import { TabChangeEventDetail } from '../calcite-tab/interfaces';
import { TabID, TabLayout, TabPosition } from '../calcite-tabs/interfaces';
import { TabTitle } from '../calcite-tab-title/customElement.js';

/** @slot  - A slot for adding `calcite-tab-title`s. */
export declare class TabNav extends LitElement {
    /** Use this property to override individual strings used by the component. */
    messageOverrides?: typeof this.messages._overrides;
    /**
     * Specifies the position of `calcite-tab-nav` and `calcite-tab-title` components in relation to, and is inherited from the parent `calcite-tabs`, defaults to `top`.
     *
     *  `@internal`
     *
     * @default "bottom"
     */
    position: TabPosition;
    /** Specifies the component's selected `calcite-tab-title`. */
    readonly selectedTitle: HTMLCalciteTabTitleElement;
    /** Specifies the name when saving selected `calcite-tab` data to `localStorage`. */
    storageId: string;
    /** Specifies text to update multiple components to keep in sync if one changes. */
    syncId: string;
    /** Emits when the selected `calcite-tab` changes. */
    readonly calciteTabChange: TargetedEvent<this, void>;
    private messages: Partial<{
        nextTabTitles: string;
        previousTabTitles: string;
    }> & import('@arcgis/lumina/controllers').T9nMeta<{
        nextTabTitles: string;
        previousTabTitles: string;
    }>;
}
