// TypeScript types for ribbon JSON data structures export interface RibbonLink { /** Unique identifier for the link */ id: string; /** Link URL */ href?: string; /** Link text */ text: string; /** Badge text key (eg. "new") */ badge?: string; /** Link target - defaults to '_self' (same tab) */ target?: string; /** Whether the link should be shown only on mobile devices */ mobileOnly?: boolean | false; } export interface RibbonConfig { dsIcon?: string; } export interface RibbonData { links: { fi: RibbonLink[]; sv: RibbonLink[]; en: RibbonLink[]; }; brandingUrls: { fi: string; sv: string; en: string; }; badgeTexts: { [key: string]: { fi: string; sv: string; en: string; }; }; siteNames: { fi: string; sv: string; en: string; }; uiTexts: { sites: { fi: string; sv: string; en: string; }; close: { fi: string; sv: string; en: string; }; navigationLabel: { fi: string; sv: string; en: string; }; logoLabel: { fi: string; sv: string; en: string; }; }; config: RibbonConfig; } export interface AppData { ribbon: RibbonData; }