{"_id":"@amplifi-liquidity/amplifi-utils-sdk","_rev":"8-ddf7745b41ee04758170850e02f5d35b","name":"@amplifi-liquidity/amplifi-utils-sdk","dist-tags":{"latest":"1.0.5"},"versions":{"1.0.0":{"name":"@amplifi-liquidity/amplifi-utils-sdk","version":"1.0.0","license":"MIT","_id":"@amplifi-liquidity/amplifi-utils-sdk@1.0.0","maintainers":[{"name":"vastreck","email":"vatreck@gmail.com"}],"dist":{"shasum":"ca1e5212db07adf1d4ccb47fb1613312d8f938b6","tarball":"https://registry.npmjs.org/@amplifi-liquidity/amplifi-utils-sdk/-/amplifi-utils-sdk-1.0.0.tgz","fileCount":4,"integrity":"sha512-zXaJVDwZQFfDp0v4WoWH1p3e7fH3kWs0vhaTOKUSvyj5GjY53mlamuGoesHCd9KZugIZ7XYmtkZxzquhHLpxHg==","signatures":[{"sig":"MEYCIQDH3zQku449w0C7HEcKAGFeCsHtvR6dbkiZhcyy0Hs6+gIhAM2JGdQQMSH7LVxI06P1MD4QbBygKzRyVeHrnb0/SSV8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9396},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"3bb7ae84ece75608659b1505a01a4a58716b85c2","scripts":{"test":"jest","build":"tsc","prepublish":"tsc --incremental false"},"_npmUser":{"name":"vastreck","email":"vatreck@gmail.com"},"_npmVersion":"9.6.7","description":"Shared utilities for Amplifi Liquidity services","directories":{},"_nodeVersion":"18.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.1","ts-jest":"^28.0.4","typescript":"^4.7.3","@types/jest":"^28.1.1","@ethersproject/providers":"^5.7.2","@ichidao/ichi-vaults-sdk":"^2.0.9"},"peerDependencies":{"@ethersproject/providers":"^5.0.0","@ichidao/ichi-vaults-sdk":">=0.1.0"},"_npmOperationalInternal":{"tmp":"tmp/amplifi-utils-sdk_1.0.0_1771897912061_0.659746820945571","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@amplifi-liquidity/amplifi-utils-sdk","version":"1.0.1","license":"MIT","_id":"@amplifi-liquidity/amplifi-utils-sdk@1.0.1","maintainers":[{"name":"vastreck","email":"vatreck@gmail.com"}],"dist":{"shasum":"6abb94f44b119b338d3334ef3ff6f4b60677f6ed","tarball":"https://registry.npmjs.org/@amplifi-liquidity/amplifi-utils-sdk/-/amplifi-utils-sdk-1.0.1.tgz","fileCount":4,"integrity":"sha512-0cluPoMg6a4o8p4wdZjPhLWl+P3nHxKCZY0HuZPjqaq2zHLW8NuWUa70xVdDqlQ4g2XLeZy574dUZZVo5n/6Yw==","signatures":[{"sig":"MEQCIEWuDKyOG16KVOhKXObpY2loXq1ZvLxUui7FzRTfxBwMAiBXWM2Cv3x7pfzRjZ00FLyeYPVf0xn1mg/lEurZoXoQJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10745},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"952ce65093276bd8f35c5f6e4c5ec174512df0f3","scripts":{"test":"jest","build":"tsc","prepublish":"tsc --incremental false"},"_npmUser":{"name":"vastreck","email":"vatreck@gmail.com"},"_npmVersion":"9.6.7","description":"Shared utilities for Amplifi Liquidity services","directories":{},"_nodeVersion":"18.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.1","ethers":"^6.13.0","ts-jest":"^28.0.4","typescript":"^4.7.3","@types/jest":"^28.1.1","@ethersproject/providers":"^5.7.2","@ichidao/ichi-vaults-sdk":"^2.0.9"},"peerDependencies":{"ethers":"^6.0.0","@ethersproject/providers":"^5.0.0","@ichidao/ichi-vaults-sdk":">=0.1.0"},"peerDependenciesMeta":{"ethers":{"optional":true},"@ethersproject/providers":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/amplifi-utils-sdk_1.0.1_1771947566532_0.06420796019819286","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@amplifi-liquidity/amplifi-utils-sdk","version":"1.0.2","license":"MIT","_id":"@amplifi-liquidity/amplifi-utils-sdk@1.0.2","maintainers":[{"name":"vastreck","email":"vatreck@gmail.com"}],"dist":{"shasum":"0c0a0e4cc2b58d522b7adfff8b15e519efdc5935","tarball":"https://registry.npmjs.org/@amplifi-liquidity/amplifi-utils-sdk/-/amplifi-utils-sdk-1.0.2.tgz","fileCount":4,"integrity":"sha512-sdPOFrEdb5aoZvPgETDwTyFra2aHs5jHL69kM21/2cOHpUE4jPedz95Px1SSKcOHiS8tHAoczobN8NPk8dExYA==","signatures":[{"sig":"MEUCIQCLJ1T7bO7105Nz7ipqY+nAR9hdIZHhW0YZ5eVjPkE04QIgGzWu7Vh7qzvm7YZ5ZZvILyQ1OnkGW8bDNeuCCEYlXSA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11067},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"28588d6284d662107c99737bd227c7465eb02245","scripts":{"test":"jest","build":"tsc","prepublish":"tsc --incremental false"},"_npmUser":{"name":"vastreck","email":"vatreck@gmail.com"},"_npmVersion":"9.6.7","description":"Shared utilities for Amplifi Liquidity services","directories":{},"_nodeVersion":"18.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.1","ethers":"^6.13.0","ts-jest":"^28.0.4","typescript":"^4.7.3","@types/jest":"^28.1.1","@ethersproject/providers":"^5.7.2","@ichidao/ichi-vaults-sdk":"^2.0.9"},"peerDependencies":{"ethers":"^5.0.0 || ^6.0.0","@ethersproject/providers":"^5.0.0","@ichidao/ichi-vaults-sdk":">=0.1.0"},"peerDependenciesMeta":{"ethers":{"optional":true},"@ethersproject/providers":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/amplifi-utils-sdk_1.0.2_1771993980978_0.8024415499393582","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@amplifi-liquidity/amplifi-utils-sdk","version":"1.0.3","license":"MIT","_id":"@amplifi-liquidity/amplifi-utils-sdk@1.0.3","maintainers":[{"name":"vastreck","email":"vatreck@gmail.com"}],"dist":{"shasum":"e5c3f6bd48c1381ba0808af61d7ad25b510dc383","tarball":"https://registry.npmjs.org/@amplifi-liquidity/amplifi-utils-sdk/-/amplifi-utils-sdk-1.0.3.tgz","fileCount":4,"integrity":"sha512-lY0R1cIKRhZp0YeshWvC2Jhc1XUxD/vQsn+xkKmxofMc8iYD8uMPuOvImTP2iUyPEYQUR37mo2Ugk3xxp/XAfg==","signatures":[{"sig":"MEUCIQCt33kGNx6MDGbee2BGAEqdetvuZ+qLakVUB9Ds+dlMEAIgNoWQOoRotWOXAXU9lFJ9QlmWVTNDBiWSLuRCX6Q4TqQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11160},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"66f2b1282fc969b0be3fa973c486ef270545406a","scripts":{"test":"jest","build":"tsc","prepublish":"tsc --incremental false"},"_npmUser":{"name":"vastreck","email":"vatreck@gmail.com"},"_npmVersion":"9.6.7","description":"Shared utilities for Amplifi Liquidity services","directories":{},"_nodeVersion":"18.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.1","ethers":"^6.13.0","ts-jest":"^28.0.4","typescript":"^4.7.3","@types/jest":"^28.1.1","@ethersproject/providers":"^5.7.2","@ichidao/ichi-vaults-sdk":"^2.0.9"},"peerDependencies":{"ethers":"^5.0.0 || ^6.0.0","@ethersproject/providers":"^5.0.0","@ichidao/ichi-vaults-sdk":">=0.1.0"},"peerDependenciesMeta":{"ethers":{"optional":true},"@ethersproject/providers":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/amplifi-utils-sdk_1.0.3_1772033926929_0.8459512351894996","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@amplifi-liquidity/amplifi-utils-sdk","version":"1.0.4","license":"MIT","_id":"@amplifi-liquidity/amplifi-utils-sdk@1.0.4","maintainers":[{"name":"vastreck","email":"vatreck@gmail.com"}],"dist":{"shasum":"ece45238bbb1c0c254a7fa30b651b5bc0e356e59","tarball":"https://registry.npmjs.org/@amplifi-liquidity/amplifi-utils-sdk/-/amplifi-utils-sdk-1.0.4.tgz","fileCount":4,"integrity":"sha512-lYpjqbisM0ccaWEQWp5z7H1XqA8RXv6EStR1V5+Z+j/ogoStN8xWI6o/1WtxHArvAjufMMwXgqWyOTqBAV3d0w==","signatures":[{"sig":"MEQCIE9C09opQGLvlMToQMzawW2y7ASL3krWkPD0qLglTf5/AiAbskQhXY/PrQADy1kHiEsf2aBMJJnXQ1TkQ+SeY8qpFw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11425},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"66f2b1282fc969b0be3fa973c486ef270545406a","scripts":{"test":"jest","build":"tsc","prepublish":"tsc --incremental false"},"_npmUser":{"name":"vastreck","email":"vatreck@gmail.com"},"_npmVersion":"9.6.7","description":"Shared utilities for Amplifi Liquidity services","directories":{},"_nodeVersion":"18.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.1","ethers":"^6.13.0","ts-jest":"^28.0.4","typescript":"^4.7.3","@types/jest":"^28.1.1","@ethersproject/providers":"^5.7.2","@amplifi-liquidity/amplifi-vaults-sdk":"^1.0.5"},"peerDependencies":{"ethers":"^5.0.0 || ^6.0.0","@ethersproject/providers":"^5.0.0","@amplifi-liquidity/amplifi-vaults-sdk":">=1.0.5"},"peerDependenciesMeta":{"ethers":{"optional":true},"@ethersproject/providers":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/amplifi-utils-sdk_1.0.4_1775231799631_0.19432243568748575","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@amplifi-liquidity/amplifi-utils-sdk","version":"1.0.5","description":"Shared utilities for Amplifi Liquidity services","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","prepublish":"tsc --incremental false","test":"jest"},"peerDependencies":{"@ethersproject/providers":"^5.0.0","ethers":"^5.0.0 || ^6.0.0","@amplifi-liquidity/amplifi-vaults-sdk":">=1.0.20"},"peerDependenciesMeta":{"@ethersproject/providers":{"optional":true},"ethers":{"optional":true}},"devDependencies":{"@ethersproject/providers":"^5.7.2","ethers":"^6.13.0","@amplifi-liquidity/amplifi-vaults-sdk":"^1.0.23","jest":"^28.1.1","ts-jest":"^28.0.4","@types/jest":"^28.1.1","typescript":"^4.7.3"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"license":"MIT","gitHead":"069bdaab5119e7ae1a6089ff1782125c6c4b7524","_id":"@amplifi-liquidity/amplifi-utils-sdk@1.0.5","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-X3gPJM5RmWIOigQTbOB4yINfk68yGYY7hPt+DMMm0CdpPuFAQD9/F0PvTxNzJMNwjYWCMuaGes5xAh6wb94E6g==","shasum":"3dbdc817ac1445270349ffd6a68d72d4a3b32a06","tarball":"https://registry.npmjs.org/@amplifi-liquidity/amplifi-utils-sdk/-/amplifi-utils-sdk-1.0.5.tgz","fileCount":4,"unpackedSize":11785,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFmr731Sixh3p615Z/1N84rVMlwgyoP+7+FiEPu4JOM9AiAvQlYsLXQWvSjrPDtXLEIwEQe5iKl9SFCePl9xiQwFAQ=="}]},"_npmUser":{"name":"aegiswalker","email":"walker@sololab.xyz"},"directories":{},"maintainers":[{"name":"vastreck","email":"vatreck@gmail.com"},{"name":"mosolo","email":"mo@sololab.xyz"},{"name":"aegiswalker","email":"walker@sololab.xyz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/amplifi-utils-sdk_1.0.5_1786723630109_0.4978713692091312"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-24T01:51:51.932Z","modified":"2026-08-14T16:07:10.435Z","1.0.0":"2026-02-24T01:51:52.197Z","1.0.1":"2026-02-24T15:39:26.691Z","1.0.2":"2026-02-25T04:33:01.112Z","1.0.3":"2026-02-25T15:38:47.082Z","1.0.4":"2026-04-03T15:56:39.807Z","1.0.5":"2026-08-14T16:07:10.254Z"},"license":"MIT","description":"Shared utilities for Amplifi Liquidity services","maintainers":[{"name":"vastreck","email":"vatreck@gmail.com"},{"name":"mosolo","email":"mo@sololab.xyz"},{"name":"aegiswalker","email":"walker@sololab.xyz"}],"readme":"# @amplifi-liquidity/amplifi-utils-sdk\r\n\r\nShared utilities for Amplifi Liquidity services.\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @amplifi-liquidity/amplifi-utils-sdk\r\n```\r\n\r\n### Peer dependencies\r\n\r\n- `@amplifi-liquidity/amplifi-vaults-sdk` (>=1.0.20)\r\n- `@ethersproject/providers` (^5.0.0) — optional, needed for `getProvider`\r\n- `ethers` (^6.0.0) — optional, needed for `getProviderV6`\r\n\r\nYou only need the ethers version you use. Both can coexist.\r\n\r\n## Usage\r\n\r\n### getProvider (ethers v5)\r\n\r\nReturns a cached `StaticJsonRpcProvider` for a given chain.\r\n\r\n```typescript\r\nimport { SupportedChainId } from '@amplifi-liquidity/amplifi-vaults-sdk';\r\nimport { getProvider } from '@amplifi-liquidity/amplifi-utils-sdk';\r\n\r\nconst provider = await getProvider(SupportedChainId.polygon);\r\nconst blockNumber = await provider.getBlockNumber();\r\n```\r\n\r\n### getProviderV6 (ethers v6)\r\n\r\nReturns a cached `JsonRpcProvider` for a given chain.\r\n\r\n```typescript\r\nimport { SupportedChainId } from '@amplifi-liquidity/amplifi-vaults-sdk';\r\nimport { getProviderV6 } from '@amplifi-liquidity/amplifi-utils-sdk';\r\n\r\nconst provider = await getProviderV6(SupportedChainId.polygon);\r\nconst blockNumber = await provider.getBlockNumber();\r\n```\r\n\r\n### RPC resolution order\r\n\r\n1. **Environment variable** — reads `<CHAIN_NAME>_RPC_HOSTS` (comma-separated). If a host fails, the next one is tried.\r\n2. **Default RPC URL** — falls back to a built-in public RPC endpoint.\r\n\r\nProviders are cached for 30 seconds by default. The v5 and v6 functions use separate caches.\r\n\r\n### Environment variables\r\n\r\nEach chain maps to an env var derived from its `SupportedChainId` enum key:\r\n\r\n```\r\nMAINNET_RPC_HOSTS=https://rpc1.example.com,https://rpc2.example.com\r\nPOLYGON_RPC_HOSTS=https://my-polygon-rpc.example.com\r\nARBITRUM_RPC_HOSTS=https://my-arb-rpc.example.com\r\n```\r\n\r\n### Configuration\r\n\r\n```typescript\r\nimport { setRpcCacheUpdateInterval } from '@amplifi-liquidity/amplifi-utils-sdk';\r\n\r\n// Change cache TTL to 60 seconds\r\nsetRpcCacheUpdateInterval(60_000);\r\n```\r\n\r\n### Default RPC URLs\r\n\r\nThe full map of default RPC URLs is exported as `DEFAULT_RPC_URLS` for inspection:\r\n\r\n```typescript\r\nimport { DEFAULT_RPC_URLS } from '@amplifi-liquidity/amplifi-utils-sdk';\r\n```\r\n\r\n## Development\r\n\r\n```bash\r\nnpm install\r\nnpm run build\r\nnpm test\r\n```\r\n","readmeFilename":"README.md"}