export interface FrontmatterResult { /** Parsed frontmatter properties (empty object if no frontmatter present) */ properties: Record; /** The note body without the frontmatter block */ body: string; /** True if the source had a frontmatter block */ hasFrontmatter: boolean; } /** * Parses the YAML frontmatter from a markdown string. */ export declare function parseFrontmatter(content: string): FrontmatterResult; /** * Serializes properties + body back to a markdown string with a YAML * frontmatter block. If `properties` is empty and the original content had * no frontmatter, returns the body unchanged. */ export declare function stringifyFrontmatter(body: string, properties: Record): string; /** * Merges new properties into an existing markdown content's frontmatter. * * If `mode` is `'merge'` (default), keys in `newProperties` override * existing keys but other existing keys are preserved. * If `mode` is `'replace'`, the entire frontmatter block is replaced. */ export declare function mergeFrontmatter(content: string, newProperties: Record, mode?: 'merge' | 'replace'): string; /** * Adds tags to a note's frontmatter (deduplicating). Returns the updated * markdown content and the resulting tag list. */ export declare function addTagsToFrontmatter(content: string, tagsToAdd: string[]): { content: string; tags: string[]; }; /** * Removes tags from a note's frontmatter. Returns the updated markdown * content and the resulting tag list. */ export declare function removeTagsFromFrontmatter(content: string, tagsToRemove: string[]): { content: string; tags: string[]; }; //# sourceMappingURL=frontmatter.d.ts.map