import { ISelectable, ISelectableEvents } from '../../../Behaviors/Selectable';
import { TabStripPlacement } from '../../../Types/TabStripPlacement';
import { CustomElement } from '../../Abstracts/CustomElement';
import { ITabStripItemElementProps } from './ITabStripItemElementProps';
import { TabStripElement } from './TabStripElement';
declare const TabStripItemElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Labelable").ILabelableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Iconable").IIconableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Disableable").IDisableableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Focusable").IFocusableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Variantable").IVariantableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Orientable").IOrientableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Selectable").ISelectableProps & ISelectableEvents & ISelectable) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Valueable").IValueableProps<unknown>) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * Tab Strip Item - A navigation element used to switch between different sections of content.
 *
 * @fires {CustomEvent} selectionChanged - Fired when tab sttrip item selection changes.
 *
 * @slot label - The label slot.
 * @slot icon - The icon slot.
 * @slot overlay - The overlay slot (usefull for badge).
 *
 * @public
 */
export declare class TabStripItemElement extends TabStripItemElement_base implements ITabStripItemElementProps, ISelectableEvents, ISelectable, ISelectableEvents {
    private readonly _keyboardController;
    private _placement;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `{@link is}` property.
     * The `{@link is}` property represents natural name of this element.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets the `placement` property.
     *
     * @public
     * @attr
     */
    get placement(): TabStripPlacement;
    private set placement(value);
    /**
     * Gets the `parent` tab strip of this item.
     *
     * @protected
     * @readonly
     */
    get parent(): TabStripElement;
    /**
     * @public
     * @override
     */
    connectedCallback(): void;
    /**
     * @protected
     * @override
     */
    protected onApplyTemplate(): void;
}
/**
 * @public
 */
export declare namespace TabStripItemElement {
    type Props = ITabStripItemElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-tab-strip-item': TabStripItemElement;
    }
}
export {};
//# sourceMappingURL=TabStripItemElement.d.ts.map