/** * reactive/arrayTraps -- Array mutation interception via Proxy. * * When scope.items is an array, we return a Proxy that intercepts mutating * methods (push, pop, splice, etc.). Each mutation: * 1. Clones the current array * 2. Applies the mutation to the clone * 3. Commits the new array via the commit callback * * Non-mutating methods (map, filter, forEach, etc.) pass through to the * current array snapshot without interception. * * The original array in state is NEVER mutated directly -- all writes go * through the commit callback which calls setValue/updateValue. */ /** * Creates a Proxy over an array that intercepts mutating operations. * * @param getCurrent - Returns the current array snapshot from state * @param commit - Called with the new array after a mutation (triggers setValue) * @returns Proxied array with copy-on-write semantics */ export declare function createArrayProxy(getCurrent: () => T[], commit: (newArray: T[]) => void): T[];