import { Entity } from "@src/domain";
import type { Adr } from "./Adr";
import { MarkdownAdrLinkResolver } from "./MarkdownAdrLinkResolver";
declare type Props = {
    value: string;
};
export declare class MarkdownBody extends Entity<Props> {
    private cm;
    private adrLinkResolver?;
    constructor(value: string);
    setAdrLinkResolver(resolver: MarkdownAdrLinkResolver): MarkdownBody;
    private getFirstH1TitleElement;
    getFirstH1Title(): string | undefined;
    setFirstH1Title(title: string): void;
    deleteFirstH1Title(): void;
    private getHeaderMetadataUl;
    private getHeaderMetadataElementAndMatch;
    getHeaderMetadata(key: string): string | undefined;
    setHeaderMetadata(key: string, value: string): void;
    deleteHeaderMetadata(key: string): void;
    private getLinksUl;
    getLinks(): string[] | undefined;
    addLink(link: string): void;
    addLinkNoDuplicate(link: string): void;
    getRawMarkdown(): string;
    clone(): MarkdownBody;
    replaceAdrLinks(from: Adr): Promise<void>;
}
export {};
//# sourceMappingURL=MarkdownBody.d.ts.map