{"_id":"@alakipalaki/abstract-chain","_rev":"12-21841b9216a3f66db475506cc563a612","name":"@alakipalaki/abstract-chain","dist-tags":{"develop":"17.0.0-e2656c77","latest":"19.1.0"},"versions":{"16.0.1-305766c0":{"name":"@alakipalaki/abstract-chain","version":"16.0.1-305766c0","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@16.0.1-305766c0","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"f4b1d8025489ce2ace9abe61ba673905f795534c","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-16.0.1-305766c0.tgz","fileCount":33,"integrity":"sha512-lTY3qfkoRdYIfsgfepR7T9wceYOq9bl/ke3ewp342Mnz5OihONm/dENj6S0WiI/eiCWH2Qe3m9y3bw4+Ln5+xA==","signatures":[{"sig":"MEYCIQCKRSSu6jNx3YY55qNGI3Ioti0f6zmtSFOiZ4yE5z3zjwIhAKBIlbEF5eGCgLkN0EjSrfJZLKv5+UlADRY6AM5SRpMK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138381},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"305766c09d96ab27a352f1dc7f6545c3f35286c0","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abstract-chain_16.0.1-305766c0_1783445377368_0.9668719355450124","host":"s3://npm-registry-packages-npm-production"}},"16.0.1":{"name":"@alakipalaki/abstract-chain","version":"16.0.1","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@16.0.1","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"f431f87f5bd28e111471db57b3bf3f28a8969960","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-16.0.1.tgz","fileCount":34,"integrity":"sha512-bq0rE4HP5REXHAVJHlQyAe9Ii74RxjDKV4l2zL/sxMyOEyeubhm4IpCmkL+bEibB7D8+u8u8WVNw2bzISz1UCg==","signatures":[{"sig":"MEUCICv1/6jWIBbS/LkBT/PZfO7N6zhTCTJpFFJDCzT3hpp0AiEA/SDaqHYBAJdgI4jo+0//I5pXFjzACtP75YHSXQDulXI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":311703},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"8863ef434ee7c49bf11f23170d7c688ad971d4f8","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abstract-chain_16.0.1_1783446110711_0.5832940479070421","host":"s3://npm-registry-packages-npm-production"}},"17.0.0-193564b1":{"name":"@alakipalaki/abstract-chain","version":"17.0.0-193564b1","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@17.0.0-193564b1","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"4dd99e5a9e2b6c0add4a9b493ffeb6172498be43","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-17.0.0-193564b1.tgz","fileCount":33,"integrity":"sha512-PZ5CV8S6uUAgtLUSy3i2AneIH6Azxi8YWZOK0BQoeSB9cubrnCcSqm5eJZejLN5FyLBIFF4EGoRc26WgfbFG4g==","signatures":[{"sig":"MEYCIQC/ehb4wtKn2GOA5eZAlvRGHWFfvionrN4do+n/3XqhxwIhAKeJQJWdkxgyjWDdEeIGjtl3G7t/dUb6XGm4JkzZhicb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138420},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"193564b1e4f7a216ab614fb80b3c5a8a295ec01c","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/abstract-chain_17.0.0-193564b1_1783605150089_0.7559214682612256","host":"s3://npm-registry-packages-npm-production"}},"17.0.0-dd1cbaea":{"name":"@alakipalaki/abstract-chain","version":"17.0.0-dd1cbaea","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@17.0.0-dd1cbaea","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"bc298c3b5befcc25a0ab5ca6614490c44f419eaa","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-17.0.0-dd1cbaea.tgz","fileCount":33,"integrity":"sha512-uPqiudGN00CWYdNfK3NhrGKVJm9cM/YHn9f/1u3mdPiVcSrWOCC88eRd7XfLwyaGxOxbFP3IZhhAzzSoU079ww==","signatures":[{"sig":"MEQCIB92FKLEVcWim59r94b49439dD974KG972KZ/jOeMpSaAiBUJKvHHI+H2+lqjvs6o+/SLRSUrQCt3fooa4nxr4sjjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138420},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"dd1cbaeae6da0d1897bfe5d1d0249da7336dfa1a","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/abstract-chain_17.0.0-dd1cbaea_1783605415959_0.5770471861541808","host":"s3://npm-registry-packages-npm-production"}},"17.0.0":{"name":"@alakipalaki/abstract-chain","version":"17.0.0","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@17.0.0","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"7199891be156d4ac7715b77f8baeacf1ad5794dc","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-17.0.0.tgz","fileCount":34,"integrity":"sha512-x4UTfKGkjta3LWbaLbB8G32vxaZzFfrn4JppgeYf/UGKXxqT/YchjEjkVH+yrbie0xVuv2uXhqIp/Dl/UCX5Kw==","signatures":[{"sig":"MEYCIQD9Z3Pz5CePBHfsdSH/gYtb1B29o2VxsnXEuCda1ZK7IgIhAMnVQXExn9S1yyzCQ6t7MmHROpmL0mIZVXT22csJ9Ob3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":311742},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"a433d5d2f26de83086275cb1436353cfa8253321","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abstract-chain_17.0.0_1783606398015_0.40324049126046946","host":"s3://npm-registry-packages-npm-production"}},"18.0.0":{"name":"@alakipalaki/abstract-chain","version":"18.0.0","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@18.0.0","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"dba133d020ef16de74451f3ec8c857066b03c54c","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-18.0.0.tgz","fileCount":34,"integrity":"sha512-K7FzjGK238ifzdDRly/jqSlrsrpSjEnuxYghguMKROEM9B9wKwmlKblhXgz+1XNsKNRCEkypjk1kLIk/W8jaUQ==","signatures":[{"sig":"MEUCIQCQO3yFfhmmkcCotCKW8lXRynEGLngx0/WHeAmKdsGsQQIgd7Lylqbw5AGLZUqL38uva1VvFsZPZuwdBSNQrwHpYmU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":311798},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"120316430f7280e3710320dd54e710a798db9acc","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abstract-chain_18.0.0_1783607154097_0.3432247309778993","host":"s3://npm-registry-packages-npm-production"}},"17.0.0-f6b0db32":{"name":"@alakipalaki/abstract-chain","version":"17.0.0-f6b0db32","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@17.0.0-f6b0db32","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"8bfb20087bbe8263169073ca1ddce4b268e2b7ba","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-17.0.0-f6b0db32.tgz","fileCount":33,"integrity":"sha512-kah7dfPXMrXkS1CSA/fqGVt6OqRIKL95FqR6cKZsFOLX9JoGSJOYxtg6u6Lr97IGzK4KJuLeEo26uujhFiSx4w==","signatures":[{"sig":"MEYCIQCK5Iv/kor3aB9JxHf+wjY8mzBG0N2gfUNpMks7XOasvgIhAKRq4CxC6MDnkhwaMmrCDc5wqgHr/ZRQnUwPOI/UbysR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138420},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"f6b0db328722900603cec54ab1f3a8fba0fb19f3","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/abstract-chain_17.0.0-f6b0db32_1783607865168_0.3112681637300576","host":"s3://npm-registry-packages-npm-production"}},"17.0.0-894067a5":{"name":"@alakipalaki/abstract-chain","version":"17.0.0-894067a5","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@17.0.0-894067a5","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"d80c8f6dc3dd8c7b51cda5976d098caf53ddd0f0","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-17.0.0-894067a5.tgz","fileCount":33,"integrity":"sha512-oGH4PnmFCfelQa+y/LDk+yQjPxbw+344l/xr/n6fQEt2JdCBnDiN7rZD+cIY9caDUsQvArk+jwYXbDJUb6sPGQ==","signatures":[{"sig":"MEUCIQCV4w0yuH54GaNxAxEQK856W/CqoU8cezqH3Zw9gL6BPwIgOsF/2ZIB6W9gJZHDofEoeBkuqjsiH74YQXjeVOXO1bI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138420},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"894067a5bea2aa34f7b059f808b7099d513a7fed","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/abstract-chain_17.0.0-894067a5_1783608167718_0.7537256300549775","host":"s3://npm-registry-packages-npm-production"}},"19.0.0":{"name":"@alakipalaki/abstract-chain","version":"19.0.0","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@19.0.0","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"11fb05c9773cdd2d5c86ec6a18c81d2a444fd441","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-19.0.0.tgz","fileCount":34,"integrity":"sha512-tnsjIA+/v1yo/DEGgOZpTh1jaB4/7HLgoJ2C5vwZ/AQqR03kpHoVB6Q1HjKxcdjjw8uwwg3xwLDr5Z5e2TJiEg==","signatures":[{"sig":"MEQCIFjKysGWwIU3NpDIO2bAS+u4GyjjjASBxE3MYZlE5O7HAiA46buBoa1tOChQEwS73PnjUkpY8MKeI+/sQaohdI5yMA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":311837},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"6a30520da1187de43d54e3e84a57a30002f64d95","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abstract-chain_19.0.0_1783608584783_0.4536335999715322","host":"s3://npm-registry-packages-npm-production"}},"17.0.0-e2656c77":{"name":"@alakipalaki/abstract-chain","version":"17.0.0-e2656c77","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@17.0.0-e2656c77","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"23d01fc639cf072ef21f9d85534749a1a294cf0e","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-17.0.0-e2656c77.tgz","fileCount":33,"integrity":"sha512-sFcsh4dpeERuaxeQr+favNQo0OsRRWtG8RDIp1Y2qDweAFuFZ16xLrVD3soyXlZ7en7/WdS9xXO/cQTsZbguPQ==","signatures":[{"sig":"MEQCIEV56JVdCzhRynEMCYZ2Do+D/+AM0bSmN6clnfCIMLPAAiAJW4S9tCFkfwliiYre7tS0ddWcceqqaKwwguLu9BlU4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138420},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"e2656c7725e0389e531ef77cee546b6972f356ea","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/abstract-chain_17.0.0-e2656c77_1783947089464_0.12647416765065378","host":"s3://npm-registry-packages-npm-production"}},"19.0.1":{"name":"@alakipalaki/abstract-chain","version":"19.0.1","keywords":["rosen"],"author":{"name":"Rosen Team"},"license":"MIT","_id":"@alakipalaki/abstract-chain@19.0.1","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"homepage":"https://github.com/rosen-bridge/guard-service#readme","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"dist":{"shasum":"7e81685f65fb6ac60e1bcdb931ae4ccff385be06","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-19.0.1.tgz","fileCount":3,"integrity":"sha512-YYrQWT+rnylJ54hjzJk37E77oQlWRZK4VsSG85W07o8nNwhRRDBuqZh3EJkHGv39LZNV1vx8WmRNjUhTOCdZ5A==","signatures":[{"sig":"MEUCIHwyZ2v7C5s66UWxtOfNBmrVN6uHzhlxVGP9raJjwJOxAiEAz3TzwlicslLOBq/X/8UoqcH613IcxtgcbcsKOeWYH7s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15504},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":"11.6.2","node":">=22.18.0"},"gitHead":"2ff0b2cfe0d7a6738807719f2e3beff1dad6fab0","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 test -- --run && npm run clean && npm run build && npm publish --access public","coverage":"npm run test -- --run --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/guard-service.git","type":"git","directory":"packages/abstract-chain"},"_npmVersion":"11.6.2","description":"this project contains abstract classes to implement any chain for Rosen-bridge","directories":{},"_nodeVersion":"22.18.0","dependencies":{"blakejs":"^1.2.1","@rosen-bridge/tokens":"^6.0.2","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/abstract-box-selection":"^1.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/abstract-chain_19.0.1_1783951941603_0.3420327999571844","host":"s3://npm-registry-packages-npm-production"}},"19.1.0":{"name":"@alakipalaki/abstract-chain","version":"19.1.0","description":"this project contains abstract classes to implement any chain for Rosen-bridge","keywords":["rosen"],"repository":{"type":"git","url":"git+https://github.com/rosen-bridge/guard-service.git","directory":"packages/abstract-chain"},"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 -- --run --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 test -- --run && npm run clean && npm run build && npm publish --access public","test":"NODE_OPTIONS='--import tsx' vitest","type-check":"tsc --noEmit"},"dependencies":{"@rosen-bridge/abstract-box-selection":"^1.0.2","@rosen-bridge/abstract-logger":"^4.0.0","@rosen-bridge/json-bigint":"^1.1.0","@rosen-bridge/minimum-fee":"^4.0.1","@rosen-bridge/rosen-extractor":"^12.1.0","@rosen-bridge/tokens":"^6.0.2","blakejs":"^1.2.1"},"engines":{"node":">=22.18.0","npm":"11.6.2"},"gitHead":"089fff33eb04b816fa39b0fe070108779197df5b","_id":"@alakipalaki/abstract-chain@19.1.0","bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"homepage":"https://github.com/rosen-bridge/guard-service#readme","_nodeVersion":"22.18.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-wftQ6+QIN5+smoV12kWPfrz8Z0K1zjoYE9mLh344AJU6f46XNnxNCQVfnUHPKokZnsd3kdjCA1p0ZtSA9hMOjg==","shasum":"0113804fa76c9b9b09227c1a4b7f195614a9c49c","tarball":"https://registry.npmjs.org/@alakipalaki/abstract-chain/-/abstract-chain-19.1.0.tgz","fileCount":34,"unpackedSize":311910,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICnJuuCPxVAVuLZ0in9ENgta5LAjfWW+Agr1KPvgd80RAiEA3isnGh6FpOaHZseEYbh/sTt7Df3pGj++wqOu1g98MLA="}]},"_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/abstract-chain_19.1.0_1783952982126_0.7249780631919618"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-07T17:29:37.178Z","modified":"2026-07-13T14:29:42.392Z","16.0.1-305766c0":"2026-07-07T17:29:37.528Z","16.0.1":"2026-07-07T17:41:50.933Z","17.0.0-193564b1":"2026-07-09T13:52:30.264Z","17.0.0-dd1cbaea":"2026-07-09T13:56:56.162Z","17.0.0":"2026-07-09T14:13:18.158Z","18.0.0":"2026-07-09T14:25:54.234Z","17.0.0-f6b0db32":"2026-07-09T14:37:45.311Z","17.0.0-894067a5":"2026-07-09T14:42:47.858Z","19.0.0":"2026-07-09T14:49:44.924Z","17.0.0-e2656c77":"2026-07-13T12:51:29.607Z","19.0.1":"2026-07-13T14:12:21.746Z","19.1.0":"2026-07-13T14:29:42.270Z"},"bugs":{"url":"https://github.com/rosen-bridge/guard-service/issues"},"author":{"name":"Rosen Team"},"license":"MIT","homepage":"https://github.com/rosen-bridge/guard-service#readme","keywords":["rosen"],"repository":{"type":"git","url":"git+https://github.com/rosen-bridge/guard-service.git","directory":"packages/abstract-chain"},"description":"this project contains abstract classes to implement any chain for Rosen-bridge","maintainers":[{"name":"arsalanyavari","email":"arya48.yavari79@gmail.com"}],"readme":"# Abstract Chain\n\n## Contents\n\n- [Description](#description)\n- [Add New Chain](#add-new-chain)\n- [Add New Network](#add-new-network)\n- [Chain Class Document](#chain-class-document)\n  - [`AbstractChain`](#abstractchain)\n  - [`AbstractUtxoChain`](#abstractutxochain)\n- [Network Class Document](#network-class-document)\n  - [`AbstractChainNetwork`](#abstractchainnetwork)\n  - [`AbstractUtxoChainNetwork`](#abstractutxochainnetwork)\n\n## Description\n\nEvery blockchain supported by the [guard-service](https://github.com/rosen-bridge/guard-service)\nin the bridge has some requirements that are defined in abstract classes and structures\nin this project.\n\n`AbstractChain` is an abstract class containing all actions required by guard-service to\nsupport a blockchain in rosen-bridge. Each chain requires some actions to communicate with\nthe blockchain APIs to get/send data from/to the blockchain. These actions are defined in\n`AbstractChainNetwork` and a single object of it will be initiated in `AbstractChain` constructor.\n\nSince UTxO-based blockchains require some additional and common actions such as getting boxes\n(UTxOs), `AbstractUtxoChain` and `AbstractUtxoChainNetwork` class are provided too.\n\n## Add New Chain\n\nAdding a new chain to the guard-service is being done in two steps and is independent of implementing a\nrequired network package.\n\nThe first step is to define an **abstract** network class inheriting `AbstractChain` (or\n`AbstractUtxoChain` if the blockchain is UTxO-based). Based on the implementation of chain\nclass, some network functions may be added to this network class.\n\n```typescript\n// Ergo is an UTxO-based blockchain, so class inherits `AbstractUtxoChainNetwork`\n// Abstract<chain_name>Network\nclass AbstractErgoNetwork extends AbstractUtxoChainNetwork {\n  ...\n}\n```\n\nAfter defining network class, a chain class should be implemented, inheriting `AbstractChain`\n(or `AbstractUtxoChain` if the blockchain is UTxO-based) which implements all required functions.\nThe functions will be explained in the [Chain Class Document](#chain-class-document) section. Any required\nactions found in this step which relates directly to the blockchain network should be added to the\nnetwork class. Also `network` variable type should be declared as the network class type.\n\n```typescript\n// Ergo is an UTxO-based blockchain, so class inherits `AbstractUtxoChain`\n// <chain_name>Chain\nclass ErgoChain extends AbstractUtxoChain {\n  declare network: ErgoNetwork;\n\n  ...\n}\n```\n\nNote that implementing chain class is independent of implementing its network class and only\nits definition is required.\n\n## Add New Network\n\nImplementing a network class for a chain can proceed after an abstract network class is defined\nfor that chain. In order to implement a new network, a class inheriting the chain's network\nclass should be implemented. The functions will be explained in the\n[Network Class Document](#network-class-document) section. Class name should contain both name of\nthe chain and source of data. For example, in case of Ergo chain and adding a network class to\ncommunicate with Explorer, the class will be as follows:\n\n```typescript\n// <chain_name><data_source>Network\nclass ErgoExplorerNetwork extends ErgoNetwork {\n  ...\n}\n```\n\nNote that network class should be developed in a separate package, independent of the chain package.\n\n## Chain Class Document\n\n### `AbstractChain`\n\nRequired functions are as follows:\n\n- `generatePaymentTransaction`\n  - generates unsigned PaymentTransaction for payment order\n  - **@param** `eventId` the event id\n  - **@param** `txType` transaction type\n  - **@param** `order` the payment order (list of single payments)\n  - **@param** `unsignedTransactions` ongoing unsigned PaymentTransactions which will be used to prevent double spending (gathered from database and guard TxAgreement process)\n  - **@param** `serializedSignedTransactions` the serialized string of ongoing signed transactions which will be used for chaining transactions (gathered from database and mempool)\n  - **@returns** the generated PaymentTransaction\n- `getTransactionAssets`\n  - gets input and output assets of a PaymentTransaction\n  - **@param** `transaction` the PaymentTransaction\n  - **@returns** an object containing the amount of input and output assets\n- `extractTransactionOrder`\n  - extracts payment order of a PaymentTransaction\n  - **@param** `transaction` the PaymentTransaction\n  - **@returns** the transaction payment order (list of single payments)\n- `verifyTransactionFee`\n  - verifies transaction fee for a PaymentTransaction\n  - **@param** `transaction` the PaymentTransaction\n  - **@returns** true if the transaction fee is verified\n- `verifyNoTokenBurned`\n  - verifies no token burned in a PaymentTransaction\n  - **@param** `transaction` the PaymentTransaction\n  - **@returns** true if no token burned\n- `verifyTransactionExtraConditions`\n  - verifies additional conditions for a PaymentTransaction\n  - **@param** `transaction` the PaymentTransaction\n  - **@returns** true if the transaction is verified\n  - **NOTE**: This function is implemented in AbstractChain and will return true. In any chain\n    that requires extra check to verify the transaction, this function should be overridden.\n- `verifyEvent`\n  - verifies an event data with its corresponding lock transaction\n  - **@param** `event` the event trigger model\n  - **@param** `eventSerializedBox` the serialized string of the event trigger box\n  - **@param** `feeConfig` minimum fee and rsn ratio config for the event\n  - **@returns** true if the event is verified\n- `isTxValid`\n  - checks if a transaction is still valid and can be sent to the network\n  - **@param** `transaction` the transaction\n  - **@returns** true if the transaction is still valid\n- `signTransaction`\n  - requests the corresponding signer service to sign the transaction\n  - **@param** `transaction` the transaction\n  - **@param** `requiredSign` the required number of sign\n  - **@returns** the signed transaction\n- `getTxConfirmationStatus`\n  - extracts confirmation status for a transaction\n  - **@param** `transactionId` the transaction id\n  - **@param** `transactionType` type of the transaction\n  - **@returns** the transaction confirmation status\n- `submitTransaction`\n  - submits a transaction to the blockchain\n  - **@param** `transaction` the transaction\n- `isTxInMempool`\n  - checks if a transaction is in mempool (returns false if the chain has no mempool)\n  - **@param** `transactionId` the transaction id\n  - **@returns** true if the transaction is in mempool\n- `getMinimumNativeToken`\n  - gets the minimum amount of native token for transferring asset\n  - **@returns** the minimum amount\n- `getRWTToken`\n  - gets the RWT token id\n  - **@returns** the RWT token id\n- `PaymentTransactionFromJson`\n  - converts json representation of the payment transaction to PaymentTransaction\n  - **@param** `jsonString` the json representation of the payment transaction\n  - **@returns** PaymentTransaction object\n\n### `AbstractUtxoChain`\n\nRequired functions which only are needed in UTxO-based chains are as follows:\n\n- `getMempoolBoxMapping`\n  - generates mapping from input box id to serialized string of output box (filtered by address, containing the token)\n  - **@param** `address` the address\n  - **@param** `tokenId` the token id\n  - **@returns** a Map from input box id to serialized string of output box\n- `getBoxInfo`\n  - extracts box id and assets of a box\n  - **@param** `serializedBox` the serialized string of the box\n  - **@returns** an object containing the box id and assets\n\n## Network Class Document\n\n### `AbstractChainNetwork`\n\nRequired functions are as follows:\n\n- `getHeight`\n  - gets the blockchain height\n  - **@returns** the blockchain height\n- `getTxConfirmation`\n  - gets confirmation for a transaction or -1 if tx is not in the blockchain\n  - **@param** `transactionId` the transaction id\n  - **@returns** the transaction confirmation\n- `getAddressAssets`\n  - gets the amount of each asset in an address\n  - **@param** `address` the address\n  - **@returns** an object containing the amount of each asset\n- `getBlockTransactionIds`\n  - gets id of all transactions in the given block\n  - **@param** `blockId` the block id\n  - **@returns** list of the transaction ids in the block\n- `getBlockInfo`\n  - gets info of the given block\n  - **@param** `blockId` the block id\n  - **@returns** an object containing block info (hash, parent hash and height of the block)\n- `getTransaction`\n  - gets a transaction\n  - **@param** `transactionId` the transaction id\n  - **@param** `blockId` the block id\n  - **@returns** the serialized string of the transaction\n- `submitTransaction`\n  - submits a transaction\n  - **@param** `transaction` the transaction\n- `getMempoolTransactions`\n  - gets all transactions in mempool (returns empty list if the chain has no mempool)\n  - **@returns** list of serialized string of the transactions in mempool\n\n### `AbstractUtxoChainNetwork`\n\nRequired functions that are only needed in UTxO-based chains are as follows:\n\n- `getAddressBoxes`\n  - gets confirmed and unspent boxes of an address\n  - **@param** `address` the address\n  - **@param** `offset`\n  - **@param** `limit`\n  - **@returns** list of serialized string of the boxes\n- `isBoxUnspentAndValid`\n  - checks if a box is still unspent and valid\n  - **@param** `boxId` the box id\n  - **@returns** true if the box is unspent and valid\n","readmeFilename":"README.md"}