import { JsonLdEntry } from './head'; export interface SeoMetaOptions { /** Page . Also sets og:title if not overridden. */ title: string; /** Page description. Also sets og:description and meta description if not overridden. */ description?: string; /** Canonical URL. Generates <link rel="canonical"> and og:url. */ canonical?: string; /** Open Graph image URL. */ ogImage?: string; /** Open Graph type. Default: 'website'. */ ogType?: string; /** Twitter card type. Default: 'summary_large_image'. */ twitterCard?: 'summary' | 'summary_large_image' | 'app' | 'player'; /** Language code for <html lang>. */ lang?: string; /** Robots directive. Default: 'index, follow'. */ robots?: string; /** Structured Data entries (JSON-LD). */ jsonLd?: JsonLdEntry[]; } /** * High-level SEO helper that wraps `useHead()` with sensible defaults. * * Automatically sets: * - `<title>` and `og:title` * - `<meta name="description">` and `og:description` * - `<link rel="canonical">` and `og:url` * - `og:image` from `ogImage` * - `og:type` (default: 'website') * - `twitter:card` (default: 'summary_large_image') * - `twitter:title` and `twitter:description` * - `<html lang>` from `lang` * - `<meta name="robots">` (default: 'index, follow') * - JSON-LD structured data from `jsonLd` * * @example * ```ts * setup() { * useSeoMeta({ * title: 'Sobre nosotros · Mi App', * description: 'Quiénes somos y qué hacemos.', * canonical: 'https://mi-app.com/about', * ogImage: 'https://mi-app.com/og/about.png', * lang: 'es', * }) * return { state: {}, computed: {}, actions: {} } * } * ``` */ export declare function useSeoMeta(options: SeoMetaOptions | (() => SeoMetaOptions)): void; //# sourceMappingURL=seo-meta.d.ts.map