{"_id":"@ar-packages-changeit/sdk-dogecoin","_rev":"3-54bad776ce5bdaf3484f5b62bfb34b88","name":"@ar-packages-changeit/sdk-dogecoin","dist-tags":{"latest":"0.0.1","develop":"0.0.1-ab7d7d42"},"versions":{"0.0.0":{"name":"@ar-packages-changeit/sdk-dogecoin","version":"0.0.0","author":{"name":"Rosen Team"},"license":"MIT","_id":"@ar-packages-changeit/sdk-dogecoin@0.0.0","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/rosen-sdk#readme","bugs":{"url":"https://github.com/rosen-bridge/rosen-sdk/issues"},"dist":{"shasum":"63248331edf23ff7d5441b50736bddb5d2667eab","tarball":"https://registry.npmjs.org/@ar-packages-changeit/sdk-dogecoin/-/sdk-dogecoin-0.0.0.tgz","fileCount":17,"integrity":"sha512-g99yG7N2uP3sHoHvSajcmyyP0Zw1+F9p5sY5cy/ItLvOwpdnCVQ6dGS5W3Q4yNCVZD9/1p+KdENMDdE6iRNveA==","signatures":[{"sig":"MEYCIQCqsYk5+xL+IEiSatxj/eKZirLqW8KVzFsSrNbgDcJGfQIhAL25emMdlbg6K1V1dYiL/Gc5wdPHFEc5Cy2MG6ksX0eu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33670},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.18.0"},"gitHead":"8c64365068e3817da37ae50d42f9810c57e213b9","scripts":{"lint":"eslint --fix . && npm run prettify","test":"NODE_OPTIONS='--import tsx' vitest","build":"tsc --build tsconfig.build.json","clean":"rimraf dist && rimraf tsconfig.build.tsbuildinfo","release":"npm run clean && npm run build && npm run test -- --run && npm publish --access public","coverage":"npm run test -- --coverage","prettify":"prettier --write . --ignore-path ../../.gitignore","lint:check":"eslint . && npm run prettify:check","type-check":"tsc --noEmit","prettify:check":"prettier --check . --ignore-path ../../.gitignore"},"_npmUser":{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"},"repository":{"url":"git+https://github.com/rosen-bridge/rosen-sdk.git","type":"git"},"_npmVersion":"11.6.2","description":"Dogecoin chain specific functions of Rosen SDK to interact with and create transactions on Rosen Bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"bitcoinjs-lib":"^6.1.7","@rosen-bridge/tokens":"^4.0.1","@rosen-bridge/sdk-abstract":"^0.0.0","@rosen-bridge/sdk-constant":"^0.0.0","@rosen-bridge/abstract-logger":"^3.0.1","@rosen-bridge/bitcoin-utxo-selection":"^2.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","vitest":"^3.1.4","@vitest/coverage-istanbul":"^3.1.4","@rosen-bridge/address-codec":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/sdk-dogecoin_0.0.0_1763561668982_0.0690296438262219","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-ab7d7d42":{"name":"@ar-packages-changeit/sdk-dogecoin","version":"0.0.1-ab7d7d42","author":{"name":"Rosen Team"},"license":"MIT","_id":"@ar-packages-changeit/sdk-dogecoin@0.0.1-ab7d7d42","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/rosen-sdk#readme","bugs":{"url":"https://github.com/rosen-bridge/rosen-sdk/issues"},"dist":{"shasum":"6fa2507e0d70359dc99526ee5eaffe920d3ffaca","tarball":"https://registry.npmjs.org/@ar-packages-changeit/sdk-dogecoin/-/sdk-dogecoin-0.0.1-ab7d7d42.tgz","fileCount":18,"integrity":"sha512-KvLAN/mPIWNVosbGzJh89n8Z+EhMOrWrLxZC/2bmJIOcA1pNbwVwKL4do7k4d67+gUhN+nUX3ZvR4SkAc5HPdw==","signatures":[{"sig":"MEUCIFapXaYLVwvmZLSX1Uv6PHz2YbHkpoppYZ9MPPnqdrxDAiEA/hQ9i798SLomQlCBCds9pynoFmjg6OKIwjwnC5/kIMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33763},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=22.18.0"},"gitHead":"ab7d7d42d34c23397629e2b2c6663442f6c2309a","scripts":{"lint":"eslint --fix . && npm run prettify","test":"NODE_OPTIONS='--import tsx' vitest","build":"tsc --build tsconfig.build.json","clean":"rimraf dist && rimraf tsconfig.build.tsbuildinfo","release":"npm run clean && npm run build && npm run test -- --run && npm publish --access public","coverage":"npm run test -- --coverage","prettify":"prettier --write . --ignore-path ../../.gitignore","lint:check":"eslint . && npm run prettify:check","type-check":"tsc --noEmit","prettify:check":"prettier --check . --ignore-path ../../.gitignore"},"_npmUser":{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"},"repository":{"url":"git+https://github.com/rosen-bridge/rosen-sdk.git","type":"git"},"_npmVersion":"11.6.2","description":"Dogecoin chain specific functions of Rosen SDK to interact with and create transactions on Rosen Bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"bitcoinjs-lib":"^6.1.7","@rosen-bridge/tokens":"^4.0.1","@rosen-bridge/sdk-abstract":"^0.0.0","@rosen-bridge/sdk-constant":"^0.0.0","@rosen-bridge/abstract-logger":"^3.0.1","@rosen-bridge/bitcoin-utxo-selection":"^2.0.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"tsx":"^4.20.6","vitest":"^3.1.4","@vitest/coverage-istanbul":"^3.1.4","@rosen-bridge/address-codec":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/sdk-dogecoin_0.0.1-ab7d7d42_1763561959016_0.5806128648239091","host":"s3://npm-registry-packages-npm-production"}},"0.0.1":{"name":"@ar-packages-changeit/sdk-dogecoin","version":"0.0.1","description":"Dogecoin chain specific functions of Rosen SDK to interact with and create transactions on Rosen Bridge","repository":{"type":"git","url":"git+https://github.com/rosen-bridge/rosen-sdk.git"},"license":"MIT","author":{"name":"Rosen Team"},"type":"module","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc --build tsconfig.build.json","clean":"rimraf dist && rimraf tsconfig.build.tsbuildinfo","coverage":"npm run test -- --coverage","lint":"eslint --fix . && npm run prettify","lint:check":"eslint . && npm run prettify:check","prettify":"prettier --write . --ignore-path ../../.gitignore","prettify:check":"prettier --check . --ignore-path ../../.gitignore","release":"npm run clean && npm run build && npm run test -- --run && npm publish --access public","test":"NODE_OPTIONS='--import tsx' vitest","type-check":"tsc --noEmit"},"dependencies":{"@rosen-bridge/abstract-logger":"^3.0.1","@rosen-bridge/bitcoin-utxo-selection":"^2.0.1","@ar-packages-changeit/sdk-abstract":"^0.0.1","@ar-packages-changeit/sdk-constant":"^0.0.1","@rosen-bridge/tokens":"^4.0.1","bitcoinjs-lib":"^6.1.7"},"devDependencies":{"@rosen-bridge/address-codec":"^1.0.1","@vitest/coverage-istanbul":"^3.1.4","tsx":"^4.20.6","vitest":"^3.1.4"},"engines":{"node":">=22.18.0"},"gitHead":"caab3cbec891a1ff9894f92308b9ad2b2da72166","_id":"@ar-packages-changeit/sdk-dogecoin@0.0.1","bugs":{"url":"https://github.com/rosen-bridge/rosen-sdk/issues"},"homepage":"https://github.com/rosen-bridge/rosen-sdk#readme","_nodeVersion":"22.18.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-wc5qQfjnOSv55CosMHcwooL4rqv52ny0LoTqlCpzAq6AfkYIzFnTv+SdHyhVi01WfkCOo66LdAZ4JnSob2K91Q==","shasum":"dfe506cbc1a25ba3ef41584da99f6e539695404e","tarball":"https://registry.npmjs.org/@ar-packages-changeit/sdk-dogecoin/-/sdk-dogecoin-0.0.1.tgz","fileCount":19,"unpackedSize":96728,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDQg7E9CTd/mqDJowzBEhco5DHJyC+gYR/DdVV82lVqagIhAN6igAIHUFsgB1TSDuJ8zWdEbBPfI8uA1Hmp2LR4cvnB"}]},"_npmUser":{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"},"directories":{},"maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk-dogecoin_0.0.1_1763574235540_0.9830994423981871"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-19T14:14:28.858Z","modified":"2025-11-19T17:43:55.939Z","0.0.0":"2025-11-19T14:14:29.138Z","0.0.1-ab7d7d42":"2025-11-19T14:19:19.210Z","0.0.1":"2025-11-19T17:43:55.724Z"},"bugs":{"url":"https://github.com/rosen-bridge/rosen-sdk/issues"},"author":{"name":"Rosen Team"},"license":"MIT","homepage":"https://github.com/rosen-bridge/rosen-sdk#readme","repository":{"type":"git","url":"git+https://github.com/rosen-bridge/rosen-sdk.git"},"description":"Dogecoin chain specific functions of Rosen SDK to interact with and create transactions on Rosen Bridge","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"readme":"# @ar-packages-changeit/sdk-dogecoin\n\n## Table of contents\n\n- [@ar-packages-changeit/sdk-dogecoin](#rosen-bridgesdk-dogecoin)\n  - [Table of contents](#table-of-contents)\n  - [Introduction](#introduction)\n  - [Installation](#installation)\n  - [Usage](#usage)\n    - [Initialize the SDK](#initialize-the-sdk)\n    - [Generate Lock Transactions](#generate-lock-transactions)\n    - [Constants and Types](#constants-and-types)\n    - [Error handling](#error-handling)\n\n## Introduction\n\nThis package provides Dogecoin chain-specific functionality for the Rosen Bridge SDK, enabling you to interact with and create transactions on the Rosen Bridge for the Dogecoin blockchain.\n\n## Installation\n\nnpm:\n\n```sh\nnpm i @ar-packages-changeit/sdk-dogecoin\n```\n\nyarn:\n\n```sh\nyarn add @ar-packages-changeit/sdk-dogecoin\n```\n\n## Usage\n\n### Initialize the SDK\n\nTo use the SDK, initialize an instance of `DogecoinRosenChainSDK` with your token configuration and lock address:\n\n```typescript\nimport { NETWORKS } from '@ar-packages-changeit/sdk-constant';\nimport { DogecoinRosenChainSDK } from '@ar-packages-changeit/sdk-dogecoin';\n\nimport { TokenMap } from '@rosen-bridge/tokens';\n\nconst rosenTokens = [\n  {\n    doge: {\n      tokenId: 'doge',\n      name: 'DOGE',\n      decimals: 8,\n      type: 'native',\n      residency: 'native',\n      extra: {},\n    },\n    ergo: {\n      tokenId:\n        '21d2cd3c488d530bb7d2c8f3e9c1f495ee5a4f30ab798b83b481c978ece75f83',\n      name: 'rpnDoge',\n      decimals: 6,\n      type: 'EIP-004',\n      residency: 'wrapped',\n      extra: {},\n    },\n    ethereum: {\n      tokenId: '0xc864ddd4ae02d8fea194016e76ff5ab77c8aa769',\n      name: 'rpnDoge',\n      decimals: 6,\n      type: 'ERC-20',\n      residency: 'wrapped',\n      extra: {},\n    },\n    binance: {\n      tokenId: '0xfa0f85673a4a83ea19d09448e02f3f98e82f1a6d',\n      name: 'rpnDoge',\n      decimals: 6,\n      type: 'ERC-20',\n      residency: 'wrapped',\n      extra: {},\n    },\n    cardano: {\n      tokenId:\n        '92210c500a405bc2c2b6c9666fe74cb4f2ac26251968e3e779887b63.72706e446f6765',\n      name: 'rpnDoge',\n      decimals: 6,\n      type: 'CIP26',\n      residency: 'wrapped',\n      extra: {\n        policyId: '92210c500a405bc2c2b6c9666fe74cb4f2ac26251968e3e779887b63',\n        assetName: '72706e446f6765',\n      },\n    },\n  },\n];\n\nconst tokenMap = new TokenMap();\nawait tokenMap.updateConfigByJson(rosenTokens);\n\nconst lockAddress = 'DLTNK...'; // Rosen Doge lock address\n\nconst sdk = new DogecoinRosenChainSDK(\n  tokenMap, // TokenMap instance\n  lockAddress, // Lock address for bridge\n);\n```\n\n### Generate Lock Transactions\n\nYou can generate an unsigned lock transaction for bridging doge from Dogecoin to another chain:\n\n```typescript\nconst unsignedTx = await sdk.generateLockTransaction(\n  'doge', // Token ID on Dogecoin (only 'doge' is supported)\n  NETWORKS.YOUR_TARGET_CHAIN, // Target chain (e.g., NETWORKS.ERGO)\n  'toEncodedAddress', // Recipient address on target chain (encoded)\n  'fromAddress', // Sender's Dogecoin address\n  1_500_000n, // Amount to bridge\n  9_551n, // Bridge fee\n  153n, // Network fee\n  utxoIterator, // Iterator or async iterator of available Dogecoin UTxOs\n  {\n    feeRatio: 4.968, // fee ratio for estimation,\n    txToHex: Record<string, string>, // Map of transaction IDs to their hex representation for nonWitnessUtxo\n  },\n);\n\n// The result is an object containing the unsigned PSBT (base64/hex encoded) and related data.\nconsole.log(unsignedTx);\n```\n\n- `utxoIterator` should yield Dogecoin UTxOs covering the required amount.\n- The SDK does not sign transactions; you must sign and submit the transaction using your own wallet or tools.\n\n### Constants and Types\n\nThe SDK exports several useful constants and types:\n\n- Types such as `DogecoinUtxo`, etc., are available for strong typing of transaction data.\n\n### Error handling\n\nThe SDK may throw the following errors:\n\n- `UnsupportedTokenException`: Thrown if the provided token is not supported (only 'doge' is supported).\n- `MissingNonWitnessUtxoError`: Thrown if a non-witness UTxO is required but not provided hex of tx.\n\nExample:\n\n```typescript\nimport {\n  UnsupportedTokenException,\n  MissingNonWitnessUtxoError,\n} from '@ar-packages-changeit/sdk-dogecoin';\n\ntry {\n  // ... call generateLockTransaction ...\n} catch (e) {\n  if (e instanceof UnsupportedTokenException) {\n    // Handle unsupported token\n  } else if (e instanceof MissingNonWitnessUtxoError) {\n    // Handle missing non-witness UTXO\n  } else {\n    throw e;\n  }\n}\n```\n\n---\n\n**Note:**\n\n- You must provide a realistic token configuration and valid lock address for your environment.\n- Transaction signing is not handled by this SDK; you must provide UTxOs and sign the transaction as appropriate for your application.\n","readmeFilename":"README.md"}