import { LocalizedHtmlContent, LocalizedTextContent } from '../../../shared/models/config'; export interface ContentPageSeoConfig { title?: string; description?: string; keywords?: string; canonical?: string; ogTitle?: string; ogDescription?: string; ogImage?: string; } export interface ContentPageTranslation { title?: string; html?: string; seo?: ContentPageSeoConfig; } export interface ContentPage { id: string; slug: string; title: string; icon?: string; order: number; showInFooter: boolean; showInHeader: boolean; showInSitemap: boolean; visibility: { desktop?: boolean; tablet?: boolean; mobile?: boolean; }; requiresAuthentication: boolean; footerGroup?: string; translations: Record; seo?: ContentPageSeoConfig; } export interface ContentPageBootstrapInput { id: string; slug: string; title?: string | LocalizedTextContent; showInFooter?: boolean; showInHeader?: boolean; showInSitemap?: boolean; icon?: string; order?: number; visibility?: { desktop?: boolean; tablet?: boolean; mobile?: boolean; }; requiresAuthentication?: boolean; footerGroup?: string; translations?: Record; html?: string | LocalizedHtmlContent; seo?: ContentPageSeoConfig | { title?: string | LocalizedTextContent; description?: string | LocalizedTextContent; keywords?: string; canonical?: string; ogTitle?: string | LocalizedTextContent; ogDescription?: string | LocalizedTextContent; ogImage?: string; robots?: string; metaTags?: Array<{ name?: string; property?: string; content: string }>; }; }