{"_id":"@cred-repo/sdk","_rev":"13-7e24b5b92a40dac57437eb90ad41ad8c","name":"@cred-repo/sdk","dist-tags":{"latest":"1.3.2"},"versions":{"0.1.0":{"name":"@cred-repo/sdk","version":"0.1.0","license":"MIT","_id":"@cred-repo/sdk@0.1.0","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"972632f5a24c2c789f7f3204f8cd5ac766fb884e","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-0.1.0.tgz","fileCount":28,"integrity":"sha512-wpVaLX4RL+OxEVL3k7AoMkO7ll+dXOqPfTIrun31IIhGX5U6F8Gi2zdBhYz78VaTH5SGTE0nA5IA3biqhkbhHQ==","signatures":[{"sig":"MEQCIFlXLeoBVblEUmejDEcDTfWr/N4pt6lNN0nMOXmhnGI8AiAc8a3rUZ8nCPbeKcLcR/BgpuYy+kWsjCi/TfG+Bxys3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69242},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e88123d0f0d50d7dc56bf93fc652bbffab7c569a","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0_1773878986386_0.46662506994679975","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@cred-repo/sdk","version":"1.0.1","license":"MIT","_id":"@cred-repo/sdk@1.0.1","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"2e408e1c8568cc69eeecd1e372ab3e81aba40ab8","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.0.1.tgz","fileCount":28,"integrity":"sha512-hwxIit4KDlSx7uBArTzhzh1otIoo2xm1Dx3QRIbZ4n59hNIEjiy3txwXFSp7tQLy3aR5xnz403exhwxovzUyUA==","signatures":[{"sig":"MEYCIQCKTIAXIE7n0fOU+Tw7Uz87tduf6Wcx5hTLZS1ryW2v7wIhANnIAz+8mvLCeHIP00FoA1//hV8/6IT6rJqq8Ht5v4ZA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70738},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a1e0f7feb62f0fa6e4296a40e9e93d7f3a49e960","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.1_1773884321192_0.8112197315292589","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@cred-repo/sdk","version":"1.0.2","license":"MIT","_id":"@cred-repo/sdk@1.0.2","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"d02bcd59a2ed11ce6039113285a6796c4143ea13","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.0.2.tgz","fileCount":28,"integrity":"sha512-hT97gVpV4kBkhA3OEtlgxQUf17dpjg4aBtN0dyhPkvfACocxRZml8IxJkRwkll4EjMv9uyWes4gWcvlYTAgKxw==","signatures":[{"sig":"MEQCIDfYavjRURLhhT4bkt4Ry6h6jL9+YZJFwpEMVyn/Fi2rAiA9VXX/R//hyN29WIUFEFeiAZowDk9CO2RH9qMy2cm65Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73045},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9d2dc1e005e22f704ef9cecbb055fcee9cd38f8f","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.2_1773885451701_0.8726673807433627","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@cred-repo/sdk","version":"1.0.3","license":"MIT","_id":"@cred-repo/sdk@1.0.3","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"4861a540b2c2f6307fb6d4467f314fc2a1c468f3","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.0.3.tgz","fileCount":28,"integrity":"sha512-noAwVM26yRIIsq72Ystc43NoSM1SfWTz2hPa53QTpDiJgu5mcSkq8yUGvt5GUUzYFtTAZl7Jzvn6fdmGDJrxhg==","signatures":[{"sig":"MEYCIQCCdjUu69aD4bYOV/oBcaplEiFlp5PSkI5FZ3QohzWmFQIhAO5gncP3R0S93IllnLCGogelTc3bPpQCt59hASaT7dSf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":73407},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d8d5cfafce74c8f23d0cb210728c8b3f759277cd","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.3_1773886994945_0.04104995633414332","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@cred-repo/sdk","version":"1.0.5","license":"MIT","_id":"@cred-repo/sdk@1.0.5","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"47557ac3db52875988ae175bea155df754d7559f","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.0.5.tgz","fileCount":28,"integrity":"sha512-X7xV0hHcY3C9na9ZnJsOxnnj7rggLjAbO/OwYlOl4pZzzvpWDNfWjYK8VhjYQXwvmh0mrFabuY0ujK/jm2hPqw==","signatures":[{"sig":"MEUCIQCnTInifaaQTI7vhLIIQyWF28THEOutXhjCfC/iQj7XWgIgMUU25r4w47pHw4ZYEUPPw4xF7vaBJJYCWd90u7LOHKQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75076},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"65d87c14d0ea1b2d90f38db163b3d89931a904cd","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.5_1773891251971_0.8018447026027611","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@cred-repo/sdk","version":"1.0.6","license":"MIT","_id":"@cred-repo/sdk@1.0.6","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"b28ad20f632f8d6f4012161b71f7ad921c247e91","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.0.6.tgz","fileCount":28,"integrity":"sha512-ZKPWnYgQqkZFimW/KraHSGbqKGPwtt103fFqnYAT1amauy3x7jG82mJw/kYMGtuB9YLob5Nu7BvY6B8YkichBw==","signatures":[{"sig":"MEYCIQCsCh+KvdcXamWyjyelfOkCWNj0vIIdhpFFgCUWCA0EogIhAJVsl5Q43DOX3PSHSHgZVj/kK9gSdGxU316bIHMAszFg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75076},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"56cc784a78d6ee49becff6b3389d24943adf237d","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.6_1773891618287_0.21881868637114277","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"@cred-repo/sdk","version":"1.0.7","license":"MIT","_id":"@cred-repo/sdk@1.0.7","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"edb35972c71a18f3fd3b0e4cac7df818a00562a1","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.0.7.tgz","fileCount":28,"integrity":"sha512-iWyXRIUFZjIZfZi1keVpEBC04bV9rv5Y7JVIWtInLPQlC2U6ANGMZEEV7zSbZh5gFWj0SsPAxq0JjqaA8bUKnQ==","signatures":[{"sig":"MEUCIQD4lhIQFXmcXGD8xN/hlraeRNIrxYUPhh7wcsc8ktqmcAIgD3DuU2E9DgVc5klgFSAt8qEs0u+LyTmJmYEweYfWJXk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75904},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"fc49de2f8502772fde1e8a061705d0716330f502","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.7_1773973042434_0.3255195484052742","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@cred-repo/sdk","version":"1.1.0","license":"MIT","_id":"@cred-repo/sdk@1.1.0","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"0fca48bbb91a2c84b79738aa1db61df34bceb74e","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.1.0.tgz","fileCount":28,"integrity":"sha512-wQFWDpKKb63bSmuU6THXa16TJTMWi1wZyMFNwR45yHb7qvV6MUSrkD0Hx40+3Zm4k+OzXXF6sQk6NylDNogUYw==","signatures":[{"sig":"MEQCIEXAyAwipVGmHMUgXr0vru2xtANleRPyXk5xQUNEOuxhAiBUDZG3+xMyiH5HczpjEsMIqmgiuDKhfNKNxtKaWaIo8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78957},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"2e70bb169a7cc349b4f0aae273828a894b853585","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.1.0_1774060050112_0.29930829559058725","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@cred-repo/sdk","version":"1.1.1","license":"MIT","_id":"@cred-repo/sdk@1.1.1","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"07ffa4452c40262f2f1da0ffb75737d2d59f0cdc","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.1.1.tgz","fileCount":28,"integrity":"sha512-pPe8lUwVDMShMJf+LZP5Vj8KaTUa0pm3398nm8h/J5rxQUg6/hSR3z6o2Ope6Nla3XNfCU2bcSwrW7e2vimS0A==","signatures":[{"sig":"MEQCIBzD2vg153wmX68Yt9uuMsBrarAYPosgssMrWbZoW+OSAiATXmD3PvVG2tXkKWqRuVkXabAJiN5Gd2TxhOCn8FwSKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80090},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"3f6137cd57599e33c9dbe271362a9d3d1d05fcd8","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.1.1_1774319109300_0.8452105895876394","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@cred-repo/sdk","version":"1.1.2","license":"MIT","_id":"@cred-repo/sdk@1.1.2","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"5162d9850ac43c5bccc015e690f56cf5a5926ffc","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.1.2.tgz","fileCount":30,"integrity":"sha512-5quLHVm8+Di8OBs0PTEK7C19AFKR9wokC/6hgjjWwbK0+c1+3epoUvV4ufstTByWO53HY8hQ/sD+s03U34iNZw==","signatures":[{"sig":"MEUCIQC9rVgDrGsYXzI2xrIMW1qrtqC0hVPCU6DKSxtJVMr1yAIgaNDtkSw646rekETvcUE/W9SFWaMGKGZI6ZTXWsuPRvo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86627},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"1139a8fc3554afc2ad07cd67c54f2f00942ff463","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.1.2_1774569651399_0.3470298860240617","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@cred-repo/sdk","version":"1.2.1","license":"MIT","_id":"@cred-repo/sdk@1.2.1","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"26e70dad8939bd37c22aff9832bff9caf4e6ef0e","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.2.1.tgz","fileCount":30,"integrity":"sha512-cCeMmKYNdxRzzgcK5iR9D+bXe9gHoztv66UqMibWAQQwywApG7fPIB4pD2U4wDDF3pZZ/k+6IbbB9YqjTsUupQ==","signatures":[{"sig":"MEYCIQDmuB1ypjlSkCiom6ypbZYY2ofFE9bw/rfwR+I045cUIAIhAPo6HBeOTehdP+7Uau/Lgtc9n1KL6st6b9WyOt55cVlw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86715},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"97dacd6d5169305a327099a2196148e0076ac803","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.2.1_1774968664622_0.040175110367818956","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@cred-repo/sdk","version":"1.3.0","license":"MIT","_id":"@cred-repo/sdk@1.3.0","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"dist":{"shasum":"8dc5ed324c5b207ca728466428884ca119bf1fb5","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.3.0.tgz","fileCount":32,"integrity":"sha512-ValcOHos/8C+nD2qNB8ggOzWCEeHViM+J72ZZIZ8Q1aBqekl4JXE+sbHHHY28BcJG9D0nUTeb4n4mhvJfbaFHw==","signatures":[{"sig":"MEYCIQDaqe2Q+uEMGO8qxMftlEP9HPKBmZ+rYYlk5GDYg5PePgIhAIQNZ2XyVlQ2V8Zb1Z2BphyJ2Pt3DKG8DmEAK15E6iTe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102044},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"edf004b7b4fdfec9d9220703eb47b0c434c5ad23","scripts":{"dev":"tsc --watch","build":"tsc","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"_npmVersion":"11.9.0","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","typescript":"^5.5.0","@types/node":"^20.14.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.3.0_1775082202676_0.6458157893096848","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@cred-repo/sdk","version":"1.3.2","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","license":"MIT","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"tsc","dev":"tsc --watch","test:contract":"tsx --env-file-if-exists=../../.env.local tests/contract/run.ts","prepublishOnly":"npm run build"},"devDependencies":{"@types/node":"^20.14.0","tsx":"^4.21.0","typescript":"^5.5.0"},"engines":{"node":">=18"},"gitHead":"a84368582682601209f4efed13fb67230053de22","_id":"@cred-repo/sdk@1.3.2","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-soLaFxsoSopG32tZgxVUTUvZFEVYIh2guWjGya8GxV3OGkCjMMygroLeMwatUUgKzCpSRHGkfsA7J2oqbp8eMQ==","shasum":"ffa857e292328220a5f62fceec6ba849eba5697c","tarball":"https://registry.npmjs.org/@cred-repo/sdk/-/sdk-1.3.2.tgz","fileCount":32,"unpackedSize":103327,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCjOQQRVS2crB0Rb0LRqM63WLTH1IEJkZxwi9F8d/3sIwIhAPyLjR+uY2tEps5NfyY+eNKIE0ZrtUAsr2EbPJbO7bVA"}]},"_npmUser":{"name":"glenner","email":"glen.allison@gmail.com"},"directories":{},"maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_1.3.2_1776356319865_0.323582399054563"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-19T00:09:46.263Z","modified":"2026-04-16T16:18:40.119Z","0.1.0":"2026-03-19T00:09:46.550Z","1.0.1":"2026-03-19T01:38:41.367Z","1.0.2":"2026-03-19T01:57:31.863Z","1.0.3":"2026-03-19T02:23:15.336Z","1.0.5":"2026-03-19T03:34:12.145Z","1.0.6":"2026-03-19T03:40:18.427Z","1.0.7":"2026-03-20T02:17:22.597Z","1.1.0":"2026-03-21T02:27:30.275Z","1.1.1":"2026-03-24T02:25:09.450Z","1.1.2":"2026-03-27T00:00:51.537Z","1.2.1":"2026-03-31T14:51:04.788Z","1.3.0":"2026-04-01T22:23:22.831Z","1.3.2":"2026-04-16T16:18:39.998Z"},"license":"MIT","description":"Node.js SDK for the Cred Platform API — events, commitments, actors, and credibility.","maintainers":[{"name":"glenner","email":"glen.allison@gmail.com"}],"readme":"# @cred-repo/sdk\n\nTypeScript SDK for the Cred Platform API. Build credibility-tracked prediction apps.\n\n## Quickstart\n\n```typescript\nimport { createCredClient } from \"@cred-repo/sdk\";\n\n// apiKey MUST be an app API key (prefix: cr_live_).\n// CLI login tokens (cpat_*) and OAuth tokens (oa_live_*) will NOT work.\nconst cred = createCredClient({\n  baseUrl: \"https://cred-repo.com\",\n  apiKey: process.env.CRED_API_KEY!, // cr_live_...\n});\n\n// 1. Create an actor (idempotent by externalUserId)\nconst actor = await cred.createOrGetActor({\n  externalUserId: \"user-123\",\n  handle: \"alice\",\n});\n\n// 2. Ensure an event exists (key = shared question, NEVER include userId)\nawait cred.ensureEvent({\n  key: \"weather:rain:chicago:2026-04-01\",\n  title: \"Will it rain in Chicago?\",\n  resolutionConfigSlug: \"weather.rain\",\n  locksAt: \"2026-04-01T00:00:00Z\",\n  overrideParams: { date: \"2026-04-01\" },\n});\n\n// 3. Submit a commitment (idempotent upsert — updates if exists)\nconst commitment = await cred.submitCommitment({\n  actorId: actor.actorId,\n  eventKey: \"weather:rain:chicago:2026-04-01\",\n  probability: 0.75,\n  resolutionDate: \"2026-04-01\",\n  question: \"Will it rain in Chicago on April 1?\",\n});\n\n// 4. Read commitments\nconst result = await cred.getCommitments({\n  actorId: actor.actorId,\n  resolved: true,\n});\n\n// 5. Check resolution status\nconst status = await cred.getResolutionStatus(\"weather:rain:chicago:2026-04-01\");\n// status.state: \"pending\" | \"resolved\"\n```\n\nThat's the complete integration path. Every first-party app (NBACred, WeatherCred, PolyCred) uses exactly this flow.\n\n## Visibility (v1.1.0)\n\n```typescript\n// Submit with visibility tier (defaults to \"public\" if omitted)\nconst commitment = await cred.submitCommitment({\n  actorId: actor.actorId,\n  eventKey: \"weather:rain:chicago:2026-04-01\",\n  probability: 0.75,\n  resolutionDate: \"2026-04-01\",\n  question: \"Will it rain in Chicago on April 1?\",\n  visibility: \"restricted\", // \"restricted\" | \"public\"\n});\n\n// Promote visibility (can only expand, never contract)\nawait cred.promoteCommitment({\n  commitmentId: commitment.commitmentId,\n  visibility: \"public\",\n});\n```\n\n**Tiers:** `restricted` (actor + admins only), `public` (external, verifiable). Visibility is set once at creation and can only expand via promote. Non-public commitments are not yet enabled in production.\n\n**Scoring:** Only commitments with `visibility_at_resolution = 'public'` enter public calibration. Promoting after resolution does not retroactively change scoring.\n\n## Commitment Semantics\n\nThese are platform-enforced behaviors, not SDK opinions.\n\n- **Uniqueness:** One commitment per actor per event, keyed on `(actor_id, canonical_event_id)`.\n- **Behavior:** Last-write-wins upsert. Resubmitting updates probability and question. Returns the same `commitmentId`.\n- **History:** Not retained at the platform level. Previous probabilities are overwritten. Apps that need amendment history must track locally.\n- **Guarantee:** Idempotent. Safe to retry on network failure. Calling `submitCommitment` twice with the same parameters is a no-op.\n- **Scoring:** `brierScore`, `isCorrect`, `predictedSide` are computed by the platform and returned in the API response. Do not recompute these locally.\n\n## Error Handling\n\n```typescript\nimport { isCredError } from \"@cred-repo/sdk\";\n\ntry {\n  await cred.submitCommitment({ ... });\n} catch (err) {\n  if (isCredError(err)) {\n    switch (err.code) {\n      case \"CRED_EVENT_LOCKED\":\n        // Prediction window closed\n        break;\n      case \"CRED_ALREADY_RESOLVED\":\n        // Event already has an outcome\n        break;\n      case \"CRED_EVENT_CONFLICT\":\n        // Event exists with different immutable fields\n        break;\n      case \"CRED_UNAUTHORIZED\":\n        // Invalid API key\n        break;\n    }\n  }\n}\n```\n\nNever match on `err.message`. Always use `err.code`.\n\n## Webhook Verification\n\n```typescript\nimport { verifyWebhookSignature } from \"@cred-repo/sdk\";\n\n// In your webhook handler:\nconst body = await request.text();\n\nverifyWebhookSignature({\n  rawBody: body,\n  signatureHeader: request.headers.get(\"webhook-signature\"),\n  secret: process.env.CRED_WEBHOOK_SECRET!,\n  webhookId: request.headers.get(\"webhook-id\")!,\n  timestamp: request.headers.get(\"webhook-timestamp\")!,\n});\n\n// If it doesn't throw, the signature is valid.\nconst payload = JSON.parse(body);\n```\n\nThe SDK handles signing key derivation, HMAC computation, and timestamp tolerance internally. Pass the raw webhook secret — do not pre-hash it.\n\n## Real App Patterns\n\nThree production apps use this SDK. Each represents a different integration shape.\n\n### Pattern 1: User Prediction App (NBACred)\n\nUser submits predictions on NBA games. Resolution via external cron.\n\n- Actor: created at OAuth login, cached locally\n- Events: created per prediction (one per team per game)\n- Commitments: user-initiated, one at a time\n- Resolution: webhook from Cred resolver\n- Key format: `nba:winner:{gameId}-{team}:{date}`\n\n### Pattern 2: Scheduled Data App (WeatherCred)\n\nCron creates daily events. NOAA reference forecaster submits baselines.\n\n- Actor: human (users) + reference (NOAA)\n- Events: batch-created by nightly cron (6 cities x 7 days)\n- Commitments: user-initiated + NOAA reference (cron)\n- Resolution: webhook from Cred resolver\n- Key format: `weather:rain:{city}:{date}`\n- Reference actor: `cred.createOrGetActor({ actorType: \"reference\" })`\n\n### Pattern 3: System-Driven Predictions (PolyCred)\n\nAI models forecast hundreds of prediction markets. High volume, continuous ingestion.\n\n- Actors: human (users) + AI agents (4 LLM providers)\n- Events: created per market (500+ active)\n- Commitments: user-initiated + AI cron (batch of 10, every 5 min)\n- Resolution: polling via raw `getResolvedEvents()` (not yet in SDK)\n- Key format: `polymarket:{conditionId}:{slug}:{date}` or `kalshi:{ticker}:{date}`\n- AI actors: `cred.createOrGetActor({ actorType: \"ai_agent\" })`\n\n## What the SDK Does NOT Do\n\nBe explicit about boundaries:\n\n- **Does not build event keys.** Each app owns its key format. The SDK validates nothing about key structure beyond \"non-empty string.\" **Event keys must represent shared questions** (e.g., `stockcred:close:AAPL:2026-04-01`), never per-user state. Including userId in a key creates one event per user, destroying crowd aggregation and calibration.\n- **Does not handle OAuth or sessions.** Identity is an app concern. The SDK provides `createOrGetActor` for the data layer only.\n- **Does not provide analytics or aggregation endpoints.** Crowd averages, credibility scores, and leaderboard data are app-specific reads.\n- **Does not batch requests.** Rate-aware batching belongs in the app layer. The SDK makes one call at a time.\n- **Does not cache results.** The SDK returns fresh data on every call. Apps cache locally as needed.\n- **Does not manage your database.** Local caching of `cred_actor_id`, `cred_commitment_id`, outcomes, and Brier scores is the app's responsibility.\n\n## Common Mistakes\n\nBased on migrating three production apps:\n\n- **Don't use CLI tokens with the SDK.** The SDK requires an app API key (`cr_live_*`). CLI login tokens (`cpat_*`) will return 401 on all write operations.\n- **Don't use a config from a different domain.** `weather.rain` only works with `weather:*` keys. `nba.game_winner` only works with `nba:*` keys. For new domains, use `manual.binary` which accepts any key format.\n- **Don't put the config slug in your event key.** The key should be `stockcred:close:AAPL:2026-04-01`, NOT `manual:binary:stockcred:2026-04-01`. The config slug goes in `resolutionConfigSlug`, never in the key itself.\n- **Don't put userId in event keys.** Events are shared questions (`stockcred:close:AAPL:2026-04-01`). Actors differentiate users. A per-user key creates isolated single-commitment events — no crowd, no calibration, no leaderboard value.\n- **Don't implement your own retry logic.** The SDK retries transient failures (5xx, network errors) with exponential backoff. Customize via `maxRetries` and `retryBackoffMs` in client options.\n- **Don't manually construct auth headers.** Pass `apiKey` to `createCredClient` and forget about it.\n- **Don't compute Brier scores locally.** The API returns authoritative `evaluation.brierScore` and `evaluation.isCorrect` on every commitment. Trust them.\n- **Don't string-match error messages.** Use `isCredError(err)` and check `err.code`. Error messages may change; codes are stable.\n- **Don't assume append-only.** Commitments are last-write-wins upsert. Submitting again updates the existing commitment, not creates a new one.\n- **Don't deduplicate commitments in your app.** The platform handles it. Your app's \"amend\" flow is just another `submitCommitment` call.\n\n## Config Discovery\n\n```typescript\nconst configs = await cred.listConfigs();\n// Returns active resolution configs with slugs, preconditions, and timing.\n```\n\nUse this to discover available `resolutionConfigSlug` values instead of hardcoding.\n\n### Critical: Config ↔ Event Key Coupling\n\nResolution configs are **not interchangeable**. Each config expects a specific event key format and domain. Using the wrong config for your key format will fail with `wc_canonical_key_format_check` or `namespace_not_allowed`.\n\n```typescript\n// ✅ Correct — weather config with weather-style key\nawait cred.ensureEvent({\n  key: \"weather:rain:chicago:2026-04-01\",\n  resolutionConfigSlug: \"weather.rain\",    // matches weather:* keys\n  ...\n});\n\n// ❌ Wrong — weather config with stock-style key\nawait cred.ensureEvent({\n  key: \"stockcred:close:AAPL:2026-04-01\",\n  resolutionConfigSlug: \"weather.rain\",    // FAILS: key format mismatch\n  ...\n});\n```\n\n**If you are building a new app domain** (stocks, sports, etc.), use `manual.binary` — the universal config that works with any domain and any key format.\n\n### Pattern 4: Custom Domain App (manual.binary)\n\nFor new domains where no automated connector exists yet. Your app resolves events itself.\n\n```typescript\n// 1. Use manual.binary — works with ANY key format\nawait cred.ensureEvent({\n  key: \"stockcred:close:AAPL:2026-04-01\",  // YOUR domain, YOUR format\n  title: \"Will AAPL close above $150 on April 1?\",\n  resolutionConfigSlug: \"manual.binary\",     // Universal config\n  locksAt: \"2026-04-01T16:00:00Z\",\n});\n\n// 2. Submit commitments as normal\nawait cred.submitCommitment({\n  actorId: actor.actorId,\n  eventKey: \"stockcred:close:AAPL:2026-04-01\",\n  probability: 0.65,\n  resolutionDate: \"2026-04-01\",\n  question: \"Will AAPL close above $150?\",\n});\n\n// 3. Resolve with structured evidence (requires resolver token)\nawait fetch(`${baseUrl}/api/v1/events/stockcred:close:AAPL:2026-04-01/resolve`, {\n  method: \"POST\",\n  headers: {\n    Authorization: `Bearer ${resolverToken}`,  // resolver credential, not app key\n    \"Content-Type\": \"application/json\",\n  },\n  body: JSON.stringify({\n    outcome: true,\n    evidence_type: \"app_reported\",           // REQUIRED\n    evidence_payload: {                       // REQUIRED — no bare { outcome: true }\n      source: \"stockcred\",\n      symbol: \"AAPL\",\n      close_price: 152.30,\n      threshold: 150.00,\n      data_source: \"yahoo_finance\",\n    },\n  }),\n});\n```\n\n**Key format rules for manual.binary:**\n- Use YOUR domain prefix: `stockcred:close:AAPL:2026-04-01`, NOT `manual:binary:stockcred:2026-04-01`\n- The config slug (`manual.binary`) goes in `resolutionConfigSlug`, never in the key\n- Keys must be shared questions — one event per real-world question, not per user\n- Format: `{domain}:{metric}:{entity}:{YYYY-MM-DD}`\n\n**Trust tier:** Manual resolution is labeled `evidence_class: \"app_reported\"` on all surfaces. This distinguishes it from connector-verified resolution (`public_api`, `first_party_source`). Evidence is still hashed, immutable, and stored in the receipt — but it is not independently verifiable by a third party.\n\n### Resolution is Not a Simple Outcome Write\n\nThe SDK does not expose a `resolve()` method. Resolution is handled by the platform's resolver service, which:\n- Fetches evidence from external data sources\n- Verifies preconditions (e.g., game is final, market is closed)\n- Computes evidence hashes for tamper detection\n- Scores all commitments atomically\n\nIf you need custom resolution for a new domain, you need a **resolver credential** (`cr_live_*` with `credential_type: resolver`) and must POST structured evidence to `/api/v1/events/{key}/resolve` with `evidence_type` and `evidence_payload` fields. This is an advanced integration — most apps should rely on platform-managed resolution via webhooks or polling.\n\n## Resolution Status\n\n```typescript\nconst status = await cred.getResolutionStatus(\"weather:rain:chicago:2026-04-01\");\n```\n\nReturns `state: \"pending\"` or `state: \"resolved\"` with receipt info. v1 is truth-only — intermediate diagnostic states (preconditions, connector status) are not yet exposed.\n\nFor polling:\n\n```typescript\nconst result = await cred.waitForResolution({\n  eventKey: \"weather:rain:chicago:2026-04-01\",\n  timeoutMs: 60 * 60 * 1000,\n});\n// Resolves when state reaches a terminal state.\n// Throws on timeout or abort.\n```\n\n## Contract Version\n\nThe SDK sends `X-Cred-SDK-Version` and validates `X-Cred-Contract-Version: 1` from the API. If the contract version changes, the SDK warns once at startup.\n","readmeFilename":"README.md"}