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;
};
/** Shape of the seo object returned by a GROQ query — use in your frontend project */
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;
}
