{"_id":"@abejarano/ts-mongodb-criteria","_rev":"24-755d6c985fa0349d9c02613b80427993","name":"@abejarano/ts-mongodb-criteria","dist-tags":{"latest":"2.0.0"},"versions":{"1.2.1":{"name":"@abejarano/ts-mongodb-criteria","version":"1.2.1","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.2.1","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"81611694c48f1078f304775ead0a5728c8d9084b","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.2.1.tgz","fileCount":46,"integrity":"sha512-kT0s55ZR/rotYzl31bhk/DxlKRJDqh3wWh9dcvoMwiPSBHDMspEwGwQgfJHESUExAaVw2gBf3gnIQDA0lF5Sbw==","signatures":[{"sig":"MEYCIQDr0cW7FfPL/NkkDv30ut1V0qyn5lWEh8CvYJFmRQnZWwIhAL2/vu3GZB+CsLvDzzZFUVGx7dXwbUdWkKx1chKGMZDi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43664},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"gitHead":"0a005f5b528a3ef37f9423f62f23515975f4e8ac","scripts":{"test":"jest","build":"tsc -p tsconfig.json","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","typecheck":"tsc --noEmit","test:watch":"jest --watch","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.2.1_1764861612897_0.520821167788831","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.3.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.3.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"33f93a5c139c0231d1669064e9eda7f260d40465","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.3.0.tgz","fileCount":46,"integrity":"sha512-mTEJbmGa0/5poM55V1kv1I5EaqjUZE+xSe2Hv2iCkkOlM5+cIWCXKKwtP2kvlmJfxtmN/Oe/gmstMjLxZr1U+A==","signatures":[{"sig":"MEUCIFMTPFLPf4HQ8GqIuW7oCxJSGVbKnlckDV9F8RdDu7IJAiEAmXB+5ulekWOtjSY5AD9MRG3NI+2DgSIFrLAlX2BvN9I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44904},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=20"},"gitHead":"e75a4357dc22f68943e59d70cbf66d53faa91216","scripts":{"test":"jest","build":"tsc -p tsconfig.json","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","typecheck":"tsc --noEmit","test:watch":"jest --watch","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.3.0_1764950033595_0.08098660404114377","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.4.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.4.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"c3c08681cae166afc67fd2e1038f9c8d40d82fc5","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.4.0.tgz","fileCount":68,"integrity":"sha512-Xzt7uIqS0U4RZpbDLi3xoBpm+CudUvuYb6goJAaGQ0X092/vlQhklxGIHeR8ZZc0JzMNRGAvmSplZlbTHS1r2Q==","signatures":[{"sig":"MEUCIQDqcbe/94oY7VAPg4rOT0H8O1E+WW3Dndr8RjDqedriEwIgL6dxYttmUfnTFKXE/ccLvRW/obTBr3J4T8aeJm97tA4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67025},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"3a72ad116e805a451b9d6e462d0f1e2a7253a260","scripts":{"test":"jest","build":"yarn build:cjs && yarn build:esm && yarn build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.4.0_1767791065811_0.5867152487832115","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.5.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.5.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"0cdf4f6c227bd52d3065b84ba0d66c24ab4f9497","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.5.0.tgz","fileCount":71,"integrity":"sha512-KQ51ERINfFGF2MltC2zRh9OyIabqL2Xtbvb0sHRB90xrogyo84F2QI53yFCE884yM69Ua069EoWMN++S94JJww==","signatures":[{"sig":"MEUCIQCsGuPn+iXfh7Ky34wX76DN4yMGs/r0NHWZ0WqbG0xKKwIgMknqwU2QVdlmmnBGi4URwPbZDdUM50ENQakdWuyc3LM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68196},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"8f72a97a8b678d1cdb0fab9c7045ccec88370b04","scripts":{"test":"jest","build":"yarn build:cjs && yarn build:esm && yarn build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.5.0_1767792444765_0.44816696684011514","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@abejarano/ts-mongodb-criteria","version":"1.5.1","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.5.1","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"3bb886d0e4f73de90b3600b8a313f9107a6f9c06","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.5.1.tgz","fileCount":71,"integrity":"sha512-aueLGGSKyR5Hk0Pnz8TVkYFF9QywkoMHMVluIGzze8t1RCTcJP9XNGgQnUikskgS1jgNeyo9YTl3JllCfYNCJA==","signatures":[{"sig":"MEYCIQDpRlqiMolm3xCCJ4ggZuY0SI7V6dUpoVEe24zuAXdrLgIhAM4v4ffAulqYQpMpKYdBiwW4jlUyxPx13yCfmcciHh28","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68003},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"67fc487a978c4ac331e8b8966a36390776daac7b","scripts":{"test":"jest","build":"yarn build:cjs && yarn build:esm && yarn build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.5.1_1767794973601_0.4925564540861995","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@abejarano/ts-mongodb-criteria","version":"1.5.2","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.5.2","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"6cf9bb06b8028ccbde94a20d1fa1098b09626931","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.5.2.tgz","fileCount":71,"integrity":"sha512-JtKchpOMcguhCgaSs4x2DW635MSjJXoZnUJ+Cy4yczsFgiGUsC2HI/OLcB7yoDSdc8Xj/8s23pxTRMl4GQMsWw==","signatures":[{"sig":"MEUCIQCi53LnqnFeSDaLMXhdtF0AhcNTYtM4YcTx/7BcPplYzwIgWz2ERHmb67pha0W07EWxwHzmY/pjy+ypwjaUgaAmWNA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68013},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"ed52683a7be9fc8e93c1125a977d0a9872e19475","scripts":{"test":"jest","build":"yarn build:cjs && yarn build:esm && yarn build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.5.2_1767817813365_0.9201384455562975","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.6.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.6.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"02808d5201b72ca485adfee98dae9529a31d1a63","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.6.0.tgz","fileCount":71,"integrity":"sha512-wcNiVpoJxa8NN4oZClg++wyfZOItmMtLACZ6H67AeqyccJRY/3jfkaW+XTYZd3Vy+8o6078vqAgdEm+8RPHJOQ==","signatures":[{"sig":"MEUCIQDLnHxMK6FBleFzd17/Poewc2CY2leHD6PDcC3ILUyxXAIgOm/B0haziZj1bN/c+hG3tAmfR2D5AYr18n6UUom2GJw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69507},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"532204c6e69611555087433c9374a6a46ffe7a22","scripts":{"test":"jest","build":"yarn build:cjs && yarn build:esm && yarn build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.6.0_1767891230215_0.16453028717900486","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@abejarano/ts-mongodb-criteria","version":"1.6.1","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.6.1","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"9e26c39f4ab9c527014754fdda1903a708871cbd","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.6.1.tgz","fileCount":71,"integrity":"sha512-Ym0P0uifcl3bSfbqiSvbrS8gwywk304dAqTJFwEfTMyZX0TCkg/ZKQXZdYfaSQHfoGoVBeSp9Qu0Xm7PCxVxaA==","signatures":[{"sig":"MEUCID3GryICfnWPp2WGXBTixBkq4X96qWmBMkObVVjTkHeXAiEAs6iEcv6qGzKdgoIA5yaEmWKxpwk9opd+reSKhctvNPM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69507},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"7725afb8220d29460791701b46d8eb8cfd49eb36","scripts":{"test":"jest","build":"yarn build:cjs && yarn build:esm && yarn build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.6.1_1768063683052_0.7326082449963647","host":"s3://npm-registry-packages-npm-production"}},"1.6.2":{"name":"@abejarano/ts-mongodb-criteria","version":"1.6.2","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.6.2","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"6bca6834d986b3539b19d4fb2e7493f725ed779d","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.6.2.tgz","fileCount":71,"integrity":"sha512-u07O88w4b5bQWDlaObaXtIGIJBc4eYjngTru+IkdDU+J/bz+njFss4uHsmlBZNeqf0/yWalcyOrHe6aPod9kng==","signatures":[{"sig":"MEYCIQCpYGDIfEhCR3h278wH1gCaPWsF5gOzAhMJrfUfLwbpjwIhAOLNWDSYocmTf1g+xccdtVXRgk6FHu4CZyxz0bnqFN/f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69568},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"54cfa44d5458b6345a4e431713ca29accee64753","scripts":{"test":"jest","build":"yarn build:cjs && yarn build:esm && yarn build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"yarn build","prepare":"yarn build","prebuild":"yarn clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.19.6","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.6.2_1768146655691_0.7152742568004637","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.7.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.7.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"96446b7430dd70bc63841a3a0ff431780f209923","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.7.0.tgz","fileCount":71,"integrity":"sha512-+BYsA3H6wqP9rCtPM3lkHwEgiGjCegdAA8i9nAQiakcnqmFjKs4P7kAOgAfwwTIlBWXTHeZFWpB6+9Ch9FeLBg==","signatures":[{"sig":"MEQCIDr40aSc6fyKhSeMEpOclfqhHyFPt4RiSh4ra/coTWiPAiB9RhfiHDnmNLwObvlFSiitsnc6MubLyHIHaXWjRFwC6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70476},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"199798341978b37c541357a271c672a455a043c2","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","migrate-mongo":"14.0.7","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.7.0_1769546069206_0.9098747268167344","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.8.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.8.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"ecfd4d5b58b96978c22cd3f0918087c4aa3039fa","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.8.0.tgz","fileCount":74,"integrity":"sha512-umbxgNm0iPBarUYGud4syh/zSLfG18HyJGXeUeFx8BtqYJqk0c43/DGSNjXuEu3eZuVXRfY6Z1QGXsxzyVqKqQ==","signatures":[{"sig":"MEYCIQC7ZqxzVsYuzileGp0icuG8UU5hwiLSrapJbvJRTmQHXQIhAKWmijkp3Zp5UPBH4JG2BB5DbBTwIRB4Nb42R3QqOmtv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74250},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"2800009f4d10870458ec372afb2523e9cf521911","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.8.0_1769607932858_0.63949712524937","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@abejarano/ts-mongodb-criteria","version":"1.8.1","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.8.1","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"6e9b620a5baf2b081b29b8eee892a5b19fd357e6","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.8.1.tgz","fileCount":74,"integrity":"sha512-OS3xdQ4OOJiw0x+hRa6eRT+6+oOdpoKAJpIFU+uVVBEJu71ukQ9qv38MsWSCrk2rEIgiqrRdN+2ekiPLsjF7LQ==","signatures":[{"sig":"MEYCIQDCCHgPKawJvbsy888FRqUnbNsPWdJcsicHWOwZ3WNJ8wIhANrggIRFe3Qcv8gNwQZMDLEb9KylebMh8cBY1LhVm69u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75010},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"54c700cb5f1ffca306c5ee2358f1dfcd7acaa9ef","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.8.1_1769608938454_0.032349258136964654","host":"s3://npm-registry-packages-npm-production"}},"1.8.2":{"name":"@abejarano/ts-mongodb-criteria","version":"1.8.2","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.8.2","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"5004d4353bb71e8b17c6f94e3668295f7f9f2367","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.8.2.tgz","fileCount":74,"integrity":"sha512-dlQNob3DlqnxcoFvyYwJ/kMmkDMFECVbHsJoBx5Zww/FLAhnhMV9mMOfVSIwSvI+KM/Zw62O3e/cT439+HT93A==","signatures":[{"sig":"MEYCIQCu23br2UwPnfkl5+ZCbMBKKc3X54VGihp0fbwrBh0ghwIhAMQJ7y4UyPzg/N4x/s7WrsuoFsvjBkNBxMKQMkGcBWid","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77339},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"322c929d8463d859b09c06d6df63ea93c596db7a","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.8.2_1769625637148_0.6488771897344037","host":"s3://npm-registry-packages-npm-production"}},"1.8.3":{"name":"@abejarano/ts-mongodb-criteria","version":"1.8.3","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.8.3","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"20851042162b78c1dc9958cfcfbf2ad661107a73","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.8.3.tgz","fileCount":74,"integrity":"sha512-T9O8dto134qLJZccaFYAXAYyfELOIduNFwXJojgS66fJz5BBLQxo/DJvZO+LqukZJXd56/+D/MJQZ0+GfQiklA==","signatures":[{"sig":"MEUCIFeZCMlfQTCv8jV9CgaG0itrmDT30bWbFG0+ZNabrzOlAiEAx1C2EUm3wAwk3BG9/YH2j+tTVa3UqMlM/+CLx4PPvoY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76825},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"264ba11e618597e9d899c85d53e4cf43e53e5e3b","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.8.3_1769942461827_0.07331591585166297","host":"s3://npm-registry-packages-npm-production"}},"1.8.4":{"name":"@abejarano/ts-mongodb-criteria","version":"1.8.4","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.8.4","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"2738c8613df214a8fb901d436669b53a7f7e1ca2","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.8.4.tgz","fileCount":74,"integrity":"sha512-R8LXNVeObiYwB9+kq4rlE5aQEFKlvRVcIjwIB8eAzUJgaHBRaQI2JpohPin9wCCXt4pU4PxBb+twqdNenVI9og==","signatures":[{"sig":"MEYCIQCX6Z6blK5WMlQjURpR/tAprud37sUYLb9ofw4dbZSfnAIhAKGqDvamb9IMWhaqQbj1vVovrkkQn2uTGACw0Z298eLz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78744},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"d206f1561b371a0563641aa1f1e35f42a3a11115","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.2","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.8.4_1776426309180_0.8509769692396216","host":"s3://npm-registry-packages-npm-production"}},"1.8.5":{"name":"@abejarano/ts-mongodb-criteria","version":"1.8.5","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.8.5","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"826cec9d390728a5879eaf45e1028f566de01736","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.8.5.tgz","fileCount":74,"integrity":"sha512-x59iHOatfle67wONAe3qmwucWRJYwNvYe5j28io++HS+QWErNtFrJZ+5hgzxl9QVP6zuKrNal0xOMxyqSmPwxQ==","signatures":[{"sig":"MEUCIQDbLOCKFP18tFfZEkzXn9QDb49f8fXawOanyzzh6wNIxgIgPeFztuYTNjUNun6DQoiZwz98LBWa2ZPPQcd5Mf8SH/s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78756},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"5bb73abce438587c79da62eab092ca1e14283f74","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.2","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.8.5_1776438819297_0.4428467049496043","host":"s3://npm-registry-packages-npm-production"}},"1.8.6":{"name":"@abejarano/ts-mongodb-criteria","version":"1.8.6","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.8.6","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"86ba0f7c178ad2396d775d3661165e17f0642668","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.8.6.tgz","fileCount":74,"integrity":"sha512-rDT8uMS1KCVMbaFBFdKVgnzxx/j5pvWJVrFO92AilzLYsBjKcBnl/jYX3fLrSYmLZ6hGbPkK/k0bUShDpwsB5w==","signatures":[{"sig":"MEUCIAOtOXkEh6S84/GwwUn3Ez1gl0jlFpP+poP6MoY8RDULAiEAsSCSynsFzuiZJRdAAUwBp0OJ4xpa38po3D9YiEtIXCk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78776},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"19fdeccfc678f787c83f6cfdaa07044fe5a950f5","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"abejarano","email":"programador.angel@gmail.com"},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"10.9.4","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"20.20.2","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^24.2.9","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.8.6_1780510817316_0.008982871114138868","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.9.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.9.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"cbe3beaef6fa2711ff6f1b2a6453dc918ee27240","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.9.0.tgz","fileCount":77,"integrity":"sha512-ps3e5IDrN338iOKM1Iu/0WDR/87Wr0HmpCVy0FIWhOn+2U38SFB8VByvelm3MVTU6dN7sxOi46ghfSDbGBjaTg==","signatures":[{"sig":"MEUCIG2k4MMXvkqrgyqTXBubdA7jaFiJm44fQLKXVNULTQu9AiEAh9X8ifV/EN0jp3pCJ7bAHP3ZUAXb438o9gcPaMqLR7A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@abejarano%2fts-mongodb-criteria@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83777},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"cb10d288cb81518f92fee147042a455af9d7f9f5","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:769813d6-c9a1-43e2-b7f8-27dd2bc88889"}},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"11.18.0","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"24.18.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^25.0.6","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.9.0_1784300500414_0.8182793745636443","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.10.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.10.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"690e6b0cd632bc513575d596334f2077d2c0d2b0","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.10.0.tgz","fileCount":77,"integrity":"sha512-dzwnfjPKGsU5jEsO8LaKEwn21PycHU5ZFUZYPgM0o//q/noHGvO10XCitMEbCTfdNwWVJy8iOG6j/VVEATJEXQ==","signatures":[{"sig":"MEUCIGK9k1qdfJFPZQFvke0b5pusKmfGBb5uoYImnCRrvs4/AiEAx32HnXEaWsYN06FEVHZlKn31vBU43aCHfnzHYyomxUM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@abejarano%2fts-mongodb-criteria@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":85177},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"094c0073440ff3fc1c264a51dadd9c560e036edf","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:769813d6-c9a1-43e2-b7f8-27dd2bc88889"}},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"11.18.0","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"24.18.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^25.0.6","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.10.0_1784307475634_0.613459198567867","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@abejarano/ts-mongodb-criteria","version":"1.11.0","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.11.0","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"c81fb3aa49010989a66b8de8d056aa6832f1ed86","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.11.0.tgz","fileCount":77,"integrity":"sha512-6srSGukJYFVX5CjZKvYb7utg4baL8z9tR5gknupSUsSZtZTWLeZyRC4KDPubClNVAIgnM3y+pSnNIJyXFbxBAA==","signatures":[{"sig":"MEUCIFP58nJcQXvtLdPaC9YU9fQwkFrtV5btPBxBBx3vrcLvAiEAsxjUbEtleqZK6NV/wwX4grOIehQpbcYPPBvu4vecI5s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@abejarano%2fts-mongodb-criteria@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":86490},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"cf61a4549dc33537c8f1bdffbd93f0c4e2c04688","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:769813d6-c9a1-43e2-b7f8-27dd2bc88889"}},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"11.18.0","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"24.18.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^25.0.6","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.11.0_1784576722774_0.4687403608866654","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@abejarano/ts-mongodb-criteria","version":"1.11.1","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.11.1","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"37fcb219379a021558bc62c67a6624ec6d2af446","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.11.1.tgz","fileCount":80,"integrity":"sha512-hwLs8Ge/cFeq2ZVb6Sg8zvs4cpRsDuBrENz4H+e7cKMyq9ky7gyt/eRbTMNQA823YdmpPQy76n+rXOFj4qo7CQ==","signatures":[{"sig":"MEYCIQDblzr2jIZBFiREg0Jnjpn/Tsgaa5HzgShdgo16K0P7egIhAMK4kVj6v1yOZiUZwGaUvNe96bSEmNaPDp2RsY0WDq/f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@abejarano%2fts-mongodb-criteria@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":88635},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"7054b5da1d48cf8389e01218289e66471a65e43b","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:769813d6-c9a1-43e2-b7f8-27dd2bc88889"}},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"11.18.0","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"24.18.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^25.0.6","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.11.1_1784637006243_0.4980814676106893","host":"s3://npm-registry-packages-npm-production"}},"1.11.2":{"name":"@abejarano/ts-mongodb-criteria","version":"1.11.2","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.11.2","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"be87e7adf376910df69bbe91f81c91d9ba48a8c4","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.11.2.tgz","fileCount":80,"integrity":"sha512-wUuqyTHnJWuGimuSxA3zbySR1pVDKw3Yhu64qt4Cq71cCzd8dZD6O9IL1ZZTJeDHdU+wWvxZ+TpRv548ebc8XA==","signatures":[{"sig":"MEQCIF4rmch00cVBbrL3XgcD6Dygcs8334ODPlzIxafp/NqdAiBbas9ytYz5TDJa5idJ5IbGs/L6YZ5zIpYyNpFGJ1jh2Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@abejarano%2fts-mongodb-criteria@1.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":89554},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"81b07e219ad8e72be2f0b915a3c7efa3a167a22c","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:769813d6-c9a1-43e2-b7f8-27dd2bc88889"}},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"11.18.0","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"24.18.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^25.0.6","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.11.2_1784643475499_0.770141426573568","host":"s3://npm-registry-packages-npm-production"}},"1.11.3":{"name":"@abejarano/ts-mongodb-criteria","version":"1.11.3","keywords":["mongodb","criteria","query","typescript"],"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","_id":"@abejarano/ts-mongodb-criteria@1.11.3","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"dist":{"shasum":"e90ba0fcc910790550d0496414d52933d43e49d4","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-1.11.3.tgz","fileCount":80,"integrity":"sha512-lYOzWKNeM6rRqbajnGmDTzUDpbFoRC1wTwl8zbNxFskI47N6W/BtOWtuJROEyUaEku2VdGx2IZ7NWtv/eXjKxQ==","signatures":[{"sig":"MEYCIQC/4qfKdgG9mchjQVhnQMVSsLS6JoIHzPlQdYQ1oUPQbgIhANSQ0fgFuoL3yUTJa581vYh8iYmIXpsnF4Cj+3nYS9w7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@abejarano%2fts-mongodb-criteria@1.11.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":87639},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"1ea5072fe5fec150e8e7ef03b9c2789920e91f57","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:769813d6-c9a1-43e2-b7f8-27dd2bc88889"}},"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"11.18.0","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"_nodeVersion":"24.18.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^25.0.6","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"tmp":"tmp/ts-mongodb-criteria_1.11.3_1784652088214_0.3813284838599027","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"_id":"@abejarano/ts-mongodb-criteria@2.0.0","bin":{"ts-mongo":"dist/cjs/bin/cli.js"},"bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"dist":{"shasum":"72841f30b8ba170c7b1416c7b2c3043e453803ba","tarball":"https://registry.npmjs.org/@abejarano/ts-mongodb-criteria/-/ts-mongodb-criteria-2.0.0.tgz","fileCount":83,"integrity":"sha512-12FLCcbYzCp+3Jwz9aCPXPeS3qPqw0CH3xBnmZW/xGiKpQLcqBLEBGBzmsj0khwK5J7oYJiHqJSjm5qWBTd1Mg==","signatures":[{"sig":"MEUCIC7cnZUqkqOwSXyeVe2vVHGVrFfQgiAN1xe8+GZ8Y2aoAiEA/LTPFvhk0f2Zm1MOm3JfxHD21ofbqP0OBmM8TRnSKpg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQChoCQxMpRxWcXMCFC9h0iQaK4/ZmUiR9YoWkmuE1tT0wIhAOq+SQ2GpPT+0G31i5N9z8iIgErj4PjZn7ygY1HNC548"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@abejarano%2fts-mongodb-criteria@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":120919},"main":"dist/cjs/index.js","name":"@abejarano/ts-mongodb-criteria","types":"dist/types/index.d.ts","author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"module":"dist/esm/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/types/index.d.ts","import":"./dist/esm/index.js","require":"./dist/cjs/index.js"},"./package.json":"./package.json"},"gitHead":"b77c6009e151ed17433ea2b02f8620db5db118bb","license":"MIT","scripts":{"test":"jest","build":"bun run build:cjs && bun run build:esm && bun run build:types","clean":"rimraf dist","format":"prettier --write .","prepack":"bun run build","prepare":"bun run build","prebuild":"bun run clean","test:bun":"bun test tests/bun","ts-mongo":"bun src/bin/cli.ts","build:cjs":"tsc -p tsconfig.cjs.json","build:esm":"tsc -p tsconfig.esm.json","typecheck":"tsc --noEmit","migrate:up":"migrate-mongo up","test:watch":"jest --watch","build:types":"tsc -p tsconfig.types.json","format:check":"prettier --check .","migrate:down":"migrate-mongo down","test:coverage":"jest --coverage","version:major":"npm version major","version:minor":"npm version minor","version:patch":"npm version patch","migrate:create":"migrate-mongo create","migrate:status":"migrate-mongo status"},"version":"2.0.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"769813d6-c9a1-43e2-b7f8-27dd2bc88889"}},"homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","keywords":["mongodb","criteria","query","typescript"],"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"_npmVersion":"11.18.0","description":"Patrón Criteria para consultas MongoDB en TypeScript","directories":{},"maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"migrate-mongo":"14.0.7"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.5","devDependencies":{"jest":"^29.7.0","rimraf":"^6.1.2","mongodb":"^7.0.0","ts-jest":"^29.1.2","prettier":"^3.8.3","typescript":"^5.9.3","@types/jest":"^29.5.12","@types/node":"^24.5.2","@types/mongodb":"^4.0.7","semantic-release":"^25.0.6","@semantic-release/git":"^10.0.1","@semantic-release/changelog":"^6.0.3"},"peerDependencies":{"mongodb":">=6"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ts-mongodb-criteria_2.0.0_1791152842987_0.011008960609288687"}}},"time":{"created":"2025-12-04T15:20:12.815Z","modified":"2026-10-04T22:27:23.400Z","1.2.1":"2025-12-04T15:20:13.059Z","1.3.0":"2025-12-05T15:53:53.738Z","1.4.0":"2026-01-07T13:04:25.969Z","1.5.0":"2026-01-07T13:27:24.918Z","1.5.1":"2026-01-07T14:09:33.750Z","1.5.2":"2026-01-07T20:30:13.515Z","1.6.0":"2026-01-08T16:53:50.369Z","1.6.1":"2026-01-10T16:48:03.215Z","1.6.2":"2026-01-11T15:50:55.854Z","1.7.0":"2026-01-27T20:34:29.356Z","1.8.0":"2026-01-28T13:45:33.015Z","1.8.1":"2026-01-28T14:02:18.593Z","1.8.2":"2026-01-28T18:40:37.299Z","1.8.3":"2026-02-01T10:41:01.980Z","1.8.4":"2026-04-17T11:45:09.327Z","1.8.5":"2026-04-17T15:13:39.447Z","1.8.6":"2026-06-03T18:20:17.477Z","1.9.0":"2026-07-17T15:01:40.544Z","1.10.0":"2026-07-17T16:57:55.766Z","1.11.0":"2026-07-20T19:45:22.914Z","1.11.1":"2026-07-21T12:30:06.408Z","1.11.2":"2026-07-21T14:17:55.681Z","1.11.3":"2026-07-21T16:41:28.416Z","2.0.0":"2026-10-04T22:27:23.090Z"},"bugs":{"url":"https://github.com/abejarano/ts-mongo-criteria/issues"},"author":{"name":"angel bejarano / angel.bejarano@jaspesoft.com"},"license":"MIT","homepage":"https://github.com/abejarano/ts-mongo-criteria#readme","keywords":["mongodb","criteria","query","typescript"],"repository":{"url":"git+https://github.com/abejarano/ts-mongo-criteria.git","type":"git"},"description":"Patrón Criteria para consultas MongoDB en TypeScript","maintainers":[{"name":"abejarano","email":"programador.angel@gmail.com"}],"readme":"# 🔍 TypeScript MongoDB Criteria Pattern\n\n[![npm version](https://badge.fury.io/js/@abejarano%2Fts-mongodb-criteria.svg)](https://www.npmjs.com/package/@abejarano/ts-mongodb-criteria)\n[![GitHub Package](https://img.shields.io/badge/GitHub-Package-blue.svg)](https://github.com/abejarano/ts-mongo-criteria/packages)\n[![TypeScript](https://img.shields.io/badge/TypeScript-5.9+-blue.svg)](https://www.typescriptlang.org/)\n[![MongoDB](https://img.shields.io/badge/MongoDB-6.0+-green.svg)](https://www.mongodb.com/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Node.js](https://img.shields.io/badge/Node.js-20+-green.svg)](https://nodejs.org/)\n[![Tests](https://img.shields.io/badge/Tests-46%2F46%20passing-brightgreen.svg)](#testing)\n\n> A robust, type-safe implementation of the **Criteria Pattern** for MongoDB queries in TypeScript. Build complex database queries dynamically with a fluent, composable API designed following Domain-Driven Design (DDD) and Clean Architecture principles.\n\n## 📚 Table of Contents\n\n- [🎯 Overview](#-overview)\n- [✨ Key Features](#-key-features)\n- [📦 Installation](#-installation)\n- [🚀 Quick Start](#-quick-start)\n- [🗄️ Migrations](#-migrations)\n- [📖 Documentation](#-documentation)\n- [🧪 Testing](#-testing)\n- [🤝 Contributing](#-contributing)\n- [📄 License](#-license)\n\n## 🎯 Overview\n\nThe **Criteria Pattern** is a powerful design pattern that enables dynamic query construction without writing raw database queries. This library provides a type-safe, MongoDB-specific implementation that helps you:\n\n- **Build queries dynamically** based on runtime conditions\n- **Maintain type safety** throughout your query construction\n- **Compose and reuse** query components across your application\n- **Separate concerns** between query logic and data models\n- **Test queries easily** with a mockable interface\n\n### What is the Criteria Pattern?\n\nThe Criteria pattern encapsulates query logic in a structured, object-oriented way. Instead of building query strings or objects directly, you compose `Criteria` objects that represent your search intentions. This approach provides flexibility, reusability, testability, and type safety.\n\n## ✨ Key Features\n\n### 🔒 **Type Safety First**\n\n- Full TypeScript support with strict typing\n- Compile-time validation of query structure\n- IntelliSense support for all operations\n\n### 🧩 **Flexible Query Building**\n\n- Support for all common MongoDB operators (EQUAL, NOT_EQUAL, GT, GTE, LT, LTE, CONTAINS, NOT_CONTAINS)\n- **NEW**: OR operator for complex logical combinations\n- Composable filters that can be combined and reused\n- Dynamic query construction based on runtime conditions\n\n### 📊 **Advanced Querying**\n\n```typescript\n// Simple equality\n{ status: { $eq: \"active\" } }\n\n// Complex OR conditions\n{ $or: [\n  { name: { $regex: \"john\" } },\n  { email: { $regex: \"john\" } }\n]}\n\n// Range queries\n{ age: { $gte: 18 }, price: { $lte: 999.99 } }\n```\n\n### 🎯 **MongoDB Optimized**\n\n- Native MongoDB 6.0+ support\n- Efficient query generation\n- Automatic index-friendly query structure\n\n### 📦 **Zero Dependencies**\n\n- Only peer dependencies (MongoDB driver)\n- Lightweight bundle size\n\n### 🏗️ **Clean Architecture**\n\n- Repository pattern implementation\n- Domain-driven design principles\n- Separation of concerns\n\n## 📦 Installation\n\n```bash\n# Using npm\nnpm install @abejarano/ts-mongodb-criteria\n\n# Using yarn\nyarn add @abejarano/ts-mongodb-criteria\n\n# Using pnpm\npnpm add @abejarano/ts-mongodb-criteria\n```\n\n### Package Manager\n\nThis repo is Bun-first and ships with a `bun.lock`. Use Bun for installs and\nscripts:\n\n```bash\nbun install\n```\n\n### Peer Dependencies\n\n```bash\n# MongoDB driver (required)\nnpm install mongodb@^6.0.0\n\n# TypeScript (for development)\nnpm install -D typescript@^5.0.0\n```\n\n### System Requirements\n\n- **Node.js**: 20.0.0 or higher\n- **TypeScript**: 5.0.0 or higher (for development)\n- **MongoDB**: 6.0.0 or higher\n\n## 🚀 Quick Start\n\n```typescript\nimport {\n  AggregateRelations,\n  AggregateRoot,\n  Criteria,\n  Filters,\n  MongoRepository,\n  Order,\n  Operator,\n} from \"@abejarano/ts-mongodb-criteria\"\nimport type { Collection } from \"mongodb\"\n\n// 1. Create filters using a simple Map-based syntax\nconst filters = [\n  new Map([\n    [\"field\", \"status\"],\n    [\"operator\", Operator.EQUAL],\n    [\"value\", \"active\"],\n  ]),\n  new Map([\n    [\"field\", \"age\"],\n    [\"operator\", Operator.GTE],\n    [\"value\", \"18\"],\n  ]),\n]\n\n// 2. Build criteria with filters, sorting, and pagination\nconst criteria = new Criteria(\n  Filters.fromValues(filters),\n  Order.desc(\"createdAt\"),\n  20, // limit\n  1 // page\n)\n\n// 3. Use with your MongoDB repository\n// The aggregate declares its collection and relations (relations are always explicit)\nclass User extends AggregateRoot {\n  constructor(\n    private name: string,\n    private email: string,\n    private status: string\n  ) {\n    super()\n  }\n\n  static collectionName(): string {\n    return \"users\"\n  }\n\n  static relations(): AggregateRelations {\n    return {}\n  }\n\n  static fromPrimitives(data: any): User {\n    return new User(data.name, data.email, data.status)\n  }\n\n  toPrimitives(): any {\n    return {\n      id: this.getId(),\n      name: this.name,\n      email: this.email,\n      status: this.status,\n    }\n  }\n}\n\nclass UserRepository extends MongoRepository<User> {\n  constructor() {\n    super(User)\n  }\n\n  // Create indexes the first time the collection is accessed\n  protected async ensureIndexes(collection: Collection): Promise<void> {\n    await collection.createIndex({ email: 1 }, { unique: true })\n  }\n}\n\nconst userRepo = new UserRepository()\nconst { results } = await userRepo.list(criteria)\n```\n\nIndexes are created lazily the first time the repository accesses the collection\n(via `list`, `one`, or `upsert`).\nUse the `collection` argument inside `ensureIndexes` to avoid recursion.\n\nMongoRepository provides ready-to-use public methods for repositories that extend it:\n\n- `list(criteria, options?)` for paginated queries, with optional `{ transaction?, relations? }`\n- `many(filter, options?)` to fetch multiple entities matching a filter, with optional `{ transaction?, sort?, relations? }`\n- `one(filter, options?)` to fetch a single entity, with optional `{ transaction?, relations? }`\n- `upsert(entity, transaction?)` to persist an aggregate\n  Internal helpers are private, so repositories should call these public methods\n  directly.\n\nIf you need a repository interface in your app, extend `IRepository<T>` so your\ncustom interfaces stay aligned with the library return types:\n\n```typescript\nimport type { IRepository } from \"@abejarano/ts-mongodb-criteria\"\n\nexport interface IUserRepository extends IRepository<User> {\n  // Add domain-specific methods here\n}\n```\n\nThe goal of `IRepository` is to prevent signature drift between your app's\ninterfaces and the library's repository return types.\n\n## Atomic Transactions\n\n`MongoTransaction.run` groups writes from one or more repositories into a\nsingle MongoDB transaction. Pass the `tx` context to every write that must be\ncommitted or rolled back together:\n\n```typescript\nimport { MongoTransaction } from \"@abejarano/ts-mongodb-criteria\"\n\nawait MongoTransaction.run(async (tx) => {\n  await userRepository.upsert(user, tx)\n  await auditRepository.upsert(auditEntry, tx)\n  await sessionRepository.delete({ userId: user.getId() }, undefined, tx)\n\n  // Reads can observe writes made earlier in this transaction.\n  const persistedUser = await userRepository.one({ id: user.getId() }, tx)\n  const activeUsers = await userRepository.many(\n    { status: \"active\" },\n    { transaction: tx, sort: Order.asc(\"name\") }\n  )\n})\n```\n\nIf any operation in the callback fails, MongoDB rolls back all the writes and\nthe error is propagated to the caller. The MongoDB driver handles retryable\ntransaction errors through `withTransaction`.\n\nCustom repositories can include their protected atomic updates in the same\ntransaction by accepting and forwarding `MongoTransaction`:\n\n```typescript\nasync deactivateUser(id: string, tx: MongoTransaction): Promise<void> {\n  await this.updateOne({ id }, { $set: { active: false } }, tx)\n}\n```\n\nMongoDB transactions require a replica set or a sharded cluster; standalone\nMongoDB instances do not support them. This initial API applies the transaction\ncontext to `upsert`, `delete`, protected `updateOne`, `one`, `list`, and `many`.\nPass `tx` as the second argument to `list`, and inside the options object (`{ transaction: tx }`) to `many`.\n\n**Your First Query in 30 Seconds:**\n\n```typescript\n// Find active users over 18, sorted by creation date\nconst activeAdultUsers = new Criteria(\n  Filters.fromValues([\n    new Map([\n      [\"field\", \"status\"],\n      [\"operator\", Operator.EQUAL],\n      [\"value\", \"active\"],\n    ]),\n    new Map([\n      [\"field\", \"age\"],\n      [\"operator\", Operator.GTE],\n      [\"value\", \"18\"],\n    ]),\n  ]),\n  Order.desc(\"createdAt\"),\n  10, // Get 10 results\n  1 // First page\n)\n\nconst results = await repository.list(activeAdultUsers)\n```\n\n## 🗄️ Migrations\n\nThis repo includes a CLI wrapper for `migrate-mongo`.\nTo use it in your application:\n\n1. Initialize the configuration:\n\n```bash\nbun ts-mongo init\n```\n\n2. Edit `migrate-mongo-config.js` with your database details.\n\n3. Run migrations using the `ts-mongo` command:\n\n```bash\n# Create a new migration\nbun ts-mongo migrate:create add-users-index\n\n# Run migrations up\nbun ts-mongo migrate:up\n\n# Undo last migration\nbun ts-mongo migrate:down\n\n# Check status\nbun ts-mongo migrate:status\n```\n\nNote: You can also use `npx`, `bunx` or `yarn run`.\n\nSee the full CLI guide here: `docs/mongo-migrations.md`.\n\n## 📖 Documentation\n\n### 📖 Complete Documentation\n\n- **[📘 Quick Start Guide](./docs/quick-start.md)** - Get up and running in minutes\n- **[🏗️ Criteria Pattern Guide](./docs/criteria-pattern.md)** - Deep dive into the pattern, architecture, and theory\n- **[🔧 Operators Reference](./docs/operators.md)** - Complete guide to all available operators and their usage\n- **[⚡ Performance Guide](./docs/performance.md)** - Optimization strategies and best practices\n- **[🔄 Migration Guide](./docs/migration.md)** - Migrate from other query systems to Criteria pattern\n- **[🔗 Reference Relations](./docs/reference-relations.md)** - Explicit relation selection via AggregateRoot, manual `_id` references, hydrated entities, `fields` projection, inverse relations (ONE_TO_ONE/ONE_TO_MANY)\n- **[🗄️ MongoDB Migrations (CLI)](./docs/mongo-migrations.md)** - Run database migrations with migrate-mongo\n\n### 🎯 Key Concepts\n\n#### 1. **Criteria** - The main query builder\n\n```typescript\nconst criteria = new Criteria(filters, order, limit?, page?)\n```\n\n#### 2. **Filters** - Collection of filter conditions\n\n```typescript\nconst filters = Filters.fromValues([...filterMaps])\n```\n\n#### 3. **Order** - Sorting specification\n\n```typescript\nconst order = Order.desc(\"createdAt\") // or Order.asc(\"name\")\n```\n\n#### 4. **Operators** - Available filter operations\n\n- `EQUAL`, `NOT_EQUAL` - Exact matching\n- `GT`, `GTE`, `LT`, `LTE` - Range operations\n- `BETWEEN` - Inclusive range with lower and upper bounds\n- `CONTAINS`, `NOT_CONTAINS` - Text search\n- `OR` - Logical OR combinations\n\n## ✅ Runtime Compatibility\n\nThis library ships dual builds (CJS + ESM) and works in both Node.js and Bun.\n\n### 🆕 OR Operator Example\n\n```typescript\nimport { OrCondition } from \"@abejarano/ts-mongodb-criteria\"\n\n// Search across multiple fields\nconst searchConditions: OrCondition[] = [\n  { field: \"name\", operator: Operator.CONTAINS, value: \"john\" },\n  { field: \"email\", operator: Operator.CONTAINS, value: \"john\" },\n]\n\nconst filters = [\n  new Map([\n    [\"field\", \"search\"],\n    [\"operator\", Operator.OR],\n    [\"value\", searchConditions],\n  ]),\n]\n\n// Generates: { $or: [\n//   { name: { $regex: \"john\" } },\n//   { email: { $regex: \"john\" } }\n// ]}\n```\n\n### ⏱️ BETWEEN Operator Example\n\n```typescript\n// Filter users created between two dates\nconst filters = [\n  new Map([\n    [\"field\", \"createdAt\"],\n    [\"operator\", Operator.BETWEEN],\n    [\"value\", { start: new Date(\"2024-01-01\"), end: new Date(\"2024-01-31\") }],\n  ]),\n]\n\nconst criteria = new Criteria(Filters.fromValues(filters), Order.none())\n\n// Generates: { createdAt: { $gte: 2024-01-01, $lte: 2024-01-31 } }\n```\n\n## 🧪 Testing\n\nThe library includes comprehensive test coverage (45/45 tests passing).\n\n```bash\n# Run all tests\nnpm test\n\n# Run tests in watch mode\nnpm run test:watch\n\n# Run tests with coverage\nnpm run test:coverage\n```\n\n## 🤝 Contributing\n\nWe welcome contributions! Please follow these guidelines:\n\n### Development Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/abejarano/ts-mongo-criteria.git\ncd ts-mongo-criteria\n\n# Install dependencies\nyarn install\n\n# Run tests\nyarn test\n\n# Build the project\nyarn build\n```\n\n### Contribution Process\n\n1. **Fork** the repository\n2. **Create** a feature branch (`git checkout -b feature/amazing-feature`)\n3. **Write** tests for your changes\n4. **Ensure** all tests pass (`yarn test`)\n5. **Commit** using conventional commits (`git commit -m 'feat: add amazing feature'`)\n6. **Push** to your branch (`git push origin feature/amazing-feature`)\n7. **Open** a Pull Request\n\n## CLI & Migrations\n\nTo use the migration features, you must first initialize the configuration in your project:\n\n```bash\nbun run ts-mongo init\n```\n\nThis will create a `migrate-mongo-config.js` file in your project root. You must configure your MongoDB connection settings in this file (or via environment variables as defined in the config).\n\n### Commands\n\n| Command                 | Description                       |\n| ----------------------- | --------------------------------- |\n| `init`                  | Initialize configuration file     |\n| `migrate:create <name>` | Create a new migration file       |\n| `migrate:up`            | Run pending migrations            |\n| `migrate:down`          | Revert the last applied migration |\n| `migrate:status`        | Check the status of migrations    |\n\nExample:\n\n```bash\nbun run ts-mongo migrate:create add-users-collection\n```\n\n## 📄 License\n\nThis project is licensed under the **MIT License**. See the [LICENSE](LICENSE) file for details.\n\n---\n\n## 👨‍💻 Author\n\n**Ángel Bejarano**  \n📧 [angel.bejarano@jaspesoft.com](mailto:angel.bejarano@jaspesoft.com)  \n🐙 [GitHub](https://github.com/abejarano)  \n🏢 [Jaspesoft](https://jaspesoft.com)\n\n---\n\n⭐️ **If this project helps you, please give it a star on GitHub!**\n\n🤝 **Questions or suggestions?** Open an issue or start a discussion.\n\n📢 **Follow us** for updates and new features!\n","readmeFilename":"README.md"}