/** What tells two states of a stemma apart, version by version. */ import { Edition } from "../model/Edition.js"; /** * How a version differs between two states of the edition: whether it * is in either, what it derives from in each, and which symbols it * inserts and deletes in one and not the other. * @category Filiation */ export interface VersionChange { version: string; /** The version it derives from in the state before, where it is in that state. */ parentBefore?: string | null; /** The version it derives from in the state after, where it is in that state. */ parentAfter?: string | null; inserted: { kept: number; gone: string[]; added: string[]; }; deleted: { kept: number; gone: string[]; added: string[]; }; } /** * Version by version, how the stemma of one state of the edition differs * from that of another, as when a proposed stemma is set against the one * the edition holds. The versions of the state before come first, in * their order, then those only the state after holds. * @category Filiation */ export declare const stemmaChanges: (before: Pick, after: Pick) => VersionChange[];