import { NgIfContext } from '@angular/common';
import { AfterContentInit, TemplateRef } from '@angular/core';
import { ButtonEmphasis, type ButtonProperties, ButtonScale, ButtonVariant } from '@engie-group/fluid-types';
import * as i0 from "@angular/core";
export declare class ButtonComponent implements ButtonProperties, AfterContentInit {
    protected iconTemplateRef?: TemplateRef<NgIfContext<string>>;
    /**
     * Button emphasis
     */
    emphasis: ButtonEmphasis;
    /**
     * Button variant theme
     */
    variant: ButtonVariant;
    /**
     * Button scale
     */
    scale?: ButtonScale;
    /**
     * Button material icon
     */
    icon?: string;
    /**
     * Whether the button is disabled
     */
    disabled?: boolean;
    /**
     * Whether the button is loading or not
     */
    isLoading?: boolean;
    private template?;
    ngAfterContentInit(): void;
    get classes(): string[];
    static ɵfac: i0.ɵɵFactoryDeclaration<ButtonComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "button[nj-button]", never, { "emphasis": { "alias": "emphasis"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "scale": { "alias": "scale"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; }, {}, ["template"], ["*"], true, never>;
    static ngAcceptInputType_disabled: unknown;
    static ngAcceptInputType_isLoading: unknown;
}
