import { ButtonMetadata } from '../../types';
import { EmptyStateMetadata, EmptyStateVariant } from './types';
import * as i0 from "@angular/core";
/**
 * `<val-empty-state>` — molecule declarativo para estados de "no hay datos /
 * hubo error / sin red". Reemplaza el patrón ad-hoc (ion-icon + val-title +
 * val-text + val-button) que cada página venía improvisando.
 *
 * Uso típico:
 *
 * ```html
 * @if (loading()) {
 *   <val-skeleton-layout [props]="..." />
 * } @else if (errorState(); as e) {
 *   <val-empty-state [props]="e" />
 * } @else if (items().length === 0) {
 *   <val-empty-state [props]="emptyProps" />
 * } @else {
 *   <!-- contenido normal -->
 * }
 * ```
 *
 * I18n: las cadenas vienen ya traducidas en las props (la lib es agnóstica de
 * namespaces). Para wiring automático desde un error capturado, usar el
 * helper `createErrorStateProps(err, ...)` (`valtech-components`).
 */
export declare class EmptyStateComponent {
    props: import("@angular/core").InputSignal<EmptyStateMetadata>;
    /** Variante resuelta (default `'empty'`). */
    protected variantClass: import("@angular/core").Signal<EmptyStateVariant>;
    /** Icono final — custom si se pasó, default de la variante si no. */
    protected iconName: import("@angular/core").Signal<string>;
    /** Tamaño en px. Default 64. */
    protected iconSize: import("@angular/core").Signal<number>;
    /**
     * Props del botón CTA. Construidas a partir de `props().action`. El estado
     * `WORKING` se aplica cuando `action.loading === true` (spinner mientras
     * el handler corre).
     */
    protected ctaProps: import("@angular/core").Signal<ButtonMetadata>;
    static ɵfac: i0.ɵɵFactoryDeclaration<EmptyStateComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EmptyStateComponent, "val-empty-state", never, { "props": { "alias": "props"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
}
