{"_id":"@200systems/mf-db-core","_rev":"13-a117e1d74453e835ad0e651f75c7a3dd","name":"@200systems/mf-db-core","dist-tags":{"latest":"1.1.6"},"versions":{"1.0.1":{"name":"@200systems/mf-db-core","version":"1.0.1","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.0.1","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"ad225279acc10680f6bed0c7dfa5c4f277f0cd4e","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.0.1.tgz","fileCount":94,"integrity":"sha512-i5CyIernSUctmn5V/blsLwxzg/JXHgk43iWvSRIGnM6qXxbIN+R3Gg4ACYi56a7oll2iA1sTuRlpsd1ZIsDSZQ==","signatures":[{"sig":"MEUCIQC16JVeIn7nDJVpsapC+yAU6QHvZZ6Q3hyr1Clu6m0zBgIgA4OjtDMz+ctcQyHl+jl2GpbnyBapPQ4e7kCxambmR6A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54182},"main":"./dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"b23d0aca4444d3727bef596b99d52f845ee6bdd8","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.0.1_1750937017708_0.12937863812056816","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.0.2":{"name":"@200systems/mf-db-core","version":"1.0.2","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.0.2","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"98e2dbddc39c48b4ed74134bd67debf48d9ac271","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.0.2.tgz","fileCount":94,"integrity":"sha512-VGE44eNpfcGWORk7LoNJ1ZEDK1YCcGlXQf8QENMv51dg1cEplSzM5j94tQ0mILD49SMGu9i/R6C3WaTyP5bxSA==","signatures":[{"sig":"MEYCIQDMP1SbyD8bvDcIdKyzaRRpu2hP69vGYlWDIy0Z0H4kbQIhAL2e36ymKFEku0MFO9I5055N5wYOEDvHWTlOMhWfL9V/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57134},"main":"./dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"3b9df0fba14ad311035a103071c895f780597d75","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.0.2_1751014410633_0.6220105508216915","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.0.3":{"name":"@200systems/mf-db-core","version":"1.0.3","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.0.3","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"f153ddab4efbba0f0c4a7428313c268957145293","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.0.3.tgz","fileCount":94,"integrity":"sha512-2BsJu6BOtBnbvNHR+7qyOky0e8T98VIhe5e4Sxm7WjyNjYteUF7DC2kv/BjwKp/7nDQzDEH8e+klmyhFfSkhTA==","signatures":[{"sig":"MEUCIFa9UjPm+Df3IZNJK2LyJdYV/iuTYO02SuAfgtrdcRu8AiEAwTrPa6ERuu8rWLyfKoKvu7M/82VrVhUHy+n1YX03+hk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57134},"main":"./dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"17e3ce1150d8a91f15ba15d4208a96a40cf211b9","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.0.3_1751056781543_0.4147668068885131","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.0.4":{"name":"@200systems/mf-db-core","version":"1.0.4","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.0.4","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"9f73f716d8da30fa73168d0674bf1f227fcbadcc","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.0.4.tgz","fileCount":94,"integrity":"sha512-NLo0qB2XDCJGMcss18mYawWyn6LRs7waZORXLrwrvD/pTqRneiiBbFsTTjNZpSgV+t83s6wuTrvAXY86sL7C2A==","signatures":[{"sig":"MEYCIQCSVptBs/Smae8eXzXhcL6zT2VWLVGP+MTiHa6oes08/QIhANfA1T+yNGRwNr5a2yTXn7vRExpTcrRw67wkugcOMqEm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57134},"main":"./dist/index.js","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"d7bb90f291b6b532083319fa040cfeb43eae8ad7","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.0.4_1751058904522_0.921035665834306","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.0.5":{"name":"@200systems/mf-db-core","version":"1.0.5","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.0.5","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"7fd22b660641d500b35f168ed95fe873d1400fab","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.0.5.tgz","fileCount":94,"integrity":"sha512-lILVhonrfPhvLOlg9dAQvnZ9EyHKRcYn6R6nW+II16VjOxfN4tkhTLC1toB1z4Plaa5K+/+3jmYALhKkTVROJg==","signatures":[{"sig":"MEQCIBVbHjitfXDP3bbhe9j2BdqRjWlkyCzgaJfxZiBXGLNRAiBfinxG6cs9EbRJR8VU8ykrvNM1nMsXCTSHHSXTr6Zu4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57156},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"d7bb90f291b6b532083319fa040cfeb43eae8ad7","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.0.5_1751059741342_0.5442604810072118","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.1.0":{"name":"@200systems/mf-db-core","version":"1.1.0","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.1.0","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"a334dc22900d9a22c05702d2f816b9f48769d664","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.1.0.tgz","fileCount":102,"integrity":"sha512-/CUbJ1xRPdtVgBX87M+l7XTk2k3l0JxQwE2a+0aWV3E/JwJGg/AaqoyOnMZ6z53t5yaIn28Up27DKvsQYOMBJQ==","signatures":[{"sig":"MEUCIQCxmVoEDuHvvR+L3MFGfX25bzg72C2dS893/Q0epoRYxQIgYkKqNnJ0CC99PDwYMUilAL6jGhbLPCq/sLGpwrXbHRs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70077},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"f17262551117147d336d909a4af42a3520922708","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.1.0_1751215925152_0.9222694799082993","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.1.1":{"name":"@200systems/mf-db-core","version":"1.1.1","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.1.1","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"4974fd4ac98719746c96394e7c699eb22eef11fe","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.1.1.tgz","fileCount":102,"integrity":"sha512-8RkWm2r5CYUKwouuc2aVCzYtjEgMBDnexqoadNptaKJvlWTd88NrT72bLxid+epCM5y7od9hUtij9b4q8qmNNg==","signatures":[{"sig":"MEYCIQC+jy2NcrL0w8l8fBLsNTIoV5VnU/BTjXjT+xGE8/BDJgIhANhe4m5uxh1K9pouHnbALHdq5R6ZG+3EkI1STtz3pfaJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70077},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"b2e1d0a164c5cfd355a044b56b7ec48c88def397","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.1.1_1751223521238_0.7854684309321283","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.1.2":{"name":"@200systems/mf-db-core","version":"1.1.2","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.1.2","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"54aebf80691e54a6546879f9c855e1e29b97c7b3","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.1.2.tgz","fileCount":102,"integrity":"sha512-EbuajuZhRhzE+qsZ9gD7reGsOCMCc0I1nKYZwOZVSXVQXg/bfElAu3YBCWL5llEtF3o7VRC/l1OzGiJNhRm7Mg==","signatures":[{"sig":"MEUCID4C9COFttllK5ulfFNWyFuipnxnU7ja3GsxZKI+EycsAiEA8n1RKTDhpxs8AagE90puB0god7tAazLMj5yeRNbq5Ak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70077},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"b2e1d0a164c5cfd355a044b56b7ec48c88def397","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.1.2_1751224223344_0.3863179984289773","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.1.3":{"name":"@200systems/mf-db-core","version":"1.1.3","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.1.3","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"cc8895a3742c3b0d27f5d14ef7d8ab7bef5ac565","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.1.3.tgz","fileCount":102,"integrity":"sha512-bV4RybIg1hNIDL4NvfnIeAntSBMLijRp+VFAQ0ze3kC2vPXpY8R7vI8B+A21ZUoEnTfVCFsUoO0TvP/+WRurZQ==","signatures":[{"sig":"MEYCIQDqzlAf7j91cqXt5ejtfo4q3WfKtVX74mrJ6U2OiB2M1QIhAL4RRl8PMF25ligdO2EioTxZ7InIIyT8bPMLVE5JTPLe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70207},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"23dcee4f5721e057c3d9625f10e1823f834a466d","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.1.3_1751472514983_0.21595254222684246","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.1.4":{"name":"@200systems/mf-db-core","version":"1.1.4","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.1.4","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"97c85e8720565bb52467dfce8a922b35ea33e173","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.1.4.tgz","fileCount":102,"integrity":"sha512-d0HGMZZgjpo/ciFOtDqqPQz/P3PwM3+nE3X8El+fKEmIsq6gVO0slrVjbFavlV3PNEBSA+GBiE4cQCxY34P6Ag==","signatures":[{"sig":"MEQCIAeuXsxpsVnmGmRYSZRdzfSxagaCQN6og6+srIUKaJbPAiBJTX0YsXo3BfK/e3xflMISC9hAS47dAo7O+9n2yHQ/Rw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70370},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"23dcee4f5721e057c3d9625f10e1823f834a466d","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.1.4_1751473965788_0.08286552061612795","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.1.5":{"name":"@200systems/mf-db-core","version":"1.1.5","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.1.5","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"3c76fb0dfd0462b35c535554ba476913df4798ca","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.1.5.tgz","fileCount":102,"integrity":"sha512-uBmoCTmv0QDlHu8RZOQebV91i1yxFloKLS/IE860JRFjb9i+WxESCfZUfm8H21HZ/PWKjFpei7vczcGeiT3AxA==","signatures":[{"sig":"MEUCIQDSOliVjqYAZ+KIlAtyMVLz3aR+2FFRSeGVoindeH/TJAIgNq/m0NRONJwMfLYeAF45KaS9t9mD0PeNM3B+bCucEAY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70370},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"23dcee4f5721e057c3d9625f10e1823f834a466d","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.1.5_1751474239491_0.9427204156478424","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."},"1.1.6":{"name":"@200systems/mf-db-core","version":"1.1.6","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","_id":"@200systems/mf-db-core@1.1.6","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"homepage":"https://github.com/200Systems/bitbrick-microframework#readme","bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"dist":{"shasum":"b8d8d01b3ec8bb84adf66120828d9574c5236023","tarball":"https://registry.npmjs.org/@200systems/mf-db-core/-/mf-db-core-1.1.6.tgz","fileCount":102,"integrity":"sha512-A7Nez2Llr+4iDCBWHOJsogFw9hd/VIhE0fRHzmOsMUC6qlbqQMpKz1KilNyS6CL97ep5MPTmUfOtdGVNWahvqA==","signatures":[{"sig":"MEQCICWF+GNVsCwCpLOCkHnQiF+oE1mO2yUuYJ6GP7NbErIhAiBZoHme3AYVNamoiw3GNVWydoP6uL10kYHd7jNZfpXjkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70305},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.js"}},"gitHead":"23dcee4f5721e057c3d9625f10e1823f834a466d","scripts":{"dev":"tsc --watch","lint":"eslint src/**/*.ts","build":"tsc","clean":"rm -rf dist *.tsbuildinfo","lint:fix":"eslint src/**/*.ts --fix"},"_npmUser":{"name":"200systems","actor":{"name":"200systems","type":"user","email":"cleiton.marques@200.systems"},"email":"cleiton.marques@200.systems"},"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"_npmVersion":"10.8.1","description":"Core database interfaces and types for the TypeScript microframework","directories":{},"_nodeVersion":"22.3.0","dependencies":{"@200systems/mf-logger":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.3","@types/node":"^20.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mf-db-core_1.1.6_1751475249154_0.47123337890695605","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Descontinuado: use @groundbrick/db-core."}},"time":{"created":"2025-06-26T11:23:37.591Z","modified":"2026-09-27T14:02:01.521Z","1.0.1":"2025-06-26T11:23:37.881Z","1.0.2":"2025-06-27T08:53:30.809Z","1.0.3":"2025-06-27T20:39:41.718Z","1.0.4":"2025-06-27T21:15:04.704Z","1.0.5":"2025-06-27T21:29:01.553Z","1.1.0":"2025-06-29T16:52:05.379Z","1.1.1":"2025-06-29T18:58:41.425Z","1.1.2":"2025-06-29T19:10:23.534Z","1.1.3":"2025-07-02T16:08:35.192Z","1.1.4":"2025-07-02T16:32:45.965Z","1.1.5":"2025-07-02T16:37:19.750Z","1.1.6":"2025-07-02T16:54:09.340Z"},"bugs":{"url":"https://github.com/200Systems/bitbrick-microframework/issues"},"author":{"name":"Cleiton Marques","email":"cleiton.marques@200.systems"},"license":"MIT","homepage":"https://github.com/200Systems/bitbrick-microframework#readme","keywords":["typescript","database","interfaces","microframework","postgresql","mysql","migrations"],"repository":{"url":"git+https://github.com/200Systems/bitbrick-microframework.git","type":"git","directory":"packages/db-core"},"description":"Core database interfaces and types for the TypeScript microframework","maintainers":[{"name":"200systems","email":"cleiton.marques@200.systems"}],"readme":"\n# @200systems/mf-db-core\n\n**Database abstraction core for the BitBrick microframework**\n\nThis package provides the backbone for integrating with relational databases (PostgreSQL or MySQL), offering a unified layer for connection handling, querying, transactions, and migrations.\n\n---\n\n## 🔧 Key Features\n\n- Unified interface for database clients\n- Adapter support for PostgreSQL and MySQL (via external factories)\n- Full support for transactions\n- Strongly-typed migration system\n- Configuration validation and health checks\n- Granular error handling by operation type\n\n---\n\n## 📦 Installation\n\n```bash\nnpm install @200systems/mf-db-core\n```\n\n> You will also need to install a specific adapter package such as `@200systems/db-postgres` or `@200systems/db-mysql`.\n\n---\n\n## 🚀 Quick Start\n\n```ts\nimport { DatabaseAdapter } from '@200systems/mf-db-core';\n\nconst adapter = new DatabaseAdapter({\n  type: 'postgresql',\n  host: 'localhost',\n  user: 'admin',\n  password: 'secret',\n  database: 'mydb',\n  port: 5432\n});\n\nawait adapter.initialize();\n\nconst users = await adapter.query('SELECT * FROM users WHERE active = $1', [true]);\n\nawait adapter.close();\n```\n\n---\n\n## 🔄 Transactions\n\n```ts\nawait adapter.transaction(async (trx) => {\n  await trx.query('INSERT INTO logs (event, ts) VALUES ($1, now())', ['create_user']);\n\n  const result = await trx.query<{ id: number }>(\n    'INSERT INTO users (email, active) VALUES ($1, $2) RETURNING id',\n    ['user@example.com', true]\n  );\n\n  const userId = result.rows[0].id;\n\n  await trx.query('INSERT INTO profiles (user_id) VALUES ($1)', [userId]);\n});\n```\n\n- The transaction will automatically **commit** if successful\n- Any thrown error will **rollback** the transaction\n- Nested transactions are not natively supported\n\n---\n\n## 🧪 Health Check\n\n```ts\nconst status = await adapter.healthCheck();\n\nif (status.status !== 'ok') {\n  throw new Error(`Database unavailable: ${status.reason}`);\n}\n```\n\n---\n\n## 🔍 Pool Info (if supported by the adapter)\n\n```ts\nconst pool = adapter.getClient().getConnectionInfo?.();\nif (pool) {\n  console.log(`Pool: total=${pool.total}, idle=${pool.idle}, waiting=${pool.waiting}`);\n}\n```\n\n---\n\n## ⏱ Readiness Check\n\n```ts\nif (!adapter.isReady()) {\n  console.warn('Adapter is not ready yet.');\n}\n```\n\n---\n\n## 📦 Architecture Overview\n\n### 🔌 DatabaseAdapter\n\nThis class encapsulates adapter selection (PostgreSQL or MySQL), dynamically initializes the correct client, and exposes high-level methods:\n\n- `.initialize()` / `.close()`\n- `.query(sql, params)`\n- `.transaction(cb)`\n- `.healthCheck()`\n- `.getClient()` (direct access to `DatabaseClient`)\n\n> The dynamic loading logic (e.g., `PostgresFactory.getInstance`) must be implemented in the actual adapter packages.\n\n### 🧠 `DatabaseClient` Interface\n\nContract that all database adapters must implement:\n\n```ts\ninterface DatabaseClient {\n  initialize(): Promise<void>;\n  close(): Promise<void>;\n  query<T>(sql: string, params?: any[]): Promise<QueryResult<T>>;\n  transaction<T>(cb: (trx: DatabaseTransaction) => Promise<T>): Promise<T>;\n  healthCheck(): Promise<HealthCheckResult>;\n  isReady(): boolean;\n}\n```\n\n### 🔄 `DatabaseTransaction`\n\nWithin a transaction, the callback receives a `DatabaseTransaction` instance, allowing you to perform isolated queries.\n\n---\n\n## 📁 Project Structure\n\n```\nmf-db-core/\n├── src/\n│   ├── adapters/              # Generic adapter layer\n│   ├── base/                  # Reusable base logic (e.g., transactions)\n│   ├── custom-types/          # Utility and internal types\n│   ├── error-handling/        # Operation-specific error classes\n│   ├── interfaces/            # Public contract definitions\n│   └── index.ts               # Entry point\n```\n\n---\n\n## 🧬 Migrations\n\nThe core defines types for managing and recording schema migrations. You can implement your own `MigrationManager`:\n\n```ts\nconst manager: MigrationManager = getCustomMigrationManager();\n\nconst pending = await manager.getPendingMigrations();\n\nfor (const migration of pending) {\n  try {\n    await manager.applyMigration(migration);\n    console.log(`Migration ${migration.version} applied`);\n  } catch (err) {\n    console.error(`Failed to apply migration ${migration.version}:`, err);\n    break;\n  }\n}\n```\n\nEach migration should follow the `Migration` type contract with `up`, `down`, and `version` fields.\n\n---\n\n## 💣 Error Handling\n\nAll operations raise specific error classes for easier diagnosis:\n\n- `ConnectionError`\n- `QueryError`\n- `MigrationError`\n- `TransactionError`\n- `DatabaseError` (generic base class)\n\n---\n\n## 🧩 Creating a Custom Adapter\n\nExample: PostgreSQL Adapter Factory\n\n```ts\nexport class PostgresFactory {\n  static getInstance(config: DatabaseConfig, logger: Logger): DatabaseClient {\n    return new PostgresClient(config, logger);\n  }\n}\n```\n\nInside `DatabaseAdapter`, you would dynamically import and use this factory depending on the type.\n\n---\n\n## 📝 License\n\nMIT — © 200Systems\n","readmeFilename":"README.md"}