import { Db } from "./db.js";
import { BrainDBOptionsOut } from "./index.js";
import { Link } from "./Link.js";
export declare class Document {
    private idPath;
    private doc;
    private db;
    private getDoc;
    private checkAst;
    constructor(db: Db, idPath: string);
    path(): string;
    url(): string;
    slug(): string;
    frontmatter(): {
        [x: string]: import("./types.js").JsonValue;
    } & {
        [x: string]: import("./types.js").JsonValue | undefined;
    };
    markdown(options?: BrainDBOptionsOut): string | Uint8Array<ArrayBufferLike>;
    title(): string;
    id(): number;
    updatedAt(): Date;
    /**
     * From which documents there are links to this one
     */
    documentsFrom(): Document[];
    /**
     * experimental - maybe use instead outgoingLinks(to=null)
     */
    unresolvedLinks(): Link[];
    /**
     * experimental
     */
    text(): string;
}
