import { Image } from "sanity"; export type HreflangEntry = { locale: string; url: string; }; export type SchemaOrgData = { schemaType?: string; name?: string; description?: string; url?: string; image?: string; datePublished?: string; dateModified?: string; author?: string; price?: string; priceCurrency?: string; availability?: string; ratingValue?: string; ratingCount?: string; startDate?: string; endDate?: string; location?: string; faqItems?: Array<{ question: string; answer: string }>; }; export type Seo = { type: string; nofollowAttributes?: boolean; robotsMeta?: string[]; metaTitle?: string; metaDescription?: string; metaImage?: Image; focusKeyword?: string; seoKeywords?: Array<{ type?: string }>; hreflang?: HreflangEntry[]; schemaOrg?: SchemaOrgData; openGraph?: { image?: Image; title?: string; description?: string; siteName?: string; }; additionalMetaTags?: Array<{ type?: string; metaAttributes?: Array<{ type?: string; attributeKey?: string; attributeType?: string; attributeValueImage?: Image; attributeValueString?: string; }>; }>; twitter?: { cardType?: string; creator?: string; site?: string; handle?: string; }; seoStatus?: "draft" | "review" | "approved"; seoReviewNotes?: string; }; export interface SeoData { metaTitle?: string; metaDescription?: string; nofollowAttributes?: boolean; robotsMeta?: string[]; focusKeyword?: string; seoKeywords?: string[]; metaImage?: { asset?: { url?: string } }; openGraph?: { title?: string; description?: string; siteName?: string; image?: { asset?: { url?: string } }; }; twitter?: { cardType?: string; site?: string; creator?: string; handle?: string; }; hreflang?: { locale: string; url: string }[]; schemaOrg?: { schemaType?: string; name?: string; description?: string; url?: string; author?: string; datePublished?: string; dateModified?: string; price?: string; priceCurrency?: string; availability?: string; ratingValue?: string; ratingCount?: string; startDate?: string; endDate?: string; location?: string; faqItems?: { question: string; answer: string }[]; }; seoStatus?: "draft" | "review" | "approved"; seoReviewNotes?: string; }