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,327 @@
|
|
|
1
|
+
import * as Bytes from './Bytes.js';
|
|
2
|
+
import * as Errors from './Errors.js';
|
|
3
|
+
import * as Hex from './Hex.js';
|
|
4
|
+
import type { Compute, ExactPartial } from './internal/types.js';
|
|
5
|
+
/** Root type for an ECDSA Public Key. */
|
|
6
|
+
export type PublicKey<compressed extends boolean = false, bigintType = bigint, numberType = number> = Compute<compressed extends true ? {
|
|
7
|
+
prefix: numberType;
|
|
8
|
+
x: bigintType;
|
|
9
|
+
y?: undefined;
|
|
10
|
+
} : {
|
|
11
|
+
prefix: numberType;
|
|
12
|
+
x: bigintType;
|
|
13
|
+
y: bigintType;
|
|
14
|
+
}>;
|
|
15
|
+
/**
|
|
16
|
+
* Asserts that a {@link ox#PublicKey.PublicKey} is valid.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```ts twoslash
|
|
20
|
+
* import { PublicKey } from 'ox'
|
|
21
|
+
*
|
|
22
|
+
* PublicKey.assert({
|
|
23
|
+
* prefix: 4,
|
|
24
|
+
* y: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,
|
|
25
|
+
* })
|
|
26
|
+
* // @error: PublicKey.InvalidError: Value \`{"y":"1"}\` is not a valid public key.
|
|
27
|
+
* // @error: Public key must contain:
|
|
28
|
+
* // @error: - an `x` and `prefix` value (compressed)
|
|
29
|
+
* // @error: - an `x`, `y`, and `prefix` value (uncompressed)
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* @param publicKey - The public key object to assert.
|
|
33
|
+
*/
|
|
34
|
+
export declare function assert(publicKey: ExactPartial<PublicKey>, options?: assert.Options): asserts publicKey is PublicKey;
|
|
35
|
+
export declare namespace assert {
|
|
36
|
+
type Options = {
|
|
37
|
+
/** Whether or not the public key should be compressed. */
|
|
38
|
+
compressed?: boolean;
|
|
39
|
+
};
|
|
40
|
+
type ErrorType = InvalidError | InvalidPrefixError | Errors.GlobalErrorType;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Compresses a {@link ox#PublicKey.PublicKey}.
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts twoslash
|
|
47
|
+
* import { PublicKey } from 'ox'
|
|
48
|
+
*
|
|
49
|
+
* const publicKey = PublicKey.from({
|
|
50
|
+
* prefix: 4,
|
|
51
|
+
* x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
52
|
+
* y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
53
|
+
* })
|
|
54
|
+
*
|
|
55
|
+
* const compressed = PublicKey.compress(publicKey) // [!code focus]
|
|
56
|
+
* // @log: {
|
|
57
|
+
* // @log: prefix: 3,
|
|
58
|
+
* // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
59
|
+
* // @log: }
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @param publicKey - The public key to compress.
|
|
63
|
+
* @returns The compressed public key.
|
|
64
|
+
*/
|
|
65
|
+
export declare function compress(publicKey: PublicKey<false>): PublicKey<true>;
|
|
66
|
+
export declare namespace compress {
|
|
67
|
+
var parseError: (error: unknown) => compress.ErrorType;
|
|
68
|
+
}
|
|
69
|
+
export declare namespace compress {
|
|
70
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Instantiates a typed {@link ox#PublicKey.PublicKey} object from a {@link ox#PublicKey.PublicKey}, {@link ox#Bytes.Bytes}, or {@link ox#Hex.Hex}.
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```ts twoslash
|
|
77
|
+
* import { PublicKey } from 'ox'
|
|
78
|
+
*
|
|
79
|
+
* const publicKey = PublicKey.from({
|
|
80
|
+
* prefix: 4,
|
|
81
|
+
* x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
82
|
+
* y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
83
|
+
* })
|
|
84
|
+
* // @log: {
|
|
85
|
+
* // @log: prefix: 4,
|
|
86
|
+
* // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
87
|
+
* // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
88
|
+
* // @log: }
|
|
89
|
+
* ```
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* ### From Serialized
|
|
93
|
+
*
|
|
94
|
+
* ```ts twoslash
|
|
95
|
+
* import { PublicKey } from 'ox'
|
|
96
|
+
*
|
|
97
|
+
* const publicKey = PublicKey.from('0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5')
|
|
98
|
+
* // @log: {
|
|
99
|
+
* // @log: prefix: 4,
|
|
100
|
+
* // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
101
|
+
* // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
102
|
+
* // @log: }
|
|
103
|
+
* ```
|
|
104
|
+
*
|
|
105
|
+
* @param value - The public key value to instantiate.
|
|
106
|
+
* @returns The instantiated {@link ox#PublicKey.PublicKey}.
|
|
107
|
+
*/
|
|
108
|
+
export declare function from<const publicKey extends CompressedPublicKey | UncompressedPublicKey | Hex.Hex | Bytes.Bytes>(value: from.Value<publicKey>): from.ReturnType<publicKey>;
|
|
109
|
+
export declare namespace from {
|
|
110
|
+
var parseError: (error: unknown) => from.ErrorType;
|
|
111
|
+
}
|
|
112
|
+
/** @internal */
|
|
113
|
+
type CompressedPublicKey = PublicKey<true>;
|
|
114
|
+
/** @internal */
|
|
115
|
+
type UncompressedPublicKey = Omit<PublicKey<false>, 'prefix'> & {
|
|
116
|
+
prefix?: PublicKey['prefix'] | undefined;
|
|
117
|
+
};
|
|
118
|
+
export declare namespace from {
|
|
119
|
+
type Value<publicKey extends CompressedPublicKey | UncompressedPublicKey | Hex.Hex | Bytes.Bytes = PublicKey> = publicKey | CompressedPublicKey | UncompressedPublicKey;
|
|
120
|
+
type ReturnType<publicKey extends CompressedPublicKey | UncompressedPublicKey | Hex.Hex | Bytes.Bytes = PublicKey> = publicKey extends CompressedPublicKey | UncompressedPublicKey ? publicKey extends UncompressedPublicKey ? Compute<publicKey & {
|
|
121
|
+
readonly prefix: 0x04;
|
|
122
|
+
}> : publicKey : PublicKey;
|
|
123
|
+
type ErrorType = assert.ErrorType | Errors.GlobalErrorType;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Deserializes a {@link ox#PublicKey.PublicKey} from a {@link ox#Bytes.Bytes} value.
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```ts twoslash
|
|
130
|
+
* // @noErrors
|
|
131
|
+
* import { PublicKey } from 'ox'
|
|
132
|
+
*
|
|
133
|
+
* const publicKey = PublicKey.fromBytes(new Uint8Array([128, 3, 131, ...]))
|
|
134
|
+
* // @log: {
|
|
135
|
+
* // @log: prefix: 4,
|
|
136
|
+
* // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
137
|
+
* // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
138
|
+
* // @log: }
|
|
139
|
+
* ```
|
|
140
|
+
*
|
|
141
|
+
* @param publicKey - The serialized public key.
|
|
142
|
+
* @returns The deserialized public key.
|
|
143
|
+
*/
|
|
144
|
+
export declare function fromBytes(publicKey: Bytes.Bytes): PublicKey;
|
|
145
|
+
export declare namespace fromBytes {
|
|
146
|
+
var parseError: (error: unknown) => fromBytes.ErrorType;
|
|
147
|
+
}
|
|
148
|
+
export declare namespace fromBytes {
|
|
149
|
+
type ErrorType = fromHex.ErrorType | Hex.fromBytes.ErrorType | Errors.GlobalErrorType;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Deserializes a {@link ox#PublicKey.PublicKey} from a {@link ox#Hex.Hex} value.
|
|
153
|
+
*
|
|
154
|
+
* @example
|
|
155
|
+
* ```ts twoslash
|
|
156
|
+
* import { PublicKey } from 'ox'
|
|
157
|
+
*
|
|
158
|
+
* const publicKey = PublicKey.fromHex('0x8318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5')
|
|
159
|
+
* // @log: {
|
|
160
|
+
* // @log: prefix: 4,
|
|
161
|
+
* // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
162
|
+
* // @log: y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
163
|
+
* // @log: }
|
|
164
|
+
* ```
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* ### Deserializing a Compressed Public Key
|
|
168
|
+
*
|
|
169
|
+
* ```ts twoslash
|
|
170
|
+
* import { PublicKey } from 'ox'
|
|
171
|
+
*
|
|
172
|
+
* const publicKey = PublicKey.fromHex('0x038318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed75')
|
|
173
|
+
* // @log: {
|
|
174
|
+
* // @log: prefix: 3,
|
|
175
|
+
* // @log: x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
176
|
+
* // @log: }
|
|
177
|
+
* ```
|
|
178
|
+
*
|
|
179
|
+
* @param publicKey - The serialized public key.
|
|
180
|
+
* @returns The deserialized public key.
|
|
181
|
+
*/
|
|
182
|
+
export declare function fromHex(publicKey: Hex.Hex): PublicKey;
|
|
183
|
+
export declare namespace fromHex {
|
|
184
|
+
var parseError: (error: unknown) => fromHex.ErrorType;
|
|
185
|
+
}
|
|
186
|
+
export declare namespace fromHex {
|
|
187
|
+
type ErrorType = Hex.slice.ErrorType | Errors.GlobalErrorType;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Serializes a {@link ox#PublicKey.PublicKey} to {@link ox#Bytes.Bytes}.
|
|
191
|
+
*
|
|
192
|
+
* @example
|
|
193
|
+
* ```ts twoslash
|
|
194
|
+
* import { PublicKey } from 'ox'
|
|
195
|
+
*
|
|
196
|
+
* const publicKey = PublicKey.from({
|
|
197
|
+
* prefix: 4,
|
|
198
|
+
* x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
199
|
+
* y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
200
|
+
* })
|
|
201
|
+
*
|
|
202
|
+
* const bytes = PublicKey.toBytes(publicKey) // [!code focus]
|
|
203
|
+
* // @log: Uint8Array [128, 3, 131, ...]
|
|
204
|
+
* ```
|
|
205
|
+
*
|
|
206
|
+
* @param publicKey - The public key to serialize.
|
|
207
|
+
* @returns The serialized public key.
|
|
208
|
+
*/
|
|
209
|
+
export declare function toBytes(publicKey: PublicKey<boolean>, options?: toBytes.Options): Bytes.Bytes;
|
|
210
|
+
export declare namespace toBytes {
|
|
211
|
+
var parseError: (error: unknown) => toBytes.ErrorType;
|
|
212
|
+
}
|
|
213
|
+
export declare namespace toBytes {
|
|
214
|
+
type Options = {
|
|
215
|
+
/**
|
|
216
|
+
* Whether to include the prefix in the serialized public key.
|
|
217
|
+
* @default true
|
|
218
|
+
*/
|
|
219
|
+
includePrefix?: boolean | undefined;
|
|
220
|
+
};
|
|
221
|
+
type ErrorType = Hex.fromNumber.ErrorType | Bytes.fromHex.ErrorType | Errors.GlobalErrorType;
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Serializes a {@link ox#PublicKey.PublicKey} to {@link ox#Hex.Hex}.
|
|
225
|
+
*
|
|
226
|
+
* @example
|
|
227
|
+
* ```ts twoslash
|
|
228
|
+
* import { PublicKey } from 'ox'
|
|
229
|
+
*
|
|
230
|
+
* const publicKey = PublicKey.from({
|
|
231
|
+
* prefix: 4,
|
|
232
|
+
* x: 59295962801117472859457908919941473389380284132224861839820747729565200149877n,
|
|
233
|
+
* y: 24099691209996290925259367678540227198235484593389470330605641003500238088869n,
|
|
234
|
+
* })
|
|
235
|
+
*
|
|
236
|
+
* const hex = PublicKey.toHex(publicKey) // [!code focus]
|
|
237
|
+
* // @log: '0x048318535b54105d4a7aae60c08fc45f9687181b4fdfc625bd1a753fa7397fed753547f11ca8696646f2f3acb08e31016afac23e630c5d11f59f61fef57b0d2aa5'
|
|
238
|
+
* ```
|
|
239
|
+
*
|
|
240
|
+
* @param publicKey - The public key to serialize.
|
|
241
|
+
* @returns The serialized public key.
|
|
242
|
+
*/
|
|
243
|
+
export declare function toHex(publicKey: PublicKey<boolean>, options?: toHex.Options): Hex.Hex;
|
|
244
|
+
export declare namespace toHex {
|
|
245
|
+
var parseError: (error: unknown) => toHex.ErrorType;
|
|
246
|
+
}
|
|
247
|
+
export declare namespace toHex {
|
|
248
|
+
type Options = {
|
|
249
|
+
/**
|
|
250
|
+
* Whether to include the prefix in the serialized public key.
|
|
251
|
+
* @default true
|
|
252
|
+
*/
|
|
253
|
+
includePrefix?: boolean | undefined;
|
|
254
|
+
};
|
|
255
|
+
type ErrorType = Hex.fromNumber.ErrorType | Errors.GlobalErrorType;
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Validates a {@link ox#PublicKey.PublicKey}. Returns `true` if valid, `false` otherwise.
|
|
259
|
+
*
|
|
260
|
+
* @example
|
|
261
|
+
* ```ts twoslash
|
|
262
|
+
* import { PublicKey } from 'ox'
|
|
263
|
+
*
|
|
264
|
+
* const valid = PublicKey.validate({
|
|
265
|
+
* prefix: 4,
|
|
266
|
+
* y: 49782753348462494199823712700004552394425719014458918871452329774910450607807n,
|
|
267
|
+
* })
|
|
268
|
+
* // @log: false
|
|
269
|
+
* ```
|
|
270
|
+
*
|
|
271
|
+
* @param publicKey - The public key object to assert.
|
|
272
|
+
*/
|
|
273
|
+
export declare function validate(publicKey: ExactPartial<PublicKey>, options?: validate.Options): boolean;
|
|
274
|
+
export declare namespace validate {
|
|
275
|
+
type Options = {
|
|
276
|
+
/** Whether or not the public key should be compressed. */
|
|
277
|
+
compressed?: boolean;
|
|
278
|
+
};
|
|
279
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Thrown when a public key is invalid.
|
|
283
|
+
*
|
|
284
|
+
* @example
|
|
285
|
+
* ```ts twoslash
|
|
286
|
+
* import { PublicKey } from 'ox'
|
|
287
|
+
*
|
|
288
|
+
* PublicKey.assert({ y: 1n })
|
|
289
|
+
* // @error: PublicKey.InvalidError: Value `{"y":1n}` is not a valid public key.
|
|
290
|
+
* // @error: Public key must contain:
|
|
291
|
+
* // @error: - an `x` and `prefix` value (compressed)
|
|
292
|
+
* // @error: - an `x`, `y`, and `prefix` value (uncompressed)
|
|
293
|
+
* ```
|
|
294
|
+
*/
|
|
295
|
+
export declare class InvalidError extends Errors.BaseError {
|
|
296
|
+
readonly name = "PublicKey.InvalidError";
|
|
297
|
+
constructor({ publicKey }: {
|
|
298
|
+
publicKey: unknown;
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
/** Thrown when a public key has an invalid prefix. */
|
|
302
|
+
export declare class InvalidPrefixError<cause extends InvalidCompressedPrefixError | InvalidUncompressedPrefixError = InvalidCompressedPrefixError | InvalidUncompressedPrefixError> extends Errors.BaseError<cause> {
|
|
303
|
+
readonly name = "PublicKey.InvalidPrefixError";
|
|
304
|
+
constructor({ prefix, cause }: {
|
|
305
|
+
prefix: number | undefined;
|
|
306
|
+
cause: cause;
|
|
307
|
+
});
|
|
308
|
+
}
|
|
309
|
+
/** Thrown when the public key has an invalid prefix for a compressed public key. */
|
|
310
|
+
export declare class InvalidCompressedPrefixError extends Errors.BaseError {
|
|
311
|
+
readonly name = "PublicKey.InvalidCompressedPrefixError";
|
|
312
|
+
constructor();
|
|
313
|
+
}
|
|
314
|
+
/** Thrown when the public key has an invalid prefix for an uncompressed public key. */
|
|
315
|
+
export declare class InvalidUncompressedPrefixError extends Errors.BaseError {
|
|
316
|
+
readonly name = "PublicKey.InvalidUncompressedPrefixError";
|
|
317
|
+
constructor();
|
|
318
|
+
}
|
|
319
|
+
/** Thrown when the public key has an invalid serialized size. */
|
|
320
|
+
export declare class InvalidSerializedSizeError extends Errors.BaseError {
|
|
321
|
+
readonly name = "PublicKey.InvalidSerializedSizeError";
|
|
322
|
+
constructor({ publicKey }: {
|
|
323
|
+
publicKey: Hex.Hex | Bytes.Bytes;
|
|
324
|
+
});
|
|
325
|
+
}
|
|
326
|
+
export {};
|
|
327
|
+
//# sourceMappingURL=PublicKey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PublicKey.d.ts","sourceRoot":"","sources":["../PublicKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEhE,yCAAyC;AACzC,MAAM,MAAM,SAAS,CACnB,UAAU,SAAS,OAAO,GAAG,KAAK,EAClC,UAAU,GAAG,MAAM,EACnB,UAAU,GAAG,MAAM,IACjB,OAAO,CACT,UAAU,SAAS,IAAI,GACnB;IACE,MAAM,EAAE,UAAU,CAAA;IAClB,CAAC,EAAE,UAAU,CAAA;IACb,CAAC,CAAC,EAAE,SAAS,CAAA;CACd,GACD;IACE,MAAM,EAAE,UAAU,CAAA;IAClB,CAAC,EAAE,UAAU,CAAA;IACb,CAAC,EAAE,UAAU,CAAA;CACd,CACN,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,MAAM,CACpB,SAAS,EAAE,YAAY,CAAC,SAAS,CAAC,EAClC,OAAO,GAAE,MAAM,CAAC,OAAY,GAC3B,OAAO,CAAC,SAAS,IAAI,SAAS,CAgChC;AAED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,KAAK,OAAO,GAAG;QACb,0DAA0D;QAC1D,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,CAAA;IAED,KAAK,SAAS,GAAG,YAAY,GAAG,kBAAkB,GAAG,MAAM,CAAC,eAAe,CAAA;CAC5E;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAMrE;yBANe,QAAQ;4BAYM,OAAO,KAE1B,QAAQ,CAAC,SAAS;;AAN7B,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAK,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CACxC;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,IAAI,CAClB,KAAK,CAAC,SAAS,SACX,mBAAmB,GACnB,qBAAqB,GACrB,GAAG,CAAC,GAAG,GACP,KAAK,CAAC,KAAK,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAc1D;yBApBe,IAAI;4BAsDM,OAAO,KAEtB,IAAI,CAAC,SAAS;;AAlCzB,gBAAgB;AAChB,KAAK,mBAAmB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;AAE1C,gBAAgB;AAChB,KAAK,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,GAAG;IAC9D,MAAM,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAA;CACzC,CAAA;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,KAAK,KAAK,CACR,SAAS,SACL,mBAAmB,GACnB,qBAAqB,GACrB,GAAG,CAAC,GAAG,GACP,KAAK,CAAC,KAAK,GAAG,SAAS,IACzB,SAAS,GAAG,mBAAmB,GAAG,qBAAqB,CAAA;IAE3D,KAAK,UAAU,CACb,SAAS,SACL,mBAAmB,GACnB,qBAAqB,GACrB,GAAG,CAAC,GAAG,GACP,KAAK,CAAC,KAAK,GAAG,SAAS,IACzB,SAAS,SAAS,mBAAmB,GAAG,qBAAqB,GAC7D,SAAS,SAAS,qBAAqB,GACrC,OAAO,CAAC,SAAS,GAAG;QAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;KAAE,CAAC,GAC9C,SAAS,GACX,SAAS,CAAA;IAEb,KAAK,SAAS,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CAC3D;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,GAAG,SAAS,CAE3D;yBAFe,SAAS;4BAWM,OAAO,KAE3B,SAAS,CAAC,SAAS;;AAT9B,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IACjC,KAAK,SAAS,GACV,OAAO,CAAC,SAAS,GACjB,GAAG,CAAC,SAAS,CAAC,SAAS,GACvB,MAAM,CAAC,eAAe,CAAA;CAC3B;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAmCrD;yBAnCe,OAAO;4BAyCM,OAAO,KAEzB,OAAO,CAAC,SAAS;;AAN5B,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAK,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CAC9D;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,OAAO,CACrB,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,EAC7B,OAAO,GAAE,OAAO,CAAC,OAAY,GAC5B,KAAK,CAAC,KAAK,CAEb;yBALe,OAAO;4BAsBM,OAAO,KAEzB,OAAO,CAAC,SAAS;;AAjB5B,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAK,OAAO,GAAG;QACb;;;WAGG;QACH,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KACpC,CAAA;IAED,KAAK,SAAS,GACV,GAAG,CAAC,UAAU,CAAC,SAAS,GACxB,KAAK,CAAC,OAAO,CAAC,SAAS,GACvB,MAAM,CAAC,eAAe,CAAA;CAC3B;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,KAAK,CACnB,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,EAC7B,OAAO,GAAE,KAAK,CAAC,OAAY,GAC1B,GAAG,CAAC,GAAG,CAcT;yBAjBe,KAAK;4BA+BM,OAAO,KAEvB,KAAK,CAAC,SAAS;;AAd1B,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,KAAK,OAAO,GAAG;QACb;;;WAGG;QACH,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KACpC,CAAA;IAED,KAAK,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CACnE;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CACtB,SAAS,EAAE,YAAY,CAAC,SAAS,CAAC,EAClC,OAAO,GAAE,QAAQ,CAAC,OAAY,GAC7B,OAAO,CAOT;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,KAAK,OAAO,GAAG;QACb,0DAA0D;QAC1D,UAAU,CAAC,EAAE,OAAO,CAAA;KACrB,CAAA;IAED,KAAK,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CACxC;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,YAAa,SAAQ,MAAM,CAAC,SAAS;IAChD,SAAkB,IAAI,4BAA2B;gBAErC,EAAE,SAAS,EAAE,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE;CASlD;AAED,sDAAsD;AACtD,qBAAa,kBAAkB,CAC7B,KAAK,SAAS,4BAA4B,GAAG,8BAA8B,GACvE,4BAA4B,GAC5B,8BAA8B,CAClC,SAAQ,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;IAC/B,SAAkB,IAAI,kCAAiC;gBAE3C,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE;CAK5E;AAED,oFAAoF;AACpF,qBAAa,4BAA6B,SAAQ,MAAM,CAAC,SAAS;IAChE,SAAkB,IAAI,4CAA2C;;CAKlE;AAED,uFAAuF;AACvF,qBAAa,8BAA+B,SAAQ,MAAM,CAAC,SAAS;IAClE,SAAkB,IAAI,8CAA6C;;CAKpE;AAED,iEAAiE;AACjE,qBAAa,0BAA2B,SAAQ,MAAM,CAAC,SAAS;IAC9D,SAAkB,IAAI,0CAAyC;gBAEnD,EAAE,SAAS,EAAE,EAAE;QAAE,SAAS,EAAE,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAA;KAAE;CAQhE"}
|
package/_types/Rlp.d.ts
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import * as Bytes from './Bytes.js';
|
|
2
|
+
import * as Errors from './Errors.js';
|
|
3
|
+
import * as Hex from './Hex.js';
|
|
4
|
+
import * as Cursor from './internal/cursor.js';
|
|
5
|
+
import type { ExactPartial, RecursiveArray } from './internal/types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Decodes a Recursive-Length Prefix (RLP) value into a {@link ox#Bytes.Bytes} value.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts twoslash
|
|
11
|
+
* import { Rlp } from 'ox'
|
|
12
|
+
* Rlp.toBytes('0x8b68656c6c6f20776f726c64')
|
|
13
|
+
* // Uint8Array([139, 104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100])
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @param value - The value to decode.
|
|
17
|
+
* @returns The decoded {@link ox#Bytes.Bytes} value.
|
|
18
|
+
*/
|
|
19
|
+
export declare function toBytes(value: Bytes.Bytes | Hex.Hex): RecursiveArray<Bytes.Bytes>;
|
|
20
|
+
export declare namespace toBytes {
|
|
21
|
+
var parseError: (error: unknown) => toBytes.ErrorType;
|
|
22
|
+
}
|
|
23
|
+
export declare namespace toBytes {
|
|
24
|
+
type ErrorType = to.ErrorType;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Decodes a Recursive-Length Prefix (RLP) value into a {@link ox#Hex.Hex} value.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts twoslash
|
|
31
|
+
* import { Rlp } from 'ox'
|
|
32
|
+
* Rlp.toHex('0x8b68656c6c6f20776f726c64')
|
|
33
|
+
* // 0x68656c6c6f20776f726c64
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* @param value - The value to decode.
|
|
37
|
+
* @returns The decoded {@link ox#Hex.Hex} value.
|
|
38
|
+
*/
|
|
39
|
+
export declare function toHex(value: Bytes.Bytes | Hex.Hex): RecursiveArray<Hex.Hex>;
|
|
40
|
+
export declare namespace toHex {
|
|
41
|
+
var parseError: (error: unknown) => toHex.ErrorType;
|
|
42
|
+
}
|
|
43
|
+
export declare namespace toHex {
|
|
44
|
+
type ErrorType = to.ErrorType;
|
|
45
|
+
}
|
|
46
|
+
/** @internal */
|
|
47
|
+
export declare function to<value extends Bytes.Bytes | Hex.Hex, to extends 'Hex' | 'Bytes'>(value: value, to: to | 'Hex' | 'Bytes'): to.ReturnType<to>;
|
|
48
|
+
export declare namespace to {
|
|
49
|
+
var parseError: (error: unknown) => to.ErrorType;
|
|
50
|
+
}
|
|
51
|
+
/** @internal */
|
|
52
|
+
export declare namespace to {
|
|
53
|
+
type ReturnType<to extends 'Hex' | 'Bytes' = 'Hex' | 'Bytes'> = (to extends 'Bytes' ? RecursiveArray<Bytes.Bytes> : never) | (to extends 'Hex' ? RecursiveArray<Hex.Hex> : never);
|
|
54
|
+
type ErrorType = Bytes.fromHex.ErrorType | decodeRlpCursor.ErrorType | Cursor.create.ErrorType | Hex.InvalidLengthError | Errors.GlobalErrorType;
|
|
55
|
+
}
|
|
56
|
+
/** @internal */
|
|
57
|
+
export declare function decodeRlpCursor<to extends 'Hex' | 'Bytes' = 'Hex'>(cursor: Cursor.Cursor, to?: to | 'Hex' | 'Bytes' | undefined): decodeRlpCursor.ReturnType<to>;
|
|
58
|
+
/** @internal */
|
|
59
|
+
export declare namespace decodeRlpCursor {
|
|
60
|
+
type ReturnType<to extends 'Hex' | 'Bytes' = 'Hex'> = to.ReturnType<to>;
|
|
61
|
+
type ErrorType = Hex.fromBytes.ErrorType | readLength.ErrorType | readList.ErrorType | Errors.GlobalErrorType;
|
|
62
|
+
}
|
|
63
|
+
/** @internal */
|
|
64
|
+
export declare function readLength(cursor: Cursor.Cursor, prefix: number, offset: number): number;
|
|
65
|
+
/** @internal */
|
|
66
|
+
export declare namespace readLength {
|
|
67
|
+
type ErrorType = Errors.BaseError | Errors.GlobalErrorType;
|
|
68
|
+
}
|
|
69
|
+
/** @internal */
|
|
70
|
+
export declare function readList<to extends 'Hex' | 'Bytes'>(cursor: Cursor.Cursor, length: number, to: to | 'Hex' | 'Bytes'): decodeRlpCursor.ReturnType<to>[];
|
|
71
|
+
/** @internal */
|
|
72
|
+
export declare namespace readList {
|
|
73
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Encodes a {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value into a Recursive-Length Prefix (RLP) value.
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* ```ts twoslash
|
|
80
|
+
* import { Bytes, Rlp } from 'ox'
|
|
81
|
+
*
|
|
82
|
+
* Rlp.from('0x68656c6c6f20776f726c64', { as: 'Hex' })
|
|
83
|
+
* // @log: 0x8b68656c6c6f20776f726c64
|
|
84
|
+
*
|
|
85
|
+
* Rlp.from(Bytes.from([139, 104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]), { as: 'Bytes' })
|
|
86
|
+
* // @log: Uint8Array([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100])
|
|
87
|
+
* ```
|
|
88
|
+
*
|
|
89
|
+
* @param value - The {@link ox#Bytes.Bytes} or {@link ox#Hex.Hex} value to encode.
|
|
90
|
+
* @param options - Options.
|
|
91
|
+
* @returns The RLP value.
|
|
92
|
+
*/
|
|
93
|
+
export declare function from<as extends 'Hex' | 'Bytes'>(value: RecursiveArray<Bytes.Bytes> | RecursiveArray<Hex.Hex>, options: from.Options<as>): from.ReturnType<as>;
|
|
94
|
+
export declare namespace from {
|
|
95
|
+
var parseError: (error: unknown) => from.ErrorType;
|
|
96
|
+
}
|
|
97
|
+
export declare namespace from {
|
|
98
|
+
type Options<as extends 'Hex' | 'Bytes'> = {
|
|
99
|
+
/** The type to convert the RLP value to. */
|
|
100
|
+
as: as | 'Hex' | 'Bytes';
|
|
101
|
+
};
|
|
102
|
+
type ReturnType<as extends 'Hex' | 'Bytes'> = (as extends 'Bytes' ? Bytes.Bytes : never) | (as extends 'Hex' ? Hex.Hex : never);
|
|
103
|
+
type ErrorType = Cursor.create.ErrorType | Hex.fromBytes.ErrorType | Bytes.fromHex.ErrorType | Errors.GlobalErrorType;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Encodes a {@link ox#Bytes.Bytes} value into a Recursive-Length Prefix (RLP) value.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```ts twoslash
|
|
110
|
+
* import { Bytes, Rlp } from 'ox'
|
|
111
|
+
*
|
|
112
|
+
* Rlp.fromBytes(Bytes.from([139, 104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]))
|
|
113
|
+
* // @log: Uint8Array([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100])
|
|
114
|
+
* ```
|
|
115
|
+
*
|
|
116
|
+
* @param bytes - The {@link ox#Bytes.Bytes} value to encode.
|
|
117
|
+
* @param options - Options.
|
|
118
|
+
* @returns The RLP value.
|
|
119
|
+
*/
|
|
120
|
+
export declare function fromBytes<as extends 'Hex' | 'Bytes' = 'Bytes'>(bytes: RecursiveArray<Bytes.Bytes>, options?: fromBytes.Options<as>): fromBytes.ReturnType<as>;
|
|
121
|
+
export declare namespace fromBytes {
|
|
122
|
+
var parseError: (error: unknown) => fromBytes.ErrorType;
|
|
123
|
+
}
|
|
124
|
+
export declare namespace fromBytes {
|
|
125
|
+
type Options<as extends 'Hex' | 'Bytes' = 'Bytes'> = ExactPartial<from.Options<as>>;
|
|
126
|
+
type ReturnType<as extends 'Hex' | 'Bytes' = 'Bytes'> = from.ReturnType<as>;
|
|
127
|
+
type ErrorType = from.ErrorType | Errors.GlobalErrorType;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Encodes a {@link ox#Hex.Hex} value into a Recursive-Length Prefix (RLP) value.
|
|
131
|
+
*
|
|
132
|
+
* @example
|
|
133
|
+
* ```ts twoslash
|
|
134
|
+
* import { Rlp } from 'ox'
|
|
135
|
+
*
|
|
136
|
+
* Rlp.fromHex('0x68656c6c6f20776f726c64')
|
|
137
|
+
* // @log: 0x8b68656c6c6f20776f726c64
|
|
138
|
+
* ```
|
|
139
|
+
*
|
|
140
|
+
* @param hex - The {@link ox#Hex.Hex} value to encode.
|
|
141
|
+
* @param options - Options.
|
|
142
|
+
* @returns The RLP value.
|
|
143
|
+
*/
|
|
144
|
+
export declare function fromHex<as extends 'Hex' | 'Bytes' = 'Hex'>(hex: RecursiveArray<Hex.Hex>, options?: fromHex.Options<as>): fromHex.ReturnType<as>;
|
|
145
|
+
export declare namespace fromHex {
|
|
146
|
+
var parseError: (error: unknown) => fromHex.ErrorType;
|
|
147
|
+
}
|
|
148
|
+
export declare namespace fromHex {
|
|
149
|
+
type Options<as extends 'Hex' | 'Bytes' = 'Hex'> = ExactPartial<from.Options<as>>;
|
|
150
|
+
type ReturnType<as extends 'Hex' | 'Bytes' = 'Hex'> = from.ReturnType<as>;
|
|
151
|
+
type ErrorType = from.ErrorType | Errors.GlobalErrorType;
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=Rlp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Rlp.d.ts","sourceRoot":"","sources":["../Rlp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import type * as RpcSchema from './RpcSchema.js';
|
|
2
|
+
import type { Errors } from './index.js';
|
|
3
|
+
import type * as RpcSchema_internal from './internal/rpcSchema.js';
|
|
4
|
+
import type { Compute } from './internal/types.js';
|
|
5
|
+
/** A JSON-RPC request object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#request_object). */
|
|
6
|
+
export type RpcRequest<schema extends RpcSchema.Generic = RpcSchema.Generic> = Compute<schema extends any ? schema['Request'] & {
|
|
7
|
+
id: number;
|
|
8
|
+
jsonrpc: '2.0';
|
|
9
|
+
/** @deprecated internal */
|
|
10
|
+
_returnType: schema['ReturnType'];
|
|
11
|
+
} : never>;
|
|
12
|
+
/** JSON-RPC request store type. */
|
|
13
|
+
export type Store<schema extends RpcSchema.Generic = RpcSchema.Default> = Compute<{
|
|
14
|
+
prepare: <methodName extends RpcSchema.MethodNameGeneric>(parameters: Compute<RpcSchema_internal.ExtractRequestOpaque<schema, methodName>>) => Compute<RpcRequest<RpcSchema.ExtractItem<schema, methodName>>>;
|
|
15
|
+
readonly id: number;
|
|
16
|
+
}>;
|
|
17
|
+
/**
|
|
18
|
+
* Creates a JSON-RPC request store to build requests with an incrementing `id`.
|
|
19
|
+
*
|
|
20
|
+
* Returns a type-safe `prepare` function to build a JSON-RPC request object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#request_object).
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```ts twoslash
|
|
24
|
+
* import { RpcRequest } from 'ox'
|
|
25
|
+
*
|
|
26
|
+
* const store = RpcRequest.createStore()
|
|
27
|
+
*
|
|
28
|
+
* const request_1 = store.prepare({
|
|
29
|
+
* method: 'eth_blockNumber',
|
|
30
|
+
* })
|
|
31
|
+
* // @log: { id: 0, jsonrpc: '2.0', method: 'eth_blockNumber' }
|
|
32
|
+
*
|
|
33
|
+
* const request_2 = store.prepare({
|
|
34
|
+
* method: 'eth_call',
|
|
35
|
+
* params: [
|
|
36
|
+
* {
|
|
37
|
+
* to: '0x0000000000000000000000000000000000000000',
|
|
38
|
+
* data: '0xdeadbeef',
|
|
39
|
+
* },
|
|
40
|
+
* ],
|
|
41
|
+
* })
|
|
42
|
+
* // @log: { id: 1, jsonrpc: '2.0', method: 'eth_call', params: [{ to: '0x0000000000000000000000000000000000000000', data: '0xdeadbeef' }] }
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ### Type-safe Custom Schemas
|
|
47
|
+
*
|
|
48
|
+
* It is possible to define your own type-safe schema by using the {@link ox#RpcSchema.From} type.
|
|
49
|
+
*
|
|
50
|
+
* ```ts twoslash
|
|
51
|
+
* import { RpcSchema, RpcRequest } from 'ox'
|
|
52
|
+
*
|
|
53
|
+
* type Schema = RpcSchema.From<{ // [!code focus]
|
|
54
|
+
* Request: { // [!code focus]
|
|
55
|
+
* method: 'eth_foobar' // [!code focus]
|
|
56
|
+
* params: [number] // [!code focus]
|
|
57
|
+
* } // [!code focus]
|
|
58
|
+
* ReturnType: string // [!code focus]
|
|
59
|
+
* } | { // [!code focus]
|
|
60
|
+
* Request: { // [!code focus]
|
|
61
|
+
* method: 'eth_foobaz' // [!code focus]
|
|
62
|
+
* params: [string] // [!code focus]
|
|
63
|
+
* } // [!code focus]
|
|
64
|
+
* ReturnType: string // [!code focus]
|
|
65
|
+
* }> // [!code focus]
|
|
66
|
+
*
|
|
67
|
+
* const store = RpcRequest.createStore<Schema>() // [!code focus]
|
|
68
|
+
*
|
|
69
|
+
* const request = store.prepare({
|
|
70
|
+
* method: 'eth_foobar', // [!code focus]
|
|
71
|
+
* // ^?
|
|
72
|
+
* params: [42],
|
|
73
|
+
* })
|
|
74
|
+
* ```
|
|
75
|
+
*
|
|
76
|
+
* @param options - Request store options.
|
|
77
|
+
* @returns The request store
|
|
78
|
+
*/
|
|
79
|
+
export declare function createStore<schema extends RpcSchema.Generic = RpcSchema.Default>(options?: createStore.Options): createStore.ReturnType<schema>;
|
|
80
|
+
export declare namespace createStore {
|
|
81
|
+
var parseError: (error: unknown) => createStore.ErrorType;
|
|
82
|
+
}
|
|
83
|
+
export declare namespace createStore {
|
|
84
|
+
type Options = {
|
|
85
|
+
/** The initial request ID. */
|
|
86
|
+
id?: number;
|
|
87
|
+
};
|
|
88
|
+
type ReturnType<schema extends RpcSchema.Generic = RpcSchema.Default> = Store<schema>;
|
|
89
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* A type-safe interface to build a JSON-RPC request object as per the [JSON-RPC 2.0 specification](https://www.jsonrpc.org/specification#request_object).
|
|
93
|
+
*
|
|
94
|
+
* :::warning
|
|
95
|
+
*
|
|
96
|
+
* You will likely want to use {@link ox#RpcRequest.(createStore:function)} instead as it will also manage `id`s and uses this function internally.
|
|
97
|
+
*
|
|
98
|
+
* :::
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```ts twoslash
|
|
102
|
+
* import { RpcRequest, RpcResponse } from 'ox'
|
|
103
|
+
*
|
|
104
|
+
* // 1. Build a request object.
|
|
105
|
+
* const request = RpcRequest.from({ // [!code focus]
|
|
106
|
+
* id: 0, // [!code focus]
|
|
107
|
+
* method: 'eth_estimateGas', // [!code focus]
|
|
108
|
+
* params: [ // [!code focus]
|
|
109
|
+
* { // [!code focus]
|
|
110
|
+
* from: '0xd2135CfB216b74109775236E36d4b433F1DF507B', // [!code focus]
|
|
111
|
+
* to: '0x0D44f617435088c947F00B31160f64b074e412B4', // [!code focus]
|
|
112
|
+
* value: '0x69420', // [!code focus]
|
|
113
|
+
* }, // [!code focus]
|
|
114
|
+
* ], // [!code focus]
|
|
115
|
+
* }) // [!code focus]
|
|
116
|
+
*
|
|
117
|
+
* // 2. Send the JSON-RPC request via HTTP.
|
|
118
|
+
* const gas = await fetch('https://1.rpc.thirdweb.com', {
|
|
119
|
+
* body: JSON.stringify(request),
|
|
120
|
+
* headers: {
|
|
121
|
+
* 'Content-Type': 'application/json',
|
|
122
|
+
* },
|
|
123
|
+
* method: 'POST',
|
|
124
|
+
* })
|
|
125
|
+
* .then((response) => response.json())
|
|
126
|
+
* // 3. Parse the JSON-RPC response into a type-safe result.
|
|
127
|
+
* .then((response) => RpcResponse.parse(response, { request }))
|
|
128
|
+
* ```
|
|
129
|
+
*
|
|
130
|
+
* @param options - JSON-RPC request options.
|
|
131
|
+
* @returns The fully-formed JSON-RPC request object.
|
|
132
|
+
*/
|
|
133
|
+
export declare function from<methodName extends RpcSchema.MethodNameGeneric>(options: from.Options<methodName>): from.ReturnType<methodName>;
|
|
134
|
+
export declare namespace from {
|
|
135
|
+
var parseError: (error: unknown) => from.ErrorType;
|
|
136
|
+
}
|
|
137
|
+
export declare namespace from {
|
|
138
|
+
type Options<methodName extends RpcSchema.MethodNameGeneric> = Compute<RpcSchema_internal.ExtractRequestOpaque<RpcSchema.Default, methodName> & {
|
|
139
|
+
id: number;
|
|
140
|
+
}>;
|
|
141
|
+
type ReturnType<methodName extends RpcSchema.MethodNameGeneric> = Compute<RpcRequest<RpcSchema.ExtractItem<RpcSchema.Default, methodName>>>;
|
|
142
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=RpcRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RpcRequest.d.ts","sourceRoot":"","sources":["../RpcRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,KAAK,kBAAkB,MAAM,yBAAyB,CAAA;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,+HAA+H;AAC/H,MAAM,MAAM,UAAU,CAAC,MAAM,SAAS,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,IACzE,OAAO,CACL,MAAM,SAAS,GAAG,GACd,MAAM,CAAC,SAAS,CAAC,GAAG;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,KAAK,CAAA;IACd,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;CAClC,GACD,KAAK,CACV,CAAA;AAEH,mCAAmC;AACnC,MAAM,MAAM,KAAK,CAAC,MAAM,SAAS,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,IACpE,OAAO,CAAC;IACN,OAAO,EAAE,CAAC,UAAU,SAAS,SAAS,CAAC,iBAAiB,EACtD,UAAU,EAAE,OAAO,CACjB,kBAAkB,CAAC,oBAAoB,CAAC,MAAM,EAAE,UAAU,CAAC,CAC5D,KACE,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;IACnE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB,CAAC,CAAA;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AACH,wBAAgB,WAAW,CACzB,MAAM,SAAS,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,EACpD,OAAO,GAAE,WAAW,CAAC,OAAY,GAAG,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAanE;yBAfe,WAAW;4BA6BM,OAAO,KAE7B,WAAW,CAAC,SAAS;;AAdhC,MAAM,CAAC,OAAO,WAAW,WAAW,CAAC;IACnC,KAAK,OAAO,GAAG;QACb,8BAA8B;QAC9B,EAAE,CAAC,EAAE,MAAM,CAAA;KACZ,CAAA;IAED,KAAK,UAAU,CAAC,MAAM,SAAS,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,IAClE,KAAK,CAAC,MAAM,CAAC,CAAA;IAEf,KAAK,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CACxC;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAgB,IAAI,CAAC,UAAU,SAAS,SAAS,CAAC,iBAAiB,EACjE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAChC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAK7B;yBAPe,IAAI;4BAuBM,OAAO,KAEtB,IAAI,CAAC,SAAS;;AAhBzB,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,KAAK,OAAO,CAAC,UAAU,SAAS,SAAS,CAAC,iBAAiB,IAAI,OAAO,CACpE,kBAAkB,CAAC,oBAAoB,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG;QACvE,EAAE,EAAE,MAAM,CAAA;KACX,CACF,CAAA;IAED,KAAK,UAAU,CAAC,UAAU,SAAS,SAAS,CAAC,iBAAiB,IAAI,OAAO,CACvE,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CACjE,CAAA;IAED,KAAK,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CACxC"}
|