import { EnvironmentInjector, Injector } from '@angular/core';
import { ActionWithTemplate } from './action.model';
import { ActionService } from './action.service';
import { SupportedIconsSuggestions } from '@c8y/ngx-components/icon-selector/icons';
import * as i0 from "@angular/core";
/**
 * A <c8y-action> can be added with content projection.
 *
 * ```html
 * <c8y-action>
 *   <button class="btn" (click)="myAction()">My action</button>
 * </c8y-action>
 * ```
 */
export declare class ActionComponent implements ActionWithTemplate {
    private actionService;
    /**
     * Is this action disabled.
     */
    disabled: boolean;
    /**
     * The priority of this action (the higher the number, the higher the action will be displayed; optional)
     */
    priority: number;
    /**
     * The icon to show on this action
     */
    icon: SupportedIconsSuggestions;
    template: any;
    injector: Injector;
    private viewInitTimeout;
    constructor(actionService: ActionService, _injector: EnvironmentInjector);
    /**
     * After page view is initialized, component adds itself to global action list.
     */
    ngAfterViewInit(): void;
    /**
     * Action is removed from global action list, if component is not used anymore.
     */
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ActionComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ActionComponent, "c8y-action", never, { "disabled": { "alias": "disabled"; "required": false; }; "priority": { "alias": "priority"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "injector": { "alias": "injector"; "required": false; }; }, {}, never, ["*"], false, never>;
}
//# sourceMappingURL=action.component.d.ts.map