/** * Merge multiple ArchRad IR JSON fragments into one graph. * * Default: union by `node.id` — identical definitions dedupe; conflicting ids → error + stderr report. * Optional `prefixFragments`: disjoint union (legacy) — prefix each fragment’s ids. */ export declare class FragmentMergeError extends Error { constructor(message: string); } /** Same `node.id` with incompatible definitions across fragments. */ export declare class FragmentMergeConflictError extends Error { readonly reportLines: string[]; constructor(message: string, reportLines: string[]); } /** Prefix node id for merged graph uniqueness. */ export declare function prefixNodeId(prefix: string, nodeId: string): string; export type MergeIrFragmentsOptions = { /** One label per fragment (defaults to fragment-0, fragment-1, …). */ labels?: string[]; /** * When true: prefix each fragment’s node/edge ids (disjoint union; no cross-fragment id checks). * When false (default): merge by global `node.id` with dedupe / conflict detection. */ prefixFragments?: boolean; }; export type MergeIrFragmentsResult = { ir: Record; /** Non-fatal messages (stderr in CLI). */ warnings: string[]; }; /** * Merge IR fragments. Default mode unions on `node.id`; conflicts throw {@link FragmentMergeConflictError}. */ export declare function mergeIrFragments(fragments: Record[], options?: MergeIrFragmentsOptions): MergeIrFragmentsResult; //# sourceMappingURL=merge.d.ts.map