viem 0.0.0-main.20240526T170333 → 0.0.0-main.20240527T071914

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.
Files changed (124) hide show
  1. package/_cjs/accounts/privateKeyToAccount.js +0 -4
  2. package/_cjs/accounts/privateKeyToAccount.js.map +1 -1
  3. package/_cjs/accounts/toAccount.js +0 -1
  4. package/_cjs/accounts/toAccount.js.map +1 -1
  5. package/_cjs/errors/version.js +1 -1
  6. package/_cjs/experimental/index.js +1 -15
  7. package/_cjs/experimental/index.js.map +1 -1
  8. package/_esm/accounts/privateKeyToAccount.js +0 -4
  9. package/_esm/accounts/privateKeyToAccount.js.map +1 -1
  10. package/_esm/accounts/toAccount.js +0 -1
  11. package/_esm/accounts/toAccount.js.map +1 -1
  12. package/_esm/errors/version.js +1 -1
  13. package/_esm/experimental/index.js +0 -7
  14. package/_esm/experimental/index.js.map +1 -1
  15. package/_types/accounts/privateKeyToAccount.d.ts.map +1 -1
  16. package/_types/accounts/toAccount.d.ts.map +1 -1
  17. package/_types/accounts/types.d.ts +2 -4
  18. package/_types/accounts/types.d.ts.map +1 -1
  19. package/_types/celo/chainConfig.d.ts +76 -76
  20. package/_types/celo/formatters.d.ts +38 -38
  21. package/_types/chains/definitions/ancient8.d.ts +30 -30
  22. package/_types/chains/definitions/ancient8Sepolia.d.ts +30 -30
  23. package/_types/chains/definitions/base.d.ts +30 -30
  24. package/_types/chains/definitions/baseGoerli.d.ts +30 -30
  25. package/_types/chains/definitions/baseSepolia.d.ts +30 -30
  26. package/_types/chains/definitions/celo.d.ts +76 -76
  27. package/_types/chains/definitions/celoAlfajores.d.ts +76 -76
  28. package/_types/chains/definitions/fraxtal.d.ts +30 -30
  29. package/_types/chains/definitions/fraxtalTestnet.d.ts +30 -30
  30. package/_types/chains/definitions/funkiSepolia.d.ts +30 -30
  31. package/_types/chains/definitions/liskSepolia.d.ts +30 -30
  32. package/_types/chains/definitions/metalL2.d.ts +30 -30
  33. package/_types/chains/definitions/optimism.d.ts +30 -30
  34. package/_types/chains/definitions/optimismGoerli.d.ts +30 -30
  35. package/_types/chains/definitions/optimismSepolia.d.ts +30 -30
  36. package/_types/chains/definitions/pgn.d.ts +30 -30
  37. package/_types/chains/definitions/pgnTestnet.d.ts +30 -30
  38. package/_types/chains/definitions/rss3.d.ts +30 -30
  39. package/_types/chains/definitions/rss3Sepolia.d.ts +30 -30
  40. package/_types/chains/definitions/zora.d.ts +30 -30
  41. package/_types/chains/definitions/zoraSepolia.d.ts +30 -30
  42. package/_types/chains/definitions/zoraTestnet.d.ts +30 -30
  43. package/_types/errors/version.d.ts +1 -1
  44. package/_types/experimental/index.d.ts +0 -7
  45. package/_types/experimental/index.d.ts.map +1 -1
  46. package/_types/op-stack/chainConfig.d.ts +30 -30
  47. package/_types/op-stack/formatters.d.ts +30 -30
  48. package/_types/utils/formatters/transaction.d.ts +1 -1
  49. package/accounts/privateKeyToAccount.ts +0 -4
  50. package/accounts/toAccount.ts +0 -1
  51. package/accounts/types.ts +2 -9
  52. package/errors/version.ts +1 -1
  53. package/experimental/index.ts +0 -44
  54. package/package.json +1 -1
  55. package/_cjs/experimental/eip3074/actions/signAuthMessage.js +0 -29
  56. package/_cjs/experimental/eip3074/actions/signAuthMessage.js.map +0 -1
  57. package/_cjs/experimental/eip3074/constants/abis.js +0 -123
  58. package/_cjs/experimental/eip3074/constants/abis.js.map +0 -1
  59. package/_cjs/experimental/eip3074/decorators/eip3074.js +0 -13
  60. package/_cjs/experimental/eip3074/decorators/eip3074.js.map +0 -1
  61. package/_cjs/experimental/eip3074/invokers/coders/batchInvokerCoder.js +0 -26
  62. package/_cjs/experimental/eip3074/invokers/coders/batchInvokerCoder.js.map +0 -1
  63. package/_cjs/experimental/eip3074/invokers/coders/defineInvokerCoder.js +0 -8
  64. package/_cjs/experimental/eip3074/invokers/coders/defineInvokerCoder.js.map +0 -1
  65. package/_cjs/experimental/eip3074/invokers/getInvoker.js +0 -64
  66. package/_cjs/experimental/eip3074/invokers/getInvoker.js.map +0 -1
  67. package/_cjs/experimental/eip3074/utils/recoverAuthMessageAddress.js +0 -12
  68. package/_cjs/experimental/eip3074/utils/recoverAuthMessageAddress.js.map +0 -1
  69. package/_cjs/experimental/eip3074/utils/signAuthMessage.js +0 -17
  70. package/_cjs/experimental/eip3074/utils/signAuthMessage.js.map +0 -1
  71. package/_cjs/experimental/eip3074/utils/toAuthMessage.js +0 -17
  72. package/_cjs/experimental/eip3074/utils/toAuthMessage.js.map +0 -1
  73. package/_cjs/experimental/eip3074/utils/verifyAuthMessage.js +0 -11
  74. package/_cjs/experimental/eip3074/utils/verifyAuthMessage.js.map +0 -1
  75. package/_esm/experimental/eip3074/actions/signAuthMessage.js +0 -78
  76. package/_esm/experimental/eip3074/actions/signAuthMessage.js.map +0 -1
  77. package/_esm/experimental/eip3074/constants/abis.js +0 -120
  78. package/_esm/experimental/eip3074/constants/abis.js.map +0 -1
  79. package/_esm/experimental/eip3074/decorators/eip3074.js +0 -26
  80. package/_esm/experimental/eip3074/decorators/eip3074.js.map +0 -1
  81. package/_esm/experimental/eip3074/invokers/coders/batchInvokerCoder.js +0 -22
  82. package/_esm/experimental/eip3074/invokers/coders/batchInvokerCoder.js.map +0 -1
  83. package/_esm/experimental/eip3074/invokers/coders/defineInvokerCoder.js +0 -4
  84. package/_esm/experimental/eip3074/invokers/coders/defineInvokerCoder.js.map +0 -1
  85. package/_esm/experimental/eip3074/invokers/getInvoker.js +0 -60
  86. package/_esm/experimental/eip3074/invokers/getInvoker.js.map +0 -1
  87. package/_esm/experimental/eip3074/utils/recoverAuthMessageAddress.js +0 -8
  88. package/_esm/experimental/eip3074/utils/recoverAuthMessageAddress.js.map +0 -1
  89. package/_esm/experimental/eip3074/utils/signAuthMessage.js +0 -16
  90. package/_esm/experimental/eip3074/utils/signAuthMessage.js.map +0 -1
  91. package/_esm/experimental/eip3074/utils/toAuthMessage.js +0 -16
  92. package/_esm/experimental/eip3074/utils/toAuthMessage.js.map +0 -1
  93. package/_esm/experimental/eip3074/utils/verifyAuthMessage.js +0 -13
  94. package/_esm/experimental/eip3074/utils/verifyAuthMessage.js.map +0 -1
  95. package/_types/experimental/eip3074/actions/signAuthMessage.d.ts +0 -82
  96. package/_types/experimental/eip3074/actions/signAuthMessage.d.ts.map +0 -1
  97. package/_types/experimental/eip3074/constants/abis.d.ts +0 -91
  98. package/_types/experimental/eip3074/constants/abis.d.ts.map +0 -1
  99. package/_types/experimental/eip3074/decorators/eip3074.d.ts +0 -27
  100. package/_types/experimental/eip3074/decorators/eip3074.d.ts.map +0 -1
  101. package/_types/experimental/eip3074/invokers/coders/batchInvokerCoder.d.ts +0 -11
  102. package/_types/experimental/eip3074/invokers/coders/batchInvokerCoder.d.ts.map +0 -1
  103. package/_types/experimental/eip3074/invokers/coders/defineInvokerCoder.d.ts +0 -14
  104. package/_types/experimental/eip3074/invokers/coders/defineInvokerCoder.d.ts.map +0 -1
  105. package/_types/experimental/eip3074/invokers/getInvoker.d.ts +0 -48
  106. package/_types/experimental/eip3074/invokers/getInvoker.d.ts.map +0 -1
  107. package/_types/experimental/eip3074/utils/recoverAuthMessageAddress.d.ts +0 -12
  108. package/_types/experimental/eip3074/utils/recoverAuthMessageAddress.d.ts.map +0 -1
  109. package/_types/experimental/eip3074/utils/signAuthMessage.d.ts +0 -16
  110. package/_types/experimental/eip3074/utils/signAuthMessage.d.ts.map +0 -1
  111. package/_types/experimental/eip3074/utils/toAuthMessage.d.ts +0 -20
  112. package/_types/experimental/eip3074/utils/toAuthMessage.d.ts.map +0 -1
  113. package/_types/experimental/eip3074/utils/verifyAuthMessage.d.ts +0 -19
  114. package/_types/experimental/eip3074/utils/verifyAuthMessage.d.ts.map +0 -1
  115. package/experimental/eip3074/actions/signAuthMessage.ts +0 -151
  116. package/experimental/eip3074/constants/abis.ts +0 -119
  117. package/experimental/eip3074/decorators/eip3074.ts +0 -58
  118. package/experimental/eip3074/invokers/coders/batchInvokerCoder.ts +0 -46
  119. package/experimental/eip3074/invokers/coders/defineInvokerCoder.ts +0 -20
  120. package/experimental/eip3074/invokers/getInvoker.ts +0 -192
  121. package/experimental/eip3074/utils/recoverAuthMessageAddress.ts +0 -29
  122. package/experimental/eip3074/utils/signAuthMessage.ts +0 -40
  123. package/experimental/eip3074/utils/toAuthMessage.ts +0 -50
  124. package/experimental/eip3074/utils/verifyAuthMessage.ts +0 -46
@@ -1,82 +0,0 @@
1
- import type { Address } from 'abitype';
2
- import type { Client } from '../../../clients/createClient.js';
3
- import type { Transport } from '../../../clients/transports/createTransport.js';
4
- import type { ErrorType } from '../../../errors/utils.js';
5
- import type { Account, DeriveAccount, LocalAccount } from '../../../types/account.js';
6
- import type { Chain, GetChainParameter } from '../../../types/chain.js';
7
- import type { Hash, Hex } from '../../../types/misc.js';
8
- import type { IsUndefined } from '../../../types/utils.js';
9
- type GetAccountParameter<account extends Account | undefined = Account | undefined, accountOverride extends Account | Address | undefined = Account | Address> = IsUndefined<account> extends true ? {
10
- account: accountOverride | LocalAccount;
11
- } : account extends LocalAccount ? {
12
- account?: accountOverride | LocalAccount | undefined;
13
- } : {
14
- account: accountOverride | LocalAccount;
15
- };
16
- type GetNonceParameter<account extends Account | Address | undefined> = account extends Address | Account ? {
17
- nonce?: number | undefined;
18
- } : {
19
- nonce: number;
20
- };
21
- export type SignAuthMessageParameters<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, chainOverride extends Chain | undefined = Chain | undefined, accountOverride extends Account | Address | undefined = Account | Address> = {
22
- commit: Hash;
23
- invokerAddress: Address;
24
- } & GetAccountParameter<account, accountOverride> & GetChainParameter<chain, chainOverride> & GetNonceParameter<DeriveAccount<account, accountOverride>>;
25
- export type SignAuthMessageReturnType = Hex;
26
- export type SignAuthMessageErrorType = ErrorType;
27
- /**
28
- * Calculates an [EIP-3074](https://eips.ethereum.org/EIPS/eip-3074) auth signature.
29
- *
30
- * With the calculated signature, you can:
31
- * - pass it to an EIP-3074 compatible invoker contract,
32
- * - use [`verifyAuthMessage`](/experimental/eip3074/verifyAuthMessage) to verify the signature,
33
- * - use [`recoverAuthMessageAddress`](/experimental/eip3074/recoverAuthMessageAddress) to recover the signing address from a signature.
34
- *
35
- * @param client - Client to use
36
- * @param parameters - {@link SignAuthMessageParameters}
37
- * @returns The signed auth message. {@link SignAuthMessageReturnType}
38
- *
39
- * @example
40
- * import { createWalletClient, http } from 'viem'
41
- * import { privateKeyToAccount } from 'viem/accounts'
42
- * import { mainnet } from 'viem/chains'
43
- * import { signAuthMessage } from 'viem/experimental'
44
- *
45
- * const account = privateKeyToAccount('0x...')
46
- *
47
- * const client = createWalletClient({
48
- * chain: mainnet,
49
- * transport: http(),
50
- * })
51
- *
52
- * const signature = await signAuthMessage(client, {
53
- * account,
54
- * chainId: 1,
55
- * commit: keccak256('0x1234'),
56
- * invokerAddress: '0x0000000000000000000000000000000000000000',
57
- * nonce: 69,
58
- * })
59
- *
60
- * @example
61
- * // Account Hoisting
62
- * import { createWalletClient, http } from 'viem'
63
- * import { privateKeyToAccount } from 'viem/accounts'
64
- * import { mainnet } from 'viem/chains'
65
- * import { signAuthMessage } from 'viem/experimental'
66
- *
67
- * const client = createWalletClient({
68
- * account: privateKeyToAccount('0x…'),
69
- * chain: mainnet,
70
- * transport: http(),
71
- * })
72
- *
73
- * const signature = await signAuthMessage(client, {
74
- * chainId: 1,
75
- * commit: keccak256('0x1234'),
76
- * invokerAddress: '0x0000000000000000000000000000000000000000',
77
- * nonce: 69,
78
- * })
79
- */
80
- export declare function signAuthMessage<chain extends Chain | undefined, account extends Account | undefined, chainOverride extends Chain | undefined = undefined, accountOverride extends Account | undefined = undefined>(client: Client<Transport, chain, account>, parameters: SignAuthMessageParameters<chain, account, chainOverride, accountOverride>): Promise<SignAuthMessageReturnType>;
81
- export {};
82
- //# sourceMappingURL=signAuthMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signAuthMessage.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/actions/signAuthMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAE/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,YAAY,EACb,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACvE,OAAO,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAI1D,KAAK,mBAAmB,CACtB,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,eAAe,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,IACvE,WAAW,CAAC,OAAO,CAAC,SAAS,IAAI,GACjC;IAAE,OAAO,EAAE,eAAe,GAAG,YAAY,CAAA;CAAE,GAC3C,OAAO,SAAS,YAAY,GAC1B;IACE,OAAO,CAAC,EAAE,eAAe,GAAG,YAAY,GAAG,SAAS,CAAA;CACrD,GACD;IAAE,OAAO,EAAE,eAAe,GAAG,YAAY,CAAA;CAAE,CAAA;AAEjD,KAAK,iBAAiB,CAAC,OAAO,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,IAClE,OAAO,SAAS,OAAO,GAAG,OAAO,GAC7B;IACE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC3B,GACD;IACE,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAEP,MAAM,MAAM,yBAAyB,CACnC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EACzD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,eAAe,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,IACvE;IACF,MAAM,EAAE,IAAI,CAAA;IACZ,cAAc,EAAE,OAAO,CAAA;CACxB,GAAG,mBAAmB,CAAC,OAAO,EAAE,eAAe,CAAC,GAC/C,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,GACvC,iBAAiB,CAAC,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAA;AAE5D,MAAM,MAAM,yBAAyB,GAAG,GAAG,CAAA;AAE3C,MAAM,MAAM,wBAAwB,GAAG,SAAS,CAAA;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,wBAAsB,eAAe,CACnC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EACnD,eAAe,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEvD,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,yBAAyB,CACnC,KAAK,EACL,OAAO,EACP,aAAa,EACb,eAAe,CAChB,GACA,OAAO,CAAC,yBAAyB,CAAC,CA+BpC"}
@@ -1,91 +0,0 @@
1
- export declare const invokerAbi: readonly [{
2
- readonly type: "function";
3
- readonly name: "execute";
4
- readonly inputs: readonly [{
5
- readonly name: "execData";
6
- readonly type: "bytes";
7
- readonly internalType: "bytes";
8
- }, {
9
- readonly name: "signature";
10
- readonly type: "tuple";
11
- readonly internalType: "struct Auth.Signature";
12
- readonly components: readonly [{
13
- readonly name: "signer";
14
- readonly type: "address";
15
- readonly internalType: "address";
16
- }, {
17
- readonly name: "yParity";
18
- readonly type: "uint8";
19
- readonly internalType: "uint8";
20
- }, {
21
- readonly name: "r";
22
- readonly type: "bytes32";
23
- readonly internalType: "bytes32";
24
- }, {
25
- readonly name: "s";
26
- readonly type: "bytes32";
27
- readonly internalType: "bytes32";
28
- }];
29
- }];
30
- readonly outputs: readonly [];
31
- readonly stateMutability: "nonpayable";
32
- }, {
33
- readonly type: "function";
34
- readonly name: "getDigest";
35
- readonly inputs: readonly [{
36
- readonly name: "execData";
37
- readonly type: "bytes";
38
- readonly internalType: "bytes";
39
- }, {
40
- readonly name: "nonce";
41
- readonly type: "uint256";
42
- readonly internalType: "uint256";
43
- }];
44
- readonly outputs: readonly [{
45
- readonly name: "digest";
46
- readonly type: "bytes32";
47
- readonly internalType: "bytes32";
48
- }];
49
- readonly stateMutability: "view";
50
- }, {
51
- readonly type: "function";
52
- readonly name: "multiSend";
53
- readonly inputs: readonly [{
54
- readonly name: "transactions";
55
- readonly type: "bytes";
56
- readonly internalType: "bytes";
57
- }];
58
- readonly outputs: readonly [];
59
- readonly stateMutability: "payable";
60
- }, {
61
- readonly type: "function";
62
- readonly name: "nextNonce";
63
- readonly inputs: readonly [{
64
- readonly name: "";
65
- readonly type: "address";
66
- readonly internalType: "address";
67
- }];
68
- readonly outputs: readonly [{
69
- readonly name: "";
70
- readonly type: "uint256";
71
- readonly internalType: "uint256";
72
- }];
73
- readonly stateMutability: "view";
74
- }, {
75
- readonly type: "error";
76
- readonly name: "BadAuth";
77
- readonly inputs: readonly [];
78
- }, {
79
- readonly type: "error";
80
- readonly name: "InvalidNonce";
81
- readonly inputs: readonly [{
82
- readonly name: "authority";
83
- readonly type: "address";
84
- readonly internalType: "address";
85
- }, {
86
- readonly name: "attempted";
87
- readonly type: "uint256";
88
- readonly internalType: "uint256";
89
- }];
90
- }];
91
- //# sourceMappingURL=abis.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"abis.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/constants/abis.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsHb,CAAA"}
@@ -1,27 +0,0 @@
1
- import type { Client } from '../../../clients/createClient.js';
2
- import type { Transport } from '../../../clients/transports/createTransport.js';
3
- import type { Account } from '../../../types/account.js';
4
- import type { Chain } from '../../../types/chain.js';
5
- import { type SignAuthMessageParameters, type SignAuthMessageReturnType } from '../actions/signAuthMessage.js';
6
- export type WalletActionsEip3074<chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined> = {
7
- signAuthMessage: <chainOverride extends Chain | undefined = undefined, accountOverride extends Account | undefined = undefined>(parameters: SignAuthMessageParameters<chain, account, chainOverride, accountOverride>) => Promise<SignAuthMessageReturnType>;
8
- };
9
- /**
10
- * A suite of EIP-3074 Wallet Actions.
11
- *
12
- * - Docs: https://viem.sh/experimental
13
- *
14
- * @example
15
- * import { createPublicClient, createWalletClient, http } from 'viem'
16
- * import { mainnet } from 'viem/chains'
17
- * import { walletActionsEip3074 } from 'viem/experimental'
18
- *
19
- * const walletClient = createWalletClient({
20
- * chain: mainnet,
21
- * transport: http(),
22
- * }).extend(walletActionsEip3074())
23
- *
24
- * const signature = await walletClient.signAuthMessage({...})
25
- */
26
- export declare function walletActionsEip3074(): <transport extends Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined>(client: Client<transport, chain, account>) => WalletActionsEip3074<chain, account>;
27
- //# sourceMappingURL=eip3074.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eip3074.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/decorators/eip3074.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AACpD,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAE/B,MAAM,+BAA+B,CAAA;AAEtC,MAAM,MAAM,oBAAoB,CAC9B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACvD;IACF,eAAe,EAAE,CACf,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EACnD,eAAe,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEvD,UAAU,EAAE,yBAAyB,CACnC,KAAK,EACL,OAAO,EACP,aAAa,EACb,eAAe,CAChB,KACE,OAAO,CAAC,yBAAyB,CAAC,CAAA;CACxC,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,0JAMxB,OAAO,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,KACxC,qBAAqB,KAAK,EAAE,OAAO,CAAC,CAMxC"}
@@ -1,11 +0,0 @@
1
- import type { Address } from 'abitype';
2
- import type { Hex } from '../../../../types/misc.js';
3
- type Calls = readonly {
4
- to: Address;
5
- data?: Hex | undefined;
6
- value?: bigint | undefined;
7
- }[];
8
- export type BatchInvokerArgs = Calls;
9
- export declare function batchInvokerCoder(): import("./defineInvokerCoder.js").DefineInvokerCoderReturnType<Calls>;
10
- export {};
11
- //# sourceMappingURL=batchInvokerCoder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"batchInvokerCoder.d.ts","sourceRoot":"","sources":["../../../../../experimental/eip3074/invokers/coders/batchInvokerCoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAQpD,KAAK,KAAK,GAAG,SAAS;IACpB,EAAE,EAAE,OAAO,CAAA;IACX,IAAI,CAAC,EAAE,GAAG,GAAG,SAAS,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC3B,EAAE,CAAA;AAEH,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAA;AAEpC,wBAAgB,iBAAiB,0EA2BhC"}
@@ -1,14 +0,0 @@
1
- import type { Address } from 'abitype';
2
- import type { Client } from '../../../../clients/createClient.js';
3
- import type { Hex } from '../../../../types/misc.js';
4
- export type InvokerCoder<args = unknown> = {
5
- toExecData: (args: args, options: {
6
- authority: Address;
7
- client: Client;
8
- invokerAddress: Hex;
9
- }) => Promise<Hex>;
10
- };
11
- export type DefineInvokerCoderParameters<args = unknown> = InvokerCoder<args>;
12
- export type DefineInvokerCoderReturnType<args = unknown> = InvokerCoder<args>;
13
- export declare function defineInvokerCoder<args>(parameters: DefineInvokerCoderParameters<args>): DefineInvokerCoderReturnType<args>;
14
- //# sourceMappingURL=defineInvokerCoder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"defineInvokerCoder.d.ts","sourceRoot":"","sources":["../../../../../experimental/eip3074/invokers/coders/defineInvokerCoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAA;AACjE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAEpD,MAAM,MAAM,YAAY,CAAC,IAAI,GAAG,OAAO,IAAI;IACzC,UAAU,EAAE,CACV,IAAI,EAAE,IAAI,EACV,OAAO,EAAE;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,GAAG,CAAA;KAAE,KACjE,OAAO,CAAC,GAAG,CAAC,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,4BAA4B,CAAC,IAAI,GAAG,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;AAE7E,MAAM,MAAM,4BAA4B,CAAC,IAAI,GAAG,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;AAE7E,wBAAgB,kBAAkB,CAAC,IAAI,EACrC,UAAU,EAAE,4BAA4B,CAAC,IAAI,CAAC,GAC7C,4BAA4B,CAAC,IAAI,CAAC,CAEpC"}
@@ -1,48 +0,0 @@
1
- import type { Address } from 'abitype';
2
- import { type GetTransactionCountErrorType } from '../../../actions/public/getTransactionCount.js';
3
- import { type WriteContractErrorType } from '../../../actions/wallet/writeContract.js';
4
- import type { Client } from '../../../clients/createClient.js';
5
- import type { Transport } from '../../../clients/transports/createTransport.js';
6
- import type { ErrorType } from '../../../errors/utils.js';
7
- import type { Account, LocalAccount } from '../../../types/account.js';
8
- import type { Chain, GetChainParameter } from '../../../types/chain.js';
9
- import type { Hex } from '../../../types/misc.js';
10
- import type { IsUndefined } from '../../../types/utils.js';
11
- import { type IsAddressEqualErrorType } from '../../../utils/address/isAddressEqual.js';
12
- import { type Keccak256ErrorType } from '../../../utils/hash/keccak256.js';
13
- import { type ParseSignatureErrorType } from '../../../utils/signature/parseSignature.js';
14
- import { type SignAuthMessageErrorType } from '../actions/signAuthMessage.js';
15
- import type { InvokerCoder } from './coders/defineInvokerCoder.js';
16
- type GetExecutorParameter<TAccount extends Account | undefined = Account | undefined, TAccountOverride extends Account | Address | undefined = Account | Address, TRequired extends boolean = true> = IsUndefined<TAccount> extends true ? TRequired extends true ? {
17
- executor: TAccountOverride | Account | Address;
18
- } : {
19
- executor?: TAccountOverride | Account | Address | undefined;
20
- } : {
21
- executor?: TAccountOverride | Account | Address | undefined;
22
- };
23
- export type InvokerExecuteParameters<account extends Account | undefined = Account | undefined, chain extends Chain | undefined = Chain | undefined, chainOverride extends Chain | undefined = Chain | undefined, args = unknown> = {
24
- args: args;
25
- authority: Account | Address;
26
- signature: Hex;
27
- } & GetExecutorParameter<account> & GetChainParameter<chain, chainOverride>;
28
- export type InvokerExecuteErrorType = WriteContractErrorType | ParseSignatureErrorType | ErrorType;
29
- export type InvokerSignParameters<account extends Account | undefined = Account | undefined, chain extends Chain | undefined = Chain | undefined, chainOverride extends Chain | undefined = Chain | undefined, args = unknown> = {
30
- args: args;
31
- authority: LocalAccount;
32
- } & GetExecutorParameter<account, Account | Address, false> & GetChainParameter<chain, chainOverride>;
33
- export type InvokerSignErrorType = GetTransactionCountErrorType | SignAuthMessageErrorType | Keccak256ErrorType | IsAddressEqualErrorType | ErrorType;
34
- export type Invoker<account extends Account | undefined = Account | undefined, chain extends Chain | undefined = Chain | undefined, args = unknown> = {
35
- address: Address;
36
- execute<chainOverride extends Chain | undefined = undefined>(parameters: InvokerExecuteParameters<account, chain, chainOverride, args>): Promise<Hex>;
37
- sign<chainOverride extends Chain | undefined = undefined>(parameters: InvokerSignParameters<account, chain, chainOverride, args>): Promise<Hex>;
38
- };
39
- export type GetInvokerParameters<account extends Account | undefined = Account | undefined, chain extends Chain | undefined = Chain | undefined, args = unknown> = {
40
- address: Address;
41
- client: Client<Transport, chain, account>;
42
- coder: InvokerCoder<args>;
43
- };
44
- export type GetInvokerErrorType = ErrorType;
45
- export type InvokerArgs<invoker extends Invoker<any, any, any> = Invoker> = invoker extends Invoker<any, any, infer args> ? args : unknown;
46
- export declare function getInvoker<account extends Account | undefined, chain extends Chain | undefined, args>(parameters: GetInvokerParameters<account, chain, args>): Invoker<account, chain, args>;
47
- export {};
48
- //# sourceMappingURL=getInvoker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getInvoker.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/invokers/getInvoker.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import type { Address } from 'abitype';
2
- import type { ByteArray, Hex, Signature } from '../../../types/misc.js';
3
- import type { ErrorType } from '../../../errors/utils.js';
4
- import { type RecoverAddressErrorType } from '../../../utils/signature/recoverAddress.js';
5
- import { type ToAuthMessageParameters } from './toAuthMessage.js';
6
- export type RecoverAuthMessageAddressParameters = ToAuthMessageParameters & {
7
- signature: Hex | ByteArray | Signature;
8
- };
9
- export type RecoverAuthMessageAddressReturnType = Address;
10
- export type RecoverAuthMessageAddressErrorType = RecoverAddressErrorType | ErrorType;
11
- export declare function recoverAuthMessageAddress({ signature, ...parameters }: RecoverAuthMessageAddressParameters): Promise<RecoverAuthMessageAddressReturnType>;
12
- //# sourceMappingURL=recoverAuthMessageAddress.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"recoverAuthMessageAddress.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/utils/recoverAuthMessageAddress.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAEvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,KAAK,uBAAuB,EAAiB,MAAM,oBAAoB,CAAA;AAEhF,MAAM,MAAM,mCAAmC,GAAG,uBAAuB,GAAG;IAC1E,SAAS,EAAE,GAAG,GAAG,SAAS,GAAG,SAAS,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,mCAAmC,GAAG,OAAO,CAAA;AAEzD,MAAM,MAAM,kCAAkC,GAC1C,uBAAuB,GACvB,SAAS,CAAA;AAEb,wBAAsB,yBAAyB,CAAC,EAC9C,SAAS,EACT,GAAG,UAAU,EACd,EAAE,mCAAmC,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAGpF"}
@@ -1,16 +0,0 @@
1
- import { type SignErrorType } from '../../../accounts/utils/sign.js';
2
- import type { ErrorType } from '../../../errors/utils.js';
3
- import type { Hex } from '../../../types/misc.js';
4
- import { type SerializeSignatureErrorType } from '../../../utils/signature/serializeSignature.js';
5
- import { type ToAuthMessageErrorType, type ToAuthMessageParameters } from './toAuthMessage.js';
6
- export type SignAuthMessageParameters = ToAuthMessageParameters & {
7
- /** The private key to sign with. */
8
- privateKey: Hex;
9
- };
10
- export type SignAuthMessageReturnType = Hex;
11
- export type SignAuthMessageErrorType = SignErrorType | ToAuthMessageErrorType | SerializeSignatureErrorType | ErrorType;
12
- /**
13
- * Computes a EIP-3074 authorization signature in format: `keccak256(MAGIC || chainId || nonce || invokerAddress || commit))`.
14
- */
15
- export declare function signAuthMessage(parameters: SignAuthMessageParameters): Promise<SignAuthMessageReturnType>;
16
- //# sourceMappingURL=signAuthMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signAuthMessage.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/utils/signAuthMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAQ,MAAM,iCAAiC,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AAEjD,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,gDAAgD,CAAA;AACvD,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAE7B,MAAM,oBAAoB,CAAA;AAE3B,MAAM,MAAM,yBAAyB,GAAG,uBAAuB,GAAG;IAChE,oCAAoC;IACpC,UAAU,EAAE,GAAG,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,GAAG,CAAA;AAE3C,MAAM,MAAM,wBAAwB,GAChC,aAAa,GACb,sBAAsB,GACtB,2BAA2B,GAC3B,SAAS,CAAA;AAEb;;GAEG;AACH,wBAAsB,eAAe,CACnC,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,yBAAyB,CAAC,CAOpC"}
@@ -1,20 +0,0 @@
1
- import type { Address } from 'abitype';
2
- import type { ErrorType } from '../../../errors/utils.js';
3
- import type { Hash } from '../../../types/misc.js';
4
- import { type EncodePackedErrorType } from '../../../utils/abi/encodePacked.js';
5
- import { type PadHexErrorType } from '../../../utils/data/pad.js';
6
- import { type NumberToHexErrorType } from '../../../utils/encoding/toHex.js';
7
- import type { Keccak256ErrorType } from '../../../utils/hash/keccak256.js';
8
- export type ToAuthMessageParameters = {
9
- chainId: number;
10
- commit: Hash;
11
- invokerAddress: Address;
12
- nonce: number;
13
- };
14
- export type ToAuthMessageReturnType = Hash;
15
- export type ToAuthMessageErrorType = Keccak256ErrorType | EncodePackedErrorType | NumberToHexErrorType | PadHexErrorType | ErrorType;
16
- /**
17
- * Returns the message to be signed for EIP-3074 authorization.
18
- */
19
- export declare function toAuthMessage({ chainId, commit, invokerAddress, nonce, }: ToAuthMessageParameters): ToAuthMessageReturnType;
20
- //# sourceMappingURL=toAuthMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toAuthMessage.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/utils/toAuthMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EACL,KAAK,qBAAqB,EAE3B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,KAAK,eAAe,EAAU,MAAM,4BAA4B,CAAA;AACzE,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,kCAAkC,CAAA;AACzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAE1E,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,IAAI,CAAA;IACZ,cAAc,EAAE,OAAO,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAA;AAE1C,MAAM,MAAM,sBAAsB,GAC9B,kBAAkB,GAClB,qBAAqB,GACrB,oBAAoB,GACpB,eAAe,GACf,SAAS,CAAA;AAEb;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,MAAM,EACN,cAAc,EACd,KAAK,GACN,EAAE,uBAAuB,GAAG,uBAAuB,CAWnD"}
@@ -1,19 +0,0 @@
1
- import type { Address } from 'abitype';
2
- import type { ErrorType } from '../../../errors/utils.js';
3
- import { type GetAddressErrorType } from '../../../utils/address/getAddress.js';
4
- import { type IsAddressEqualErrorType } from '../../../utils/address/isAddressEqual.js';
5
- import { type RecoverAuthMessageAddressErrorType, type RecoverAuthMessageAddressParameters } from './recoverAuthMessageAddress.js';
6
- export type VerifyAuthMessageParameters = RecoverAuthMessageAddressParameters & {
7
- /** The address that signed the original auth message. */
8
- address: Address;
9
- };
10
- export type VerifyAuthMessageReturnType = boolean;
11
- export type VerifyAuthMessageErrorType = IsAddressEqualErrorType | GetAddressErrorType | RecoverAuthMessageAddressErrorType | ErrorType;
12
- /**
13
- * Verify that a auth message was signed by the provided address.
14
- *
15
- * @param parameters - {@link VerifyAuthMessageParameters}
16
- * @returns Whether or not the signature is valid. {@link VerifyAuthMessageReturnType}
17
- */
18
- export declare function verifyAuthMessage({ address, ...parameters }: VerifyAuthMessageParameters): Promise<VerifyAuthMessageReturnType>;
19
- //# sourceMappingURL=verifyAuthMessage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"verifyAuthMessage.d.ts","sourceRoot":"","sources":["../../../../experimental/eip3074/utils/verifyAuthMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,0CAA0C,CAAA;AACjD,OAAO,EACL,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EAEzC,MAAM,gCAAgC,CAAA;AAEvC,MAAM,MAAM,2BAA2B,GACrC,mCAAmC,GAAG;IACpC,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAEH,MAAM,MAAM,2BAA2B,GAAG,OAAO,CAAA;AAEjD,MAAM,MAAM,0BAA0B,GAClC,uBAAuB,GACvB,mBAAmB,GACnB,kCAAkC,GAClC,SAAS,CAAA;AAEb;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,OAAO,EACP,GAAG,UAAU,EACd,EAAE,2BAA2B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAKpE"}
@@ -1,151 +0,0 @@
1
- import type { Address } from 'abitype'
2
- import { getTransactionCount } from '../../../actions/public/getTransactionCount.js'
3
- import type { Client } from '../../../clients/createClient.js'
4
- import type { Transport } from '../../../clients/transports/createTransport.js'
5
- import { AccountNotFoundError } from '../../../errors/account.js'
6
- import type { ErrorType } from '../../../errors/utils.js'
7
- import type {
8
- Account,
9
- DeriveAccount,
10
- LocalAccount,
11
- } from '../../../types/account.js'
12
- import type { Chain, GetChainParameter } from '../../../types/chain.js'
13
- import type { Hash, Hex } from '../../../types/misc.js'
14
- import type { IsUndefined } from '../../../types/utils.js'
15
- import { getAction } from '../../../utils/getAction.js'
16
-
17
- // TODO: Use `GetAccountParameter` from `types/utils.ts` when JSON-RPC method for sign auth message exists.
18
- type GetAccountParameter<
19
- account extends Account | undefined = Account | undefined,
20
- accountOverride extends Account | Address | undefined = Account | Address,
21
- > = IsUndefined<account> extends true
22
- ? { account: accountOverride | LocalAccount }
23
- : account extends LocalAccount
24
- ? {
25
- account?: accountOverride | LocalAccount | undefined
26
- }
27
- : { account: accountOverride | LocalAccount }
28
-
29
- type GetNonceParameter<account extends Account | Address | undefined> =
30
- account extends Address | Account
31
- ? {
32
- nonce?: number | undefined
33
- }
34
- : {
35
- nonce: number
36
- }
37
-
38
- export type SignAuthMessageParameters<
39
- chain extends Chain | undefined = Chain | undefined,
40
- account extends Account | undefined = Account | undefined,
41
- chainOverride extends Chain | undefined = Chain | undefined,
42
- accountOverride extends Account | Address | undefined = Account | Address,
43
- > = {
44
- commit: Hash
45
- invokerAddress: Address
46
- } & GetAccountParameter<account, accountOverride> &
47
- GetChainParameter<chain, chainOverride> &
48
- GetNonceParameter<DeriveAccount<account, accountOverride>>
49
-
50
- export type SignAuthMessageReturnType = Hex
51
-
52
- export type SignAuthMessageErrorType = ErrorType
53
-
54
- /**
55
- * Calculates an [EIP-3074](https://eips.ethereum.org/EIPS/eip-3074) auth signature.
56
- *
57
- * With the calculated signature, you can:
58
- * - pass it to an EIP-3074 compatible invoker contract,
59
- * - use [`verifyAuthMessage`](/experimental/eip3074/verifyAuthMessage) to verify the signature,
60
- * - use [`recoverAuthMessageAddress`](/experimental/eip3074/recoverAuthMessageAddress) to recover the signing address from a signature.
61
- *
62
- * @param client - Client to use
63
- * @param parameters - {@link SignAuthMessageParameters}
64
- * @returns The signed auth message. {@link SignAuthMessageReturnType}
65
- *
66
- * @example
67
- * import { createWalletClient, http } from 'viem'
68
- * import { privateKeyToAccount } from 'viem/accounts'
69
- * import { mainnet } from 'viem/chains'
70
- * import { signAuthMessage } from 'viem/experimental'
71
- *
72
- * const account = privateKeyToAccount('0x...')
73
- *
74
- * const client = createWalletClient({
75
- * chain: mainnet,
76
- * transport: http(),
77
- * })
78
- *
79
- * const signature = await signAuthMessage(client, {
80
- * account,
81
- * chainId: 1,
82
- * commit: keccak256('0x1234'),
83
- * invokerAddress: '0x0000000000000000000000000000000000000000',
84
- * nonce: 69,
85
- * })
86
- *
87
- * @example
88
- * // Account Hoisting
89
- * import { createWalletClient, http } from 'viem'
90
- * import { privateKeyToAccount } from 'viem/accounts'
91
- * import { mainnet } from 'viem/chains'
92
- * import { signAuthMessage } from 'viem/experimental'
93
- *
94
- * const client = createWalletClient({
95
- * account: privateKeyToAccount('0x…'),
96
- * chain: mainnet,
97
- * transport: http(),
98
- * })
99
- *
100
- * const signature = await signAuthMessage(client, {
101
- * chainId: 1,
102
- * commit: keccak256('0x1234'),
103
- * invokerAddress: '0x0000000000000000000000000000000000000000',
104
- * nonce: 69,
105
- * })
106
- */
107
- export async function signAuthMessage<
108
- chain extends Chain | undefined,
109
- account extends Account | undefined,
110
- chainOverride extends Chain | undefined = undefined,
111
- accountOverride extends Account | undefined = undefined,
112
- >(
113
- client: Client<Transport, chain, account>,
114
- parameters: SignAuthMessageParameters<
115
- chain,
116
- account,
117
- chainOverride,
118
- accountOverride
119
- >,
120
- ): Promise<SignAuthMessageReturnType> {
121
- const {
122
- account = client.account,
123
- chain = client.chain,
124
- commit,
125
- invokerAddress,
126
- } = parameters
127
-
128
- if (!account)
129
- throw new AccountNotFoundError({
130
- docsPath: '/experimental/eip5792/signAuthMessage',
131
- })
132
-
133
- const nonce = await (() => {
134
- if (typeof parameters.nonce === 'number') return parameters.nonce
135
- return getAction(
136
- client,
137
- getTransactionCount,
138
- 'getTransactionCount',
139
- )({
140
- address: account.address,
141
- blockTag: 'pending',
142
- })
143
- })()
144
-
145
- return account.experimental_signAuthMessage!({
146
- chainId: chain!.id,
147
- commit,
148
- invokerAddress,
149
- nonce,
150
- })
151
- }