import { FeatureItem, FeaturesListFooterLink, FeaturesListMetadata } from './types';
import * as i0 from "@angular/core";
/**
 * val-features-list
 *
 * Lista de features con icono **o imagen**, título y descripción. Soporta i18n,
 * colapso opcional ("ver más" cuando supera `maxVisible`) y un link al pie
 * (ej. "Find out more"). Útil para listas de settings, apps, beneficios.
 *
 * @example
 * ```html
 * <val-features-list
 *   [props]="{
 *     features: [
 *       { icon: 'flash-outline', titleKey: 'Rápido', descriptionKey: 'Carga al instante' },
 *       { image: '/logos/app.png', titleKey: 'Mi App', descriptionKey: 'Gestión de equipos', token: 'app' }
 *     ],
 *     maxVisible: 3,
 *     footerLink: { label: 'Ver todo', routerLink: '/apps' }
 *   }"
 *   (itemClick)="open($event)"
 * />
 * ```
 */
export declare class FeaturesListComponent {
    private i18n;
    private navigation;
    /** Component configuration */
    readonly props: import("@angular/core").InputSignal<FeaturesListMetadata>;
    /** Emitido al tocar un item (con su `token`). */
    readonly itemClick: import("@angular/core").OutputEmitterRef<string>;
    /** Emitido al tocar el footer link (con su `token`). */
    readonly footerClick: import("@angular/core").OutputEmitterRef<string>;
    private readonly _expanded;
    readonly expanded: import("@angular/core").Signal<boolean>;
    constructor();
    /** Merged configuration with defaults */
    config: import("@angular/core").Signal<{
        features: FeatureItem[];
        i18nNamespace?: string;
        iconColor: string;
        iconSize: number;
        mode: "horizontal" | "vertical";
        gap: "small" | "medium" | "large";
        alignment: "center" | "start";
        imageShape: "circle" | "square";
        maxVisible: number;
        showMoreLabel?: string;
        showLessLabel?: string;
        footerLink?: FeaturesListFooterLink;
    }>;
    /** Items visibles según el estado de colapso. */
    visibleFeatures: import("@angular/core").Signal<FeatureItem[]>;
    /** Si hay items de sobra para colapsar/expandir. */
    canCollapse: import("@angular/core").Signal<boolean>;
    showMoreText: import("@angular/core").Signal<string>;
    showLessText: import("@angular/core").Signal<string>;
    /** Resolved icon color (handles Ionic colors and CSS colors) */
    iconColorStyle: import("@angular/core").Signal<string>;
    toggle(): void;
    onItem(feature: FeatureItem): void;
    onFooter(event: MouseEvent, link: FeaturesListFooterLink): void;
    /** Get translated title or return direct text */
    getTitle(feature: FeatureItem): string;
    /** Get translated description or return direct text */
    getDescription(feature: FeatureItem): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<FeaturesListComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FeaturesListComponent, "val-features-list", never, { "props": { "alias": "props"; "required": true; "isSignal": true; }; }, { "itemClick": "itemClick"; "footerClick": "footerClick"; }, never, never, true, never>;
}
