export interface Frontmatter { title?: string; description?: string; layout?: string | boolean; tags?: string[]; date?: string; published?: boolean; isLayout?: boolean; [key: string]: string | number | boolean | string[] | undefined; } export interface BundleInfo { id: string; path: string; size?: number; hash?: string; dependencies?: string[]; exports?: string[]; compiled?: boolean; timestamp?: Date; } export interface LoaderData { props?: Record; metadata?: Record; error?: string; timestamp?: Date; } export interface Entity { id: string; path: string; slug: string; type: "page" | "layout" | "component"; content: string; frontmatter: Frontmatter; kind?: "mdx" | "tsx"; isLayout?: boolean; isComponent?: boolean; isPage?: boolean; } export interface EntityInfo { entity: Entity; bundle?: BundleInfo | null; loaderData?: LoaderData | null; } export interface EntityTypeInfo { type: Entity["type"]; kind?: "mdx" | "tsx"; isLayout: boolean; isComponent: boolean; isPage: boolean; } export declare function isFrontmatterRecord(value: unknown): value is Record; /** * Snapshot parsed frontmatter without invoking accessors, then remove values * that violate the framework's known metadata fields. Unknown fields remain * available to applications. */ export declare function normalizeFrontmatter(value: unknown): Frontmatter; export declare function detectEntityType(fileName: string, frontmatter?: Frontmatter): EntityTypeInfo; //# sourceMappingURL=entities.d.ts.map