import { Injector, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { CoreBaseComponent } from '../../common/base.component';
import { ValidationAlert } from './validation-alert';
import * as i0 from "@angular/core";
/**
 * Component for displaying a form validation alert.
 * Alerts are not necessarily errors, they can display other types of
 * information that the user should know about a value they entered into a form field
 */
export declare class ValidationAlertComponent extends CoreBaseComponent implements OnInit, OnChanges {
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    /**
     * Optionally show background color for the alert.
     */
    showBackground: boolean;
    /**
     * The alert Validation alert we need to display.
     */
    alert: ValidationAlert;
    /**
     * The default role for the alert
     */
    role: string;
    /**
     * The icon class to use for the alert
     */
    iconClass: string;
    /**
     * Indicates the value to use for the 'role' attribute
     */
    get useRoleAlert(): string;
    /**
     * Indicates that there is an alert to display
     */
    get hasAlert(): boolean;
    /**
     * Indicates that this alert is hidden
     */
    get isHidden(): boolean;
    /**
     * Indicates that the current alert is valid
     */
    get valid(): boolean;
    /**
     * Indicates that the current alert is valid
     */
    get message(): string;
    /**
     * Indicates that the current alert should be rendered with markdown
     */
    get isMarkdownMessage(): boolean;
    /**
     * Indicates that the current alert has a severity defined
     */
    get hasSeverity(): boolean;
    /**
     * Indicates that the current alert has a custom icon
     */
    get hasCustomIcon(): boolean;
    /**
     * Indicates that the current alert is valid
     */
    get isPending(): boolean;
    /**
     * Indicates that the current alert is an error alert
     * Errors are always invalid with either no severity or error severity
     */
    get isError(): boolean;
    /**
     * Indicates that the current alert is an warning alert
     * Warnings may be valid or invalid (usually valid) with warning severity
     */
    get isWarning(): boolean;
    /**
     * Indicates that the current alert is an informational alert
     * Informational alerts may be valid or invalid (usually valid) with informational severity
     */
    get isInformational(): boolean;
    /**
     * Indicates that the current alert is an success alert
     * Success alerts are always valid with no severity severity
     */
    get isSuccess(): boolean;
    /**
     * Indicates that the current alert is an success alert
     */
    get alertType(): string;
    /**
     * Gets the class to apply to the alert icon
     */
    get alertClass(): string;
    constructor(injector: Injector);
    /**
     * Implementation of angular OnInit interface
     */
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    /**
     * Gets the initial host classes to be applied to this element
     * When called in the @see BaseComponent super class initialization, These classes will be automatically assigned to the host element.
     */
    protected getInitialHostClasses(): string[];
    /**
     * Creates the idBag used by this component to store unique element ids.
     * id values will be assigned be the @see BaseComponent super class.
     */
    protected createIdBag(): MsftSme.StringMap<string>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ValidationAlertComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ValidationAlertComponent, "sme-validation-alert, sme-alert", never, { "showBackground": "showBackground"; "alert": "alert"; "role": "role"; }, {}, never, never, false, never>;
}
