viem 2.53.1 → 2.54.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +65 -0
- package/_cjs/actions/index.js +3 -2
- package/_cjs/actions/index.js.map +1 -1
- package/_cjs/actions/token/approve.js +62 -0
- package/_cjs/actions/token/approve.js.map +1 -0
- package/_cjs/actions/token/approveSync.js +25 -0
- package/_cjs/actions/token/approveSync.js.map +1 -0
- package/_cjs/actions/token/getAllowance.js +32 -0
- package/_cjs/actions/token/getAllowance.js.map +1 -0
- package/_cjs/actions/token/getBalance.js +41 -0
- package/_cjs/actions/token/getBalance.js.map +1 -0
- package/_cjs/actions/token/getMetadata.js +40 -0
- package/_cjs/actions/token/getMetadata.js.map +1 -0
- package/_cjs/actions/token/getTotalSupply.js +32 -0
- package/_cjs/actions/token/getTotalSupply.js.map +1 -0
- package/_cjs/actions/token/index.js +20 -0
- package/_cjs/actions/token/index.js.map +1 -0
- package/_cjs/actions/token/internal.js +125 -0
- package/_cjs/actions/token/internal.js.map +1 -0
- package/_cjs/actions/token/transfer.js +70 -0
- package/_cjs/actions/token/transfer.js.map +1 -0
- package/_cjs/actions/token/transferSync.js +25 -0
- package/_cjs/actions/token/transferSync.js.map +1 -0
- package/_cjs/chains/definitions/battlechain.js +31 -0
- package/_cjs/chains/definitions/battlechain.js.map +1 -0
- package/_cjs/chains/definitions/marooTestnet.js +30 -0
- package/_cjs/chains/definitions/marooTestnet.js.map +1 -0
- package/_cjs/chains/index.js +18 -14
- package/_cjs/chains/index.js.map +1 -1
- package/_cjs/clients/createClient.js +39 -1
- package/_cjs/clients/createClient.js.map +1 -1
- package/_cjs/clients/createPublicClient.js.map +1 -1
- package/_cjs/clients/createWalletClient.js.map +1 -1
- package/_cjs/clients/decorators/public.js +11 -0
- package/_cjs/clients/decorators/public.js.map +1 -1
- package/_cjs/clients/decorators/wallet.js +8 -0
- package/_cjs/clients/decorators/wallet.js.map +1 -1
- package/_cjs/clients/transports/http.js +2 -1
- package/_cjs/clients/transports/http.js.map +1 -1
- package/_cjs/errors/encoding.js +9 -1
- package/_cjs/errors/encoding.js.map +1 -1
- package/_cjs/errors/request.js +24 -1
- package/_cjs/errors/request.js.map +1 -1
- package/_cjs/errors/transaction.js +9 -1
- package/_cjs/errors/transaction.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_cjs/index.js +9 -6
- package/_cjs/index.js.map +1 -1
- package/_cjs/tempo/Client.js +3 -1
- package/_cjs/tempo/Client.js.map +1 -1
- package/_cjs/tempo/Decorator.js +234 -215
- package/_cjs/tempo/Decorator.js.map +1 -1
- package/_cjs/tempo/actions/token.js +210 -112
- package/_cjs/tempo/actions/token.js.map +1 -1
- package/_cjs/tempo/internal/utils.js +108 -0
- package/_cjs/tempo/internal/utils.js.map +1 -1
- package/_cjs/tokens/defineToken.js +21 -0
- package/_cjs/tokens/defineToken.js.map +1 -0
- package/_cjs/tokens/definitions/alphausd.js +14 -0
- package/_cjs/tokens/definitions/alphausd.js.map +1 -0
- package/_cjs/tokens/definitions/betausd.js +14 -0
- package/_cjs/tokens/definitions/betausd.js.map +1 -0
- package/_cjs/tokens/definitions/brla.js +14 -0
- package/_cjs/tokens/definitions/brla.js.map +1 -0
- package/_cjs/tokens/definitions/cbbtc.js +14 -0
- package/_cjs/tokens/definitions/cbbtc.js.map +1 -0
- package/_cjs/tokens/definitions/chfau.js +14 -0
- package/_cjs/tokens/definitions/chfau.js.map +1 -0
- package/_cjs/tokens/definitions/cirbtc.js +16 -0
- package/_cjs/tokens/definitions/cirbtc.js.map +1 -0
- package/_cjs/tokens/definitions/cusd.js +14 -0
- package/_cjs/tokens/definitions/cusd.js.map +1 -0
- package/_cjs/tokens/definitions/dlusd.js +14 -0
- package/_cjs/tokens/definitions/dlusd.js.map +1 -0
- package/_cjs/tokens/definitions/eurau.js +14 -0
- package/_cjs/tokens/definitions/eurau.js.map +1 -0
- package/_cjs/tokens/definitions/eurc.js +24 -0
- package/_cjs/tokens/definitions/eurc.js.map +1 -0
- package/_cjs/tokens/definitions/eurce.js +15 -0
- package/_cjs/tokens/definitions/eurce.js.map +1 -0
- package/_cjs/tokens/definitions/frxusd.js +14 -0
- package/_cjs/tokens/definitions/frxusd.js.map +1 -0
- package/_cjs/tokens/definitions/gbpa.js +14 -0
- package/_cjs/tokens/definitions/gbpa.js.map +1 -0
- package/_cjs/tokens/definitions/gusd.js +14 -0
- package/_cjs/tokens/definitions/gusd.js.map +1 -0
- package/_cjs/tokens/definitions/iusd.js +14 -0
- package/_cjs/tokens/definitions/iusd.js.map +1 -0
- package/_cjs/tokens/definitions/pathusd.js +15 -0
- package/_cjs/tokens/definitions/pathusd.js.map +1 -0
- package/_cjs/tokens/definitions/reusd.js +14 -0
- package/_cjs/tokens/definitions/reusd.js.map +1 -0
- package/_cjs/tokens/definitions/rusd.js +14 -0
- package/_cjs/tokens/definitions/rusd.js.map +1 -0
- package/_cjs/tokens/definitions/sbc.js +14 -0
- package/_cjs/tokens/definitions/sbc.js.map +1 -0
- package/_cjs/tokens/definitions/siusd.js +14 -0
- package/_cjs/tokens/definitions/siusd.js.map +1 -0
- package/_cjs/tokens/definitions/stcusd.js +14 -0
- package/_cjs/tokens/definitions/stcusd.js.map +1 -0
- package/_cjs/tokens/definitions/susde.js +14 -0
- package/_cjs/tokens/definitions/susde.js.map +1 -0
- package/_cjs/tokens/definitions/syrupusdc.js +14 -0
- package/_cjs/tokens/definitions/syrupusdc.js.map +1 -0
- package/_cjs/tokens/definitions/thetausd.js +14 -0
- package/_cjs/tokens/definitions/thetausd.js.map +1 -0
- package/_cjs/tokens/definitions/usd1.js +14 -0
- package/_cjs/tokens/definitions/usd1.js.map +1 -0
- package/_cjs/tokens/definitions/usdb.js +14 -0
- package/_cjs/tokens/definitions/usdb.js.map +1 -0
- package/_cjs/tokens/definitions/usdc.js +59 -0
- package/_cjs/tokens/definitions/usdc.js.map +1 -0
- package/_cjs/tokens/definitions/usdce.js +15 -0
- package/_cjs/tokens/definitions/usdce.js.map +1 -0
- package/_cjs/tokens/definitions/usde.js +14 -0
- package/_cjs/tokens/definitions/usde.js.map +1 -0
- package/_cjs/tokens/definitions/usdt0.js +14 -0
- package/_cjs/tokens/definitions/usdt0.js.map +1 -0
- package/_cjs/tokens/definitions/usyc.js +18 -0
- package/_cjs/tokens/definitions/usyc.js.map +1 -0
- package/_cjs/tokens/definitions/wsrusd.js +14 -0
- package/_cjs/tokens/definitions/wsrusd.js.map +1 -0
- package/_cjs/tokens/index.js +72 -0
- package/_cjs/tokens/index.js.map +1 -0
- package/_cjs/tokens/sets.js +102 -0
- package/_cjs/tokens/sets.js.map +1 -0
- package/_cjs/utils/encoding/fromRlp.js +7 -4
- package/_cjs/utils/encoding/fromRlp.js.map +1 -1
- package/_cjs/utils/rpc/http.js +58 -3
- package/_cjs/utils/rpc/http.js.map +1 -1
- package/_cjs/utils/transaction/parseTransaction.js +4 -1
- package/_cjs/utils/transaction/parseTransaction.js.map +1 -1
- package/_esm/actions/index.js +1 -0
- package/_esm/actions/index.js.map +1 -1
- package/_esm/actions/token/approve.js +123 -0
- package/_esm/actions/token/approve.js.map +1 -0
- package/_esm/actions/token/approveSync.js +50 -0
- package/_esm/actions/token/approveSync.js.map +1 -0
- package/_esm/actions/token/getAllowance.js +62 -0
- package/_esm/actions/token/getAllowance.js.map +1 -0
- package/_esm/actions/token/getBalance.js +70 -0
- package/_esm/actions/token/getBalance.js.map +1 -0
- package/_esm/actions/token/getMetadata.js +60 -0
- package/_esm/actions/token/getMetadata.js.map +1 -0
- package/_esm/actions/token/getTotalSupply.js +60 -0
- package/_esm/actions/token/getTotalSupply.js.map +1 -0
- package/_esm/actions/token/index.js +10 -0
- package/_esm/actions/token/index.js.map +1 -0
- package/_esm/actions/token/internal.js +188 -0
- package/_esm/actions/token/internal.js.map +1 -0
- package/_esm/actions/token/transfer.js +147 -0
- package/_esm/actions/token/transfer.js.map +1 -0
- package/_esm/actions/token/transferSync.js +54 -0
- package/_esm/actions/token/transferSync.js.map +1 -0
- package/_esm/chains/definitions/battlechain.js +28 -0
- package/_esm/chains/definitions/battlechain.js.map +1 -0
- package/_esm/chains/definitions/marooTestnet.js +27 -0
- package/_esm/chains/definitions/marooTestnet.js.map +1 -0
- package/_esm/chains/index.js +2 -0
- package/_esm/chains/index.js.map +1 -1
- package/_esm/clients/createClient.js +53 -1
- package/_esm/clients/createClient.js.map +1 -1
- package/_esm/clients/createPublicClient.js.map +1 -1
- package/_esm/clients/createWalletClient.js.map +1 -1
- package/_esm/clients/decorators/public.js +17 -0
- package/_esm/clients/decorators/public.js.map +1 -1
- package/_esm/clients/decorators/wallet.js +8 -0
- package/_esm/clients/decorators/wallet.js.map +1 -1
- package/_esm/clients/transports/http.js +2 -1
- package/_esm/clients/transports/http.js.map +1 -1
- package/_esm/errors/encoding.js +7 -0
- package/_esm/errors/encoding.js.map +1 -1
- package/_esm/errors/request.js +22 -0
- package/_esm/errors/request.js.map +1 -1
- package/_esm/errors/transaction.js +7 -0
- package/_esm/errors/transaction.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_esm/index.js +3 -3
- package/_esm/index.js.map +1 -1
- package/_esm/tempo/Client.js +3 -1
- package/_esm/tempo/Client.js.map +1 -1
- package/_esm/tempo/Decorator.js +234 -218
- package/_esm/tempo/Decorator.js.map +1 -1
- package/_esm/tempo/actions/token.js +335 -186
- package/_esm/tempo/actions/token.js.map +1 -1
- package/_esm/tempo/actions/wallet.js +1 -1
- package/_esm/tempo/internal/utils.js +154 -0
- package/_esm/tempo/internal/utils.js.map +1 -1
- package/_esm/tokens/defineToken.js +57 -0
- package/_esm/tokens/defineToken.js.map +1 -0
- package/_esm/tokens/definitions/alphausd.js +12 -0
- package/_esm/tokens/definitions/alphausd.js.map +1 -0
- package/_esm/tokens/definitions/betausd.js +12 -0
- package/_esm/tokens/definitions/betausd.js.map +1 -0
- package/_esm/tokens/definitions/brla.js +12 -0
- package/_esm/tokens/definitions/brla.js.map +1 -0
- package/_esm/tokens/definitions/cbbtc.js +12 -0
- package/_esm/tokens/definitions/cbbtc.js.map +1 -0
- package/_esm/tokens/definitions/chfau.js +12 -0
- package/_esm/tokens/definitions/chfau.js.map +1 -0
- package/_esm/tokens/definitions/cirbtc.js +21 -0
- package/_esm/tokens/definitions/cirbtc.js.map +1 -0
- package/_esm/tokens/definitions/cusd.js +12 -0
- package/_esm/tokens/definitions/cusd.js.map +1 -0
- package/_esm/tokens/definitions/dlusd.js +12 -0
- package/_esm/tokens/definitions/dlusd.js.map +1 -0
- package/_esm/tokens/definitions/eurau.js +12 -0
- package/_esm/tokens/definitions/eurau.js.map +1 -0
- package/_esm/tokens/definitions/eurc.js +29 -0
- package/_esm/tokens/definitions/eurc.js.map +1 -0
- package/_esm/tokens/definitions/eurce.js +13 -0
- package/_esm/tokens/definitions/eurce.js.map +1 -0
- package/_esm/tokens/definitions/frxusd.js +12 -0
- package/_esm/tokens/definitions/frxusd.js.map +1 -0
- package/_esm/tokens/definitions/gbpa.js +12 -0
- package/_esm/tokens/definitions/gbpa.js.map +1 -0
- package/_esm/tokens/definitions/gusd.js +12 -0
- package/_esm/tokens/definitions/gusd.js.map +1 -0
- package/_esm/tokens/definitions/iusd.js +12 -0
- package/_esm/tokens/definitions/iusd.js.map +1 -0
- package/_esm/tokens/definitions/pathusd.js +13 -0
- package/_esm/tokens/definitions/pathusd.js.map +1 -0
- package/_esm/tokens/definitions/reusd.js +12 -0
- package/_esm/tokens/definitions/reusd.js.map +1 -0
- package/_esm/tokens/definitions/rusd.js +12 -0
- package/_esm/tokens/definitions/rusd.js.map +1 -0
- package/_esm/tokens/definitions/sbc.js +12 -0
- package/_esm/tokens/definitions/sbc.js.map +1 -0
- package/_esm/tokens/definitions/siusd.js +12 -0
- package/_esm/tokens/definitions/siusd.js.map +1 -0
- package/_esm/tokens/definitions/stcusd.js +12 -0
- package/_esm/tokens/definitions/stcusd.js.map +1 -0
- package/_esm/tokens/definitions/susde.js +12 -0
- package/_esm/tokens/definitions/susde.js.map +1 -0
- package/_esm/tokens/definitions/syrupusdc.js +12 -0
- package/_esm/tokens/definitions/syrupusdc.js.map +1 -0
- package/_esm/tokens/definitions/thetausd.js +12 -0
- package/_esm/tokens/definitions/thetausd.js.map +1 -0
- package/_esm/tokens/definitions/usd1.js +12 -0
- package/_esm/tokens/definitions/usd1.js.map +1 -0
- package/_esm/tokens/definitions/usdb.js +12 -0
- package/_esm/tokens/definitions/usdb.js.map +1 -0
- package/_esm/tokens/definitions/usdc.js +85 -0
- package/_esm/tokens/definitions/usdc.js.map +1 -0
- package/_esm/tokens/definitions/usdce.js +13 -0
- package/_esm/tokens/definitions/usdce.js.map +1 -0
- package/_esm/tokens/definitions/usde.js +12 -0
- package/_esm/tokens/definitions/usde.js.map +1 -0
- package/_esm/tokens/definitions/usdt0.js +12 -0
- package/_esm/tokens/definitions/usdt0.js.map +1 -0
- package/_esm/tokens/definitions/usyc.js +23 -0
- package/_esm/tokens/definitions/usyc.js.map +1 -0
- package/_esm/tokens/definitions/wsrusd.js +12 -0
- package/_esm/tokens/definitions/wsrusd.js.map +1 -0
- package/_esm/tokens/index.js +36 -0
- package/_esm/tokens/index.js.map +1 -0
- package/_esm/tokens/sets.js +104 -0
- package/_esm/tokens/sets.js.map +1 -0
- package/_esm/utils/encoding/fromRlp.js +8 -5
- package/_esm/utils/encoding/fromRlp.js.map +1 -1
- package/_esm/utils/rpc/http.js +59 -4
- package/_esm/utils/rpc/http.js.map +1 -1
- package/_esm/utils/transaction/parseTransaction.js +5 -2
- package/_esm/utils/transaction/parseTransaction.js.map +1 -1
- package/_types/actions/index.d.ts +1 -0
- package/_types/actions/index.d.ts.map +1 -1
- package/_types/actions/token/approve.d.ts +253 -0
- package/_types/actions/token/approve.d.ts.map +1 -0
- package/_types/actions/token/approveSync.d.ts +57 -0
- package/_types/actions/token/approveSync.d.ts.map +1 -0
- package/_types/actions/token/getAllowance.d.ts +77 -0
- package/_types/actions/token/getAllowance.d.ts.map +1 -0
- package/_types/actions/token/getBalance.d.ts +69 -0
- package/_types/actions/token/getBalance.d.ts.map +1 -0
- package/_types/actions/token/getMetadata.d.ts +43 -0
- package/_types/actions/token/getMetadata.d.ts.map +1 -0
- package/_types/actions/token/getTotalSupply.d.ts +63 -0
- package/_types/actions/token/getTotalSupply.d.ts.map +1 -0
- package/_types/actions/token/index.d.ts +9 -0
- package/_types/actions/token/index.d.ts.map +1 -0
- package/_types/actions/token/internal.d.ts +168 -0
- package/_types/actions/token/internal.d.ts.map +1 -0
- package/_types/actions/token/transfer.d.ts +288 -0
- package/_types/actions/token/transfer.d.ts.map +1 -0
- package/_types/actions/token/transferSync.d.ts +61 -0
- package/_types/actions/token/transferSync.d.ts.map +1 -0
- package/_types/chains/definitions/battlechain.d.ts +447 -0
- package/_types/chains/definitions/battlechain.d.ts.map +1 -0
- package/_types/chains/definitions/marooTestnet.d.ts +49 -0
- package/_types/chains/definitions/marooTestnet.d.ts.map +1 -0
- package/_types/chains/index.d.ts +2 -0
- package/_types/chains/index.d.ts.map +1 -1
- package/_types/clients/createClient.d.ts +24 -6
- package/_types/clients/createClient.d.ts.map +1 -1
- package/_types/clients/createPublicClient.d.ts +4 -3
- package/_types/clients/createPublicClient.d.ts.map +1 -1
- package/_types/clients/createWalletClient.d.ts +4 -3
- package/_types/clients/createWalletClient.d.ts.map +1 -1
- package/_types/clients/decorators/public.d.ts +128 -3
- package/_types/clients/decorators/public.d.ts.map +1 -1
- package/_types/clients/decorators/wallet.d.ts +208 -3
- package/_types/clients/decorators/wallet.d.ts.map +1 -1
- package/_types/clients/transports/http.d.ts +2 -0
- package/_types/clients/transports/http.d.ts.map +1 -1
- package/_types/errors/encoding.d.ts +8 -0
- package/_types/errors/encoding.d.ts.map +1 -1
- package/_types/errors/request.d.ts +11 -0
- package/_types/errors/request.d.ts.map +1 -1
- package/_types/errors/transaction.d.ts +8 -0
- package/_types/errors/transaction.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/index.d.ts +4 -3
- package/_types/index.d.ts.map +1 -1
- package/_types/tempo/Client.d.ts +1 -1
- package/_types/tempo/Client.d.ts.map +1 -1
- package/_types/tempo/Decorator.d.ts +88 -5
- package/_types/tempo/Decorator.d.ts.map +1 -1
- package/_types/tempo/actions/token.d.ts +223 -151
- package/_types/tempo/actions/token.d.ts.map +1 -1
- package/_types/tempo/actions/wallet.d.ts +3 -3
- package/_types/tempo/internal/types.d.ts +17 -0
- package/_types/tempo/internal/types.d.ts.map +1 -1
- package/_types/tempo/internal/utils.d.ts +73 -0
- package/_types/tempo/internal/utils.d.ts.map +1 -1
- package/_types/tokens/defineToken.d.ts +112 -0
- package/_types/tokens/defineToken.d.ts.map +1 -0
- package/_types/tokens/definitions/alphausd.d.ts +11 -0
- package/_types/tokens/definitions/alphausd.d.ts.map +1 -0
- package/_types/tokens/definitions/betausd.d.ts +11 -0
- package/_types/tokens/definitions/betausd.d.ts.map +1 -0
- package/_types/tokens/definitions/brla.d.ts +11 -0
- package/_types/tokens/definitions/brla.d.ts.map +1 -0
- package/_types/tokens/definitions/cbbtc.d.ts +11 -0
- package/_types/tokens/definitions/cbbtc.d.ts.map +1 -0
- package/_types/tokens/definitions/chfau.d.ts +11 -0
- package/_types/tokens/definitions/chfau.d.ts.map +1 -0
- package/_types/tokens/definitions/cirbtc.d.ts +21 -0
- package/_types/tokens/definitions/cirbtc.d.ts.map +1 -0
- package/_types/tokens/definitions/cusd.d.ts +11 -0
- package/_types/tokens/definitions/cusd.d.ts.map +1 -0
- package/_types/tokens/definitions/dlusd.d.ts +11 -0
- package/_types/tokens/definitions/dlusd.d.ts.map +1 -0
- package/_types/tokens/definitions/eurau.d.ts +11 -0
- package/_types/tokens/definitions/eurau.d.ts.map +1 -0
- package/_types/tokens/definitions/eurc.d.ts +29 -0
- package/_types/tokens/definitions/eurc.d.ts.map +1 -0
- package/_types/tokens/definitions/eurce.d.ts +12 -0
- package/_types/tokens/definitions/eurce.d.ts.map +1 -0
- package/_types/tokens/definitions/frxusd.d.ts +11 -0
- package/_types/tokens/definitions/frxusd.d.ts.map +1 -0
- package/_types/tokens/definitions/gbpa.d.ts +11 -0
- package/_types/tokens/definitions/gbpa.d.ts.map +1 -0
- package/_types/tokens/definitions/gusd.d.ts +11 -0
- package/_types/tokens/definitions/gusd.d.ts.map +1 -0
- package/_types/tokens/definitions/iusd.d.ts +11 -0
- package/_types/tokens/definitions/iusd.d.ts.map +1 -0
- package/_types/tokens/definitions/pathusd.d.ts +12 -0
- package/_types/tokens/definitions/pathusd.d.ts.map +1 -0
- package/_types/tokens/definitions/reusd.d.ts +11 -0
- package/_types/tokens/definitions/reusd.d.ts.map +1 -0
- package/_types/tokens/definitions/rusd.d.ts +11 -0
- package/_types/tokens/definitions/rusd.d.ts.map +1 -0
- package/_types/tokens/definitions/sbc.d.ts +11 -0
- package/_types/tokens/definitions/sbc.d.ts.map +1 -0
- package/_types/tokens/definitions/siusd.d.ts +11 -0
- package/_types/tokens/definitions/siusd.d.ts.map +1 -0
- package/_types/tokens/definitions/stcusd.d.ts +11 -0
- package/_types/tokens/definitions/stcusd.d.ts.map +1 -0
- package/_types/tokens/definitions/susde.d.ts +11 -0
- package/_types/tokens/definitions/susde.d.ts.map +1 -0
- package/_types/tokens/definitions/syrupusdc.d.ts +11 -0
- package/_types/tokens/definitions/syrupusdc.d.ts.map +1 -0
- package/_types/tokens/definitions/thetausd.d.ts +11 -0
- package/_types/tokens/definitions/thetausd.d.ts.map +1 -0
- package/_types/tokens/definitions/usd1.d.ts +11 -0
- package/_types/tokens/definitions/usd1.d.ts.map +1 -0
- package/_types/tokens/definitions/usdb.d.ts +11 -0
- package/_types/tokens/definitions/usdb.d.ts.map +1 -0
- package/_types/tokens/definitions/usdc.d.ts +85 -0
- package/_types/tokens/definitions/usdc.d.ts.map +1 -0
- package/_types/tokens/definitions/usdce.d.ts +12 -0
- package/_types/tokens/definitions/usdce.d.ts.map +1 -0
- package/_types/tokens/definitions/usde.d.ts +11 -0
- package/_types/tokens/definitions/usde.d.ts.map +1 -0
- package/_types/tokens/definitions/usdt0.d.ts +11 -0
- package/_types/tokens/definitions/usdt0.d.ts.map +1 -0
- package/_types/tokens/definitions/usyc.d.ts +23 -0
- package/_types/tokens/definitions/usyc.d.ts.map +1 -0
- package/_types/tokens/definitions/wsrusd.d.ts +11 -0
- package/_types/tokens/definitions/wsrusd.d.ts.map +1 -0
- package/_types/tokens/index.d.ts +35 -0
- package/_types/tokens/index.d.ts.map +1 -0
- package/_types/tokens/sets.d.ts +607 -0
- package/_types/tokens/sets.d.ts.map +1 -0
- package/_types/utils/encoding/fromRlp.d.ts +2 -2
- package/_types/utils/encoding/fromRlp.d.ts.map +1 -1
- package/_types/utils/rpc/http.d.ts +6 -2
- package/_types/utils/rpc/http.d.ts.map +1 -1
- package/_types/utils/transaction/parseTransaction.d.ts +2 -2
- package/_types/utils/transaction/parseTransaction.d.ts.map +1 -1
- package/actions/index.ts +1 -0
- package/actions/token/approve.ts +202 -0
- package/actions/token/approveSync.ts +95 -0
- package/actions/token/getAllowance.ts +105 -0
- package/actions/token/getBalance.ts +115 -0
- package/actions/token/getMetadata.ts +98 -0
- package/actions/token/getTotalSupply.ts +97 -0
- package/actions/token/index.ts +9 -0
- package/actions/token/internal.ts +367 -0
- package/actions/token/transfer.ts +230 -0
- package/actions/token/transferSync.ts +99 -0
- package/chains/definitions/battlechain.ts +28 -0
- package/chains/definitions/marooTestnet.ts +27 -0
- package/chains/index.ts +2 -0
- package/clients/createClient.ts +90 -8
- package/clients/createPublicClient.ts +22 -4
- package/clients/createWalletClient.ts +22 -4
- package/clients/decorators/public.ts +166 -4
- package/clients/decorators/wallet.ts +242 -3
- package/clients/transports/http.ts +4 -0
- package/errors/encoding.ts +11 -0
- package/errors/request.ts +17 -0
- package/errors/transaction.ts +11 -0
- package/errors/version.ts +1 -1
- package/index.ts +7 -0
- package/package.json +6 -1
- package/tempo/Client.ts +7 -3
- package/tempo/Decorator.ts +398 -337
- package/tempo/actions/token.ts +519 -296
- package/tempo/actions/wallet.ts +3 -3
- package/tempo/internal/types.ts +19 -0
- package/tempo/internal/utils.ts +204 -0
- package/tokens/defineToken.ts +142 -0
- package/tokens/definitions/alphausd.ts +13 -0
- package/tokens/definitions/betausd.ts +13 -0
- package/tokens/definitions/brla.ts +13 -0
- package/tokens/definitions/cbbtc.ts +13 -0
- package/tokens/definitions/chfau.ts +13 -0
- package/tokens/definitions/cirbtc.ts +21 -0
- package/tokens/definitions/cusd.ts +13 -0
- package/tokens/definitions/dlusd.ts +13 -0
- package/tokens/definitions/eurau.ts +13 -0
- package/tokens/definitions/eurc.ts +29 -0
- package/tokens/definitions/eurce.ts +14 -0
- package/tokens/definitions/frxusd.ts +13 -0
- package/tokens/definitions/gbpa.ts +13 -0
- package/tokens/definitions/gusd.ts +13 -0
- package/tokens/definitions/iusd.ts +13 -0
- package/tokens/definitions/pathusd.ts +14 -0
- package/tokens/definitions/reusd.ts +13 -0
- package/tokens/definitions/rusd.ts +13 -0
- package/tokens/definitions/sbc.ts +13 -0
- package/tokens/definitions/siusd.ts +13 -0
- package/tokens/definitions/stcusd.ts +13 -0
- package/tokens/definitions/susde.ts +13 -0
- package/tokens/definitions/syrupusdc.ts +13 -0
- package/tokens/definitions/thetausd.ts +13 -0
- package/tokens/definitions/usd1.ts +13 -0
- package/tokens/definitions/usdb.ts +13 -0
- package/tokens/definitions/usdc.ts +85 -0
- package/tokens/definitions/usdce.ts +14 -0
- package/tokens/definitions/usde.ts +13 -0
- package/tokens/definitions/usdt0.ts +13 -0
- package/tokens/definitions/usyc.ts +23 -0
- package/tokens/definitions/wsrusd.ts +13 -0
- package/tokens/index.ts +35 -0
- package/tokens/package.json +6 -0
- package/tokens/sets.ts +109 -0
- package/utils/encoding/fromRlp.ts +22 -3
- package/utils/rpc/http.ts +70 -2
- package/utils/transaction/parseTransaction.ts +7 -2
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { Account } from '../../accounts/types.js';
|
|
2
|
+
import type { Client } from '../../clients/createClient.js';
|
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js';
|
|
4
|
+
import type { erc20Abi } from '../../constants/abis.js';
|
|
5
|
+
import type { BaseErrorType } from '../../errors/base.js';
|
|
6
|
+
import type { Tokens } from '../../tokens/defineToken.js';
|
|
7
|
+
import type { Chain } from '../../types/chain.js';
|
|
8
|
+
import type { GetEventArgs } from '../../types/contract.js';
|
|
9
|
+
import type { TransactionReceipt } from '../../types/transaction.js';
|
|
10
|
+
import type { Compute } from '../../types/utils.js';
|
|
11
|
+
import { approve } from './approve.js';
|
|
12
|
+
/**
|
|
13
|
+
* Approves a spender to transfer ERC-20 tokens on behalf of the caller, and
|
|
14
|
+
* waits for the transaction to be confirmed.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { createClient, http } from 'viem'
|
|
19
|
+
* import { mainnet } from 'viem/chains'
|
|
20
|
+
* import { privateKeyToAccount } from 'viem/accounts'
|
|
21
|
+
* import { token } from 'viem/actions'
|
|
22
|
+
*
|
|
23
|
+
* const client = createClient({
|
|
24
|
+
* account: privateKeyToAccount('0x...'),
|
|
25
|
+
* chain: mainnet,
|
|
26
|
+
* transport: http(),
|
|
27
|
+
* })
|
|
28
|
+
*
|
|
29
|
+
* const { receipt, ...event } = await token.approveSync(client, {
|
|
30
|
+
* amount: 100000000n,
|
|
31
|
+
* spender: '0x...',
|
|
32
|
+
* token: '0x...',
|
|
33
|
+
* })
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* @param client - Client.
|
|
37
|
+
* @param parameters - Parameters.
|
|
38
|
+
* @returns The transaction receipt and event data.
|
|
39
|
+
*/
|
|
40
|
+
export declare function approveSync<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, parameters: approveSync.Parameters<chain, account, tokens>): Promise<approveSync.ReturnValue>;
|
|
41
|
+
export declare namespace approveSync {
|
|
42
|
+
type Parameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, tokens extends Tokens | undefined = Tokens | undefined> = approve.Parameters<chain, account, tokens>;
|
|
43
|
+
type Args<chain extends Chain | undefined = Chain | undefined, tokens extends Tokens | undefined = Tokens | undefined> = approve.Args<chain, tokens>;
|
|
44
|
+
type ReturnValue = Compute<GetEventArgs<typeof erc20Abi, 'Approval', {
|
|
45
|
+
IndexedOnly: false;
|
|
46
|
+
Required: true;
|
|
47
|
+
}> & {
|
|
48
|
+
/** Token decimals used to derive `formatted`, if known. */
|
|
49
|
+
decimals?: number | undefined;
|
|
50
|
+
/** Approved amount formatted with the token's `decimals`, if known. */
|
|
51
|
+
formatted?: string | undefined;
|
|
52
|
+
/** Transaction receipt. */
|
|
53
|
+
receipt: TransactionReceipt;
|
|
54
|
+
}>;
|
|
55
|
+
type ErrorType = BaseErrorType;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=approveSync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"approveSync.d.ts","sourceRoot":"","sources":["../../../actions/token/approveSync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAGnD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAGtC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,WAAW,CAC/B,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GACzD,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAgBlC;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,UAAU,CACpB,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IAC9C,KAAY,IAAI,CACd,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAC/B,KAAY,WAAW,GAAG,OAAO,CAC/B,YAAY,CACV,OAAO,QAAQ,EACf,UAAU,EACV;QAAE,WAAW,EAAE,KAAK,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE,CACvC,GAAG;QACF,2DAA2D;QAC3D,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC7B,uEAAuE;QACvE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC9B,2BAA2B;QAC3B,OAAO,EAAE,kBAAkB,CAAA;KAC5B,CACF,CAAA;IAED,KAAY,SAAS,GAAG,aAAa,CAAA;CACtC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import type { Address } from 'abitype';
|
|
2
|
+
import type { Account } from '../../accounts/types.js';
|
|
3
|
+
import type { Client } from '../../clients/createClient.js';
|
|
4
|
+
import type { Transport } from '../../clients/transports/createTransport.js';
|
|
5
|
+
import type { Tokens } from '../../tokens/defineToken.js';
|
|
6
|
+
import type { Chain } from '../../types/chain.js';
|
|
7
|
+
import { type Amount, type ReadParameters, type TokenParameters } from './internal.js';
|
|
8
|
+
/**
|
|
9
|
+
* Gets the ERC-20 allowance a spender has over an account's tokens.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { createClient, http } from 'viem'
|
|
14
|
+
* import { mainnet } from 'viem/chains'
|
|
15
|
+
* import { token } from 'viem/actions'
|
|
16
|
+
*
|
|
17
|
+
* const client = createClient({ chain: mainnet, transport: http() })
|
|
18
|
+
*
|
|
19
|
+
* const allowance = await token.getAllowance(client, {
|
|
20
|
+
* account: '0x...',
|
|
21
|
+
* spender: '0x...',
|
|
22
|
+
* token: '0x...',
|
|
23
|
+
* })
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @param client - Client.
|
|
27
|
+
* @param parameters - Parameters.
|
|
28
|
+
* @returns The allowance, in base units and human-readable form.
|
|
29
|
+
*/
|
|
30
|
+
export declare function getAllowance<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, parameters: getAllowance.Parameters<chain, tokens>): Promise<getAllowance.ReturnValue>;
|
|
31
|
+
export declare namespace getAllowance {
|
|
32
|
+
type Args<chain extends Chain | undefined = Chain | undefined, tokens extends Tokens | undefined = Tokens | undefined> = {
|
|
33
|
+
/** Account that owns the tokens. */
|
|
34
|
+
account: Address;
|
|
35
|
+
/** Spender of the tokens. */
|
|
36
|
+
spender: Address;
|
|
37
|
+
} & TokenParameters<chain, tokens>;
|
|
38
|
+
type Parameters<chain extends Chain | undefined = Chain | undefined, tokens extends Tokens | undefined = Tokens | undefined> = ReadParameters & Args<chain, tokens>;
|
|
39
|
+
type ReturnValue = Amount;
|
|
40
|
+
/**
|
|
41
|
+
* Defines a call to the `allowance` function.
|
|
42
|
+
*
|
|
43
|
+
* Can be passed as a parameter to `multicall`, `simulateContract`, or any
|
|
44
|
+
* other action that accepts a contract call. The token is selected by `token`
|
|
45
|
+
* symbol (resolved from the client's `tokens` array) or contract address.
|
|
46
|
+
*
|
|
47
|
+
* @param client - Client.
|
|
48
|
+
* @param args - Arguments.
|
|
49
|
+
* @returns The call.
|
|
50
|
+
*/
|
|
51
|
+
function call<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, args: Args<chain, tokens>): {
|
|
52
|
+
abi: [{
|
|
53
|
+
readonly type: "function";
|
|
54
|
+
readonly name: "allowance";
|
|
55
|
+
readonly stateMutability: "view";
|
|
56
|
+
readonly inputs: readonly [{
|
|
57
|
+
readonly name: "owner";
|
|
58
|
+
readonly type: "address";
|
|
59
|
+
}, {
|
|
60
|
+
readonly name: "spender";
|
|
61
|
+
readonly type: "address";
|
|
62
|
+
}];
|
|
63
|
+
readonly outputs: readonly [{
|
|
64
|
+
readonly type: "uint256";
|
|
65
|
+
}];
|
|
66
|
+
}];
|
|
67
|
+
functionName: "allowance";
|
|
68
|
+
} & {
|
|
69
|
+
args: readonly [owner: `0x${string}`, spender: `0x${string}`];
|
|
70
|
+
} & {
|
|
71
|
+
address: Address;
|
|
72
|
+
} & {
|
|
73
|
+
data: import("../../index.js").Hex;
|
|
74
|
+
to: Address;
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=getAllowance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAllowance.d.ts","sourceRoot":"","sources":["../../../actions/token/getAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAE5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,cAAc,EAGnB,KAAK,eAAe,EAErB,MAAM,eAAe,CAAA;AAEtB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,YAAY,CAChC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,GACjD,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAanC;AAED,yBAAiB,YAAY,CAAC;IAC5B,KAAY,IAAI,CACd,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD;QACF,oCAAoC;QACpC,OAAO,EAAE,OAAO,CAAA;QAChB,6BAA6B;QAC7B,OAAO,EAAE,OAAO,CAAA;KACjB,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAClC,KAAY,UAAU,CACpB,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,cAAc,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACxC,KAAY,WAAW,GAAG,MAAM,CAAA;IAEhC;;;;;;;;;;OAUG;IACH,SAAgB,IAAI,CAClB,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;MAQ1B;CACF"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { Address } from 'abitype';
|
|
2
|
+
import type { Account } from '../../accounts/types.js';
|
|
3
|
+
import type { Client } from '../../clients/createClient.js';
|
|
4
|
+
import type { Transport } from '../../clients/transports/createTransport.js';
|
|
5
|
+
import type { Tokens } from '../../tokens/defineToken.js';
|
|
6
|
+
import type { GetAccountParameter } from '../../types/account.js';
|
|
7
|
+
import type { Chain } from '../../types/chain.js';
|
|
8
|
+
import { type Amount, type ReadParameters, type TokenParameters } from './internal.js';
|
|
9
|
+
/**
|
|
10
|
+
* Gets the ERC-20 token balance of an account.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* import { createClient, http } from 'viem'
|
|
15
|
+
* import { mainnet } from 'viem/chains'
|
|
16
|
+
* import { token } from 'viem/actions'
|
|
17
|
+
*
|
|
18
|
+
* const client = createClient({ chain: mainnet, transport: http() })
|
|
19
|
+
*
|
|
20
|
+
* const balance = await token.getBalance(client, {
|
|
21
|
+
* account: '0x...',
|
|
22
|
+
* token: '0x...',
|
|
23
|
+
* })
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @param client - Client.
|
|
27
|
+
* @param parameters - Parameters.
|
|
28
|
+
* @returns The token balance, in base units and human-readable form.
|
|
29
|
+
*/
|
|
30
|
+
export declare function getBalance<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, parameters: getBalance.Parameters<chain, account, tokens>): Promise<getBalance.ReturnValue>;
|
|
31
|
+
export declare namespace getBalance {
|
|
32
|
+
type Args<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, tokens extends Tokens | undefined = Tokens | undefined> = GetAccountParameter<account, Account | Address> & TokenParameters<chain, tokens>;
|
|
33
|
+
type Parameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, tokens extends Tokens | undefined = Tokens | undefined> = Omit<ReadParameters, 'account'> & Args<chain, account, tokens>;
|
|
34
|
+
type ReturnValue = Amount;
|
|
35
|
+
/**
|
|
36
|
+
* Defines a call to the `balanceOf` function.
|
|
37
|
+
*
|
|
38
|
+
* Can be passed as a parameter to `multicall`, `simulateContract`, or any
|
|
39
|
+
* other action that accepts a contract call. The token is selected by `token`
|
|
40
|
+
* symbol (resolved from the client's `tokens` array) or contract address.
|
|
41
|
+
*
|
|
42
|
+
* @param client - Client.
|
|
43
|
+
* @param args - Arguments.
|
|
44
|
+
* @returns The call.
|
|
45
|
+
*/
|
|
46
|
+
function call<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, args: Args<chain, account, tokens>): {
|
|
47
|
+
abi: [{
|
|
48
|
+
readonly type: "function";
|
|
49
|
+
readonly name: "balanceOf";
|
|
50
|
+
readonly stateMutability: "view";
|
|
51
|
+
readonly inputs: readonly [{
|
|
52
|
+
readonly name: "account";
|
|
53
|
+
readonly type: "address";
|
|
54
|
+
}];
|
|
55
|
+
readonly outputs: readonly [{
|
|
56
|
+
readonly type: "uint256";
|
|
57
|
+
}];
|
|
58
|
+
}];
|
|
59
|
+
functionName: "balanceOf";
|
|
60
|
+
} & {
|
|
61
|
+
args: readonly [account: `0x${string}`];
|
|
62
|
+
} & {
|
|
63
|
+
address: Address;
|
|
64
|
+
} & {
|
|
65
|
+
data: import("../../index.js").Hex;
|
|
66
|
+
to: Address;
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=getBalance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBalance.d.ts","sourceRoot":"","sources":["../../../actions/token/getBalance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAEtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAG5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,cAAc,EAGnB,KAAK,eAAe,EAErB,MAAM,eAAe,CAAA;AAEtB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,UAAU,CAC9B,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,GACxD,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAoBjC;AAED,yBAAiB,UAAU,CAAC;IAC1B,KAAY,IAAI,CACd,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GACjD,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAChC,KAAY,UAAU,CACpB,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IAClE,KAAY,WAAW,GAAG,MAAM,CAAA;IAEhC;;;;;;;;;;OAUG;IACH,SAAgB,IAAI,CAClB,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;MAWnC;CACF"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { Account } from '../../accounts/types.js';
|
|
2
|
+
import type { Client } from '../../clients/createClient.js';
|
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js';
|
|
4
|
+
import type { Tokens } from '../../tokens/defineToken.js';
|
|
5
|
+
import type { Chain } from '../../types/chain.js';
|
|
6
|
+
import { type ReadParameters, type TokenParameter } from './internal.js';
|
|
7
|
+
/**
|
|
8
|
+
* Gets the metadata (`decimals`, `name`, `symbol`) of an ERC-20 token.
|
|
9
|
+
*
|
|
10
|
+
* Fields declared on the Client's `tokens` array are used as-is; any missing
|
|
11
|
+
* field is fetched from the token contract.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { createClient, http } from 'viem'
|
|
16
|
+
* import { mainnet } from 'viem/chains'
|
|
17
|
+
* import { token } from 'viem/actions'
|
|
18
|
+
*
|
|
19
|
+
* const client = createClient({ chain: mainnet, transport: http() })
|
|
20
|
+
*
|
|
21
|
+
* const metadata = await token.getMetadata(client, {
|
|
22
|
+
* token: '0x...',
|
|
23
|
+
* })
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @param client - Client.
|
|
27
|
+
* @param parameters - Parameters.
|
|
28
|
+
* @returns The token metadata (`decimals`, `name`, `symbol`).
|
|
29
|
+
*/
|
|
30
|
+
export declare function getMetadata<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, parameters: getMetadata.Parameters<chain, tokens>): Promise<getMetadata.ReturnValue>;
|
|
31
|
+
export declare namespace getMetadata {
|
|
32
|
+
type Args<chain extends Chain | undefined = Chain | undefined, tokens extends Tokens | undefined = Tokens | undefined> = TokenParameter<chain, tokens>;
|
|
33
|
+
type Parameters<chain extends Chain | undefined = Chain | undefined, tokens extends Tokens | undefined = Tokens | undefined> = Omit<ReadParameters, 'account'> & Args<chain, tokens>;
|
|
34
|
+
type ReturnValue = {
|
|
35
|
+
/** Number of decimals the token uses. */
|
|
36
|
+
decimals: number;
|
|
37
|
+
/** Human-readable name of the token. */
|
|
38
|
+
name: string;
|
|
39
|
+
/** Ticker symbol of the token. */
|
|
40
|
+
symbol: string;
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=getMetadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMetadata.d.ts","sourceRoot":"","sources":["../../../actions/token/getMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAE5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACpB,MAAM,eAAe,CAAA;AAEtB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,WAAW,CAC/B,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,GAChD,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAkClC;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,IAAI,CACd,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACjC,KAAY,UAAU,CACpB,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACzD,KAAY,WAAW,GAAG;QACxB,yCAAyC;QACzC,QAAQ,EAAE,MAAM,CAAA;QAChB,wCAAwC;QACxC,IAAI,EAAE,MAAM,CAAA;QACZ,kCAAkC;QAClC,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;CACF"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { Account } from '../../accounts/types.js';
|
|
2
|
+
import type { Client } from '../../clients/createClient.js';
|
|
3
|
+
import type { Transport } from '../../clients/transports/createTransport.js';
|
|
4
|
+
import type { Tokens } from '../../tokens/defineToken.js';
|
|
5
|
+
import type { Chain } from '../../types/chain.js';
|
|
6
|
+
import { type Amount, type ReadParameters, type TokenParameters } from './internal.js';
|
|
7
|
+
/**
|
|
8
|
+
* Gets the total supply of an ERC-20 token.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* import { createClient, http } from 'viem'
|
|
13
|
+
* import { mainnet } from 'viem/chains'
|
|
14
|
+
* import { token } from 'viem/actions'
|
|
15
|
+
*
|
|
16
|
+
* const client = createClient({ chain: mainnet, transport: http() })
|
|
17
|
+
*
|
|
18
|
+
* const totalSupply = await token.getTotalSupply(client, {
|
|
19
|
+
* token: '0x...',
|
|
20
|
+
* })
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @param client - Client.
|
|
24
|
+
* @param parameters - Parameters.
|
|
25
|
+
* @returns The token total supply, in base units and human-readable form.
|
|
26
|
+
*/
|
|
27
|
+
export declare function getTotalSupply<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, parameters: getTotalSupply.Parameters<chain, tokens>): Promise<getTotalSupply.ReturnValue>;
|
|
28
|
+
export declare namespace getTotalSupply {
|
|
29
|
+
type Args<chain extends Chain | undefined = Chain | undefined, tokens extends Tokens | undefined = Tokens | undefined> = TokenParameters<chain, tokens>;
|
|
30
|
+
type Parameters<chain extends Chain | undefined = Chain | undefined, tokens extends Tokens | undefined = Tokens | undefined> = Omit<ReadParameters, 'account'> & Args<chain, tokens>;
|
|
31
|
+
type ReturnValue = Amount;
|
|
32
|
+
/**
|
|
33
|
+
* Defines a call to the `totalSupply` function.
|
|
34
|
+
*
|
|
35
|
+
* Can be passed as a parameter to `multicall`, `simulateContract`, or any
|
|
36
|
+
* other action that accepts a contract call. The token is selected by `token`
|
|
37
|
+
* symbol (resolved from the client's `tokens` array) or contract address.
|
|
38
|
+
*
|
|
39
|
+
* @param client - Client.
|
|
40
|
+
* @param args - Arguments.
|
|
41
|
+
* @returns The call.
|
|
42
|
+
*/
|
|
43
|
+
function call<chain extends Chain | undefined, account extends Account | undefined, tokens extends Tokens | undefined = undefined>(client: Client<Transport, chain, account, undefined, undefined, tokens>, args: Args<chain, tokens>): {
|
|
44
|
+
abi: [{
|
|
45
|
+
readonly type: "function";
|
|
46
|
+
readonly name: "totalSupply";
|
|
47
|
+
readonly stateMutability: "view";
|
|
48
|
+
readonly inputs: readonly [];
|
|
49
|
+
readonly outputs: readonly [{
|
|
50
|
+
readonly type: "uint256";
|
|
51
|
+
}];
|
|
52
|
+
}];
|
|
53
|
+
functionName: "totalSupply";
|
|
54
|
+
} & {
|
|
55
|
+
args?: readonly [] | undefined;
|
|
56
|
+
} & {
|
|
57
|
+
address: import("abitype").Address;
|
|
58
|
+
} & {
|
|
59
|
+
data: import("../../index.js").Hex;
|
|
60
|
+
to: import("abitype").Address;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=getTotalSupply.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTotalSupply.d.ts","sourceRoot":"","sources":["../../../actions/token/getTotalSupply.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAE5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,cAAc,EAGnB,KAAK,eAAe,EAErB,MAAM,eAAe,CAAA;AAEtB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,cAAc,CAClC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,UAAU,EAAE,cAAc,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,GACnD,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAarC;AAED,yBAAiB,cAAc,CAAC;IAC9B,KAAY,IAAI,CACd,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAClC,KAAY,UAAU,CACpB,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IACpD,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACzD,KAAY,WAAW,GAAG,MAAM,CAAA;IAEhC;;;;;;;;;;OAUG;IACH,SAAgB,IAAI,CAClB,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,SAAS,EAE7C,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EACvE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;MAQ1B;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { approve } from './approve.js';
|
|
2
|
+
export { approveSync } from './approveSync.js';
|
|
3
|
+
export { getAllowance } from './getAllowance.js';
|
|
4
|
+
export { getBalance } from './getBalance.js';
|
|
5
|
+
export { getMetadata } from './getMetadata.js';
|
|
6
|
+
export { getTotalSupply } from './getTotalSupply.js';
|
|
7
|
+
export { transfer } from './transfer.js';
|
|
8
|
+
export { transferSync } from './transferSync.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../actions/token/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import type { Abi, AbiStateMutability, Address } from 'abitype';
|
|
2
|
+
import type { Account } from '../../accounts/types.js';
|
|
3
|
+
import type { Client } from '../../clients/createClient.js';
|
|
4
|
+
import type { Transport } from '../../clients/transports/createTransport.js';
|
|
5
|
+
import type { ResolvedToken, Token, Tokens } from '../../tokens/defineToken.js';
|
|
6
|
+
import type { Chain } from '../../types/chain.js';
|
|
7
|
+
import type { ContractFunctionName, ContractFunctionParameters, ExtractAbiItem } from '../../types/contract.js';
|
|
8
|
+
import type { Hex } from '../../types/misc.js';
|
|
9
|
+
import type { UnionPick } from '../../types/utils.js';
|
|
10
|
+
import type { ReadContractParameters as viem_ReadContractParameters } from '../public/readContract.js';
|
|
11
|
+
import type { WriteContractSyncParameters as viem_WriteContractSyncParameters } from '../wallet/writeContractSync.js';
|
|
12
|
+
/**
|
|
13
|
+
* Union of symbols of the Client's declared `tokens` whose `addresses` include
|
|
14
|
+
* the Client's `chain.id`. Collapses to `never` when there is no chain mapping
|
|
15
|
+
* (no `tokens`, no `chain`, a widened `chain.id`, or widened token symbols).
|
|
16
|
+
*
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
export type TokenName<chain extends Chain | undefined, tokens extends Tokens | undefined> = chain extends {
|
|
20
|
+
id: infer chainId extends number;
|
|
21
|
+
} ? number extends chainId ? never : tokens extends Tokens ? TokenSymbolForChain<tokens[number], chainId> : never : never;
|
|
22
|
+
type TokenSymbolForChain<token, chainId extends number> = token extends Token ? chainId extends keyof token['addresses'] ? token['symbol'] extends string ? string extends token['symbol'] ? never : Lowercase<token['symbol']> : never : never : never;
|
|
23
|
+
/**
|
|
24
|
+
* Selects an ERC-20 token by `token`, which is either the symbol of a token
|
|
25
|
+
* declared on the Client's `tokens` array or a contract `address`.
|
|
26
|
+
*
|
|
27
|
+
* When `token` is a declared symbol (or an address that matches a declared
|
|
28
|
+
* token), token metadata is resolved from the Client's `tokens` array.
|
|
29
|
+
*/
|
|
30
|
+
export type TokenParameter<chain extends Chain | undefined, tokens extends Tokens | undefined> = {
|
|
31
|
+
/**
|
|
32
|
+
* Token to operate on: either the symbol of a token declared on the Client's
|
|
33
|
+
* `tokens` array (with an address for the Client's `chain.id`), or a
|
|
34
|
+
* contract `address`.
|
|
35
|
+
*/
|
|
36
|
+
token: TokenName<chain, tokens> | Address;
|
|
37
|
+
};
|
|
38
|
+
export type TokenParameters<chain extends Chain | undefined, tokens extends Tokens | undefined> = TokenParameter<chain, tokens> & {
|
|
39
|
+
/**
|
|
40
|
+
* Decimals used to convert between base units and the human-readable amount.
|
|
41
|
+
* Inferred from the Client's `tokens` array when `token` matches a declared
|
|
42
|
+
* token; otherwise fetched from the token contract when needed.
|
|
43
|
+
*/
|
|
44
|
+
decimals?: number | undefined;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* A token amount, expressed both in the token's base units (`amount`) and as a
|
|
48
|
+
* human-readable decimal string (`formatted`, derived from the token's
|
|
49
|
+
* `decimals`).
|
|
50
|
+
*/
|
|
51
|
+
export type Amount = {
|
|
52
|
+
/** Amount in the token's base units. */
|
|
53
|
+
amount: bigint;
|
|
54
|
+
/** Token decimals used to derive `formatted`. */
|
|
55
|
+
decimals: number;
|
|
56
|
+
/** Amount formatted as a human-readable decimal string. */
|
|
57
|
+
formatted: string;
|
|
58
|
+
};
|
|
59
|
+
/** A write amount: a base-unit bigint, or an explicit formatted helper. */
|
|
60
|
+
export type AmountInput = bigint | {
|
|
61
|
+
/** Token decimals used to parse `formatted`. */
|
|
62
|
+
decimals?: number | undefined;
|
|
63
|
+
/** Human-readable decimal amount. */
|
|
64
|
+
formatted: string;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* Shapes a base-unit value into an {@link Amount} (base units, `decimals`, and
|
|
68
|
+
* human-readable `formatted` string).
|
|
69
|
+
*
|
|
70
|
+
* @param amount - Amount in base units.
|
|
71
|
+
* @param decimals - Token decimals used to format the amount.
|
|
72
|
+
* @returns The {@link Amount}.
|
|
73
|
+
*/
|
|
74
|
+
export declare function toAmount(amount: bigint, decimals: number): Amount;
|
|
75
|
+
/**
|
|
76
|
+
* Resolves a write amount to base units.
|
|
77
|
+
*
|
|
78
|
+
* @param amount - Base-unit amount, or formatted helper.
|
|
79
|
+
* @param decimals - Token decimals used to parse formatted amounts.
|
|
80
|
+
* @returns Amount in base units.
|
|
81
|
+
*/
|
|
82
|
+
export declare function toBaseUnits(amount: AmountInput, decimals: number | undefined): bigint;
|
|
83
|
+
/**
|
|
84
|
+
* Requires resolved token decimals for parsing or formatting amounts.
|
|
85
|
+
*
|
|
86
|
+
* @param decimals - Token decimals.
|
|
87
|
+
* @returns Token decimals.
|
|
88
|
+
* @internal
|
|
89
|
+
*/
|
|
90
|
+
export declare function requireTokenDecimals(decimals: number | undefined): number;
|
|
91
|
+
/**
|
|
92
|
+
* Resolves the decimals used for formatting a write amount.
|
|
93
|
+
*
|
|
94
|
+
* @param amount - Base-unit amount, or formatted helper.
|
|
95
|
+
* @param decimals - Token decimals.
|
|
96
|
+
* @returns Token decimals, overridden by the formatted helper when present.
|
|
97
|
+
*/
|
|
98
|
+
export declare function resolveAmountDecimals(amount: AmountInput, decimals: number | undefined): number | undefined;
|
|
99
|
+
/**
|
|
100
|
+
* Resolves the token contract `address` and `decimals` from a `token`, which is
|
|
101
|
+
* either the symbol of a token declared on the client's `tokens` array or a
|
|
102
|
+
* contract `address`.
|
|
103
|
+
*
|
|
104
|
+
* When `token` is a declared symbol, the `address` and `decimals` are resolved
|
|
105
|
+
* from the Client's `tokens` array for the Client's `chain.id` (`decimals` can
|
|
106
|
+
* be overridden via the explicit `decimals`). When `token` is an address, its
|
|
107
|
+
* `decimals` is inferred from the Client's `tokens` array when the address
|
|
108
|
+
* matches a declared token, otherwise taken from the explicit `decimals`.
|
|
109
|
+
*
|
|
110
|
+
* @param client - Client.
|
|
111
|
+
* @param parameters - Parameters.
|
|
112
|
+
* @returns The resolved `address` and `decimals`.
|
|
113
|
+
*/
|
|
114
|
+
export declare function resolveToken(client: Client<Transport, Chain | undefined>, parameters: resolveToken.Parameters): {
|
|
115
|
+
address: Address;
|
|
116
|
+
decimals: number | undefined;
|
|
117
|
+
};
|
|
118
|
+
export declare namespace resolveToken {
|
|
119
|
+
type Parameters = {
|
|
120
|
+
/** Decimals, if provided explicitly. */
|
|
121
|
+
decimals?: number | undefined;
|
|
122
|
+
/** Token symbol (declared on the client's `tokens` array) or contract address. */
|
|
123
|
+
token: string;
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Finds the declared token on the Client's `tokens` array matching `token`
|
|
128
|
+
* (either a token symbol or contract `address`), resolved to a {@link ResolvedToken}
|
|
129
|
+
* for the Client's `chain.id`. Returns `undefined` when no declared token
|
|
130
|
+
* matches, or the matching token has no address for the Client's chain.
|
|
131
|
+
*
|
|
132
|
+
* @param client - Client.
|
|
133
|
+
* @param token - Token symbol (declared on the client's `tokens` array) or contract address.
|
|
134
|
+
* @returns The matching resolved token config, or `undefined`.
|
|
135
|
+
*/
|
|
136
|
+
export declare function findDeclaredToken(client: Client<Transport, Chain | undefined>, token: string): ResolvedToken | undefined;
|
|
137
|
+
/**
|
|
138
|
+
* Resolves token decimals, fetching from the token contract when they are not
|
|
139
|
+
* provided explicitly or declared on the client.
|
|
140
|
+
* @internal
|
|
141
|
+
*/
|
|
142
|
+
export declare function resolveTokenWithDecimals(client: Client<Transport, Chain | undefined>, parameters: resolveToken.Parameters): Promise<{
|
|
143
|
+
address: Address;
|
|
144
|
+
decimals: number;
|
|
145
|
+
}>;
|
|
146
|
+
/**
|
|
147
|
+
* Picks the transaction-override fields shared by write actions, so the
|
|
148
|
+
* action-specific args (`token`, `amount`, `to`, etc.) don't leak into
|
|
149
|
+
* `estimateContractGas` / `simulateContract` requests. @internal
|
|
150
|
+
*/
|
|
151
|
+
export declare function pickWriteParameters(parameters: Record<string, unknown>): {
|
|
152
|
+
account: unknown;
|
|
153
|
+
chain: unknown;
|
|
154
|
+
gas: unknown;
|
|
155
|
+
maxFeePerGas: unknown;
|
|
156
|
+
maxPriorityFeePerGas: unknown;
|
|
157
|
+
nonce: unknown;
|
|
158
|
+
};
|
|
159
|
+
export type ReadParameters = Pick<viem_ReadContractParameters<never, never, never>, 'account' | 'blockNumber' | 'blockOverrides' | 'blockTag' | 'stateOverride'>;
|
|
160
|
+
export type WriteParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined> = UnionPick<viem_WriteContractSyncParameters<never, never, never, chain, account>, 'account' | 'chain' | 'gas' | 'maxFeePerGas' | 'maxPriorityFeePerGas' | 'nonce' | 'throwOnReceiptRevert'>;
|
|
161
|
+
export declare function defineCall<const abi extends Abi, const functionName extends ContractFunctionName<abi, AbiStateMutability>, call extends ContractFunctionParameters<abi, AbiStateMutability, functionName>>(call: call | ContractFunctionParameters<abi, AbiStateMutability, functionName>): ContractFunctionParameters<[
|
|
162
|
+
ExtractAbiItem<abi, functionName>
|
|
163
|
+
], AbiStateMutability, functionName> & {
|
|
164
|
+
data: Hex;
|
|
165
|
+
to: Address;
|
|
166
|
+
};
|
|
167
|
+
export {};
|
|
168
|
+
//# sourceMappingURL=internal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../actions/token/internal.ts"],"names":[],"mappings":"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"}
|