/** * Static metadata shape, patterned after Next.js. * * Route modules export either: * * ```ts * export const metadata: Metadata = { title: 'Home' } * ``` * * or a generator: * * ```ts * export async function generateMetadata(): Promise { … } * ``` */ export interface Metadata { title?: string; description?: string; icons?: { icon?: string; shortcut?: string; apple?: string; }; openGraph?: { title?: string; description?: string; images?: string[]; }; [key: string]: unknown; } /** Context passed to a route's `generateMetadata()`. */ export interface GenerateMetadataContext { params: Record; } /** Shape of a route module's `generateMetadata` export. */ export type GenerateMetadata = (ctx: GenerateMetadataContext) => Metadata | Promise; /** * Applies resolved route metadata to the document: the title, description * meta element, Open Graph tags, and favicon, in a Next.js-style shape. * * Safe to call on every navigation: tags murasaki previously added are * removed first, so re-applying (or applying metadata for the next route) * replaces cleanly instead of accumulating stale tags. `document.title` is * only touched when a title is actually resolved — it's never blanked out. * * No-op outside a DOM environment (SSR-safe). */ export declare function applyMetadata(meta: Metadata): void; //# sourceMappingURL=metadata.d.ts.map