import * as i0 from '@angular/core';
import { HostBinding, Component } from '@angular/core';

/**
 * @description
 * A helper text component that provides supplementary information for form fields or UI elements.
 * Displays descriptive text to guide users in completing forms or understanding interface elements.
 *
 * @usageNotes
 * ### Basic helper text
 * ```html
 * <eui-label>Password</eui-label>
 * <eui-input-text type="password"></eui-input-text>
 * <eui-helper-text>Must be at least 8 characters</eui-helper-text>
 * ```
 *
 * ### Accessibility
 * - Should be associated with form controls using aria-describedby
 * - Provides context without being intrusive
 * - Text is readable by screen readers
 *
 * ### Notes
 * - Use for hints, format requirements, or additional context
 * - Keep text concise and actionable
 * - Combine with eui-feedback-message for validation errors
 */
class EuiHelperTextComponent {
    constructor() {
        /**
         * @description
         * Type attribute bound to the host element.
         * Used to identify the component type in the DOM.
         *
         * @protected
         */
        this.type = 'MessageFeedback';
    }
    /**
     * @description
     * Computes and returns the CSS classes for the feedback message component.
     * Combines base state classes with muted state if applicable.
     *
     * @returns {string} Space-separated string of CSS class names
     */
    get cssClasses() {
        return 'eui-helper-text';
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: EuiHelperTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.16", type: EuiHelperTextComponent, isStandalone: true, selector: "eui-helper-text", host: { properties: { "class": "this.cssClasses", "attr.type": "this.type" } }, ngImport: i0, template: '<ng-content/>', isInline: true, styles: [".eui-21 :host{font:var(--eui-f-s);color:var(--eui-c-text-light);margin-block:var(--eui-s-5xs) var(--eui-s-xs)}\n"] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: EuiHelperTextComponent, decorators: [{
            type: Component,
            args: [{ selector: 'eui-helper-text', template: '<ng-content/>', styles: [".eui-21 :host{font:var(--eui-f-s);color:var(--eui-c-text-light);margin-block:var(--eui-s-5xs) var(--eui-s-xs)}\n"] }]
        }], propDecorators: { cssClasses: [{
                type: HostBinding,
                args: ['class']
            }], type: [{
                type: HostBinding,
                args: ['attr.type']
            }] } });

const EUI_HELPER_TEXT = [
    EuiHelperTextComponent,
];

/**
 * Generated bundle index. Do not edit.
 */

export { EUI_HELPER_TEXT, EuiHelperTextComponent };
//# sourceMappingURL=eui-components-eui-helper-text.mjs.map
