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

declare class BusyIndicator implements AfterViewInit {
    /**
     * Defines text to be displayed below the component. It can be used to inform the user of the current operation.
     */
    text: _angular_core.InputSignal<string | undefined>;
    /**
     * Defines the size of the component.
     */
    size: _angular_core.InputSignal<"S" | "M" | "L" | undefined>;
    /**
     * Defines if the busy indicator is visible on the screen. By default it is not.
     */
    active: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Defines the delay in milliseconds, after which the busy indicator will be visible on the screen.
     */
    delay: _angular_core.InputSignal<number | undefined>;
    /**
     * Defines the placement of the text.
     */
    textPlacement: _angular_core.InputSignal<"Top" | "Bottom" | undefined>;
    /**
     * 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)**: Determines the content over which the component will appear.
     *
     * @example
     * ```html
     * <ui5-busy-indicator>
     *   <div slot="header">Custom header content</div>
     *   <p>Default slot content</p>
     * </ui5-busy-indicator>
     * ```
     *
     * @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<_BusyIndicator>;
    injector: Injector;
    get element(): _BusyIndicator;
    ngAfterViewInit(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<BusyIndicator, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<BusyIndicator, "ui5-busy-indicator, [ui5-busy-indicator]", ["ui5BusyIndicator"], { "text": { "alias": "text"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "delay": { "alias": "delay"; "required": false; "isSignal": true; }; "textPlacement": { "alias": "textPlacement"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
}

export { BusyIndicator };
