/** * Document title and meta helpers. * * @module bquery/platform */ /** Meta tag definition. */ export interface PageMetaTag { /** Standard meta name attribute. */ name?: string; /** Open Graph / custom property attribute. */ property?: string; /** http-equiv attribute. */ httpEquiv?: string; /** Meta tag content. */ content: string; } /** Link tag definition. */ export interface PageLinkTag { /** Link relation. */ rel: string; /** Link URL. */ href: string; /** Optional type attribute. */ type?: string; /** Optional media query. */ media?: string; /** Optional crossOrigin attribute. */ crossOrigin?: 'anonymous' | 'use-credentials'; } /** Page metadata definition. */ export interface PageMetaDefinition { /** Document title. */ title?: string; /** Convenience shortcut for the description meta tag. */ description?: string; /** Additional meta tags. */ meta?: PageMetaTag[]; /** Additional link tags. */ link?: PageLinkTag[]; /** Attributes applied to the html element. */ htmlAttributes?: Record; /** Attributes applied to the body element. */ bodyAttributes?: Record; } /** Cleanup function returned by definePageMeta(). */ export type PageMetaCleanup = () => void; /** * Apply document metadata for the current page. * * @param definition - Title, meta tags, link tags, and document attributes * @returns Cleanup function that restores the previous document state * * @example * ```ts * const cleanup = definePageMeta({ * title: 'Dashboard', * description: 'Overview of your account', * }); * ``` */ export declare const definePageMeta: (definition: PageMetaDefinition) => PageMetaCleanup; //# sourceMappingURL=meta.d.ts.map