export interface NavItem { label: string; href: string; } export interface Service { id: number; title: string; description: string; image: string; } export interface PromiseItem { icon: string; // Changed from LucideIcon to string for JSON storage title: string; description: string; } export interface Package { name: string; price: number; features: string[]; recommended?: boolean; } export interface Stat { label: string; value: string; } export interface Testimonial { name: string; role: string; image: string; text: string; stars: number; } export interface TeamMember { name: string; role: string; image: string; } export interface FaqItem { question: string; answer: string; } export interface BlogPost { id: number; // Adicionado ID para roteamento title: string; image: string; excerpt: string; content: string; // Adicionado conteúdo completo date: string; } export interface SpecialOffer { id: number; title: string; image: string; price: string; installment: string; rating: number; reviews: number; specs: { fuel: string; grip: string; noise: string; }; } export interface ClientLogo { name: string; url: string; } export interface WhyChooseItem { icon: string; text: string; } // Novo Tipo para Antes e Depois export interface BeforeAfterItem { id: number; title: string; imageBefore: string; imageAfter: string; } export interface GlobalSettings { siteName: string; logoUrl: string; // URL for the logo image faviconUrl: string; primaryColor: string; whatsappNumber: string; // Only numbers, e.g., 5511999999999 contactEmail: string; // For form submissions contactPhoneDisplay: string; // Formatted phone for display address: string; social: { instagram: string; facebook: string; twitter: string; youtube: string; linkedin: string; }; } export interface SectionVisibility { hero: boolean; specialOffers: boolean; about: boolean; services: boolean; bigCta: boolean; packages: boolean; gallery: boolean; beforeAfter: boolean; // Nova seção stats: boolean; whyChoose: boolean; testimonials: boolean; team: boolean; faq: boolean; blog: boolean; contact: boolean; clients: boolean; } // Novos tipos para textos editáveis export interface SectionTexts { hero: { feature1: string; feature2: string; feature3: string; }; specialOffers: { badge: string; title: string; subtitle: string; }; about: { subtitle: string; title: string; badgeYear: string; badgeText: string; }; services: { subtitle: string; title: string; }; packages: { subtitle: string; title: string; }; gallery: { subtitle: string; title: string; }; // Nova seção de textos beforeAfter: { subtitle: string; title: string; }; whyChoose: { subtitle: string; title: string; }; testimonials: { subtitle: string; title: string; }; team: { subtitle: string; title: string; }; faq: { subtitle: string; title: string; }; blog: { subtitle: string; title: string; }; contact: { subtitle: string; title: string; description: string; }; bigCta: { title: string; subtitle: string; buttonText: string; } } // Configuração do Header export interface HeaderConfig { items: NavItem[]; ctaButton: { text: string; url: string; // Se vazio, usa a lógica padrão do WhatsApp show: boolean; }; } // Configuração do Footer export interface FooterLink { label: string; href: string; } export interface FooterColumn { id: string; // Identificador único para ajudar na renderização/edição title: string; type: 'custom' | 'services_dynamic' | 'hours'; // Tipo de coluna links?: FooterLink[]; // Apenas usado se type === 'custom' } export interface FooterConfig { description: string; columns: FooterColumn[]; bottomLinks: FooterLink[]; // Links de privacidade, termos, etc. }