{"_id":"@carbide-ifx/rpc-sdk","name":"@carbide-ifx/rpc-sdk","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@carbide-ifx/rpc-sdk","version":"0.1.0","description":"Protocol-neutral TypeScript SDK runtime for Carbide RPC services","license":"Apache-2.0","homepage":"https://github.com/carbide-ifx/carbide","repository":{"type":"git","url":"git+https://github.com/carbide-ifx/carbide.git","directory":"typescript/rpc-sdk"},"publishConfig":{"access":"public"},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.json","test":"npm run build","test:generated":"tsc -p ../tsconfig.generated.json"},"devDependencies":{"@types/node":"26.1.2","typescript":"7.0.2"},"_id":"@carbide-ifx/rpc-sdk@0.1.0","gitHead":"a956511324818c25c780ad4bd532213921ff5734","bugs":{"url":"https://github.com/carbide-ifx/carbide/issues"},"_nodeVersion":"24.7.0","_npmVersion":"11.5.1","dist":{"integrity":"sha512-JZydzbrUE9sAV0iiY1X8FJ8cFKzmNqtw1b7IcL5e6hnGfH2CNmx15kuCAzinUPH2PXbFcMTUBgjEnsErt6V3PQ==","shasum":"4293dd8d4a701bfa1534c38ab777781ac71b770f","tarball":"https://registry.npmjs.org/@carbide-ifx/rpc-sdk/-/rpc-sdk-0.1.0.tgz","fileCount":11,"unpackedSize":23595,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDZgRYMl7SJ+jWhAHhsvKAYwk/9QxG1oFh87e0cL/bXXAiBmJnx5cGSG2mItmnapzJs7ZdVXLtcHwoTl90yRB0hTJQ=="}]},"_npmUser":{"name":"arvearve","email":"mail@arve.in"},"directories":{},"maintainers":[{"name":"arvearve","email":"mail@arve.in"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rpc-sdk_0.1.0_1788627427124_0.41169507645867665"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-05T16:57:06.927Z","0.1.0":"2026-09-05T16:57:07.254Z","modified":"2026-09-05T16:57:07.547Z"},"maintainers":[{"name":"arvearve","email":"mail@arve.in"}],"description":"Protocol-neutral TypeScript SDK runtime for Carbide RPC services","homepage":"https://github.com/carbide-ifx/carbide","repository":{"type":"git","url":"git+https://github.com/carbide-ifx/carbide.git","directory":"typescript/rpc-sdk"},"bugs":{"url":"https://github.com/carbide-ifx/carbide/issues"},"license":"Apache-2.0","readme":"# @carbide-ifx/rpc-sdk\n\nProtocol-neutral TypeScript runtime used by service SDKs generated by\n`ifx.rpc.typescript.ksp`.\n\nThis package contains `IfxBinding`, the generated SDK constructor contract,\nservice descriptions, JSON serialization, headers, and outbound interceptors. It\ndoes not contain a network protocol. Install one of the explicit protocol\npackages alongside it:\n\n- `@carbide-ifx/rpc-sdk-rsocket`\n- `@carbide-ifx/rpc-sdk-jsonrpc`\n- `@carbide-ifx/rpc-sdk-http`\n\nGenerated SDKs accept any `IfxBinding`, and expose a static service address\nused by the protocol-specific connection factories:\n\n```ts\nimport { RSocketSdk } from \"@carbide-ifx/rpc-sdk-rsocket\";\nimport { JsonRpcSdk } from \"@carbide-ifx/rpc-sdk-jsonrpc\";\nimport { IProductAccessSdk } from \"./generated/IProductAccess\";\n\nconst rsocket = await RSocketSdk.connect(IProductAccessSdk, \"ws://localhost:7000\");\nconst jsonRpc = await JsonRpcSdk.connect(IProductAccessSdk, \"http://localhost:7001\");\n```\n\nAll protocol SDK entrypoints accept the same `headers` and `interceptors` options, so\ncross-cutting message behavior is independent of the selected wire protocol.\n\n## Development\n\n```shell\ncd typescript\nnpm ci\nnpm test --workspace @carbide-ifx/rpc-sdk\nnpm run test:generated\n```\n","readmeFilename":"README.md","_rev":"1-4c17beedf8b693181fde0d9b5c67db09"}