/** Walking the stemma of an edition along the principal derivations. */ import { Edition } from "../model/Edition.js"; import { Version } from "../model/Version.js"; /** * The version and its ancestors along the principal line, from the * version up to the root. A stemma that loops back on itself is walked * once round, so that an edition in that state can still be read and * repaired. * @category Versions and stemma */ export declare const lineageOf: (edition: Pick, versionId: string) => Readonly[]; /** * The version the given one's text is read against, by its principal derivation. * @category Versions and stemma */ export declare const predecessorOf: (edition: Pick, versionId: string) => Readonly | undefined; /** * Every version with its generation: how many principal derivations * lie between it and the root. A version whose parent the edition does * not hold counts as a root. In a stemma that loops, the loop is walked * once round, as `lineageOf` walks it, so that the stemma of an edition * in that state can still be drawn and repaired. * @category Versions and stemma */ export declare const withGenerations: (edition: Pick) => Array;