{"_id":"@butterbase/sdk","_rev":"25-e832133445412624fb78e61412cf2ae0","name":"@butterbase/sdk","dist-tags":{"latest":"2.9.0"},"versions":{"1.0.0":{"name":"@butterbase/sdk","version":"1.0.0","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.0.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"61287944717a052213a8ed0b2f510a17fa71ef9f","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.0.0.tgz","fileCount":34,"integrity":"sha512-v8bU9nFi740SunOFgKYKW6PMzEyJGrsfGA67OXyJwoNfnTh8pKfmYl/lQQFJiRCUrzn/CG4ZJwkBF1+x/UkMEA==","signatures":[{"sig":"MEUCIHk9GoHk32C2IWRSu5LJROOgAFJHGU29/326KenTyb/iAiEAu7Ma6jqtLmmMfdBRngitZp9PUu+5vEMHrHKBibzCw6k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69087},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e51d001b281b2318315e4aa1bb626555987e19ba","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.0_1775361168744_0.25094409839154985","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@butterbase/sdk","version":"1.1.0","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.1.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"1888e991b251198bdfce7cb69d4a5b04073b87bb","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.1.0.tgz","fileCount":42,"integrity":"sha512-1yWnA8GyGvz/TQb6rSsUbGxEBBgt8xencSoxipKMPmZUsYOhs7rbAYynMrl4l7vX2GrHGI694WGVCOrnocWzOQ==","signatures":[{"sig":"MEUCIQDWaeW0Jg5sCkaZxAJIVNu3oYD4+vDdbgFBmWpvvq+BpwIgRFCW+oIY+5QlbWh5sgFukm8Nl89Wmb/7IyFJymZ6ODc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94383},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"2aa83f24c5e8631c22dccb35797b19cd443e0e50","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.1.0_1775386689412_0.3128933799795317","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@butterbase/sdk","version":"1.1.1","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.1.1","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"ade900aac6b2421f34032b058e661923d0ea14c2","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.1.1.tgz","fileCount":42,"integrity":"sha512-dQtfuwC5aWOqWmpmAfeZi5dUz4SW4sP+kKHXz+yQumMUwPaAtBpaS1QQD0gHLpbf5MtSPK5HFtoC6ofRO69AVg==","signatures":[{"sig":"MEQCIERyWHNOPOKBF4ayJHX/lKp2cOfmxebVsegHE5qBg+pYAiA+qHW948MBF6nNgaabW7K6/6v5OTbmHCeSXnHHTmKH5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95279},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"facb1f9f59a670ac10930db52f1cd35ff959ecd2","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.1.1_1775615035953_0.6658952582767266","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@butterbase/sdk","version":"1.2.0","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.2.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"88908b93cb5e2e159ae4cbd8478aae1f0e1810ee","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.2.0.tgz","fileCount":102,"integrity":"sha512-Y8gl/+mcJX+yQR/15gl6DnAdhB4Hoeugr+Yw+hdvyAirdYHKhw9Z6io6300OiHXRsFKdljG6fLDUlIlPfmLG8w==","signatures":[{"sig":"MEUCIQCup8CzVywDZdP2Z+EuDh5Q8F/DY3HDIxYUYSg201hNOwIgDkTAvVKBGw07Pe76781x+0oFiGRGYVl+iEwS4qKwKTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":194644},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"7cedde52fc2cb71304bc4cdcd4e20b41717c7913","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.2.0_1775700700654_0.35803314287295773","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@butterbase/sdk","version":"1.2.1","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.2.1","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"709f1dba4e86597178320cd93a65b5364074ea31","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.2.1.tgz","fileCount":114,"integrity":"sha512-wG/iSrxBw4HChqy7m99FSKDYUd0SVTbsWFX0gu6J1l3S77mBeR4jM1UYKC4judYumnzvYrhJLeJYi6309/DCLw==","signatures":[{"sig":"MEUCIHGohF6njx20EDQ27bdM25hqFF+UGzS3VyYvPY3+wwh0AiEA4eDi4pFlcbPc3p7GHzXTvtkffdWxP8pUEQ0zv+EngeI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":235569},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6a53acf8a808dd269faa6550cfb6aedcd306dfdf","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.2.1_1775895464705_0.030457809026214866","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@butterbase/sdk","version":"1.3.0","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.3.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"4701d15bf70f189a656b2764bf69b994cc5f3e62","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.3.0.tgz","fileCount":114,"integrity":"sha512-mfUHuzNtk32+q34akCBHUrOx0ha7xrNiti5NafAdVOUSxxmN3OLJ23wBrk0m38Luk00IfzOu3dnQs6QZEJ7WcQ==","signatures":[{"sig":"MEUCIQCmtCSKoWIIHErj7eoSgHLOPeLWjy3xjIZ+2URmv/dVcQIgcWjFCujUj1CsrL1PCB7MBWorFd8z6kXyt1pRnglFNis=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":236852},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"16603931705920d137ba37eeeb18055da8935fe7","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.3.0_1776609224942_0.6808022881545683","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@butterbase/sdk","version":"1.3.1","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.3.1","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"c4a6f577e7e9e830e1836eea53cee8e720a7650b","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.3.1.tgz","fileCount":122,"integrity":"sha512-BuIDdJSOEJYlC7F6pJhkTVCPYYekzYcboVRsWUsm/T3XHxR9kOjETUSgDXXkAx5AGgy0fUJ0yQSMYresloTh7A==","signatures":[{"sig":"MEUCIQCMgL7SrgQC6qjpaE2ArugfqG7vvNODIKmxdSxH8okj1gIgddB+TkX4KX9vUp+mX18tGJt7a5bHu/GinV4ohD/YEWg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":257833},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"45a7806a89d6aa606520d5d50b6183ff48da771e","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.3.1_1776916064185_0.7866986933753342","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@butterbase/sdk","version":"1.3.2","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.3.2","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"a6fe61360e79e04795ee9cbd85ac23ec57449788","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.3.2.tgz","fileCount":134,"integrity":"sha512-uMPM1hRbSEhJVwNL/8N+MS7uS8qTxTGGss0v9I9tAuO5HoXx1DbvrFdpHzcncOSU5hu7HzbGQUAv3viCOcAb8Q==","signatures":[{"sig":"MEUCIQDpa0IJiQtPkZdrmXFbiPM8RXTFv+6ggGmniHFEl6HT3wIgUQUIY/3V2NUEYVoUPGGO6RE1CY2uKaBh2RPq8ci9gq8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":286117},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e0fba11725f9f5666e6fa2b27150810a8c01940d","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.3.2_1777171657834_0.5232732312484305","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@butterbase/sdk","version":"1.3.3","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@1.3.3","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"524071b0b593dd6c443bab86d3cdd6f18043dae2","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-1.3.3.tgz","fileCount":134,"integrity":"sha512-le/tRTw3pQ1Q0X3Six5qjPwpDYISbAYUo9oyhUepNJ5z/6B51UGJernY1C3Ib4iDI+BUDVqptNAwO6yHZLRwaw==","signatures":[{"sig":"MEUCICcwNLlqtHNpdYvyvDcdm4QaaX7/39m+xI3lFoMy4akMAiEAj76EcC8o2F/Cevye7XThILjmGzQbJEKwlQbyt6Wqr3Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288865},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"7b8f4197c2f2c1faf980eeb49beca09fba107ea0","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.3.3_1777215623845_0.951254471716517","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@butterbase/sdk","version":"2.0.0","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@2.0.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"7b3da73773a6946ac42adad997aa7f9271d6ffd1","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.0.0.tgz","fileCount":142,"integrity":"sha512-CDnit0rL4XfWc96PJ4n4Z/s0erFuCGaCplg+e0UFGmLwnfF2r/31L5FHNPdnQpz8Tjihy2AIy2ZUdXm/J3Ekfw==","signatures":[{"sig":"MEQCIFIiJQqzYLdfotKAi933zl3izSgq8pMv66voWz2PQxKyAiAhVT1x8oHGhR7jXzHOJosVMirOXa90j8xkLQniKd/Mhg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299711},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e25bbba7f8ac47582717718c889d85b27b9437bd","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.0.0_1777681886314_0.11116589080125117","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@butterbase/sdk","version":"2.0.1","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@2.0.1","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"83fa3646799f9b9f92697b269736b46ceb0e6ae1","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.0.1.tgz","fileCount":142,"integrity":"sha512-SFJp7qsQjeHSwp59Pjkd7bOuboyDkF6ILHKT4Q6LdAsxcPbz/JEqz50Uqoa+zbj1lG0eLeSkBxbdgd7lvgPG6A==","signatures":[{"sig":"MEQCIEIx2/Z95coUdhJB//E7CpmGm0FhwRML3pyFMbcOnelDAiAacztCPr9LtCvPJuvytGLh4alkb+RFTkKFOcuF72kKCw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299711},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"bf26c38bccd2eb05414e9735e77974b23dced16e","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.0.1_1777908396936_0.09962263395994109","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@butterbase/sdk","version":"2.0.2","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@2.0.2","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"daf7ae6afe3e9a166ab2ddf4ec6bc3f85931e839","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.0.2.tgz","fileCount":150,"integrity":"sha512-uqdblMMOnpKJNwtDAAaDvwTBErU3AkEzz8vewA+8lkP7bqNLye/tvyP3cKa22QHZ983UmEgqPJ07G0XqIz8oLg==","signatures":[{"sig":"MEYCIQCphbLzkrWh6eE2QTiB+M3fOaZ5tUEvJjJNmrnNVFM3FgIhAJ5G/jpUalK9d5G5qq1ZgUknmhZk1uEABXq2qyYDQSfk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325666},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"40133f3c237e2bba7ed51cf0a682a17fb09555bc","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.0.2_1777909560642_0.34069596182639494","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@butterbase/sdk","version":"2.3.1","keywords":["butterbase","backend","baas","database","auth","storage"],"_id":"@butterbase/sdk@2.3.1","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"dist":{"shasum":"0954e3c325499cd90118ecdc5cfe8693f152239d","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.3.1.tgz","fileCount":166,"integrity":"sha512-u7Fs/N9GyNeB69S6sbhetKLD/gAXPxo2USvkiKa0OE5l8ZwamehVDv/2VYWLnzfhiBDM2JfOwl9VXlsRq2AnJg==","signatures":[{"sig":"MEUCIAkWV6EDls2mnplK0URzRyjPE9DcHTBY9Qa9WpXvtuvFAiEAunJGKSiyi5x6WBKRgkwQKyloGi34a8prx3Pu27IkJgU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":377512},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d55b98141ca212d13a7fdb52ef79918b81f385f4","scripts":{"dev":"tsc --watch","test":"vitest run","build":"tsc"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@butterbase/shared":"*"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.3.1_1779243767658_0.03695034177707224","host":"s3://npm-registry-packages-npm-production"}},"2.3.2":{"name":"@butterbase/sdk","version":"2.3.2","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.3.2","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/NetGPT-Inc/butterbase-oss/issues"},"dist":{"shasum":"b59fd376e7123c9dea9667e7bd97b55035915d74","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.3.2.tgz","fileCount":182,"integrity":"sha512-XrZJPvNmEBfB+CJ7t8asw5+53xDlNvkJO+S1nH1g3ABuhjyWGEdHohzWYToJAuGjqN1/OCOIAuMz6mHqac1dcg==","signatures":[{"sig":"MEYCIQCREYIbOtz66e8Bh4+6Fr5W7RlfrJJBMQP79TfRBc8+rgIhAPasiwGLIngVHQiuzb7YI/znLiH/bylwt9dmEAKLVuFr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416094},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4e042869b947bff3a058cf42c23a209f8c51cf86","scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/NetGPT-Inc/butterbase-oss.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@butterbase/shared":"^0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.3.2_1779612524143_0.9441129050071897","host":"s3://npm-registry-packages-npm-production"}},"2.3.3":{"name":"@butterbase/sdk","version":"2.3.3","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.3.3","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/NetGPT-Inc/butterbase-oss/issues"},"dist":{"shasum":"766463371818cba26585afb323f9915ef59e5884","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.3.3.tgz","fileCount":182,"integrity":"sha512-Dh3Y8wB6M04flhcJ/nq+Lacaq71IVjGWok1xWycD1VyBix9BCD9aJ+8qWSj1MzCJ8m/LQRd03/eN4SF572T0Xw==","signatures":[{"sig":"MEYCIQDU9WUP/tgaHEdEGPKxfyVJQFrSGJKPRApesqclJmVFMwIhAPJM78xZIP4sq4UZ6+JjWgg8NagoR78XHzGItW25ongR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416094},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"b3a2751ca536a5de5b94ccabdd9a12510509696a","scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/NetGPT-Inc/butterbase-oss.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@butterbase/shared":"^0.2.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.3.3_1780202744951_0.46780494430807784","host":"s3://npm-registry-packages-npm-production"}},"2.3.4":{"name":"@butterbase/sdk","version":"2.3.4","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.3.4","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/NetGPT-Inc/butterbase-oss/issues"},"dist":{"shasum":"32930f4b3ebf49a0c1db4d6a7ca0d473718bd9e7","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.3.4.tgz","fileCount":182,"integrity":"sha512-D/UgcTdbOl6LWIMvZjnU0xcoXW7PcJB5rj5t2ALSM07NarmsbD+KgtM9w4TeuTL0A/DmcHdZAjWLfZbC0JrHOg==","signatures":[{"sig":"MEUCIQDeN4XlDNBzsnamM7ZZUMnISI2UFrvA7rwGPCiQhugQnQIgVs8Ryl/+GCf1NEftMpwuYduZtofBegqcv6f0de8mCN4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416094},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e14f14f0cbbbdf8446c3a99d89b47481729dabbc","scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/NetGPT-Inc/butterbase-oss.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.11.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.13.0","dependencies":{"@butterbase/shared":"^0.2.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.3.4_1780273338738_0.44068641888295845","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@butterbase/sdk","version":"2.4.0","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.4.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/NetGPT-Inc/butterbase-oss/issues"},"dist":{"shasum":"a927b494ba564a67160363044d8472b40cf6b28a","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.4.0.tgz","fileCount":182,"integrity":"sha512-65Wn0ymbVZ7LJk0orXb0wH5Z5q7Mt5WVGnF4IE/pHJNhZO3OMD7OcsWvUkNM6pm2uKlS8eYNbWtfHG9U9MVAig==","signatures":[{"sig":"MEUCIF0cBJzlIA0DpT5obWiyzXmO++Ciy8PpMON1wCxNXAzbAiEAqE2Zr0KcjzlmBM+1HROTk/+2YxIgPDEx9W63vo+a+r8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":415704},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"65c4d171214e56dbcf789110db17e74dbf90c7ec","scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/NetGPT-Inc/butterbase-oss.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.9.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@butterbase/shared":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.4.0_1780358284720_0.8173974130888892","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@butterbase/sdk","version":"2.5.0","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.5.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"dist":{"shasum":"92393c5246366b866ec921c5e1e8dcfd10bfe147","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.5.0.tgz","fileCount":182,"integrity":"sha512-FKUo2g4dHMGOkQKhItgNTtHAY9X72bciT7PyxG9ZvxLihjSQi+KgxrPGeKpokonZPrXyZsNtCfuTcLAueS4QYg==","signatures":[{"sig":"MEYCIQDaQtkL7IEHBNXT7LqcsJgMkKVZDlcIDms4mlvxlJcYJQIhAIJZaK9q7/y/6IGbghfZQScbtwgr+FNAlrouFHcUJSge","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416847},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/butterbase-ai/butterbase.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.9.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@butterbase/shared":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.5.0_1780889480571_0.20038537351555052","host":"s3://npm-registry-packages-npm-production"}},"2.6.0":{"name":"@butterbase/sdk","version":"2.6.0","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.6.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"dist":{"shasum":"ffde98d3800b11bfa7457b1e12d3b1ebd383015a","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.6.0.tgz","fileCount":190,"integrity":"sha512-d/aWydZfkYEVh4nRtRdNbBno8cBFwF8zJwOAOMRX4Mcodv5VkMc48B/6LBxv5RtT/gQ0GrUnOVIw/tSbF9ahLQ==","signatures":[{"sig":"MEUCIQD5zgSYbRp788Osgj0sT7kqiprCqyKRIcGWiKJzkDNJBAIgUGI5FFn0aUXb7siubvaqWIaIdN9D7quVde9GbhGt1z0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":427817},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/butterbase-ai/butterbase.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.9.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@butterbase/shared":"^0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.6.0_1781707962812_0.2760237654066955","host":"s3://npm-registry-packages-npm-production"}},"2.7.0":{"name":"@butterbase/sdk","version":"2.7.0","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.7.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"dist":{"shasum":"9e702131b4a5255b5cfd8b3d6cd3a0b321621289","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.7.0.tgz","fileCount":190,"integrity":"sha512-UXM5D0RKKfVU4bmpRfXln9cYsgjKfdvjPyo8UUX09569Y3Ydu0WWxm0SdlVSaRVzZa72WAHpAIpsSB/Fhyry6w==","signatures":[{"sig":"MEQCIB5IjpjX6sDY2YSgl7hqJ2E+x5Qw5v7Q71v/Ic0gpFdZAiBJOXdJ6Yr0ytQVNIy3t5CdnNP0J10eD0uyihesFnDqGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":428707},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/butterbase-ai/butterbase.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.9.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@butterbase/shared":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.7.0_1782103122021_0.07691642736902238","host":"s3://npm-registry-packages-npm-production"}},"2.8.0":{"name":"@butterbase/sdk","version":"2.8.0","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.8.0","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"dist":{"shasum":"ab464038f8f016f66ed7d62283b7ed2372bf2da3","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.8.0.tgz","fileCount":198,"integrity":"sha512-9mhYVayQn+c1Yq0QSVvAq2uhY9JgLimK8zc/ZtNeXNMW46V/rWIxRraBW3BjhsGEIhkkOR8oKJHKOzdp9IMqjQ==","signatures":[{"sig":"MEUCIFeWqHpq9vBp1h5+wiWLBTMQ5bJwg+jehpxMua3u/8ufAiEA+5vikzcJ/9lmnjCwattZihBrgvZHGSekUf+aKbCl8R8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":447809},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/butterbase-ai/butterbase.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.9.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@butterbase/shared":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.8.0_1782799226650_0.851370580927985","host":"s3://npm-registry-packages-npm-production"}},"2.8.1":{"name":"@butterbase/sdk","version":"2.8.1","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.8.1","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"dist":{"shasum":"4fb238af39349576a5c4d96561e33976280841a2","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.8.1.tgz","fileCount":198,"integrity":"sha512-c0PXTuH1Q7EW/dd2iCqFO/axCz0d+lD9uERtqcyu9RoQ66uEHoWtKFrXGRwt7uQ67GkNVoYb1yxNQo227UJUcA==","signatures":[{"sig":"MEYCIQDKYibcogrDdMRG3eKUtPkDhEpQ2g14XZ/TtMRxrcMrVwIhAIKOpzjFc+fc8ORFPtbNiw8kmUJxcJaW4xnDw0dEU1D7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":447490},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/butterbase-ai/butterbase.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.9.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@butterbase/shared":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.8.1_1782804807862_0.809898887865117","host":"s3://npm-registry-packages-npm-production"}},"2.8.2":{"name":"@butterbase/sdk","version":"2.8.2","keywords":["butterbase","backend","baas","database","auth","storage"],"license":"Apache-2.0","_id":"@butterbase/sdk@2.8.2","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"homepage":"https://butterbase.ai","bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"dist":{"shasum":"2231b773aec7957058890a85f3f07b4c30b09f4e","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.8.2.tgz","fileCount":198,"integrity":"sha512-YjRgBVTJaVWWUPv9SKE3/JHFZFt5AiEPtdr/JbeuGIve95tjxxmoiZihZlw725oWdoHBnbB2RldgyjoVoCbGNQ==","signatures":[{"sig":"MEYCIQCPdZMbN7xvzlPli+E5utwDUJ4+DHr5NBiw8WDVN3g9qgIhANmfqbOUc0cXxUDfV18HKCbNOxX48L+7WtwDSpVOqnlA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":447490},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"tsc -b --watch","test":"vitest run","build":"tsc -b"},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"repository":{"url":"git+https://github.com/butterbase-ai/butterbase.git","type":"git","directory":"packages/sdk"},"_npmVersion":"11.9.0","description":"Universal TypeScript SDK for Butterbase","directories":{},"_nodeVersion":"24.14.0","dependencies":{"@butterbase/shared":"^0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.1.1","typescript":"^5.7.0","@types/node":"^22.0.0"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_2.8.2_1783587111460_0.528541907448945","host":"s3://npm-registry-packages-npm-production"}},"2.9.0":{"name":"@butterbase/sdk","version":"2.9.0","description":"Universal TypeScript SDK for Butterbase","license":"Apache-2.0","homepage":"https://butterbase.ai","repository":{"type":"git","url":"git+https://github.com/butterbase-ai/butterbase.git","directory":"packages/sdk"},"publishConfig":{"access":"public"},"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc -b","dev":"tsc -b --watch","test":"vitest run"},"keywords":["butterbase","backend","baas","database","auth","storage"],"dependencies":{"@butterbase/shared":"^0.3.0"},"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0","vitest":"^3.1.1"},"peerDependencies":{"typescript":">=5.0.0"},"_id":"@butterbase/sdk@2.9.0","bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-xjLFc30+vxyLwDObyKkQCZiZvM9vPe/DC80zUNIMN/bcNdJoWJCZcbLNQTXCKpUIoPGZwCj1YhZT2BfR2L79yQ==","shasum":"f6b14349eb592b075a4bf9c69f257ebc010fa4c3","tarball":"https://registry.npmjs.org/@butterbase/sdk/-/sdk-2.9.0.tgz","fileCount":206,"unpackedSize":455916,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDZ5o5Fs74xBndjFlgILfgCaqktxE5K/mxPEa1fewLVHQIgRXTzEKygfRq4AIGd1EA+ZlWWljo0ZnHoD7SGNprNSQ4="}]},"_npmUser":{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},"directories":{},"maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_2.9.0_1785287082728_0.05941232315171696"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-05T03:52:48.642Z","modified":"2026-07-29T01:04:43.080Z","1.0.0":"2026-04-05T03:52:48.896Z","1.1.0":"2026-04-05T10:58:09.589Z","1.1.1":"2026-04-08T02:23:56.103Z","1.2.0":"2026-04-09T02:11:40.810Z","1.2.1":"2026-04-11T08:17:44.841Z","1.3.0":"2026-04-19T14:33:45.128Z","1.3.1":"2026-04-23T03:47:44.343Z","1.3.2":"2026-04-26T02:47:37.976Z","1.3.3":"2026-04-26T15:00:23.991Z","2.0.0":"2026-05-02T00:31:26.506Z","2.0.1":"2026-05-04T15:26:37.091Z","2.0.2":"2026-05-04T15:46:00.793Z","2.3.1":"2026-05-20T02:22:47.831Z","2.3.2":"2026-05-24T08:48:44.319Z","2.3.3":"2026-05-31T04:45:45.110Z","2.3.4":"2026-06-01T00:22:18.965Z","2.4.0":"2026-06-01T23:58:04.877Z","2.5.0":"2026-06-08T03:31:20.722Z","2.6.0":"2026-06-17T14:52:42.958Z","2.7.0":"2026-06-22T04:38:42.142Z","2.8.0":"2026-06-30T06:00:26.788Z","2.8.1":"2026-06-30T07:33:28.062Z","2.8.2":"2026-07-09T08:51:51.584Z","2.9.0":"2026-07-29T01:04:42.896Z"},"bugs":{"url":"https://github.com/butterbase-ai/butterbase/issues"},"license":"Apache-2.0","homepage":"https://butterbase.ai","keywords":["butterbase","backend","baas","database","auth","storage"],"repository":{"type":"git","url":"git+https://github.com/butterbase-ai/butterbase.git","directory":"packages/sdk"},"description":"Universal TypeScript SDK for Butterbase","maintainers":[{"name":"kcflexigbo","email":"kcflexigbo@gmail.com"},{"name":"willowwillowjar","email":"willow@butterbase.ai"}],"readme":"# @butterbase/sdk\n\nUniversal TypeScript SDK for Butterbase - works in browser, Node.js, and Deno environments.\n\n## Installation\n\n```bash\nnpm install @butterbase/sdk\n```\n\n## Quick Start\n\n```typescript\nimport { createClient } from '@butterbase/sdk';\n\n// Initialize client.\n// apiUrl is the same regardless of which region your app lives in —\n// requests are routed to the right region automatically.\nconst butterbase = createClient({\n  appId: 'app_abc123',\n  apiUrl: 'https://api.butterbase.ai',\n  anonKey: 'your-anon-key' // Optional, for public access\n});\n\n// Query data\nconst { data, error } = await butterbase\n  .from('posts')\n  .select('*')\n  .eq('status', 'published')\n  .order('created_at', { ascending: false })\n  .limit(10);\n\n// Insert data\nconst { data, error } = await butterbase\n  .from('posts')\n  .insert({ title: 'Hello World', content: 'My first post' });\n\n// Update data\nconst { data, error } = await butterbase\n  .from('posts')\n  .update({ status: 'archived' })\n  .eq('id', '123');\n\n// Delete data\nconst { data, error } = await butterbase\n  .from('posts')\n  .delete()\n  .eq('id', '123');\n```\n\n## Migration from 0.x to 1.0\n\n**Breaking Change:** The `authUrl` parameter has been removed. All auth endpoints now run on the same URL as the API.\n\n**Before (0.x):**\n```typescript\nconst butterbase = createClient({\n  appId: 'app_abc123',\n  apiUrl: 'https://api.butterbase.ai',\n  authUrl: 'https://auth.butterbase.com', // ❌ No longer needed\n});\n```\n\n**After (1.0):**\n```typescript\nconst butterbase = createClient({\n  appId: 'app_abc123',\n  apiUrl: 'https://api.butterbase.ai', // ✅ All endpoints use this URL\n});\n```\n\n## Authentication\n\nSessions are automatically persisted to `localStorage` and restored on page refresh. Access tokens are automatically refreshed before they expire.\n\n```typescript\n// Sign up\nconst { data, error } = await butterbase.auth.signUp({\n  email: 'user@example.com',\n  password: 'secure123'\n});\n\n// Sign in (session is automatically persisted)\nconst { data, error } = await butterbase.auth.signIn({\n  email: 'user@example.com',\n  password: 'secure123'\n});\n\n// Get current user (works after page refresh)\nconst { data: user } = await butterbase.auth.getUser();\n\n// Sign out (clears persisted session)\nawait butterbase.auth.signOut();\n\n// Refresh session manually (uses stored refresh token if none provided)\nconst { data } = await butterbase.auth.refreshSession();\n\n// OAuth\nconst { url } = butterbase.auth.signInWithOAuth({\n  provider: 'google',\n  redirectTo: 'http://localhost:3000/callback'\n});\nwindow.location.href = url;\n```\n\n### Auth State Changes\n\nSubscribe to authentication events to react to sign-ins, sign-outs, and token refreshes:\n\n```typescript\nconst { unsubscribe } = butterbase.onAuthStateChange((event, session) => {\n  // event: 'SIGNED_IN' | 'SIGNED_OUT' | 'TOKEN_REFRESHED' | 'SESSION_RESTORED'\n  console.log(event, session?.user);\n});\n\n// Stop listening\nunsubscribe();\n```\n\n### React Usage\n\n```typescript\nimport { useEffect, useState } from 'react';\nimport { butterbase } from './lib';\n\nfunction App() {\n  const [user, setUser] = useState(null);\n\n  useEffect(() => {\n    // Session is auto-restored — check current state\n    const session = butterbase.sessionManager.getSession();\n    if (session) setUser(session.user);\n\n    // React to future auth changes\n    const { unsubscribe } = butterbase.onAuthStateChange((event, session) => {\n      setUser(session?.user ?? null);\n    });\n    return unsubscribe;\n  }, []);\n}\n```\n\n### Custom Storage\n\nBy default, the SDK uses `localStorage` with an in-memory fallback for SSR/Node.js environments. You can provide a custom storage adapter:\n\n```typescript\nimport { createClient, MemorySessionStorage } from '@butterbase/sdk';\n\n// Memory-only (no persistence)\nconst butterbase = createClient({\n  appId: 'app_abc123',\n  apiUrl: 'https://api.butterbase.ai',\n  persistSession: false,\n});\n\n// Custom storage adapter (e.g., for React Native)\nconst butterbase = createClient({\n  appId: 'app_abc123',\n  apiUrl: 'https://api.butterbase.ai',\n  sessionStorage: myCustomStorage, // implements { getItem, setItem, removeItem }\n});\n```\n\n## Storage\n\n```typescript\n// Upload file\nconst { data, error } = await butterbase.storage.upload(file);\n\n// Get download URL\nconst { data } = await butterbase.storage.getDownloadUrl(objectId);\n\n// List files\nconst { data: objects } = await butterbase.storage.list();\n\n// Delete file\nawait butterbase.storage.delete(objectId);\n```\n\n## Functions\n\n```typescript\n// Invoke serverless function\nconst { data, error } = await butterbase.functions.invoke('my-function', {\n  body: { key: 'value' },\n  method: 'POST'\n});\n```\n\n> **Inside a function's handler** (server-side, not this client SDK), your\n> `ctx` gives you the same primitives for calling siblings without plumbing\n> a bearer:\n>\n> ```typescript\n> export async function handler(req, ctx) {\n>   const r1 = await ctx.invoke('sibling-fn', { hello: 'world' });\n>   const r2 = await ctx.invokeDO('room', 'room-42', { cmd: 'join' });\n>   return new Response('ok');\n> }\n> ```\n>\n> See the platform docs: [Functions → Server-to-server](https://docs.butterbase.ai/core-concepts/functions#server-to-server-function-calls) and [Durable Objects → Server-to-server](https://docs.butterbase.ai/core-concepts/durable-objects#server-to-server-calls-into-durable-objects).\n\n## Query Builder\n\n### Operators\n\n- `eq(column, value)` - Equal to\n- `neq(column, value)` - Not equal to\n- `gt(column, value)` - Greater than\n- `gte(column, value)` - Greater than or equal to\n- `lt(column, value)` - Less than\n- `lte(column, value)` - Less than or equal to\n- `like(column, pattern)` - Pattern matching (case-sensitive)\n- `ilike(column, pattern)` - Pattern matching (case-insensitive)\n- `in(column, values)` - Value in array\n- `is(column, value)` - Is null/true/false\n\n### Modifiers\n\n- `select(columns)` - Select specific columns\n- `order(column, options)` - Order results\n- `limit(count)` - Limit results\n- `offset(count)` - Skip results\n\n## Usage in Deno\n\n```typescript\nimport { createClient } from 'npm:@butterbase/sdk';\n\nconst butterbase = createClient({\n  appId: Deno.env.get('BUTTERBASE_APP_ID')!,\n  apiUrl: Deno.env.get('BUTTERBASE_API_URL')!,\n});\n\n// Use in serverless functions\nexport async function handler(req: Request, ctx: any) {\n  const { data } = await butterbase.from('posts').select('*');\n  return Response.json({ data });\n}\n```\n\n## TypeScript Support\n\nThe SDK is fully typed with TypeScript. All methods return `ButterbaseResponse<T>` with proper type inference:\n\n```typescript\ninterface Post {\n  id: string;\n  title: string;\n  content: string;\n  status: 'draft' | 'published';\n}\n\nconst { data, error } = await butterbase\n  .from<Post>('posts')\n  .select('*')\n  .eq('status', 'published');\n\n// data is typed as Post[] | null\n// error is typed as Error | null\n```\n\n## Integrations\n\nConnect third-party services to your app and execute actions on behalf of your users.\n\n### Admin configuration (API key)\n\n```typescript\n// Enable a toolkit\nawait bb.integrations.configure('gmail', { displayName: 'Gmail' });\n\n// List enabled integrations\nconst { data } = await bb.integrations.getConfig();\n\n// Disable a toolkit\nawait bb.integrations.disable('gmail');\n\n// Search available toolkits\nconst { data } = await bb.integrations.listAvailable({ search: 'salesforce' });\n```\n\n### End-user OAuth flow (user JWT)\n\n```typescript\n// Generate connect URL — redirect the user to authUrl\nconst { data } = await bb.integrations.connect('gmail', {\n  redirectUrl: 'https://yourapp.com/settings',\n});\nwindow.location.href = data.authUrl;\n\n// List user's connected accounts\nconst { data } = await bb.integrations.listConnections();\n\n// Disconnect an account\nawait bb.integrations.disconnect(connectionId);\n```\n\n### Executing tools\n\n```typescript\n// List tools for a toolkit\nconst { data } = await bb.integrations.getTools('gmail');\n// data[0] = { name: 'GMAIL_SEND_EMAIL', description: '...', parameters: { ... } }\n\n// Execute a tool (user JWT auth)\nconst { data } = await bb.integrations.execute('GMAIL_SEND_EMAIL', {\n  to: 'user@example.com',\n  subject: 'Hello',\n  body: 'Sent via Butterbase integrations.',\n});\n\n// Execute on behalf of a user (API key + userId, e.g. in a cron)\nconst { data } = await bb.integrations\n  .asUser('user-uuid')\n  .execute('GOOGLECALENDAR_EVENTS_LIST', { timeMin: new Date().toISOString() });\n```\n\n## Error handling\n\nAll client methods return `{ data, error }`. When the backend returned a\nrecognizable agent-friendly error, `error` is a typed `ButterbaseError`\nsubclass (`AuthError`, `ValidationError`, `NotFoundError`, `QuotaError`,\n`NetworkError`) carrying `code`, `status`, `remediation`, and `details`.\n\n```typescript\nimport {\n  ButterbaseClient, ErrorCodes,\n  AuthError, NotFoundError, QuotaError,\n} from '@butterbase/sdk';\n\nconst r = await client.from('posts').select('*').execute();\n\nif (r.error instanceof NotFoundError) {\n  console.error('Missing table:', r.error.remediation);\n}\nif (r.error?.code === ErrorCodes.AUTH_INVALID_API_KEY) {\n  // rotate the key\n}\nif (r.error instanceof QuotaError) {\n  console.error(`Quota hit (${r.error.code}): ${r.error.remediation}`);\n}\n```\n\nThe full set of codes lives in `ErrorCodes` (re-exported from\n`@butterbase/shared`). Use `parseApiError(status, body)` if you're wrapping\nfetch yourself and want to dispatch to the same typed classes.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}