/** * Single entry of a `val-page-links` list. * * Pass EITHER `routerLink` (Angular SPA navigation) OR `href` (external URL). * If both are present, `routerLink` wins. */ export interface PageLink { /** Visible text. */ label: string; /** Angular router path (e.g. `/legal/terms`). */ routerLink?: string; /** External URL (e.g. `https://myvaltech.com/legal/terms`). */ href?: string; /** * Force opens in a new tab. Defaults to `true` when `href` looks absolute * (starts with `http://` or `https://`). */ external?: boolean; /** * Optional Ionic icon name shown after the label (e.g. `arrow-forward-outline`, * `open-outline` for external). When omitted, no icon is rendered. */ icon?: string; /** Optional tooltip / aria-label override. */ ariaLabel?: string; } /** * Config for `val-page-links` — stacked list of navigational links. * Used for legal/policies, footer link columns, "About" sections, etc. */ export interface PageLinksMetadata { /** Items to render in order. */ links: PageLink[]; /** Show a divider line between items. Default `true`. */ showDividers?: boolean; /** Visual size preset. Default `'medium'`. */ size?: 'small' | 'medium' | 'large'; }