ox 0.0.1 → 0.1.0
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/Abi/package.json +6 -0
- package/Abi.ts +163 -0
- package/AbiConstructor/package.json +6 -0
- package/AbiConstructor.ts +413 -0
- package/AbiError/package.json +6 -0
- package/AbiError.ts +719 -0
- package/AbiEvent/package.json +6 -0
- package/AbiEvent.ts +1284 -0
- package/AbiFunction/package.json +6 -0
- package/AbiFunction.ts +813 -0
- package/AbiItem/package.json +6 -0
- package/AbiItem.ts +779 -0
- package/AbiParameters/package.json +6 -0
- package/AbiParameters.ts +712 -0
- package/AccessList/package.json +6 -0
- package/AccessList.ts +124 -0
- package/AccountProof/package.json +6 -0
- package/AccountProof.ts +35 -0
- package/Address/package.json +6 -0
- package/Address.ts +359 -0
- package/AesGcm/package.json +6 -0
- package/AesGcm.ts +220 -0
- package/Authorization/package.json +6 -0
- package/Authorization.ts +639 -0
- package/Base58/package.json +6 -0
- package/Base58.ts +180 -0
- package/Base64/package.json +6 -0
- package/Base64.ts +333 -0
- package/Blobs/package.json +6 -0
- package/Blobs.ts +982 -0
- package/Block/package.json +6 -0
- package/Block.ts +317 -0
- package/Bloom/package.json +6 -0
- package/Bloom.ts +80 -0
- package/Bls/package.json +6 -0
- package/Bls.ts +496 -0
- package/BlsPoint/package.json +6 -0
- package/BlsPoint.ts +232 -0
- package/Bytes/package.json +6 -0
- package/Bytes.ts +963 -0
- package/CHANGELOG.md +7 -0
- package/Caches/package.json +6 -0
- package/Caches.ts +21 -0
- package/ContractAddress/package.json +6 -0
- package/ContractAddress.ts +181 -0
- package/Ens/package.json +6 -0
- package/Ens.ts +116 -0
- package/Errors/package.json +6 -0
- package/Errors.ts +95 -0
- package/Fee/package.json +6 -0
- package/Fee.ts +57 -0
- package/Filter/package.json +6 -0
- package/Filter.ts +144 -0
- package/Hash/package.json +6 -0
- package/Hash.ts +210 -0
- package/HdKey/package.json +6 -0
- package/HdKey.ts +175 -0
- package/Hex/package.json +6 -0
- package/Hex.ts +1040 -0
- package/Json/package.json +6 -0
- package/Json.ts +84 -0
- package/Kzg/package.json +6 -0
- package/Kzg.ts +51 -0
- package/LICENSE +21 -0
- package/Log/package.json +6 -0
- package/Log.ts +248 -0
- package/Mnemonic/package.json +6 -0
- package/Mnemonic.ts +249 -0
- package/P256/package.json +6 -0
- package/P256.ts +230 -0
- package/PersonalMessage/package.json +6 -0
- package/PersonalMessage.ts +70 -0
- package/Provider/package.json +6 -0
- package/Provider.ts +354 -0
- package/PublicKey/package.json +6 -0
- package/PublicKey.ts +545 -0
- package/README.md +75 -26
- package/Rlp/package.json +6 -0
- package/Rlp.ts +390 -0
- package/RpcRequest/package.json +6 -0
- package/RpcRequest.ts +192 -0
- package/RpcResponse/package.json +6 -0
- package/RpcResponse.ts +389 -0
- package/RpcSchema/package.json +6 -0
- package/RpcSchema.ts +273 -0
- package/RpcTransport/package.json +6 -0
- package/RpcTransport.ts +198 -0
- package/Secp256k1/package.json +6 -0
- package/Secp256k1.ts +304 -0
- package/Signature/package.json +6 -0
- package/Signature.ts +909 -0
- package/Siwe/package.json +6 -0
- package/Siwe.ts +516 -0
- package/Solidity/package.json +6 -0
- package/Solidity.ts +109 -0
- package/Transaction/package.json +6 -0
- package/Transaction.ts +429 -0
- package/TransactionEnvelope/package.json +6 -0
- package/TransactionEnvelope.ts +205 -0
- package/TransactionEnvelopeEip1559/package.json +6 -0
- package/TransactionEnvelopeEip1559.ts +656 -0
- package/TransactionEnvelopeEip2930/package.json +6 -0
- package/TransactionEnvelopeEip2930.ts +624 -0
- package/TransactionEnvelopeEip4844/package.json +6 -0
- package/TransactionEnvelopeEip4844.ts +764 -0
- package/TransactionEnvelopeEip7702/package.json +6 -0
- package/TransactionEnvelopeEip7702.ts +639 -0
- package/TransactionEnvelopeLegacy/package.json +6 -0
- package/TransactionEnvelopeLegacy.ts +674 -0
- package/TransactionReceipt/package.json +6 -0
- package/TransactionReceipt.ts +341 -0
- package/TransactionRequest/package.json +6 -0
- package/TransactionRequest.ts +151 -0
- package/TypedData/package.json +6 -0
- package/TypedData.ts +931 -0
- package/ValidatorData/package.json +6 -0
- package/ValidatorData.ts +87 -0
- package/Value/package.json +6 -0
- package/Value.ts +242 -0
- package/WebAuthnP256/package.json +6 -0
- package/WebAuthnP256.ts +803 -0
- package/WebCryptoP256/package.json +6 -0
- package/WebCryptoP256.ts +190 -0
- package/Withdrawal/package.json +6 -0
- package/Withdrawal.ts +95 -0
- package/_cjs/Abi.js +17 -0
- package/_cjs/Abi.js.map +1 -0
- package/_cjs/AbiConstructor.js +42 -0
- package/_cjs/AbiConstructor.js.map +1 -0
- package/_cjs/AbiError.js +98 -0
- package/_cjs/AbiError.js.map +1 -0
- package/_cjs/AbiEvent.js +338 -0
- package/_cjs/AbiEvent.js.map +1 -0
- package/_cjs/AbiFunction.js +85 -0
- package/_cjs/AbiFunction.js.map +1 -0
- package/_cjs/AbiItem.js +180 -0
- package/_cjs/AbiItem.js.map +1 -0
- package/_cjs/AbiParameters.js +229 -0
- package/_cjs/AbiParameters.js.map +1 -0
- package/_cjs/AccessList.js +51 -0
- package/_cjs/AccessList.js.map +1 -0
- package/_cjs/AccountProof.js +3 -0
- package/_cjs/AccountProof.js.map +1 -0
- package/_cjs/Address.js +121 -0
- package/_cjs/Address.js.map +1 -0
- package/_cjs/AesGcm.js +55 -0
- package/_cjs/AesGcm.js.map +1 -0
- package/_cjs/Authorization.js +99 -0
- package/_cjs/Authorization.js.map +1 -0
- package/_cjs/Base58.js +52 -0
- package/_cjs/Base58.js.map +1 -0
- package/_cjs/Base64.js +76 -0
- package/_cjs/Base64.js.map +1 -0
- package/_cjs/Blobs.js +255 -0
- package/_cjs/Blobs.js.map +1 -0
- package/_cjs/Block.js +87 -0
- package/_cjs/Block.js.map +1 -0
- package/_cjs/Bloom.js +23 -0
- package/_cjs/Bloom.js.map +1 -0
- package/_cjs/Bls.js +79 -0
- package/_cjs/Bls.js.map +1 -0
- package/_cjs/BlsPoint.js +32 -0
- package/_cjs/BlsPoint.js.map +1 -0
- package/_cjs/Bytes.js +279 -0
- package/_cjs/Bytes.js.map +1 -0
- package/_cjs/Caches.js +14 -0
- package/_cjs/Caches.js.map +1 -0
- package/_cjs/ContractAddress.js +39 -0
- package/_cjs/ContractAddress.js.map +1 -0
- package/_cjs/Ens.js +37 -0
- package/_cjs/Ens.js.map +1 -0
- package/_cjs/Errors.js +99 -0
- package/_cjs/Errors.js.map +1 -0
- package/_cjs/Fee.js +3 -0
- package/_cjs/Fee.js.map +1 -0
- package/_cjs/Filter.js +43 -0
- package/_cjs/Filter.js.map +1 -0
- package/_cjs/Hash.js +40 -0
- package/_cjs/Hash.js.map +1 -0
- package/_cjs/HdKey.js +30 -0
- package/_cjs/HdKey.js.map +1 -0
- package/_cjs/Hex.js +324 -0
- package/_cjs/Hex.js.map +1 -0
- package/_cjs/Json.js +25 -0
- package/_cjs/Json.js.map +1 -0
- package/_cjs/Kzg.js +14 -0
- package/_cjs/Kzg.js.map +1 -0
- package/_cjs/Log.js +35 -0
- package/_cjs/Log.js.map +1 -0
- package/_cjs/Mnemonic.js +56 -0
- package/_cjs/Mnemonic.js.map +1 -0
- package/_cjs/P256.js +52 -0
- package/_cjs/P256.js.map +1 -0
- package/_cjs/PersonalMessage.js +16 -0
- package/_cjs/PersonalMessage.js.map +1 -0
- package/_cjs/Provider.js +90 -0
- package/_cjs/Provider.js.map +1 -0
- package/_cjs/PublicKey.js +192 -0
- package/_cjs/PublicKey.js.map +1 -0
- package/_cjs/Rlp.js +179 -0
- package/_cjs/Rlp.js.map +1 -0
- package/_cjs/RpcRequest.js +27 -0
- package/_cjs/RpcRequest.js.map +1 -0
- package/_cjs/RpcResponse.js +368 -0
- package/_cjs/RpcResponse.js.map +1 -0
- package/_cjs/RpcSchema.js +7 -0
- package/_cjs/RpcSchema.js.map +1 -0
- package/_cjs/RpcTransport.js +95 -0
- package/_cjs/RpcTransport.js.map +1 -0
- package/_cjs/Secp256k1.js +57 -0
- package/_cjs/Secp256k1.js.map +1 -0
- package/_cjs/Signature.js +305 -0
- package/_cjs/Signature.js.map +1 -0
- package/_cjs/Siwe.js +231 -0
- package/_cjs/Siwe.js.map +1 -0
- package/_cjs/Solidity.js +104 -0
- package/_cjs/Solidity.js.map +1 -0
- package/_cjs/Transaction.js +106 -0
- package/_cjs/Transaction.js.map +1 -0
- package/_cjs/TransactionEnvelope.js +80 -0
- package/_cjs/TransactionEnvelope.js.map +1 -0
- package/_cjs/TransactionEnvelopeEip1559.js +182 -0
- package/_cjs/TransactionEnvelopeEip1559.js.map +1 -0
- package/_cjs/TransactionEnvelopeEip2930.js +166 -0
- package/_cjs/TransactionEnvelopeEip2930.js.map +1 -0
- package/_cjs/TransactionEnvelopeEip4844.js +224 -0
- package/_cjs/TransactionEnvelopeEip4844.js.map +1 -0
- package/_cjs/TransactionEnvelopeEip7702.js +156 -0
- package/_cjs/TransactionEnvelopeEip7702.js.map +1 -0
- package/_cjs/TransactionEnvelopeLegacy.js +221 -0
- package/_cjs/TransactionEnvelopeLegacy.js.map +1 -0
- package/_cjs/TransactionReceipt.js +76 -0
- package/_cjs/TransactionReceipt.js.map +1 -0
- package/_cjs/TransactionRequest.js +51 -0
- package/_cjs/TransactionRequest.js.map +1 -0
- package/_cjs/TypedData.js +318 -0
- package/_cjs/TypedData.js.map +1 -0
- package/_cjs/ValidatorData.js +16 -0
- package/_cjs/ValidatorData.js.map +1 -0
- package/_cjs/Value.js +96 -0
- package/_cjs/Value.js.map +1 -0
- package/_cjs/WebAuthnP256.js +245 -0
- package/_cjs/WebAuthnP256.js.map +1 -0
- package/_cjs/WebCryptoP256.js +46 -0
- package/_cjs/WebCryptoP256.js.map +1 -0
- package/_cjs/Withdrawal.js +24 -0
- package/_cjs/Withdrawal.js.map +1 -0
- package/_cjs/index.js +66 -0
- package/_cjs/index.js.map +1 -0
- package/_cjs/internal/abi.js +11 -0
- package/_cjs/internal/abi.js.map +1 -0
- package/_cjs/internal/abiConstructor.js +3 -0
- package/_cjs/internal/abiConstructor.js.map +1 -0
- package/_cjs/internal/abiError.js +3 -0
- package/_cjs/internal/abiError.js.map +1 -0
- package/_cjs/internal/abiEvent.js +3 -0
- package/_cjs/internal/abiEvent.js.map +1 -0
- package/_cjs/internal/abiFunction.js +3 -0
- package/_cjs/internal/abiFunction.js.map +1 -0
- package/_cjs/internal/abiItem.js +110 -0
- package/_cjs/internal/abiItem.js.map +1 -0
- package/_cjs/internal/abiParameters.js +376 -0
- package/_cjs/internal/abiParameters.js.map +1 -0
- package/_cjs/internal/base58.js +89 -0
- package/_cjs/internal/base58.js.map +1 -0
- package/_cjs/internal/bytes.js +88 -0
- package/_cjs/internal/bytes.js.map +1 -0
- package/_cjs/internal/cursor.js +210 -0
- package/_cjs/internal/cursor.js.map +1 -0
- package/_cjs/internal/ens.js +43 -0
- package/_cjs/internal/ens.js.map +1 -0
- package/_cjs/internal/errors.js +28 -0
- package/_cjs/internal/errors.js.map +1 -0
- package/_cjs/internal/hdKey.js +19 -0
- package/_cjs/internal/hdKey.js.map +1 -0
- package/_cjs/internal/hex.js +66 -0
- package/_cjs/internal/hex.js.map +1 -0
- package/_cjs/internal/lru.js +34 -0
- package/_cjs/internal/lru.js.map +1 -0
- package/_cjs/internal/mnemonic/wordlists.js +24 -0
- package/_cjs/internal/mnemonic/wordlists.js.map +1 -0
- package/_cjs/internal/promise.js +49 -0
- package/_cjs/internal/promise.js.map +1 -0
- package/_cjs/internal/register.js +3 -0
- package/_cjs/internal/register.js.map +1 -0
- package/_cjs/internal/rpcSchema.js +3 -0
- package/_cjs/internal/rpcSchema.js.map +1 -0
- package/_cjs/internal/rpcSchemas/eth.js +3 -0
- package/_cjs/internal/rpcSchemas/eth.js.map +1 -0
- package/_cjs/internal/rpcSchemas/wallet.js +3 -0
- package/_cjs/internal/rpcSchemas/wallet.js.map +1 -0
- package/_cjs/internal/rpcTransport.js +19 -0
- package/_cjs/internal/rpcTransport.js.map +1 -0
- package/_cjs/internal/types.js +3 -0
- package/_cjs/internal/types.js.map +1 -0
- package/_cjs/internal/uid.js +17 -0
- package/_cjs/internal/uid.js.map +1 -0
- package/_cjs/internal/webauthn.js +28 -0
- package/_cjs/internal/webauthn.js.map +1 -0
- package/_cjs/package.json +1 -0
- package/_cjs/trusted-setups/Paths.js +6 -0
- package/_cjs/trusted-setups/Paths.js.map +1 -0
- package/_cjs/trusted-setups/index.js +5 -0
- package/_cjs/trusted-setups/index.js.map +1 -0
- package/_cjs/trusted-setups/internal/paths.js +11 -0
- package/_cjs/trusted-setups/internal/paths.js.map +1 -0
- package/_cjs/version.js +5 -0
- package/_cjs/version.js.map +1 -0
- package/_cjs/window/index.js +3 -0
- package/_cjs/window/index.js.map +1 -0
- package/_esm/Abi.js +19 -0
- package/_esm/Abi.js.map +1 -0
- package/_esm/AbiConstructor.js +102 -0
- package/_esm/AbiConstructor.js.map +1 -0
- package/_esm/AbiError.js +364 -0
- package/_esm/AbiError.js.map +1 -0
- package/_esm/AbiEvent.js +1038 -0
- package/_esm/AbiEvent.js.map +1 -0
- package/_esm/AbiFunction.js +549 -0
- package/_esm/AbiFunction.js.map +1 -0
- package/_esm/AbiItem.js +574 -0
- package/_esm/AbiItem.js.map +1 -0
- package/_esm/AbiParameters.js +543 -0
- package/_esm/AbiParameters.js.map +1 -0
- package/_esm/AccessList.js +105 -0
- package/_esm/AccessList.js.map +1 -0
- package/_esm/AccountProof.js +2 -0
- package/_esm/AccountProof.js.map +1 -0
- package/_esm/Address.js +268 -0
- package/_esm/Address.js.map +1 -0
- package/_esm/AesGcm.js +124 -0
- package/_esm/AesGcm.js.map +1 -0
- package/_esm/Authorization.js +441 -0
- package/_esm/Authorization.js.map +1 -0
- package/_esm/Base58.js +142 -0
- package/_esm/Base58.js.map +1 -0
- package/_esm/Base64.js +236 -0
- package/_esm/Base64.js.map +1 -0
- package/_esm/Blobs.js +624 -0
- package/_esm/Blobs.js.map +1 -0
- package/_esm/Block.js +177 -0
- package/_esm/Block.js.map +1 -0
- package/_esm/Bloom.js +57 -0
- package/_esm/Bloom.js.map +1 -0
- package/_esm/Bls.js +141 -0
- package/_esm/Bls.js.map +1 -0
- package/_esm/BlsPoint.js +59 -0
- package/_esm/BlsPoint.js.map +1 -0
- package/_esm/Bytes.js +719 -0
- package/_esm/Bytes.js.map +1 -0
- package/_esm/Caches.js +19 -0
- package/_esm/Caches.js.map +1 -0
- package/_esm/ContractAddress.js +110 -0
- package/_esm/ContractAddress.js.map +1 -0
- package/_esm/Ens.js +84 -0
- package/_esm/Ens.js.map +1 -0
- package/_esm/Errors.js +105 -0
- package/_esm/Errors.js.map +1 -0
- package/_esm/Fee.js +2 -0
- package/_esm/Fee.js.map +1 -0
- package/_esm/Filter.js +100 -0
- package/_esm/Filter.js.map +1 -0
- package/_esm/Hash.js +126 -0
- package/_esm/Hash.js.map +1 -0
- package/_esm/HdKey.js +107 -0
- package/_esm/HdKey.js.map +1 -0
- package/_esm/Hex.js +763 -0
- package/_esm/Hex.js.map +1 -0
- package/_esm/Json.js +62 -0
- package/_esm/Json.js.map +1 -0
- package/_esm/Kzg.js +30 -0
- package/_esm/Kzg.js.map +1 -0
- package/_esm/Log.js +181 -0
- package/_esm/Log.js.map +1 -0
- package/_esm/Mnemonic.js +154 -0
- package/_esm/Mnemonic.js.map +1 -0
- package/_esm/P256.js +131 -0
- package/_esm/P256.js.map +1 -0
- package/_esm/PersonalMessage.js +46 -0
- package/_esm/PersonalMessage.js.map +1 -0
- package/_esm/Provider.js +122 -0
- package/_esm/Provider.js.map +1 -0
- package/_esm/PublicKey.js +395 -0
- package/_esm/PublicKey.js.map +1 -0
- package/_esm/Rlp.js +267 -0
- package/_esm/Rlp.js.map +1 -0
- package/_esm/RpcRequest.js +131 -0
- package/_esm/RpcRequest.js.map +1 -0
- package/_esm/RpcResponse.js +457 -0
- package/_esm/RpcResponse.js.map +1 -0
- package/_esm/RpcSchema.js +46 -0
- package/_esm/RpcSchema.js.map +1 -0
- package/_esm/RpcTransport.js +110 -0
- package/_esm/RpcTransport.js.map +1 -0
- package/_esm/Secp256k1.js +173 -0
- package/_esm/Secp256k1.js.map +1 -0
- package/_esm/Signature.js +696 -0
- package/_esm/Signature.js.map +1 -0
- package/_esm/Siwe.js +374 -0
- package/_esm/Siwe.js.map +1 -0
- package/_esm/Solidity.js +104 -0
- package/_esm/Solidity.js.map +1 -0
- package/_esm/Transaction.js +176 -0
- package/_esm/Transaction.js.map +1 -0
- package/_esm/TransactionEnvelope.js +139 -0
- package/_esm/TransactionEnvelope.js.map +1 -0
- package/_esm/TransactionEnvelopeEip1559.js +455 -0
- package/_esm/TransactionEnvelopeEip1559.js.map +1 -0
- package/_esm/TransactionEnvelopeEip2930.js +439 -0
- package/_esm/TransactionEnvelopeEip2930.js.map +1 -0
- package/_esm/TransactionEnvelopeEip4844.js +542 -0
- package/_esm/TransactionEnvelopeEip4844.js.map +1 -0
- package/_esm/TransactionEnvelopeEip7702.js +442 -0
- package/_esm/TransactionEnvelopeEip7702.js.map +1 -0
- package/_esm/TransactionEnvelopeLegacy.js +495 -0
- package/_esm/TransactionEnvelopeLegacy.js.map +1 -0
- package/_esm/TransactionReceipt.js +229 -0
- package/_esm/TransactionReceipt.js.map +1 -0
- package/_esm/TransactionRequest.js +89 -0
- package/_esm/TransactionRequest.js.map +1 -0
- package/_esm/TypedData.js +635 -0
- package/_esm/TypedData.js.map +1 -0
- package/_esm/ValidatorData.js +52 -0
- package/_esm/ValidatorData.js.map +1 -0
- package/_esm/Value.js +196 -0
- package/_esm/Value.js.map +1 -0
- package/_esm/WebAuthnP256.js +471 -0
- package/_esm/WebAuthnP256.js.map +1 -0
- package/_esm/WebCryptoP256.js +116 -0
- package/_esm/WebCryptoP256.js.map +1 -0
- package/_esm/Withdrawal.js +72 -0
- package/_esm/Withdrawal.js.map +1 -0
- package/_esm/index.js +3366 -0
- package/_esm/index.js.map +1 -0
- package/_esm/internal/abi.js +9 -0
- package/_esm/internal/abi.js.map +1 -0
- package/_esm/internal/abiConstructor.js +2 -0
- package/_esm/internal/abiConstructor.js.map +1 -0
- package/_esm/internal/abiError.js +2 -0
- package/_esm/internal/abiError.js.map +1 -0
- package/_esm/internal/abiEvent.js +2 -0
- package/_esm/internal/abiEvent.js.map +1 -0
- package/_esm/internal/abiFunction.js +2 -0
- package/_esm/internal/abiFunction.js.map +1 -0
- package/_esm/internal/abiItem.js +122 -0
- package/_esm/internal/abiItem.js.map +1 -0
- package/_esm/internal/abiParameters.js +419 -0
- package/_esm/internal/abiParameters.js.map +1 -0
- package/_esm/internal/base58.js +91 -0
- package/_esm/internal/base58.js.map +1 -0
- package/_esm/internal/bytes.js +86 -0
- package/_esm/internal/bytes.js.map +1 -0
- package/_esm/internal/cursor.js +207 -0
- package/_esm/internal/cursor.js.map +1 -0
- package/_esm/internal/ens.js +47 -0
- package/_esm/internal/ens.js.map +1 -0
- package/_esm/internal/errors.js +26 -0
- package/_esm/internal/errors.js.map +1 -0
- package/_esm/internal/hdKey.js +17 -0
- package/_esm/internal/hdKey.js.map +1 -0
- package/_esm/internal/hex.js +64 -0
- package/_esm/internal/hex.js.map +1 -0
- package/_esm/internal/lru.js +36 -0
- package/_esm/internal/lru.js.map +1 -0
- package/_esm/internal/mnemonic/wordlists.js +11 -0
- package/_esm/internal/mnemonic/wordlists.js.map +1 -0
- package/_esm/internal/promise.js +52 -0
- package/_esm/internal/promise.js.map +1 -0
- package/_esm/internal/register.js +2 -0
- package/_esm/internal/register.js.map +1 -0
- package/_esm/internal/rpcSchema.js +2 -0
- package/_esm/internal/rpcSchema.js.map +1 -0
- package/_esm/internal/rpcSchemas/eth.js +2 -0
- package/_esm/internal/rpcSchemas/eth.js.map +1 -0
- package/_esm/internal/rpcSchemas/wallet.js +2 -0
- package/_esm/internal/rpcSchemas/wallet.js.map +1 -0
- package/_esm/internal/rpcTransport.js +20 -0
- package/_esm/internal/rpcTransport.js.map +1 -0
- package/_esm/internal/types.js +2 -0
- package/_esm/internal/types.js.map +1 -0
- package/_esm/internal/uid.js +15 -0
- package/_esm/internal/uid.js.map +1 -0
- package/_esm/internal/webauthn.js +35 -0
- package/_esm/internal/webauthn.js.map +1 -0
- package/_esm/package.json +1 -0
- package/_esm/trusted-setups/Paths.js +3 -0
- package/_esm/trusted-setups/Paths.js.map +1 -0
- package/_esm/trusted-setups/index.js +2 -0
- package/_esm/trusted-setups/index.js.map +1 -0
- package/_esm/trusted-setups/internal/paths.js +12 -0
- package/_esm/trusted-setups/internal/paths.js.map +1 -0
- package/_esm/version.js +3 -0
- package/_esm/version.js.map +1 -0
- package/_esm/window/index.js +2 -0
- package/_esm/window/index.js.map +1 -0
- package/_test/Abi.test-d/package.json +6 -0
- package/_test/AbiConstructor.test-d/package.json +6 -0
- package/_test/AbiError.test-d/package.json +6 -0
- package/_test/AbiEvent.snap-d/package.json +6 -0
- package/_test/AbiEvent.snap-d.ts +329 -0
- package/_test/AbiFunction.snap-d/package.json +6 -0
- package/_test/AbiFunction.snap-d.ts +262 -0
- package/_test/AbiItem.snap-d/package.json +6 -0
- package/_test/AbiItem.snap-d.ts +131 -0
- package/_test/AbiParameters.bench/package.json +6 -0
- package/_test/AbiParameters.snap-d/package.json +6 -0
- package/_test/AbiParameters.snap-d.ts +66 -0
- package/_test/Address.bench/package.json +6 -0
- package/_test/Base58.bench/package.json +6 -0
- package/_test/Hex.bench/package.json +6 -0
- package/_test/Hex.test-d/package.json +6 -0
- package/_test/PublicKey.test-d/package.json +6 -0
- package/_test/Rlp.bench/package.json +6 -0
- package/_test/Rlp.test-d/package.json +6 -0
- package/_test/Signature.snap-d/package.json +6 -0
- package/_test/Signature.snap-d.ts +96 -0
- package/_test/TransactionEnvelopeEip1559.test-d/package.json +6 -0
- package/_test/TransactionEnvelopeEip2930.test-d/package.json +6 -0
- package/_test/TransactionEnvelopeEip4844.test-d/package.json +6 -0
- package/_test/TransactionEnvelopeEip7702.test-d/package.json +6 -0
- package/_test/TransactionEnvelopeLegacy.test-d/package.json +6 -0
- package/_test/TypedData.test-d/package.json +6 -0
- package/_types/Abi.d.ts +137 -0
- package/_types/Abi.d.ts.map +1 -0
- package/_types/AbiConstructor.d.ts +305 -0
- package/_types/AbiConstructor.d.ts.map +1 -0
- package/_types/AbiError.d.ts +522 -0
- package/_types/AbiError.d.ts.map +1 -0
- package/_types/AbiEvent.d.ts +892 -0
- package/_types/AbiEvent.d.ts.map +1 -0
- package/_types/AbiFunction.d.ts +602 -0
- package/_types/AbiFunction.d.ts.map +1 -0
- package/_types/AbiItem.d.ts +544 -0
- package/_types/AbiItem.d.ts.map +1 -0
- package/_types/AbiParameters.d.ts +466 -0
- package/_types/AbiParameters.d.ts.map +1 -0
- package/_types/AccessList.d.ts +83 -0
- package/_types/AccessList.d.ts.map +1 -0
- package/_types/AccountProof.d.ts +32 -0
- package/_types/AccountProof.d.ts.map +1 -0
- package/_types/Address.d.ts +244 -0
- package/_types/Address.d.ts.map +1 -0
- package/_types/AesGcm.d.ts +116 -0
- package/_types/AesGcm.d.ts.map +1 -0
- package/_types/Authorization.d.ts +461 -0
- package/_types/Authorization.d.ts.map +1 -0
- package/_types/Base58.d.ts +131 -0
- package/_types/Base58.d.ts.map +1 -0
- package/_types/Base64.d.ts +244 -0
- package/_types/Base64.d.ts.map +1 -0
- package/_types/Blobs.d.ts +556 -0
- package/_types/Blobs.d.ts.map +1 -0
- package/_types/Block.d.ts +190 -0
- package/_types/Block.d.ts.map +1 -0
- package/_types/Bloom.d.ts +54 -0
- package/_types/Bloom.d.ts.map +1 -0
- package/_types/Bls.d.ts +365 -0
- package/_types/Bls.d.ts.map +1 -0
- package/_types/BlsPoint.d.ts +187 -0
- package/_types/BlsPoint.d.ts.map +1 -0
- package/_types/Bytes.d.ts +674 -0
- package/_types/Bytes.d.ts.map +1 -0
- package/_types/Caches.d.ts +13 -0
- package/_types/Caches.d.ts.map +1 -0
- package/_types/ContractAddress.d.ts +115 -0
- package/_types/ContractAddress.d.ts.map +1 -0
- package/_types/Ens.d.ts +72 -0
- package/_types/Ens.d.ts.map +1 -0
- package/_types/Errors.d.ts +33 -0
- package/_types/Errors.d.ts.map +1 -0
- package/_types/Fee.d.ts +41 -0
- package/_types/Fee.d.ts.map +1 -0
- package/_types/Filter.d.ts +100 -0
- package/_types/Filter.d.ts.map +1 -0
- package/_types/Hash.d.ts +135 -0
- package/_types/Hash.d.ts.map +1 -0
- package/_types/HdKey.d.ts +146 -0
- package/_types/HdKey.d.ts.map +1 -0
- package/_types/Hex.d.ts +711 -0
- package/_types/Hex.d.ts.map +1 -0
- package/_types/Json.d.ts +53 -0
- package/_types/Json.d.ts.map +1 -0
- package/_types/Kzg.d.ts +42 -0
- package/_types/Kzg.d.ts.map +1 -0
- package/_types/Log.d.ts +194 -0
- package/_types/Log.d.ts.map +1 -0
- package/_types/Mnemonic.d.ts +176 -0
- package/_types/Mnemonic.d.ts.map +1 -0
- package/_types/P256.d.ts +207 -0
- package/_types/P256.d.ts.map +1 -0
- package/_types/PersonalMessage.d.ts +49 -0
- package/_types/PersonalMessage.d.ts.map +1 -0
- package/_types/Provider.d.ts +268 -0
- package/_types/Provider.d.ts.map +1 -0
- package/_types/PublicKey.d.ts +327 -0
- package/_types/PublicKey.d.ts.map +1 -0
- package/_types/Rlp.d.ts +153 -0
- package/_types/Rlp.d.ts.map +1 -0
- package/_types/RpcRequest.d.ts +144 -0
- package/_types/RpcRequest.d.ts.map +1 -0
- package/_types/RpcResponse.d.ts +266 -0
- package/_types/RpcResponse.d.ts.map +1 -0
- package/_types/RpcSchema.d.ts +248 -0
- package/_types/RpcSchema.d.ts.map +1 -0
- package/_types/RpcTransport.d.ts +65 -0
- package/_types/RpcTransport.d.ts.map +1 -0
- package/_types/Secp256k1.d.ts +277 -0
- package/_types/Secp256k1.d.ts.map +1 -0
- package/_types/Signature.d.ts +601 -0
- package/_types/Signature.d.ts.map +1 -0
- package/_types/Siwe.d.ts +249 -0
- package/_types/Siwe.d.ts.map +1 -0
- package/_types/Solidity.d.ts +100 -0
- package/_types/Solidity.d.ts.map +1 -0
- package/_types/Transaction.d.ts +235 -0
- package/_types/Transaction.d.ts.map +1 -0
- package/_types/TransactionEnvelope.d.ts +141 -0
- package/_types/TransactionEnvelope.d.ts.map +1 -0
- package/_types/TransactionEnvelopeEip1559.d.ts +367 -0
- package/_types/TransactionEnvelopeEip1559.d.ts.map +1 -0
- package/_types/TransactionEnvelopeEip2930.d.ts +364 -0
- package/_types/TransactionEnvelopeEip2930.d.ts.map +1 -0
- package/_types/TransactionEnvelopeEip4844.d.ts +419 -0
- package/_types/TransactionEnvelopeEip4844.d.ts.map +1 -0
- package/_types/TransactionEnvelopeEip7702.d.ts +377 -0
- package/_types/TransactionEnvelopeEip7702.d.ts.map +1 -0
- package/_types/TransactionEnvelopeLegacy.d.ts +358 -0
- package/_types/TransactionEnvelopeLegacy.d.ts.map +1 -0
- package/_types/TransactionReceipt.d.ts +271 -0
- package/_types/TransactionReceipt.d.ts.map +1 -0
- package/_types/TransactionRequest.d.ts +92 -0
- package/_types/TransactionRequest.d.ts.map +1 -0
- package/_types/TypedData.d.ts +496 -0
- package/_types/TypedData.d.ts.map +1 -0
- package/_types/ValidatorData.d.ts +64 -0
- package/_types/ValidatorData.d.ts.map +1 -0
- package/_types/Value.d.ts +159 -0
- package/_types/Value.d.ts.map +1 -0
- package/_types/WebAuthnP256.d.ts +445 -0
- package/_types/WebAuthnP256.d.ts.map +1 -0
- package/_types/WebCryptoP256.d.ts +119 -0
- package/_types/WebCryptoP256.d.ts.map +1 -0
- package/_types/Withdrawal.d.ts +74 -0
- package/_types/Withdrawal.d.ts.map +1 -0
- package/_types/index.d.ts +3367 -0
- package/_types/index.d.ts.map +1 -0
- package/_types/internal/abi.d.ts +4 -0
- package/_types/internal/abi.d.ts.map +1 -0
- package/_types/internal/abiConstructor.d.ts +11 -0
- package/_types/internal/abiConstructor.d.ts.map +1 -0
- package/_types/internal/abiError.d.ts +11 -0
- package/_types/internal/abiError.d.ts.map +1 -0
- package/_types/internal/abiEvent.d.ts +60 -0
- package/_types/internal/abiEvent.d.ts.map +1 -0
- package/_types/internal/abiFunction.d.ts +11 -0
- package/_types/internal/abiFunction.d.ts.map +1 -0
- package/_types/internal/abiItem.d.ts +100 -0
- package/_types/internal/abiItem.d.ts.map +1 -0
- package/_types/internal/abiParameters.d.ts +169 -0
- package/_types/internal/abiParameters.d.ts.map +1 -0
- package/_types/internal/base58.d.ts +17 -0
- package/_types/internal/base58.d.ts.map +1 -0
- package/_types/internal/bytes.d.ts +52 -0
- package/_types/internal/bytes.d.ts.map +1 -0
- package/_types/internal/cursor.d.ts +70 -0
- package/_types/internal/cursor.d.ts.map +1 -0
- package/_types/internal/ens.d.ts +23 -0
- package/_types/internal/ens.d.ts.map +1 -0
- package/_types/internal/errors.d.ts +7 -0
- package/_types/internal/errors.d.ts.map +1 -0
- package/_types/internal/hdKey.d.ts +10 -0
- package/_types/internal/hdKey.d.ts.map +1 -0
- package/_types/internal/hex.d.ts +39 -0
- package/_types/internal/hex.d.ts.map +1 -0
- package/_types/internal/lru.d.ts +13 -0
- package/_types/internal/lru.d.ts.map +1 -0
- package/_types/internal/mnemonic/wordlists.d.ts +11 -0
- package/_types/internal/mnemonic/wordlists.d.ts.map +1 -0
- package/_types/internal/promise.d.ts +27 -0
- package/_types/internal/promise.d.ts.map +1 -0
- package/_types/internal/register.d.ts +13 -0
- package/_types/internal/register.d.ts.map +1 -0
- package/_types/internal/rpcSchema.d.ts +12 -0
- package/_types/internal/rpcSchema.d.ts.map +1 -0
- package/_types/internal/rpcSchemas/eth.d.ts +718 -0
- package/_types/internal/rpcSchemas/eth.d.ts.map +1 -0
- package/_types/internal/rpcSchemas/wallet.d.ts +416 -0
- package/_types/internal/rpcSchemas/wallet.d.ts.map +1 -0
- package/_types/internal/rpcTransport.d.ts +38 -0
- package/_types/internal/rpcTransport.d.ts.map +1 -0
- package/_types/internal/types.d.ts +284 -0
- package/_types/internal/types.d.ts.map +1 -0
- package/_types/internal/uid.d.ts +3 -0
- package/_types/internal/uid.d.ts.map +1 -0
- package/_types/internal/webauthn.d.ts +127 -0
- package/_types/internal/webauthn.d.ts.map +1 -0
- package/_types/trusted-setups/Paths.d.ts +2 -0
- package/_types/trusted-setups/Paths.d.ts.map +1 -0
- package/_types/trusted-setups/index.d.ts +2 -0
- package/_types/trusted-setups/index.d.ts.map +1 -0
- package/_types/trusted-setups/internal/paths.d.ts +3 -0
- package/_types/trusted-setups/internal/paths.d.ts.map +1 -0
- package/_types/version.d.ts +3 -0
- package/_types/version.d.ts.map +1 -0
- package/_types/window/index.d.ts +7 -0
- package/_types/window/index.d.ts.map +1 -0
- package/index.ts +3427 -0
- package/internal/abi.ts +11 -0
- package/internal/abiConstructor.ts +32 -0
- package/internal/abiError.ts +30 -0
- package/internal/abiEvent.ts +154 -0
- package/internal/abiFunction.ts +32 -0
- package/internal/abiItem.ts +593 -0
- package/internal/abiParameters.ts +741 -0
- package/internal/base58.ts +106 -0
- package/internal/bytes.ts +152 -0
- package/internal/cursor.ts +252 -0
- package/internal/ens.ts +64 -0
- package/internal/errors.ts +26 -0
- package/internal/hdKey.ts +25 -0
- package/internal/hex.ts +123 -0
- package/internal/lru.ts +34 -0
- package/internal/mnemonic/wordlists.ts +10 -0
- package/internal/promise.ts +66 -0
- package/internal/register.ts +15 -0
- package/internal/rpcSchema.ts +20 -0
- package/internal/rpcSchemas/eth.ts +727 -0
- package/internal/rpcSchemas/wallet.ts +428 -0
- package/internal/rpcTransport.ts +74 -0
- package/internal/types.ts +414 -0
- package/internal/uid.ts +15 -0
- package/internal/webauthn.ts +198 -0
- package/package.json +500 -20
- package/trusted-setups/Paths/package.json +6 -0
- package/trusted-setups/Paths.ts +3 -0
- package/trusted-setups/index.ts +1 -0
- package/trusted-setups/internal/paths.ts +13 -0
- package/trusted-setups/internal/setups/mainnet.json +8265 -0
- package/trusted-setups/internal/setups/mainnet.txt +4163 -0
- package/trusted-setups/package.json +6 -0
- package/tsdoc.json +4 -0
- package/version/package.json +6 -0
- package/version.ts +2 -0
- package/window/index.ts +7 -0
- package/window/package.json +6 -0
- package/cl/ansiesc.js +0 -25
- package/cl/deps.js +0 -7
- package/cl/editor.js +0 -141
- package/cl/index.html +0 -19
- package/cl/ox.js +0 -44
- package/cl/socket.io.js +0 -1922
- package/cl/style.css +0 -37
- package/srv/deps.js +0 -88
- package/srv/httpSrv.js +0 -82
- package/srv/ox.js +0 -44
- package/srv/remoteXtermReq.js +0 -70
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type * as AccessList from './AccessList.js';
|
|
2
|
+
import type * as Address from './Address.js';
|
|
3
|
+
import * as Authorization from './Authorization.js';
|
|
4
|
+
import type * as Errors from './Errors.js';
|
|
5
|
+
import * as Hex from './Hex.js';
|
|
6
|
+
import type { Compute } from './internal/types.js';
|
|
7
|
+
/** A Transaction Request that is generic to all transaction types, as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/4aca1d7a3e5aab24c8f6437131289ad386944eaa/src/schemas/transaction.yaml#L358-L423). */
|
|
8
|
+
export type TransactionRequest<bigintType = bigint, numberType = number, type extends string = string> = Compute<{
|
|
9
|
+
/** EIP-2930 Access List. */
|
|
10
|
+
accessList?: AccessList.AccessList | undefined;
|
|
11
|
+
/** EIP-7702 Authorization List. */
|
|
12
|
+
authorizationList?: Authorization.ListSigned<bigintType, numberType> | undefined;
|
|
13
|
+
/** Versioned hashes of blobs to be included in the transaction. */
|
|
14
|
+
blobVersionedHashes?: readonly Hex.Hex[];
|
|
15
|
+
/** Raw blob data. */
|
|
16
|
+
blobs?: readonly Hex.Hex[] | undefined;
|
|
17
|
+
/** EIP-155 Chain ID. */
|
|
18
|
+
chainId?: numberType | undefined;
|
|
19
|
+
/** Contract code or a hashed method call with encoded args */
|
|
20
|
+
data?: Hex.Hex | undefined;
|
|
21
|
+
/** @alias `data` – added for TransactionEnvelope - Transaction compatibility. */
|
|
22
|
+
input?: Hex.Hex | undefined;
|
|
23
|
+
/** Sender of the transaction. */
|
|
24
|
+
from?: Address.Address | undefined;
|
|
25
|
+
/** Gas provided for transaction execution */
|
|
26
|
+
gas?: bigintType | undefined;
|
|
27
|
+
/** Base fee per gas. */
|
|
28
|
+
gasPrice?: bigintType | undefined;
|
|
29
|
+
/** Maximum total fee per gas sender is willing to pay for blob gas (in wei). */
|
|
30
|
+
maxFeePerBlobGas?: bigintType | undefined;
|
|
31
|
+
/** Total fee per gas in wei (gasPrice/baseFeePerGas + maxPriorityFeePerGas). */
|
|
32
|
+
maxFeePerGas?: bigintType | undefined;
|
|
33
|
+
/** Max priority fee per gas (in wei). */
|
|
34
|
+
maxPriorityFeePerGas?: bigintType | undefined;
|
|
35
|
+
/** Unique number identifying this transaction */
|
|
36
|
+
nonce?: bigintType | undefined;
|
|
37
|
+
/** Transaction recipient */
|
|
38
|
+
to?: Address.Address | null | undefined;
|
|
39
|
+
/** Transaction type */
|
|
40
|
+
type?: type | undefined;
|
|
41
|
+
/** Value in wei sent with this transaction */
|
|
42
|
+
value?: bigintType | undefined;
|
|
43
|
+
}>;
|
|
44
|
+
/** RPC representation of a {@link ox#TransactionRequest.TransactionRequest}. */
|
|
45
|
+
export type Rpc = TransactionRequest<Hex.Hex, Hex.Hex, string>;
|
|
46
|
+
/**
|
|
47
|
+
* Converts a {@link ox#TransactionRequest.TransactionRequest} to a {@link ox#TransactionRequest.Rpc}.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```ts twoslash
|
|
51
|
+
* import { TransactionRequest, Value } from 'ox'
|
|
52
|
+
*
|
|
53
|
+
* const request = TransactionRequest.toRpc({
|
|
54
|
+
* to: '0x0000000000000000000000000000000000000000',
|
|
55
|
+
* value: Value.fromEther('0.01'),
|
|
56
|
+
* })
|
|
57
|
+
* ```
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ### Using with a Provider
|
|
61
|
+
*
|
|
62
|
+
* You can use {@link ox#Provider.(from:function)} to instantiate an EIP-1193 Provider and
|
|
63
|
+
* send a transaction to the Wallet using the `eth_sendTransaction` method.
|
|
64
|
+
*
|
|
65
|
+
* ```ts twoslash
|
|
66
|
+
* import 'ox/window'
|
|
67
|
+
* import { Provider, TransactionRequest, Value } from 'ox'
|
|
68
|
+
*
|
|
69
|
+
* const provider = Provider.from(window.ethereum!)
|
|
70
|
+
*
|
|
71
|
+
* const request = TransactionRequest.toRpc({
|
|
72
|
+
* to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
|
|
73
|
+
* value: Value.fromEther('0.01'),
|
|
74
|
+
* })
|
|
75
|
+
*
|
|
76
|
+
* const hash = await provider.request({ // [!code focus]
|
|
77
|
+
* method: 'eth_sendTransaction', // [!code focus]
|
|
78
|
+
* params: [request], // [!code focus]
|
|
79
|
+
* }) // [!code focus]
|
|
80
|
+
* ```
|
|
81
|
+
*
|
|
82
|
+
* @param request - The request to convert.
|
|
83
|
+
* @returns An RPC request.
|
|
84
|
+
*/
|
|
85
|
+
export declare function toRpc(request: TransactionRequest): Rpc;
|
|
86
|
+
export declare namespace toRpc {
|
|
87
|
+
var parseError: (error: unknown) => toRpc.ErrorType;
|
|
88
|
+
}
|
|
89
|
+
export declare namespace toRpc {
|
|
90
|
+
type ErrorType = Authorization.toRpcList.ErrorType | Hex.fromNumber.ErrorType | Errors.GlobalErrorType;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=TransactionRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionRequest.d.ts","sourceRoot":"","sources":["../TransactionRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAClD,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,wPAAwP;AACxP,MAAM,MAAM,kBAAkB,CAC5B,UAAU,GAAG,MAAM,EACnB,UAAU,GAAG,MAAM,EACnB,IAAI,SAAS,MAAM,GAAG,MAAM,IAC1B,OAAO,CAAC;IACV,4BAA4B;IAC5B,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,GAAG,SAAS,CAAA;IAC9C,mCAAmC;IACnC,iBAAiB,CAAC,EACd,aAAa,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,GAChD,SAAS,CAAA;IACb,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,EAAE,CAAA;IACxC,qBAAqB;IACrB,KAAK,CAAC,EAAE,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;IACtC,wBAAwB;IACxB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAChC,8DAA8D;IAC9D,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC1B,iFAAiF;IACjF,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC3B,iCAAiC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;IAClC,6CAA6C;IAC7C,GAAG,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC5B,wBAAwB;IACxB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACjC,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACzC,gFAAgF;IAChF,YAAY,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACrC,yCAAyC;IACzC,oBAAoB,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC7C,iDAAiD;IACjD,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC9B,4BAA4B;IAC5B,EAAE,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;IACvC,uBAAuB;IACvB,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;IACvB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CAC/B,CAAC,CAAA;AAEF,gFAAgF;AAChF,MAAM,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,kBAAkB,GAAG,GAAG,CA8CtD;yBA9Ce,KAAK;4BAuDM,OAAO,KAEvB,KAAK,CAAC,SAAS;;AAT1B,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,KAAY,SAAS,GACjB,aAAa,CAAC,SAAS,CAAC,SAAS,GACjC,GAAG,CAAC,UAAU,CAAC,SAAS,GACxB,MAAM,CAAC,eAAe,CAAA;CAC3B"}
|
|
@@ -0,0 +1,496 @@
|
|
|
1
|
+
import type * as abitype from 'abitype';
|
|
2
|
+
import * as AbiParameters from './AbiParameters.js';
|
|
3
|
+
import * as Address from './Address.js';
|
|
4
|
+
import * as Bytes from './Bytes.js';
|
|
5
|
+
import * as Errors from './Errors.js';
|
|
6
|
+
import * as Hash from './Hash.js';
|
|
7
|
+
import * as Hex from './Hex.js';
|
|
8
|
+
import * as Json from './Json.js';
|
|
9
|
+
import type { Compute } from './internal/types.js';
|
|
10
|
+
export type TypedData = abitype.TypedData;
|
|
11
|
+
export type Domain = abitype.TypedDataDomain;
|
|
12
|
+
export type Parameter = abitype.TypedDataParameter;
|
|
13
|
+
export type Definition<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData, primaryTypes = typedData extends TypedData ? keyof typedData : string> = primaryType extends 'EIP712Domain' ? EIP712DomainDefinition<typedData, primaryType> : MessageDefinition<typedData, primaryType, primaryTypes>;
|
|
14
|
+
export type EIP712DomainDefinition<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends 'EIP712Domain' = 'EIP712Domain', schema extends Record<string, unknown> = typedData extends TypedData ? abitype.TypedDataToPrimitiveTypes<typedData> : Record<string, unknown>> = {
|
|
15
|
+
types?: typedData | undefined;
|
|
16
|
+
} & {
|
|
17
|
+
primaryType: 'EIP712Domain' | (primaryType extends 'EIP712Domain' ? primaryType : never);
|
|
18
|
+
domain: schema extends {
|
|
19
|
+
EIP712Domain: infer domain;
|
|
20
|
+
} ? domain : Compute<Domain>;
|
|
21
|
+
message?: undefined;
|
|
22
|
+
};
|
|
23
|
+
export type MessageDefinition<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData = keyof typedData, primaryTypes = typedData extends TypedData ? keyof typedData : string, schema extends Record<string, unknown> = typedData extends TypedData ? abitype.TypedDataToPrimitiveTypes<typedData> : Record<string, unknown>, message = schema[primaryType extends keyof schema ? primaryType : keyof schema]> = {
|
|
24
|
+
types: typedData;
|
|
25
|
+
} & {
|
|
26
|
+
primaryType: primaryTypes | (primaryType extends primaryTypes ? primaryType : never);
|
|
27
|
+
domain?: (schema extends {
|
|
28
|
+
EIP712Domain: infer domain;
|
|
29
|
+
} ? domain : Compute<Domain>) | undefined;
|
|
30
|
+
message: {
|
|
31
|
+
[_: string]: any;
|
|
32
|
+
} extends message ? Record<string, unknown> : message;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Asserts that [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) is valid.
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```ts twoslash
|
|
39
|
+
* import { TypedData } from 'ox'
|
|
40
|
+
*
|
|
41
|
+
* TypedData.assert({
|
|
42
|
+
* domain: {
|
|
43
|
+
* name: 'Ether!',
|
|
44
|
+
* version: '1',
|
|
45
|
+
* chainId: 1,
|
|
46
|
+
* verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
|
|
47
|
+
* },
|
|
48
|
+
* primaryType: 'Foo',
|
|
49
|
+
* types: {
|
|
50
|
+
* Foo: [
|
|
51
|
+
* { name: 'address', type: 'address' },
|
|
52
|
+
* { name: 'name', type: 'string' },
|
|
53
|
+
* { name: 'foo', type: 'string' },
|
|
54
|
+
* ],
|
|
55
|
+
* },
|
|
56
|
+
* message: {
|
|
57
|
+
* address: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
58
|
+
* name: 'jxom',
|
|
59
|
+
* foo: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
60
|
+
* },
|
|
61
|
+
* })
|
|
62
|
+
* ```
|
|
63
|
+
*
|
|
64
|
+
* @param value - The Typed Data to validate.
|
|
65
|
+
*/
|
|
66
|
+
export declare function assert<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | 'EIP712Domain'>(value: assert.Value<typedData, primaryType>): void;
|
|
67
|
+
export declare namespace assert {
|
|
68
|
+
var parseError: (error: unknown) => assert.ErrorType;
|
|
69
|
+
}
|
|
70
|
+
export declare namespace assert {
|
|
71
|
+
type Value<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData> = Definition<typedData, primaryType>;
|
|
72
|
+
type ErrorType = Address.InvalidAddressError | BytesSizeMismatchError | InvalidPrimaryTypeError | Hex.fromNumber.ErrorType | Hex.size.ErrorType | Errors.GlobalErrorType;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Creates [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) [`domainSeparator`](https://eips.ethereum.org/EIPS/eip-712#definition-of-domainseparator) for the provided domain.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```ts twoslash
|
|
79
|
+
* import { TypedData } from 'ox'
|
|
80
|
+
*
|
|
81
|
+
* TypedData.domainSeparator({
|
|
82
|
+
* name: 'Ether!',
|
|
83
|
+
* version: '1',
|
|
84
|
+
* chainId: 1,
|
|
85
|
+
* verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
|
|
86
|
+
* })
|
|
87
|
+
* // @log: '0x9911ee4f58a7059a8f5385248040e6984d80e2c849500fe6a4d11c4fa98c2af3'
|
|
88
|
+
* ```
|
|
89
|
+
*
|
|
90
|
+
* @param domain - The domain for which to create the domain separator.
|
|
91
|
+
* @returns The domain separator.
|
|
92
|
+
*/
|
|
93
|
+
export declare function domainSeparator(domain: Domain): Hex.Hex;
|
|
94
|
+
export declare namespace domainSeparator {
|
|
95
|
+
var parseError: (error: unknown) => domainSeparator.ErrorType;
|
|
96
|
+
}
|
|
97
|
+
export declare namespace domainSeparator {
|
|
98
|
+
type ErrorType = hashDomain.ErrorType | Errors.GlobalErrorType;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Encodes typed data in [EIP-712 format](https://eips.ethereum.org/EIPS/eip-712): `0x19 ‖ 0x01 ‖ domainSeparator ‖ hashStruct(message)`.
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts twoslash
|
|
105
|
+
* import { TypedData, Hash } from 'ox'
|
|
106
|
+
*
|
|
107
|
+
* const data = TypedData.encode({ // [!code focus:33]
|
|
108
|
+
* domain: {
|
|
109
|
+
* name: 'Ether Mail',
|
|
110
|
+
* version: '1',
|
|
111
|
+
* chainId: 1,
|
|
112
|
+
* verifyingContract: '0x0000000000000000000000000000000000000000',
|
|
113
|
+
* },
|
|
114
|
+
* types: {
|
|
115
|
+
* Person: [
|
|
116
|
+
* { name: 'name', type: 'string' },
|
|
117
|
+
* { name: 'wallet', type: 'address' },
|
|
118
|
+
* ],
|
|
119
|
+
* Mail: [
|
|
120
|
+
* { name: 'from', type: 'Person' },
|
|
121
|
+
* { name: 'to', type: 'Person' },
|
|
122
|
+
* { name: 'contents', type: 'string' },
|
|
123
|
+
* ],
|
|
124
|
+
* },
|
|
125
|
+
* primaryType: 'Mail',
|
|
126
|
+
* message: {
|
|
127
|
+
* from: {
|
|
128
|
+
* name: 'Cow',
|
|
129
|
+
* wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',
|
|
130
|
+
* },
|
|
131
|
+
* to: {
|
|
132
|
+
* name: 'Bob',
|
|
133
|
+
* wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',
|
|
134
|
+
* },
|
|
135
|
+
* contents: 'Hello, Bob!',
|
|
136
|
+
* },
|
|
137
|
+
* })
|
|
138
|
+
* // @log: '0x19012fdf3441fcaf4f30c7e16292b258a5d7054a4e2e00dbd7b7d2f467f2b8fb9413c52c0ee5d84264471806290a3f2c4cecfc5490626bf912d01f240d7a274b371e'
|
|
139
|
+
* // @log: (0x19 ‖ 0x01 ‖ domainSeparator ‖ hashStruct(message))
|
|
140
|
+
*
|
|
141
|
+
* const hash = Hash.keccak256(data)
|
|
142
|
+
* ```
|
|
143
|
+
*
|
|
144
|
+
* @param value - The Typed Data to encode.
|
|
145
|
+
* @returns The encoded Typed Data.
|
|
146
|
+
*/
|
|
147
|
+
export declare function encode<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | 'EIP712Domain'>(value: encode.Value<typedData, primaryType>): Hex.Hex;
|
|
148
|
+
export declare namespace encode {
|
|
149
|
+
var parseError: (error: unknown) => encode.ErrorType;
|
|
150
|
+
}
|
|
151
|
+
export declare namespace encode {
|
|
152
|
+
type Value<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData> = Definition<typedData, primaryType>;
|
|
153
|
+
type ErrorType = extractEip712DomainTypes.ErrorType | hashDomain.ErrorType | hashStruct.ErrorType | assert.ErrorType | Errors.GlobalErrorType;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Encodes [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) schema for the provided primaryType.
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ```ts twoslash
|
|
160
|
+
* import { TypedData } from 'ox'
|
|
161
|
+
*
|
|
162
|
+
* TypedData.encodeType({
|
|
163
|
+
* types: {
|
|
164
|
+
* Foo: [
|
|
165
|
+
* { name: 'address', type: 'address' },
|
|
166
|
+
* { name: 'name', type: 'string' },
|
|
167
|
+
* { name: 'foo', type: 'string' },
|
|
168
|
+
* ],
|
|
169
|
+
* },
|
|
170
|
+
* primaryType: 'Foo',
|
|
171
|
+
* })
|
|
172
|
+
* // @log: 'Foo(address address,string name,string foo)'
|
|
173
|
+
* ```
|
|
174
|
+
*
|
|
175
|
+
* @param value - The Typed Data schema.
|
|
176
|
+
* @returns The encoded type.
|
|
177
|
+
*/
|
|
178
|
+
export declare function encodeType(value: encodeType.Value): string;
|
|
179
|
+
export declare namespace encodeType {
|
|
180
|
+
var parseError: (error: unknown) => encodeType.ErrorType;
|
|
181
|
+
}
|
|
182
|
+
export declare namespace encodeType {
|
|
183
|
+
type Value = {
|
|
184
|
+
primaryType: string;
|
|
185
|
+
types: TypedData;
|
|
186
|
+
};
|
|
187
|
+
type ErrorType = findTypeDependencies.ErrorType | Errors.GlobalErrorType;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Gets [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) schema for EIP-721 domain.
|
|
191
|
+
*
|
|
192
|
+
* @example
|
|
193
|
+
* ```ts twoslash
|
|
194
|
+
* import { TypedData } from 'ox'
|
|
195
|
+
*
|
|
196
|
+
* TypedData.extractEip712DomainTypes({
|
|
197
|
+
* name: 'Ether!',
|
|
198
|
+
* version: '1',
|
|
199
|
+
* chainId: 1,
|
|
200
|
+
* verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
|
|
201
|
+
* })
|
|
202
|
+
* // @log: [
|
|
203
|
+
* // @log: { 'name': 'name', 'type': 'string' },
|
|
204
|
+
* // @log: { 'name': 'version', 'type': 'string' },
|
|
205
|
+
* // @log: { 'name': 'chainId', 'type': 'uint256' },
|
|
206
|
+
* // @log: { 'name': 'verifyingContract', 'type': 'address' },
|
|
207
|
+
* // @log: ]
|
|
208
|
+
* ```
|
|
209
|
+
*
|
|
210
|
+
* @param domain - The EIP-712 domain.
|
|
211
|
+
* @returns The EIP-712 domain schema.
|
|
212
|
+
*/
|
|
213
|
+
export declare function extractEip712DomainTypes(domain: Domain | undefined): Parameter[];
|
|
214
|
+
export declare namespace extractEip712DomainTypes {
|
|
215
|
+
var parseError: (error: unknown) => extractEip712DomainTypes.ErrorType;
|
|
216
|
+
}
|
|
217
|
+
export declare namespace extractEip712DomainTypes {
|
|
218
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Gets the payload to use for signing typed data in [EIP-712 format](https://eips.ethereum.org/EIPS/eip-712).
|
|
222
|
+
*
|
|
223
|
+
* @example
|
|
224
|
+
* ```ts twoslash
|
|
225
|
+
* import { Secp256k1, TypedData, Hash } from 'ox'
|
|
226
|
+
*
|
|
227
|
+
* const payload = TypedData.getSignPayload({ // [!code focus:99]
|
|
228
|
+
* domain: {
|
|
229
|
+
* name: 'Ether Mail',
|
|
230
|
+
* version: '1',
|
|
231
|
+
* chainId: 1,
|
|
232
|
+
* verifyingContract: '0x0000000000000000000000000000000000000000',
|
|
233
|
+
* },
|
|
234
|
+
* types: {
|
|
235
|
+
* Person: [
|
|
236
|
+
* { name: 'name', type: 'string' },
|
|
237
|
+
* { name: 'wallet', type: 'address' },
|
|
238
|
+
* ],
|
|
239
|
+
* Mail: [
|
|
240
|
+
* { name: 'from', type: 'Person' },
|
|
241
|
+
* { name: 'to', type: 'Person' },
|
|
242
|
+
* { name: 'contents', type: 'string' },
|
|
243
|
+
* ],
|
|
244
|
+
* },
|
|
245
|
+
* primaryType: 'Mail',
|
|
246
|
+
* message: {
|
|
247
|
+
* from: {
|
|
248
|
+
* name: 'Cow',
|
|
249
|
+
* wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',
|
|
250
|
+
* },
|
|
251
|
+
* to: {
|
|
252
|
+
* name: 'Bob',
|
|
253
|
+
* wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',
|
|
254
|
+
* },
|
|
255
|
+
* contents: 'Hello, Bob!',
|
|
256
|
+
* },
|
|
257
|
+
* })
|
|
258
|
+
*
|
|
259
|
+
* const signature = Secp256k1.sign({ payload, privateKey: '0x...' })
|
|
260
|
+
* ```
|
|
261
|
+
*
|
|
262
|
+
* @param value - The typed data to get the sign payload for.
|
|
263
|
+
* @returns The payload to use for signing.
|
|
264
|
+
*/
|
|
265
|
+
export declare function getSignPayload<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | 'EIP712Domain'>(value: encode.Value<typedData, primaryType>): Hex.Hex;
|
|
266
|
+
export declare namespace getSignPayload {
|
|
267
|
+
var parseError: (error: unknown) => getSignPayload.ErrorType;
|
|
268
|
+
}
|
|
269
|
+
export declare namespace getSignPayload {
|
|
270
|
+
type ErrorType = Hash.keccak256.ErrorType | encode.ErrorType | Errors.GlobalErrorType;
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Hashes [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) domain.
|
|
274
|
+
*
|
|
275
|
+
* @example
|
|
276
|
+
* ```ts twoslash
|
|
277
|
+
* import { TypedData } from 'ox'
|
|
278
|
+
*
|
|
279
|
+
* TypedData.hashDomain({
|
|
280
|
+
* domain: {
|
|
281
|
+
* name: 'Ether Mail',
|
|
282
|
+
* version: '1',
|
|
283
|
+
* chainId: 1,
|
|
284
|
+
* verifyingContract: '0x0000000000000000000000000000000000000000',
|
|
285
|
+
* },
|
|
286
|
+
* })
|
|
287
|
+
* // @log: '0x6192106f129ce05c9075d319c1fa6ea9b3ae37cbd0c1ef92e2be7137bb07baa1'
|
|
288
|
+
* ```
|
|
289
|
+
*
|
|
290
|
+
* @param value - The Typed Data domain and types.
|
|
291
|
+
* @returns The hashed domain.
|
|
292
|
+
*/
|
|
293
|
+
export declare function hashDomain(value: hashDomain.Value): Hex.Hex;
|
|
294
|
+
export declare namespace hashDomain {
|
|
295
|
+
var parseError: (error: unknown) => hashDomain.ErrorType;
|
|
296
|
+
}
|
|
297
|
+
export declare namespace hashDomain {
|
|
298
|
+
type Value = {
|
|
299
|
+
/** The Typed Data domain. */
|
|
300
|
+
domain: Domain;
|
|
301
|
+
/** The Typed Data types. */
|
|
302
|
+
types?: {
|
|
303
|
+
EIP712Domain?: readonly Parameter[] | undefined;
|
|
304
|
+
[key: string]: readonly Parameter[] | undefined;
|
|
305
|
+
} | undefined;
|
|
306
|
+
};
|
|
307
|
+
type ErrorType = hashStruct.ErrorType | Errors.GlobalErrorType;
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Hashes [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) struct.
|
|
311
|
+
*
|
|
312
|
+
* @example
|
|
313
|
+
* ```ts twoslash
|
|
314
|
+
* import { TypedData } from 'ox'
|
|
315
|
+
*
|
|
316
|
+
* TypedData.hashStruct({
|
|
317
|
+
* types: {
|
|
318
|
+
* Foo: [
|
|
319
|
+
* { name: 'address', type: 'address' },
|
|
320
|
+
* { name: 'name', type: 'string' },
|
|
321
|
+
* { name: 'foo', type: 'string' },
|
|
322
|
+
* ],
|
|
323
|
+
* },
|
|
324
|
+
* primaryType: 'Foo',
|
|
325
|
+
* data: {
|
|
326
|
+
* address: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
327
|
+
* name: 'jxom',
|
|
328
|
+
* foo: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
329
|
+
* },
|
|
330
|
+
* })
|
|
331
|
+
* // @log: '0x996fb3b6d48c50312d69abdd4c1b6fb02057c85aa86bb8d04c6f023326a168ce'
|
|
332
|
+
* ```
|
|
333
|
+
*
|
|
334
|
+
* @param value - The Typed Data struct to hash.
|
|
335
|
+
* @returns The hashed Typed Data struct.
|
|
336
|
+
*/
|
|
337
|
+
export declare function hashStruct(value: hashStruct.Value): Hex.Hex;
|
|
338
|
+
export declare namespace hashStruct {
|
|
339
|
+
var parseError: (error: unknown) => hashStruct.ErrorType;
|
|
340
|
+
}
|
|
341
|
+
export declare namespace hashStruct {
|
|
342
|
+
type Value = {
|
|
343
|
+
/** The Typed Data struct to hash. */
|
|
344
|
+
data: Record<string, unknown>;
|
|
345
|
+
/** The primary type of the Typed Data struct. */
|
|
346
|
+
primaryType: string;
|
|
347
|
+
/** The types of the Typed Data struct. */
|
|
348
|
+
types: TypedData;
|
|
349
|
+
};
|
|
350
|
+
type ErrorType = encodeData.ErrorType | Hash.keccak256.ErrorType | Errors.GlobalErrorType;
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Serializes [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) schema into string.
|
|
354
|
+
*
|
|
355
|
+
* @example
|
|
356
|
+
* ```ts twoslash
|
|
357
|
+
* import { TypedData } from 'ox'
|
|
358
|
+
*
|
|
359
|
+
* TypedData.serialize({
|
|
360
|
+
* domain: {
|
|
361
|
+
* name: 'Ether!',
|
|
362
|
+
* version: '1',
|
|
363
|
+
* chainId: 1,
|
|
364
|
+
* verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
|
|
365
|
+
* },
|
|
366
|
+
* primaryType: 'Foo',
|
|
367
|
+
* types: {
|
|
368
|
+
* Foo: [
|
|
369
|
+
* { name: 'address', type: 'address' },
|
|
370
|
+
* { name: 'name', type: 'string' },
|
|
371
|
+
* { name: 'foo', type: 'string' },
|
|
372
|
+
* ],
|
|
373
|
+
* },
|
|
374
|
+
* message: {
|
|
375
|
+
* address: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
376
|
+
* name: 'jxom',
|
|
377
|
+
* foo: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
378
|
+
* },
|
|
379
|
+
* })
|
|
380
|
+
* // @log: "{"domain":{},"message":{"address":"0xb9cab4f0e46f7f6b1024b5a7463734fa68e633f9","name":"jxom","foo":"0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9"},"primaryType":"Foo","types":{"Foo":[{"name":"address","type":"address"},{"name":"name","type":"string"},{"name":"foo","type":"string"}]}}"
|
|
381
|
+
* ```
|
|
382
|
+
*
|
|
383
|
+
* @param value - The Typed Data schema to serialize.
|
|
384
|
+
* @returns The serialized Typed Data schema. w
|
|
385
|
+
*/
|
|
386
|
+
export declare function serialize<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | 'EIP712Domain'>(value: serialize.Value<typedData, primaryType>): string;
|
|
387
|
+
export declare namespace serialize {
|
|
388
|
+
var parseError: (error: unknown) => serialize.ErrorType;
|
|
389
|
+
}
|
|
390
|
+
export declare namespace serialize {
|
|
391
|
+
type Value<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData> = Definition<typedData, primaryType>;
|
|
392
|
+
type ErrorType = Json.stringify.ErrorType | Errors.GlobalErrorType;
|
|
393
|
+
}
|
|
394
|
+
/**
|
|
395
|
+
* Checks if [EIP-712 Typed Data](https://eips.ethereum.org/EIPS/eip-712) is valid.
|
|
396
|
+
*
|
|
397
|
+
* @example
|
|
398
|
+
* ```ts twoslash
|
|
399
|
+
* import { TypedData } from 'ox'
|
|
400
|
+
*
|
|
401
|
+
* const valid = TypedData.validate({
|
|
402
|
+
* domain: {
|
|
403
|
+
* name: 'Ether!',
|
|
404
|
+
* version: '1',
|
|
405
|
+
* chainId: 1,
|
|
406
|
+
* verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
|
|
407
|
+
* },
|
|
408
|
+
* primaryType: 'Foo',
|
|
409
|
+
* types: {
|
|
410
|
+
* Foo: [
|
|
411
|
+
* { name: 'address', type: 'address' },
|
|
412
|
+
* { name: 'name', type: 'string' },
|
|
413
|
+
* { name: 'foo', type: 'string' },
|
|
414
|
+
* ],
|
|
415
|
+
* },
|
|
416
|
+
* message: {
|
|
417
|
+
* address: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
418
|
+
* name: 'jxom',
|
|
419
|
+
* foo: '0xb9CAB4F0E46F7F6b1024b5A7463734fa68E633f9',
|
|
420
|
+
* },
|
|
421
|
+
* })
|
|
422
|
+
* // @log: true
|
|
423
|
+
* ```
|
|
424
|
+
*
|
|
425
|
+
* @param value - The Typed Data to validate.
|
|
426
|
+
*/
|
|
427
|
+
export declare function validate<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | 'EIP712Domain'>(value: assert.Value<typedData, primaryType>): boolean;
|
|
428
|
+
export declare namespace validate {
|
|
429
|
+
var parseError: (error: unknown) => validate.ErrorType;
|
|
430
|
+
}
|
|
431
|
+
export declare namespace validate {
|
|
432
|
+
type ErrorType = assert.ErrorType | Errors.GlobalErrorType;
|
|
433
|
+
}
|
|
434
|
+
/** Thrown when the bytes size of a typed data value does not match the expected size. */
|
|
435
|
+
export declare class BytesSizeMismatchError extends Errors.BaseError {
|
|
436
|
+
readonly name = "TypedData.BytesSizeMismatchError";
|
|
437
|
+
constructor({ expectedSize, givenSize, }: {
|
|
438
|
+
expectedSize: number;
|
|
439
|
+
givenSize: number;
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
/** Thrown when the primary type of a typed data value is invalid. */
|
|
443
|
+
export declare class InvalidPrimaryTypeError extends Errors.BaseError {
|
|
444
|
+
readonly name = "TypedData.InvalidPrimaryTypeError";
|
|
445
|
+
constructor({ primaryType, types, }: {
|
|
446
|
+
primaryType: string;
|
|
447
|
+
types: TypedData | Record<string, unknown>;
|
|
448
|
+
});
|
|
449
|
+
}
|
|
450
|
+
/** Thrown when the struct type is not a valid type. */
|
|
451
|
+
export declare class InvalidStructTypeError extends Errors.BaseError {
|
|
452
|
+
readonly name = "TypedData.InvalidStructTypeError";
|
|
453
|
+
constructor({ type }: {
|
|
454
|
+
type: string;
|
|
455
|
+
});
|
|
456
|
+
}
|
|
457
|
+
/** @internal */
|
|
458
|
+
export declare function encodeData(value: {
|
|
459
|
+
data: Record<string, unknown>;
|
|
460
|
+
primaryType: string;
|
|
461
|
+
types: TypedData;
|
|
462
|
+
}): Hex.Hex;
|
|
463
|
+
/** @internal */
|
|
464
|
+
export declare namespace encodeData {
|
|
465
|
+
type ErrorType = AbiParameters.encode.ErrorType | encodeField.ErrorType | hashType.ErrorType | Errors.GlobalErrorType;
|
|
466
|
+
}
|
|
467
|
+
/** @internal */
|
|
468
|
+
export declare function hashType(value: {
|
|
469
|
+
primaryType: string;
|
|
470
|
+
types: TypedData;
|
|
471
|
+
}): Hex.Hex;
|
|
472
|
+
/** @internal */
|
|
473
|
+
export declare namespace hashType {
|
|
474
|
+
type ErrorType = Hex.fromString.ErrorType | encodeType.ErrorType | Hash.keccak256.ErrorType | Errors.GlobalErrorType;
|
|
475
|
+
}
|
|
476
|
+
/** @internal */
|
|
477
|
+
export declare function encodeField(properties: {
|
|
478
|
+
types: TypedData;
|
|
479
|
+
name: string;
|
|
480
|
+
type: string;
|
|
481
|
+
value: any;
|
|
482
|
+
}): [type: AbiParameters.Parameter, value: Hex.Hex];
|
|
483
|
+
/** @internal */
|
|
484
|
+
export declare namespace encodeField {
|
|
485
|
+
type ErrorType = AbiParameters.encode.ErrorType | Hash.keccak256.ErrorType | Bytes.fromString.ErrorType | Errors.GlobalErrorType;
|
|
486
|
+
}
|
|
487
|
+
/** @internal */
|
|
488
|
+
export declare function findTypeDependencies(value: {
|
|
489
|
+
primaryType: string;
|
|
490
|
+
types: TypedData;
|
|
491
|
+
}, results?: Set<string>): Set<string>;
|
|
492
|
+
/** @internal */
|
|
493
|
+
export declare namespace findTypeDependencies {
|
|
494
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
495
|
+
}
|
|
496
|
+
//# sourceMappingURL=TypedData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TypedData.d.ts","sourceRoot":"","sources":["../TypedData.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type * as Address from './Address.js';
|
|
2
|
+
import type * as Bytes from './Bytes.js';
|
|
3
|
+
import type * as Errors from './Errors.js';
|
|
4
|
+
import * as Hash from './Hash.js';
|
|
5
|
+
import * as Hex from './Hex.js';
|
|
6
|
+
/**
|
|
7
|
+
* Encodes data with a validator in [ERC-191 format](https://eips.ethereum.org/EIPS/eip-191#version-0x00): `0x19 ‖ 0x00 ‖ <intended validator address> ‖ <data to sign>`.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts twoslash
|
|
11
|
+
* import { Hex, ValidatorData } from 'ox'
|
|
12
|
+
*
|
|
13
|
+
* const encoded = ValidatorData.encode({
|
|
14
|
+
* data: Hex.fromString('hello world'),
|
|
15
|
+
* validator: '0xd8da6bf26964af9d7eed9e03e53415d37aa96045',
|
|
16
|
+
* })
|
|
17
|
+
* // @log: '0x1900d8da6bf26964af9d7eed9e03e53415d37aa9604568656c6c6f20776f726c64'
|
|
18
|
+
* // @log: '0x19 ‖ 0x00 ‖ 0xd8da6bf26964af9d7eed9e03e53415d37aa96045 ‖ "hello world"'
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @param value - The data to encode.
|
|
22
|
+
* @returns The encoded personal sign message.
|
|
23
|
+
*/
|
|
24
|
+
export declare function encode(value: encode.Value): Hex.Hex;
|
|
25
|
+
export declare namespace encode {
|
|
26
|
+
var parseError: (error: unknown) => encode.ErrorType;
|
|
27
|
+
}
|
|
28
|
+
export declare namespace encode {
|
|
29
|
+
type Value = {
|
|
30
|
+
data: Hex.Hex | Bytes.Bytes;
|
|
31
|
+
validator: Address.Address;
|
|
32
|
+
};
|
|
33
|
+
type ErrorType = Hex.concat.ErrorType | Hex.from.ErrorType | Errors.GlobalErrorType;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Gets the payload to use for signing [ERC-191 formatted](https://eips.ethereum.org/EIPS/eip-191#0x00) data with an intended validator.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts twoslash
|
|
40
|
+
* import { Hex, Secp256k1, ValidatorData } from 'ox'
|
|
41
|
+
*
|
|
42
|
+
* const payload = ValidatorData.getSignPayload({ // [!code focus]
|
|
43
|
+
* data: Hex.fromString('hello world'), // [!code focus]
|
|
44
|
+
* validator: '0xd8da6bf26964af9d7eed9e03e53415d37aa96045', // [!code focus]
|
|
45
|
+
* }) // [!code focus]
|
|
46
|
+
*
|
|
47
|
+
* const signature = Secp256k1.sign({ payload, privateKey: '0x...' })
|
|
48
|
+
* ```
|
|
49
|
+
*
|
|
50
|
+
* @param value - The data to get the sign payload for.
|
|
51
|
+
* @returns The payload to use for signing.
|
|
52
|
+
*/
|
|
53
|
+
export declare function getSignPayload(value: getSignPayload.Value): Hex.Hex;
|
|
54
|
+
export declare namespace getSignPayload {
|
|
55
|
+
var parseError: (error: unknown) => getSignPayload.ErrorType;
|
|
56
|
+
}
|
|
57
|
+
export declare namespace getSignPayload {
|
|
58
|
+
type Value = {
|
|
59
|
+
data: Hex.Hex | Bytes.Bytes;
|
|
60
|
+
validator: Address.Address;
|
|
61
|
+
};
|
|
62
|
+
type ErrorType = Hash.keccak256.ErrorType | encode.ErrorType | Errors.GlobalErrorType;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=ValidatorData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValidatorData.d.ts","sourceRoot":"","sources":["../ValidatorData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CASnD;yBATe,MAAM;4BAwBM,OAAO,KAAc,MAAM,CAAC,SAAS;;AAbjE,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,KAAK,KAAK,GAAG;QACX,IAAI,EAAE,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAA;QAC3B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAA;KAC3B,CAAA;IAED,KAAK,SAAS,GACV,GAAG,CAAC,MAAM,CAAC,SAAS,GACpB,GAAG,CAAC,IAAI,CAAC,SAAS,GAClB,MAAM,CAAC,eAAe,CAAA;CAC3B;AAKD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAEnE;yBAFe,cAAc;4BAiBM,OAAO,KAChC,cAAc,CAAC,SAAS;;AAdnC,MAAM,CAAC,OAAO,WAAW,cAAc,CAAC;IACtC,KAAK,KAAK,GAAG;QACX,IAAI,EAAE,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAA;QAC3B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAA;KAC3B,CAAA;IAED,KAAK,SAAS,GACV,IAAI,CAAC,SAAS,CAAC,SAAS,GACxB,MAAM,CAAC,SAAS,GAChB,MAAM,CAAC,eAAe,CAAA;CAC3B"}
|