{"_id":"@ainexium/storage","name":"@ainexium/storage","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@ainexium/storage","version":"0.1.0","description":"Official JavaScript SDK for NEXIUM Storage","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"build":"tsup src/index.ts --format cjs,esm --dts --clean","dev":"tsup src/index.ts --format cjs,esm --dts --watch"},"devDependencies":{"tsup":"^8.0.0","typescript":"^5.0.0"},"keywords":["nexium","storage","s3","r2","file-upload"],"license":"MIT","_id":"@ainexium/storage@0.1.0","_nodeVersion":"24.14.0","_npmVersion":"11.11.0","dist":{"integrity":"sha512-M6lviJLQx17e1VIT8HZBB2/ZGfKvREQaQQPDl8NlUd0EryD0fVXpJzcHrgYivkPfujm/wjSCNwYyDaB+lbjDrw==","shasum":"7758e661f54d728711d760fd98aa7ed2e1e57790","tarball":"https://registry.npmjs.org/@ainexium/storage/-/storage-0.1.0.tgz","fileCount":6,"unpackedSize":14675,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEu/1x6Rx2EgFQWua8q/2MUcaAHv76IiNTfBZEAEGqIBAiEAxIf8tbcVyZi12TskTpNi7Pkd96uSvkgPlmO/0VFKkWI="}]},"_npmUser":{"name":"nexiumai","email":"ai.nexium@gmail.com"},"directories":{},"maintainers":[{"name":"nexiumai","email":"ai.nexium@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/storage_0.1.0_1787185379172_0.4976934027788593"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-20T00:22:59.034Z","0.1.0":"2026-08-20T00:22:59.342Z","modified":"2026-08-20T00:22:59.557Z"},"maintainers":[{"name":"nexiumai","email":"ai.nexium@gmail.com"}],"description":"Official JavaScript SDK for NEXIUM Storage","keywords":["nexium","storage","s3","r2","file-upload"],"license":"MIT","readme":"# @ainexium/storage\n\nOfficial JavaScript/TypeScript SDK for [NEXIUM Storage](https://nexium.ai) — upload, serve and manage files via a simple API.\n\n## Install\n\n```bash\nnpm install @ainexium/storage\n```\n\n## Quick start\n\n```ts\nimport { NexiumStorage } from \"@ainexium/storage\";\n\nconst storage = new NexiumStorage({ apiKey: process.env.NEXIUM_API_KEY });\n\n// Upload (with optional progress tracking)\nconst file = await storage.upload(bucketId, fileBlob, \"photo.jpg\", {\n  onProgress: (pct) => console.log(pct + \"%\"),\n});\nconsole.log(file.url);\n\n// List & search\nconst { files } = await storage.list(bucketId, { search: \"photo\" });\n\n// Download URL\nconst url = await storage.download(file.id);\n\n// Rename\nawait storage.rename(file.id, \"new-name.jpg\");\n\n// Delete\nawait storage.delete(file.id);\n```\n\n## Webhook verification\n\n```ts\nimport { NexiumStorage } from \"@ainexium/storage\";\n\n// Express example\napp.post(\"/webhook\", express.raw({ type: \"application/json\" }), async (req, res) => {\n  try {\n    const payload = await NexiumStorage.verifyWebhook(\n      req.body,\n      req.headers[\"x-nexium-signature\"] as string,\n      process.env.NEXIUM_WEBHOOK_SECRET!,\n    );\n    console.log(payload);\n    res.sendStatus(200);\n  } catch {\n    res.sendStatus(401);\n  }\n});\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-879422643545f1205a8b1f9d8bf2573e"}