import type { SpecVersion, SpecDiff, ReconcileChange, Spec, CascadeResult, VersionHistory, SpecStatus } from '../types/index.js';
/**
 * Create a new SpecVersion from a set of approved ReconcileChanges.
 * The new version number = currentVersion + 1.
 */
export declare function createVersion(specId: string, currentVersion: number, changes: ReconcileChange[], reason: string, changedBy?: string): SpecVersion;
/**
 * Map ReconcileChanges to semantic SpecDiffs.
 * Assigns each change to its corresponding artifact file (spec.md / technical.md / PLAN.md).
 */
export declare function computeDiff(changes: ReconcileChange[]): SpecDiff[];
/**
 * Assemble a VersionHistory from a raw versions array.
 * Returns versions sorted ascending by version number.
 */
export declare function buildVersionHistory(specId: string, versions: SpecVersion[]): VersionHistory;
/**
 * Find all specs that declare a dependency on the given specId,
 * either through `dependencies` or `blockedBy`.
 */
export declare function findDownstreamSpecs(specId: string, allSpecs: Spec[]): Spec[];
/**
 * Identify downstream specs affected when a spec transitions to a new status.
 * Returns notifications (informational only — not blocking).
 * Max cascade depth: 1 level (prevents recursive cascading).
 */
export declare function cascadeCheck(specId: string, allSpecs: Spec[], newStatus: SpecStatus): CascadeResult;
//# sourceMappingURL=spec-versioner.d.ts.map