import { Color } from '@ionic/core';
/**
 * Click event emitted by val-article-card.
 */
export interface ArticleCardClickEvent {
    /** Token identifier for the card */
    token?: string;
    /** Whether navigation was triggered (routerLink / href set) */
    navigated?: boolean;
}
/**
 * Metadata for val-article-card.
 *
 * Article / blog teaser card: cover image, topic chip, title, excerpt and date.
 * Presentational — pass already-resolved/formatted strings (the date should be
 * pre-formatted by the consumer, e.g. with a locale-aware pipe).
 */
export interface ArticleCardMetadata {
    /** Unique token identifier */
    token?: string;
    /** Cover image URL */
    image?: string;
    /** Alt text for the cover image */
    imageAlt?: string;
    /** Image aspect ratio (CSS). Default: '16 / 9' */
    aspectRatio?: string;
    /** Topic / category label (rendered as a chip) */
    topic?: string;
    /** Topic chip color (Ionic color name or CSS color) */
    topicColor?: Color | string;
    /** Article title */
    title: string;
    /** Short excerpt / summary */
    excerpt?: string;
    /** Pre-formatted publication date string */
    date?: string;
    /** Internal Angular route */
    routerLink?: string | any[];
    /** External URL (opens in a new tab) */
    href?: string;
    /** Show border. Default: true */
    bordered?: boolean;
    /** Show shadow. Default: false */
    shadowed?: boolean;
    /** Number of lines before the excerpt is clamped. Default: 3 */
    excerptLines?: number;
}
/**
 * Default values for ArticleCardMetadata.
 */
export declare const ARTICLE_CARD_DEFAULTS: Required<Pick<ArticleCardMetadata, 'aspectRatio' | 'bordered' | 'shadowed' | 'excerptLines'>>;
