{"_id":"@chaterafrikang/sdk","_rev":"11-53c2d73888e6ac94063ce8b7ac379251","name":"@chaterafrikang/sdk","dist-tags":{"beta":"0.1.0-beta.4","latest":"0.1.0-beta.9"},"versions":{"0.1.0-beta.0":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.0","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.0","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"64359c9fd9df0a949efae28631bce85a64f361ad","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.0.tgz","fileCount":8,"integrity":"sha512-GCYwYfKMNPxCQbzST6J74qI1/O8pO4p+HTT8q0DK71e+qvCeS20R9XISGZFCNkwyXUbp1HxZinaN9RT0nolPTw==","signatures":[{"sig":"MEYCIQCxItxjJet73nz+91HJ91Dj0Or7zFylr1DtesTtvbUVEAIhAOJDjhG5CpVRp/Wu7qpdw67/PqXS4s2+GO2e/qVxYxXM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":495285},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"0dc0d02becbe331ff84dc97be99dd8a9b51db40f","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.0_1769343232610_0.8676939995132482","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.1":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.1","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.1","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"cf560cffeec01b6f34574407390af96f4162a8f9","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.1.tgz","fileCount":8,"integrity":"sha512-kYUnj0HgOdTQv8MUJnAg7dxBSEKMP8FMVCWiMgqS5N6dpVm8OX2HrKvv+1u/Lboi/ImZIYvCIst80JnJnO8FxA==","signatures":[{"sig":"MEQCICU0HCfxXlHRwPw0kjdXWTjCHIaODx/R4HqZmJmWBLNiAiAgtIFePhadDIs2jiKUXMou1CP351vT5g1rDb9xBlqBXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":544113},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"394823daf70ee9c821a92b8d16c1b774fb6d3100","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.1_1770537983247_0.2467471662572347","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.2":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.2","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.2","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"0e7b713795cc43fdaa75114e228934e20ede0b1d","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.2.tgz","fileCount":8,"integrity":"sha512-geti9Sv6W9oUU9VXi5CthxEsasCsEgUI4WpjfnkvQITLAcHPdrJfinonyAiOPUOobHab/XN0Fw004EpsEMkCqg==","signatures":[{"sig":"MEUCIQDyhGI614ydbID1X2gI2vdeFbe2zwveDBKIWHm3q4qafwIgMGrDQAUnxz/+WGihzL/lEZpHpotmog8imt//PfRL3e8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":544073},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"23389f166875ba2598255b0773bdd1626487342f","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.2_1770567175191_0.48823954071451414","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.3":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.3","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.3","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"bc0edb266a404dec76f7203819eafbfd98572c69","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.3.tgz","fileCount":8,"integrity":"sha512-J6q8EenpV/hSoZ5mpTNnWjJSCwTlgOYgdBRp+Cb2//vpp0XSj3w7r/SwaC4tPhwStF7Y23i8tgt83hP+5571KQ==","signatures":[{"sig":"MEYCIQC6jZa83jMkIClr4EPVcfbkn+fnSt9YYqSsFTFjZvQSrQIhAMa7/DpHZ50hSfmDcEJunhFAAvmgCy+EcaGdcAXF4ZA2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":544073},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"87e3939e2f1d8d76231726ea0797733bf054bf1a","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.3_1770579304401_0.26573863008459164","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.4":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.4","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.4","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"a60f8d89d2a3f10fb3675a86fd71146e5f8404be","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.4.tgz","fileCount":8,"integrity":"sha512-Ew5Cd9ZFEi7dTtx11D+xqQ4DpHFsbDaHbW+NPPcGHIfs2lOaQm6o3JO6qF/ms6iiOqa4IIPwI/0OU88YiLUhsQ==","signatures":[{"sig":"MEQCIHCUGKC3K8tYmBzYKVt1GSBmTVzUrB4MeKBnzwpGVViBAiB7MXtphhKkyi/U7pQxpn+GQZdFnOvUoQz9nZ5ZWoqtdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":557311},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d807b2cd66d6411ae7f43501a096460c80c5d190","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.4_1771279047135_0.18910864304533148","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.5":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.5","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.5","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"661c4481b6170851ea6326fe48f5fea913f91118","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.5.tgz","fileCount":8,"integrity":"sha512-fDUo7HeXK+RmsBR+1hCASnUiKO1ENbKtKb/D4rh/rbTfkBSYx9CTtPvki2cxV6elHGjZ+LEEi1dyvbQMq4hPZQ==","signatures":[{"sig":"MEQCIALHKckf8XcT3KjG/OJ0z6A9DJUxPkp+uHSLPHACSDPwAiAV8goJEV2KYYVdz9+D5RiMDcxYmrTjrj6M1FX4SiI6Ng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":787561},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"d807b2cd66d6411ae7f43501a096460c80c5d190","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.5_1775587237637_0.5637654965612631","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.6":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.6","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.6","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"30587dfc205af00b9c26f49ef88c575866bcf783","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.6.tgz","fileCount":8,"integrity":"sha512-c8UegFU9EIA3KVfXXEFtLTG/Zbf+pOQCCgc45cQLlYHQC5po6/kNidZj2lM8RENMGLRfv3zc0+YHlQrpHL2F3A==","signatures":[{"sig":"MEYCIQCZB6VDhUh9k2QLcXrMyMVg5IBq3CmuyOHD0ken92sWLwIhAJfGfqDoojiTdZNaL6oxRhESqL/5L1t6UIr4YGCIhPrM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":790191},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"e3d92afd23e75e6c0eee36807b3bfabd5e2a5eda","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs","prepublishOnly":"node -e \"const fs=require('fs'); if(!fs.readFileSync('dist/index.js','utf8').includes('getExternalUserId')){console.error('Refusing publish: dist missing beta.6 patches'); process.exit(1)}\"","publish:public":"npm publish --access public"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.6_1779059665594_0.2842453863207721","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.7":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.7","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.7","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"8f751b4e34e0de55ede86ca7592ec6356a8cc5e7","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.7.tgz","fileCount":8,"integrity":"sha512-oF4LAJtTMZJoC3FfnArjuXpBa5rUJZVHvNHHMVcYZFsweCvBAHrkvImPdISKA7OuNvDVVchDC61c7CDBi9ZVBg==","signatures":[{"sig":"MEYCIQDbkDlHtV6E3wUddksMymKldPjA/rXz4Uaqt7HJQMiPUQIhANwWaMoBj07nydDYKKGS3YgQIWE8Lsp5l/tXTITaW9EM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":799900},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"166524e69b17f668ef355f5808f36f6fc26de629","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs","prepublishOnly":"node -e \"const fs=require('fs'); if(!fs.readFileSync('dist/index.js','utf8').includes('markRead')){console.error('Refusing publish: dist not freshly built (missing markRead) — run npm run build'); process.exit(1)}\"","publish:public":"npm publish --access public"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.7_1784551481237_0.19544130380803582","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.8":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.8","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.8","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"7a5a0bac790c1954cef04f0e6f80422acd58e617","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.8.tgz","fileCount":8,"integrity":"sha512-l/sR05NORNBo3QoATK3GKFHuC5I+9Tx5t58pu6m9rThpZqPukJAnJyDWY0r3WKCO+E8D1vsGFVWH1TfVniLhqA==","signatures":[{"sig":"MEYCIQCEfgNTw/Hz9Qfg3Lim4i6JbM9jMt73/4X99ggoeChB8AIhAN5Dt/mBigDvNSAzt0lYaoubbLsBoCcx45Ec20nqGu2+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":805788},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"aa0ca99d7abf3c42b246d6c34104bc183e3ed178","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs","prepublishOnly":"node -e \"const fs=require('fs'); if(!fs.readFileSync('dist/index.js','utf8').includes('markRead')){console.error('Refusing publish: dist not freshly built (missing markRead) — run npm run build'); process.exit(1)}\"","publish:public":"npm publish --access public"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.8_1784924310982_0.7551016703473017","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."},"0.1.0-beta.9":{"name":"@chaterafrikang/sdk","version":"0.1.0-beta.9","keywords":["chatafrika","sdk","chat","websocket","realtime"],"author":"","license":"UNLICENSED","_id":"@chaterafrikang/sdk@0.1.0-beta.9","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"dist":{"shasum":"fa859546000d064b3afaa697fdf98e91a1c42e52","tarball":"https://registry.npmjs.org/@chaterafrikang/sdk/-/sdk-0.1.0-beta.9.tgz","fileCount":8,"integrity":"sha512-rvIi0D52MlekkKzXb9AdWkZW1Mm5XuetCj5fpzMm5SkmTYkO9fjb5GfTobGVtvm7HWKNkJqeuRYvtvBj92HrUA==","signatures":[{"sig":"MEYCIQDv0Y+76vfA0aVJy16PrxplKHktf0Hah+1ibRCJxP+OOwIhAOkYzQas6/TWLzBYCDOEbmPmvOj8++CgDrEYKUA3m5aa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":866146},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">= 18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"gitHead":"7d6d36589962c082ee3ab0a7bb01c98e10851b45","scripts":{"dev":"tsup --watch","build":"tsup","clean":"rm -rf dist","test:live":"node test/live-test.mjs","typecheck":"tsc --noEmit","test:quick":"node test/quick-test.mjs","prepublishOnly":"node -e \"const fs=require('fs'); if(!fs.readFileSync('dist/index.js','utf8').includes('markRead')){console.error('Refusing publish: dist not freshly built (missing markRead) — run npm run build'); process.exit(1)}\"","publish:public":"npm publish --access public"},"_npmUser":{"name":"chaterafrikang","email":"info@chaterafrika.com"},"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"_npmVersion":"10.9.2","description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","directories":{},"_nodeVersion":"23.11.0","dependencies":{"ws":"^8.18.3","uuid":"^10.0.0","@types/ws":"^8.18.1","eventemitter3":"^5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","typescript":"^5.1.3","@types/node":"^22.10.2","@types/uuid":"^10.0.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0-beta.9_1784994534403_0.8878875709468521","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Renamed to @vocantly/sdk — please migrate. This package will not receive further updates."}},"time":{"created":"2026-01-25T12:13:52.525Z","modified":"2026-09-25T20:55:17.893Z","0.1.0-beta.0":"2026-01-25T12:13:52.777Z","0.1.0-beta.1":"2026-02-08T08:06:23.420Z","0.1.0-beta.2":"2026-02-08T16:12:55.369Z","0.1.0-beta.3":"2026-02-08T19:35:04.558Z","0.1.0-beta.4":"2026-02-16T21:57:27.309Z","0.1.0-beta.5":"2026-04-07T18:40:37.804Z","0.1.0-beta.6":"2026-05-17T23:14:25.758Z","0.1.0-beta.7":"2026-07-20T12:44:41.389Z","0.1.0-beta.8":"2026-07-24T20:18:31.154Z","0.1.0-beta.9":"2026-07-25T15:48:54.570Z"},"bugs":{"url":"https://github.com/yourorg/chatafrika-js-sdk/issues"},"license":"UNLICENSED","homepage":"https://github.com/yourorg/chatafrika-js-sdk#readme","keywords":["chatafrika","sdk","chat","websocket","realtime"],"repository":{"url":"git+https://github.com/yourorg/chatafrika-js-sdk.git","type":"git"},"description":"Headless JavaScript SDK for ChatAfrika chat, presence, typing, and support features","maintainers":[{"name":"chaterafrikang","email":"info@chaterafrika.com"}],"readme":"# @chatafrika/sdk\n\nHeadless JavaScript SDK for ChatAfrika chat, presence, typing, and support features.\n\n## Installation\n\n```bash\nnpm install @chatafrika/sdk\n```\n\n## Quick Start\n\nYour **backend** issues SDK tokens via `POST /api/v1/apps/:appId/tokens` (JWT or API key). Your **frontend** receives only the **token**—never App ID, public key, or secret key. See the ChatAfrika API docs for **Issue SDK Token** (`POST /apps/:id/tokens`).\n\n```typescript\nimport { ChatAfrika } from '@chatafrika/sdk';\n\n// token from your backend—never use keys in the frontend\nconst sdk = new ChatAfrika({\n  wsUrl: 'wss://ws.dev.chaterafrika.com/ws',\n  token,\n  debug: true,\n});\n\nawait sdk.connect();\n\nconst convo = sdk.conversations.get('conv-123');\nawait sdk.conversations.join('conv-123');\n\nconvo.on('message', (msg) => {\n  console.log('Message:', msg.content);\n});\n\nconvo.sendMessage('Hello!');\n```\n\n## Features\n\n- ✅ WebSocket transport with auto-reconnection\n- ✅ Optimistic message updates\n- ✅ Message deduplication & reconciliation\n- ✅ Typing indicators with auto-expiry\n- ✅ Presence tracking\n- ✅ Read receipts lifecycle\n- ✅ Support session semantics (customer/agent roles)\n- ✅ Event-driven architecture\n- ✅ TypeScript support\n\n## Development\n\n```bash\nnpm install\nnpm run build\nnpm run typecheck\nnpm run test:quick  # Quick test against real server\n```\n\n## Testing\n\nSee [TESTING.md](./TESTING.md) for detailed testing guide.\n\nQuick test (use a token from your backend, e.g. `POST /apps/:id/tokens`):\n```bash\nWS_URL=ws://localhost:8080/ws SDK_TOKEN=<token-from-backend> npm run test:quick\n```\n\n## API Documentation\n\n### Core\n\n- `ChatAfrika` - Main SDK class\n- `ConnectionState` - Connection state enum\n- `ClientConfig` - Configuration interface\n\n### Conversations\n\n- `sdk.conversations.get(id)` - Get conversation\n- `sdk.conversations.join(id)` - Join conversation\n- `sdk.conversations.leave(id)` - Leave conversation\n- `sdk.conversations.list({ externalUserId })` - List EXTERNAL conversations (inbox). Requires `apiUrl` and `apiKey`+`apiSecret` or `getRestHeaders` in config.\n- `convo.fetchMessages({ externalUserId, cursor?, limit? })` - Fetch paginated message history for an EXTERNAL conversation. Same config as `list()`.\n\n### Support Sessions\n\n- `sdk.support.get(id, role?)` - Get support session\n- `session.isCustomer()` - Check if customer\n- `session.isAgent()` - Check if agent\n- `session.getStatus()` - Get session status\n\n### Events\n\nAll classes extend EventEmitter. Listen to:\n- `message` - New message received\n- `typing` - Typing indicator\n- `presence` - Presence update\n- `receipt` - Receipt update\n- `assigned` - Support session assigned\n- `bot_takeover` - Bot took over\n- `closed` - Support session closed\n\n## Publish for testing\n\nBase URL for **dev**: **https://dev.chaterafrika.com/** (API: `https://dev.chaterafrika.com/api/v1`, WebSocket: `wss://ws.dev.chaterafrika.com/ws`).\n\nSee **[PUBLISH_FOR_TESTING.md](./PUBLISH_FOR_TESTING.md)** for:\n\n- Publishing to npm with `--tag beta` (`npm install @chatafrika/sdk@beta`)\n- Installing from Git or local path (no publish)\n- Using `npm link` for local development\n- Dev vs local URLs\n\n## Documentation\n\n- [Capabilities & Usage Guide](./CAPABILITIES.md) - What the SDK can do and where to use it\n- [Testing Guide](./TESTING.md) - How to test the SDK\n- [Publish for testing](./PUBLISH_FOR_TESTING.md) - Publish / install SDK for testing with dev\n\n## License\n\nUNLICENSED\n","readmeFilename":"README.md"}