{"_id":"@airdropprotocol/sdk","_rev":"2-a020d00268c486e96b4d7ead4c0bef3b","name":"@airdropprotocol/sdk","dist-tags":{"latest":"0.3.2"},"versions":{"0.3.1":{"name":"@airdropprotocol/sdk","version":"0.3.1","keywords":["solana","airdrop","merkle-distributor","jupiter","claim","sdk"],"author":{"name":"airdrop protocol"},"license":"MIT","_id":"@airdropprotocol/sdk@0.3.1","maintainers":[{"name":"mppfinance","email":"mppfinanc3@outlook.com"}],"homepage":"https://github.com/airdropprotocol/airdrop-protocol/tree/main/packages/sdk#readme","bugs":{"url":"https://github.com/airdropprotocol/airdrop-protocol/issues"},"dist":{"shasum":"cb4033559cf5caf76fb7cbcb2bb6ba6a2ee1c04f","tarball":"https://registry.npmjs.org/@airdropprotocol/sdk/-/sdk-0.3.1.tgz","fileCount":23,"integrity":"sha512-9evwruUnMLtkRQDGDswdf9N+8+J8Y6u1oLDsPvDvpgBik0+j1QsUyIhS27LfxDQFs/Qe1Yhgdh4Iccg0J7tEPg==","signatures":[{"sig":"MEQCID3wgliMYF1iadcFZZSHwSf4lNCkmPqGBFZRqTZquU9vAiAxfsc+jY7+y22dukaT5F4Di39nRtrInMrlen5r4hreqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28472},"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":"73dd5c20e37d37ff4db9a63dbcdbc6ab940d6ebf","scripts":{"test":"vitest run","build":"tsc","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"mppfinance","email":"mppfinanc3@outlook.com"},"repository":{"url":"git+https://github.com/airdropprotocol/airdrop-protocol.git","type":"git","directory":"packages/sdk"},"_npmVersion":"10.8.2","description":"Client SDK for airdrop-protocol: proof lookup, claim transaction building, types. Framework-agnostic.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"buffer":"^6.0.3","js-sha256":"^0.11.0","keccak256":"^1.0.6","@solana/spl-token":"^0.4.8"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.5","typescript":"^5.5.3","@types/node":"^20.14.10","merkletreejs":"^0.4.0","@solana/web3.js":"^1.95.3"},"peerDependencies":{"@solana/web3.js":"^1.95.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.3.1_1776559558880_0.6679516841079434","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@airdropprotocol/sdk","version":"0.3.2","description":"Client SDK for airdrop-protocol: proof lookup, claim transaction building, types. Framework-agnostic.","license":"MIT","type":"module","author":{"name":"airdrop protocol"},"homepage":"https://github.com/airdropprotocol/airdrop-protocol/tree/main/packages/sdk#readme","repository":{"type":"git","url":"git+https://github.com/airdropprotocol/airdrop-protocol.git","directory":"packages/sdk"},"bugs":{"url":"https://github.com/airdropprotocol/airdrop-protocol/issues"},"keywords":["solana","airdrop","merkle-distributor","jupiter","claim","sdk"],"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc","typecheck":"tsc --noEmit","test":"vitest run","test:watch":"vitest"},"engines":{"node":">=18"},"peerDependencies":{"@solana/web3.js":"^1.95.0"},"dependencies":{"@solana/spl-token":"^0.4.8","buffer":"^6.0.3","js-sha256":"^0.11.0","keccak256":"^1.0.6"},"devDependencies":{"@solana/web3.js":"^1.95.3","@types/node":"^20.14.10","merkletreejs":"^0.4.0","typescript":"^5.5.3","vitest":"^2.0.5"},"_id":"@airdropprotocol/sdk@0.3.2","gitHead":"2a917200777ef4bc3ec5c3d9795cc4a0d8884b17","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-HXn05ryiDWruDMWvKGPn/8ouE46vFt7oWSAWE2XnP2metCWV061y4ANMGXpqtIMUl50jb0xj27YsY+t8oXozpw==","shasum":"077259dc678c4141beae2eddf93fad51f588380e","tarball":"https://registry.npmjs.org/@airdropprotocol/sdk/-/sdk-0.3.2.tgz","fileCount":23,"unpackedSize":28472,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIA+UqHzDvufXLOKUdrLNnOe41vEpxlGBYb/vZCJu3CX/AiB57zTGstp6GjRab/NlvEUASLV21jri7lbZbil4pRqHCw=="}]},"_npmUser":{"name":"mppfinance","email":"mppfinanc3@outlook.com"},"directories":{},"maintainers":[{"name":"mppfinance","email":"mppfinanc3@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.3.2_1776601407973_0.04915306695814459"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-19T00:45:58.636Z","modified":"2026-04-19T12:23:28.243Z","0.3.1":"2026-04-19T00:45:59.027Z","0.3.2":"2026-04-19T12:23:28.142Z"},"bugs":{"url":"https://github.com/airdropprotocol/airdrop-protocol/issues"},"author":{"name":"airdrop protocol"},"license":"MIT","homepage":"https://github.com/airdropprotocol/airdrop-protocol/tree/main/packages/sdk#readme","keywords":["solana","airdrop","merkle-distributor","jupiter","claim","sdk"],"repository":{"type":"git","url":"git+https://github.com/airdropprotocol/airdrop-protocol.git","directory":"packages/sdk"},"description":"Client SDK for airdrop-protocol: proof lookup, claim transaction building, types. Framework-agnostic.","maintainers":[{"name":"mppfinance","email":"mppfinanc3@outlook.com"}],"readme":"# @airdropprotocol/sdk\n\n[![npm](https://img.shields.io/npm/v/@airdropprotocol/sdk.svg?color=cb3837&logo=npm)](https://www.npmjs.com/package/@airdropprotocol/sdk)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/airdropprotocol/airdrop-protocol/blob/main/LICENSE)\n\nFramework-agnostic client SDK for [airdrop-protocol](https://github.com/airdropprotocol/airdrop-protocol).\nFetch proofs, look up allocations, build Jupiter-compatible claim transactions.\n\n```bash\nnpm install @airdropprotocol/sdk @solana/web3.js\n```\n\n## Quickstart\n\n```ts\nimport { Connection, PublicKey } from \"@solana/web3.js\";\nimport {\n  fetchProofs,\n  lookupAllocation,\n  buildClaimTransaction,\n  isClaimed,\n} from \"@airdropprotocol/sdk\";\n\nconst proofs = await fetchProofs(\"/proofs.json\");\nconst allocation = lookupAllocation(proofs, walletPubkey.toBase58());\nif (!allocation) return \"not eligible\";\n\nconst tx = await buildClaimTransaction({\n  connection,\n  claimant: walletPubkey,\n  distributor: new PublicKey(\"...\"),\n  vault: new PublicKey(\"...\"),\n  mint: new PublicKey(proofs.mint),\n  allocation,\n});\n\nconst signed = await wallet.signTransaction(tx);\nconst sig = await connection.sendRawTransaction(signed.serialize());\n```\n\n## API\n\n**Proofs**\n- **`fetchProofs(url)`** — load a `proofs.json` from any URL. Validates shape.\n- **`lookupAllocation(proofs, owner)`** — returns `Allocation | null` with raw + UI amounts and the proof.\n\n**Merkle** (new in 0.3)\n- **`computeLeaf(index, owner, amount)`** — Jupiter-exact leaf encoding, Buffer output.\n- **`verifyProof(root, leaf, proof)`** — sorted-pair keccak256 verifier. Accepts Buffer or 0x-hex.\n\n**Claim transactions**\n- **`buildClaimTransaction(args)`** — returns a ready-to-sign `Transaction` with recent blockhash and ATA creation if needed.\n- **`buildClaimInstruction(args)`** — lower-level: just the instruction, no blockhash / no ATA logic.\n- **`isClaimed(connection, claimant, distributor)`** — checks whether the `ClaimStatus` PDA exists on-chain.\n\n**Addresses**\n- **`deriveDistributorAddress`** / **`deriveClaimStatusAddress`** — PDA helpers.\n- **`JUPITER_DISTRIBUTOR_PROGRAM_ID`** — default programId; every helper accepts an override for forks.\n\n**Formatting** (new in 0.3)\n- **`formatAmount(raw, decimals, opts?)`** — decimals-aware output with optional trim / compact / custom separators.\n- **`shortAddress(addr, head?, tail?)`** / **`shortSignature(sig, head?, tail?)`** — truncation for UI.\n- **`solscanTx(sig, cluster?)`** / **`solscanAccount(addr, cluster?)`** — explorer URL builders.\n\nFull API reference: [`docs/sdk.md`](https://github.com/airdropprotocol/airdrop-protocol/blob/main/docs/sdk.md).\n\n## License\n\nMIT\n","readmeFilename":"README.md"}