import * as _angular_core from '@angular/core';
import { AfterViewInit, ElementRef, Injector } from '@angular/core';
import _Tab from '@ui5/webcomponents/dist/Tab.js';

declare class Tab implements AfterViewInit {
    /**
     * The text to be displayed for the item.
     */
    text: _angular_core.InputSignal<string | undefined>;
    /**
     * Disabled tabs can't be selected.
     */
    disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Represents the "additionalText" text, which is displayed in the tab. In the cases when in the same time there are tabs with icons and tabs without icons, if a tab has no icon the "additionalText" is displayed larger.
     */
    additionalText: _angular_core.InputSignal<string | undefined>;
    /**
     * Defines the icon source URI to be displayed as graphical element within the component.
  The SAP-icons font provides numerous built-in icons.
  See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).
     */
    icon: _angular_core.InputSignal<string | undefined>;
    /**
     * Defines the component's design color.
  
  The design is applied to:
  
  - the component icon
  - the `text` when the component overflows
  - the tab selection line
  
  Available designs are: `"Default"`, `"Neutral"`, `"Positive"`, `"Critical"` and `"Negative"`.
  
  **Note:** The design depends on the current theme.
     */
    design: _angular_core.InputSignal<"Default" | "Positive" | "Negative" | "Critical" | "Neutral" | undefined>;
    /**
     * Specifies if the component is selected.
     */
    selected: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Defines if the tab is movable.
     */
    movable: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Available slots for content projection in this component.
     *
     * Slots allow you to insert custom content into predefined areas of the web component.
     * Use the `slot` attribute on child elements to target specific slots.
     *
     * - **(default)**: Holds the content associated with this tab.
     * - **items**: Defines hierarchies with nested sub tabs.
  
  **Note:** Use `ui5-tab` and `ui5-tab-separator` for the intended design.
     *
     * @example
     * ```html
     * <ui5-tab>
     *   <div slot="header">Custom header content</div>
     *   <p>Default slot content</p>
     * </ui5-tab>
     * ```
     *
     * @readonly
     * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}
     */
    readonly slots: {
        name: string;
        description: string;
    }[];
    elementRef: ElementRef<_Tab>;
    injector: Injector;
    get element(): _Tab;
    ngAfterViewInit(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<Tab, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<Tab, "ui5-tab, [ui5-tab]", ["ui5Tab"], { "text": { "alias": "text"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "additionalText": { "alias": "additionalText"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "design": { "alias": "design"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "movable": { "alias": "movable"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
}

export { Tab };
