import type { BaseFunction, PatchData, PatchFunction } from './definition'; import { getFunctionPatches } from './getFunctionPatches'; export const addPatch = (baseFunction: T, patch: PatchFunction, condition?: () => boolean) => { const patches = getFunctionPatches(baseFunction); const patchData: PatchData = { patchFunction: patch, condition, }; patches.add(patchData); return () => { patches.delete(patchData); }; };