UNPKG

sanity-plugin-seo

Version:

Complete SEO toolkit for Sanity Studio with live scoring, AI suggestions, team workflows, and 30+ structured data types. Free and AI tiers live. Pro coming soon.

169 lines (156 loc) 3.79 kB
import { Image as Image_2 } from "sanity"; import { it as it_2 } from "sanity/lib/_chunks-dts/ActiveWorkspaceMatcherContext"; import { default as React_2 } from "react"; export declare interface AIConfig { provider: "openai" | "anthropic" | "groq"; apiKey: string; model?: string; } export declare interface AutomationConfig { autoCanonical?: boolean; autoOgImage?: boolean; autoAltText?: boolean; autoDescription?: boolean; } export declare type HreflangEntry = { locale: string; url: string; }; export declare interface PluginConfig { proFeature?: string; aiFeature?: AIConfig; bodyField?: string; slugField?: string; defaultFetchType?: string; dashboard?: boolean; automation?: AutomationConfig; workflow?: WorkflowConfig; documentTypes?: string[]; } export declare type Schema = Seo; export declare 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 declare type Seo = { type: string; nofollowAttributes?: boolean; robotsMeta?: string[]; metaTitle?: string; metaDescription?: string; metaImage?: Image_2; focusKeyword?: string; seoKeywords?: Array<{ type?: string; }>; hreflang?: HreflangEntry[]; schemaOrg?: SchemaOrgData; openGraph?: { image?: Image_2; title?: string; description?: string; siteName?: string; }; additionalMetaTags?: Array<{ type?: string; metaAttributes?: Array<{ type?: string; attributeKey?: string; attributeType?: string; attributeValueImage?: Image_2; attributeValueString?: string; }>; }>; twitter?: { cardType?: string; creator?: string; site?: string; handle?: string; }; seoStatus?: "draft" | "review" | "approved"; seoReviewNotes?: string; }; export declare function SEODashboardPane(): React_2.JSX.Element; /** Shape of the seo object returned by a GROQ query — use in your frontend project */ export declare 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; } declare const seoMetaFields: it_2<PluginConfig | undefined>; export default seoMetaFields; export { seoMetaFields }; export declare interface WorkflowConfig { requireSeoApproval?: boolean; reviewers?: string[]; } export {};