import { ElementRef, Signal } from '@angular/core';
import { BaseComponent } from '../../../base-component';
import { NxControlMessagesComponent as NxMessagesContainer } from '../control-messages.component';
import * as i0 from "@angular/core";
import * as i1 from "nx-shared";
import * as i2 from "../../use-form-style.directive";
export interface NxControlMessage {
    key: Signal<string>;
    host: ElementRef<HTMLElement>;
}
/** A message associated with a form field control. */
export declare class NxControlMessageComponent extends BaseComponent implements NxControlMessage {
    /** Identifier for the message.  */
    key: import("@angular/core").InputSignal<string>;
    type: import("@angular/core").InputSignal<"error" | "info" | "warn">;
    protected selected: Signal<boolean>;
    host: ElementRef<HTMLElement>;
    protected messagesContainer: NxMessagesContainer;
    static ɵfac: i0.ɵɵFactoryDeclaration<NxControlMessageComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NxControlMessageComponent, "nx-control-message", never, { "key": { "alias": "key"; "required": true; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.NxThemeAttributeDirective; inputs: {}; outputs: {}; }, { directive: typeof i2.__NxUseFormStyleDirective; inputs: {}; outputs: {}; }]>;
}
