import type { ContractMeta, MergeContractMeta } from "./types.js"; export function mergeContractMeta< TCurrent extends ContractMeta, TNext extends ContractMeta, >(current: TCurrent, next: TNext): MergeContractMeta { const metadata: ContractMeta = { ...current, ...next, }; if (next.openapi !== undefined) { metadata.openapi = { ...current.openapi, ...next.openapi, }; } return metadata as MergeContractMeta; }