/**
 * Copyright (c) Cisco Systems, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 */
import { LitElement, PropertyValues } from "lit";
import type { TabSize, TabsType, TabVariant } from "./Tabs.types";
export declare const TAB_CROSS_WIDTH = 22;
export type TabClickEvent = {
    id: string;
};
export type TabCloseClickEvent = {
    id: string;
    name: string;
};
export type TabKeyDownEvent = {
    id: string;
    key: string;
    ctrlKey: boolean;
    shiftKey: boolean;
    altKey: boolean;
    srcEvent: KeyboardEvent;
};
export declare namespace Tab {
    const ELEMENT_base: import("../../mixins/FocusMixin").FocusMixinReturnType<typeof LitElement>;
    export class ELEMENT extends ELEMENT_base {
        tabIndex: number;
        ariaLabel: string;
        closable: "auto" | "custom" | "";
        name: string;
        isCrossVisible: boolean;
        role: string;
        type: TabsType;
        newMomentum: boolean;
        onlyIcon: boolean;
        variant: TabVariant;
        visibleTab: boolean;
        size?: TabSize;
        private _disabled;
        get disabled(): boolean;
        set disabled(value: boolean);
        private tabDisabled;
        private tabEnabled;
        private _selected;
        get selected(): boolean;
        set selected(value: boolean);
        vertical: boolean;
        viewportHidden: boolean;
        static get styles(): import("lit").CSSResult[];
        handleClick(event: MouseEvent | KeyboardEvent): void;
        handleKeydown(event: KeyboardEvent): void;
        handleCrossKeydown(event: KeyboardEvent): void;
        handleCrossClick(event: MouseEvent | KeyboardEvent): void;
        private handleCrossEventDispatch;
        private notifySelectedTab;
        protected update(changedProperties: PropertyValues): void;
        connectedCallback(): void;
        disconnectedCallback(): void;
        protected firstUpdated(changedProperties: PropertyValues): void;
        renderCrossButton(): import("lit-html").TemplateResult<1>;
        render(): import("lit-html").TemplateResult<1>;
    }
    export {};
}
declare global {
    interface HTMLElementTagNameMap {
        "md-tab": Tab.ELEMENT;
    }
}
