@account-kit/wallet-client 0.1.0-alpha.9 → 4.50.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/esm/client/actions/formatSign.d.ts +30 -0
- package/dist/esm/client/actions/formatSign.js +32 -0
- package/dist/esm/client/actions/formatSign.js.map +1 -0
- package/dist/esm/client/actions/getCallsStatus.d.ts +6 -3
- package/dist/esm/client/actions/getCallsStatus.js +3 -0
- package/dist/esm/client/actions/getCallsStatus.js.map +1 -1
- package/dist/esm/client/actions/grantPermissions.d.ts +10 -11
- package/dist/esm/client/actions/grantPermissions.js +26 -12
- package/dist/esm/client/actions/grantPermissions.js.map +1 -1
- package/dist/esm/client/actions/listAccounts.d.ts +10 -3
- package/dist/esm/client/actions/listAccounts.js +14 -2
- package/dist/esm/client/actions/listAccounts.js.map +1 -1
- package/dist/esm/client/actions/prepareCalls.d.ts +6 -3
- package/dist/esm/client/actions/prepareCalls.js +12 -8
- package/dist/esm/client/actions/prepareCalls.js.map +1 -1
- package/dist/esm/client/actions/prepareSign.d.ts +28 -0
- package/dist/esm/client/actions/prepareSign.js +31 -0
- package/dist/esm/client/actions/prepareSign.js.map +1 -0
- package/dist/esm/client/actions/requestAccount.d.ts +3 -1
- package/dist/esm/client/actions/requestAccount.js +5 -3
- package/dist/esm/client/actions/requestAccount.js.map +1 -1
- package/dist/esm/client/actions/sendPreparedCalls.d.ts +3 -1
- package/dist/esm/client/actions/sendPreparedCalls.js +2 -0
- package/dist/esm/client/actions/sendPreparedCalls.js.map +1 -1
- package/dist/esm/client/actions/signMessage.d.ts +5 -2
- package/dist/esm/client/actions/signMessage.js +5 -2
- package/dist/esm/client/actions/signMessage.js.map +1 -1
- package/dist/esm/client/actions/signPreparedCalls.d.ts +2 -2
- package/dist/esm/client/actions/signPreparedCalls.js +3 -3
- package/dist/esm/client/actions/signPreparedCalls.js.map +1 -1
- package/dist/esm/client/actions/signSignatureRequest.d.ts +6 -10
- package/dist/esm/client/actions/signSignatureRequest.js +4 -7
- package/dist/esm/client/actions/signSignatureRequest.js.map +1 -1
- package/dist/esm/client/actions/signTypedData.d.ts +2 -0
- package/dist/esm/client/actions/signTypedData.js +2 -0
- package/dist/esm/client/actions/signTypedData.js.map +1 -1
- package/dist/esm/client/decorator.d.ts +0 -2
- package/dist/esm/client/decorator.js +1 -3
- package/dist/esm/client/decorator.js.map +1 -1
- package/dist/esm/client/index.d.ts +10 -6
- package/dist/esm/client/index.js +18 -21
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/exports/index.d.ts +1 -5
- package/dist/esm/exports/index.js +1 -6
- package/dist/esm/exports/index.js.map +1 -1
- package/dist/esm/internal/account.d.ts +33 -0
- package/dist/esm/{isomorphic/utils/createAccount.js → internal/account.js} +25 -49
- package/dist/esm/internal/account.js.map +1 -0
- package/dist/esm/types.d.ts +5 -11
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/utils.d.ts +13 -1
- package/dist/esm/utils.js +13 -1
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/version.d.ts +1 -0
- package/dist/esm/version.js +4 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/types/client/actions/formatSign.d.ts +31 -0
- package/dist/types/client/actions/formatSign.d.ts.map +1 -0
- package/dist/types/client/actions/getCallsStatus.d.ts +6 -3
- package/dist/types/client/actions/getCallsStatus.d.ts.map +1 -1
- package/dist/types/client/actions/grantPermissions.d.ts +10 -11
- package/dist/types/client/actions/grantPermissions.d.ts.map +1 -1
- package/dist/types/client/actions/listAccounts.d.ts +10 -3
- package/dist/types/client/actions/listAccounts.d.ts.map +1 -1
- package/dist/types/client/actions/prepareCalls.d.ts +6 -3
- package/dist/types/client/actions/prepareCalls.d.ts.map +1 -1
- package/dist/types/client/actions/prepareSign.d.ts +29 -0
- package/dist/types/client/actions/prepareSign.d.ts.map +1 -0
- package/dist/types/client/actions/requestAccount.d.ts +3 -1
- package/dist/types/client/actions/requestAccount.d.ts.map +1 -1
- package/dist/types/client/actions/sendPreparedCalls.d.ts +3 -1
- package/dist/types/client/actions/sendPreparedCalls.d.ts.map +1 -1
- package/dist/types/client/actions/signMessage.d.ts +5 -2
- package/dist/types/client/actions/signMessage.d.ts.map +1 -1
- package/dist/types/client/actions/signPreparedCalls.d.ts +2 -2
- package/dist/types/client/actions/signPreparedCalls.d.ts.map +1 -1
- package/dist/types/client/actions/signSignatureRequest.d.ts +6 -10
- package/dist/types/client/actions/signSignatureRequest.d.ts.map +1 -1
- package/dist/types/client/actions/signTypedData.d.ts +2 -0
- package/dist/types/client/actions/signTypedData.d.ts.map +1 -1
- package/dist/types/client/decorator.d.ts +0 -2
- package/dist/types/client/decorator.d.ts.map +1 -1
- package/dist/types/client/index.d.ts +10 -6
- package/dist/types/client/index.d.ts.map +1 -1
- package/dist/types/exports/index.d.ts +1 -5
- package/dist/types/exports/index.d.ts.map +1 -1
- package/dist/types/internal/account.d.ts +34 -0
- package/dist/types/internal/account.d.ts.map +1 -0
- package/dist/types/types.d.ts +5 -11
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/utils.d.ts +13 -1
- package/dist/types/utils.d.ts.map +1 -1
- package/dist/types/version.d.ts +2 -0
- package/dist/types/version.d.ts.map +1 -0
- package/package.json +32 -28
- package/src/client/actions/formatSign.ts +55 -0
- package/src/client/actions/getCallsStatus.ts +10 -6
- package/src/client/actions/grantPermissions.ts +46 -18
- package/src/client/actions/listAccounts.ts +22 -5
- package/src/client/actions/prepareCalls.ts +22 -16
- package/src/client/actions/prepareSign.ts +51 -0
- package/src/client/actions/requestAccount.ts +6 -4
- package/src/client/actions/sendPreparedCalls.ts +3 -1
- package/src/client/actions/signMessage.ts +5 -2
- package/src/client/actions/signPreparedCalls.ts +8 -12
- package/src/client/actions/signSignatureRequest.ts +12 -15
- package/src/client/actions/signTypedData.ts +2 -0
- package/src/client/decorator.ts +1 -8
- package/src/client/index.ts +41 -33
- package/src/exports/index.ts +1 -13
- package/src/internal/account.ts +120 -0
- package/src/types.ts +7 -18
- package/src/utils.ts +13 -1
- package/src/version.ts +3 -0
- package/dist/esm/capabilities/eip7702Auth.d.ts +0 -4
- package/dist/esm/capabilities/eip7702Auth.js +0 -18
- package/dist/esm/capabilities/eip7702Auth.js.map +0 -1
- package/dist/esm/capabilities/index.d.ts +0 -41
- package/dist/esm/capabilities/index.js +0 -14
- package/dist/esm/capabilities/index.js.map +0 -1
- package/dist/esm/capabilities/multiDimensionalNonce.d.ts +0 -3
- package/dist/esm/capabilities/multiDimensionalNonce.js +0 -7
- package/dist/esm/capabilities/multiDimensionalNonce.js.map +0 -1
- package/dist/esm/capabilities/overrides.d.ts +0 -26
- package/dist/esm/capabilities/overrides.js +0 -14
- package/dist/esm/capabilities/overrides.js.map +0 -1
- package/dist/esm/capabilities/paymaster.d.ts +0 -3
- package/dist/esm/capabilities/paymaster.js +0 -5
- package/dist/esm/capabilities/paymaster.js.map +0 -1
- package/dist/esm/capabilities/permissions/index.d.ts +0 -145
- package/dist/esm/capabilities/permissions/index.js +0 -83
- package/dist/esm/capabilities/permissions/index.js.map +0 -1
- package/dist/esm/capabilities/permissions/mav2.d.ts +0 -36
- package/dist/esm/capabilities/permissions/mav2.js +0 -88
- package/dist/esm/capabilities/permissions/mav2.js.map +0 -1
- package/dist/esm/client/actions/createAccount.d.ts +0 -35
- package/dist/esm/client/actions/createAccount.js +0 -32
- package/dist/esm/client/actions/createAccount.js.map +0 -1
- package/dist/esm/client/client.e2e-test.d.ts +0 -1
- package/dist/esm/client/client.e2e-test.js +0 -375
- package/dist/esm/client/client.e2e-test.js.map +0 -1
- package/dist/esm/exports/internal.d.ts +0 -14
- package/dist/esm/exports/internal.js +0 -16
- package/dist/esm/exports/internal.js.map +0 -1
- package/dist/esm/isomorphic/actions/createSession.d.ts +0 -14
- package/dist/esm/isomorphic/actions/createSession.js +0 -95
- package/dist/esm/isomorphic/actions/createSession.js.map +0 -1
- package/dist/esm/isomorphic/actions/getCallsStatus.d.ts +0 -21
- package/dist/esm/isomorphic/actions/getCallsStatus.js +0 -113
- package/dist/esm/isomorphic/actions/getCallsStatus.js.map +0 -1
- package/dist/esm/isomorphic/actions/prepareCalls.d.ts +0 -8
- package/dist/esm/isomorphic/actions/prepareCalls.js +0 -116
- package/dist/esm/isomorphic/actions/prepareCalls.js.map +0 -1
- package/dist/esm/isomorphic/actions/sendPreparedCalls.d.ts +0 -8
- package/dist/esm/isomorphic/actions/sendPreparedCalls.js +0 -157
- package/dist/esm/isomorphic/actions/sendPreparedCalls.js.map +0 -1
- package/dist/esm/isomorphic/client.d.ts +0 -239
- package/dist/esm/isomorphic/client.js +0 -37
- package/dist/esm/isomorphic/client.js.map +0 -1
- package/dist/esm/isomorphic/utils/7702.d.ts +0 -23
- package/dist/esm/isomorphic/utils/7702.js +0 -75
- package/dist/esm/isomorphic/utils/7702.js.map +0 -1
- package/dist/esm/isomorphic/utils/createAccount.d.ts +0 -24
- package/dist/esm/isomorphic/utils/createAccount.js.map +0 -1
- package/dist/esm/isomorphic/utils/createDummySigner.d.ts +0 -3
- package/dist/esm/isomorphic/utils/createDummySigner.js +0 -17
- package/dist/esm/isomorphic/utils/createDummySigner.js.map +0 -1
- package/dist/esm/isomorphic/utils/decodeSignature.d.ts +0 -3
- package/dist/esm/isomorphic/utils/decodeSignature.js +0 -13
- package/dist/esm/isomorphic/utils/decodeSignature.js.map +0 -1
- package/dist/esm/isomorphic/utils/parsePermissionsContext.d.ts +0 -21
- package/dist/esm/isomorphic/utils/parsePermissionsContext.js +0 -34
- package/dist/esm/isomorphic/utils/parsePermissionsContext.js.map +0 -1
- package/dist/esm/isomorphic/utils/supportsFeature.d.ts +0 -4
- package/dist/esm/isomorphic/utils/supportsFeature.js +0 -21
- package/dist/esm/isomorphic/utils/supportsFeature.js.map +0 -1
- package/dist/esm/local/client.d.ts +0 -3
- package/dist/esm/local/client.js +0 -97
- package/dist/esm/local/client.js.map +0 -1
- package/dist/esm/remote/client.d.ts +0 -9
- package/dist/esm/remote/client.js +0 -41
- package/dist/esm/remote/client.js.map +0 -1
- package/dist/esm/rpc/examples.d.ts +0 -230
- package/dist/esm/rpc/examples.js +0 -314
- package/dist/esm/rpc/examples.js.map +0 -1
- package/dist/esm/rpc/request.d.ts +0 -755
- package/dist/esm/rpc/request.js +0 -214
- package/dist/esm/rpc/request.js.map +0 -1
- package/dist/esm/rpc/schema.d.ts +0 -703
- package/dist/esm/rpc/schema.js +0 -5
- package/dist/esm/rpc/schema.js.map +0 -1
- package/dist/esm/schemas.d.ts +0 -712
- package/dist/esm/schemas.js +0 -463
- package/dist/esm/schemas.js.map +0 -1
- package/dist/types/capabilities/eip7702Auth.d.ts +0 -5
- package/dist/types/capabilities/eip7702Auth.d.ts.map +0 -1
- package/dist/types/capabilities/index.d.ts +0 -42
- package/dist/types/capabilities/index.d.ts.map +0 -1
- package/dist/types/capabilities/multiDimensionalNonce.d.ts +0 -4
- package/dist/types/capabilities/multiDimensionalNonce.d.ts.map +0 -1
- package/dist/types/capabilities/overrides.d.ts +0 -27
- package/dist/types/capabilities/overrides.d.ts.map +0 -1
- package/dist/types/capabilities/paymaster.d.ts +0 -4
- package/dist/types/capabilities/paymaster.d.ts.map +0 -1
- package/dist/types/capabilities/permissions/index.d.ts +0 -146
- package/dist/types/capabilities/permissions/index.d.ts.map +0 -1
- package/dist/types/capabilities/permissions/mav2.d.ts +0 -37
- package/dist/types/capabilities/permissions/mav2.d.ts.map +0 -1
- package/dist/types/client/actions/createAccount.d.ts +0 -36
- package/dist/types/client/actions/createAccount.d.ts.map +0 -1
- package/dist/types/client/client.e2e-test.d.ts +0 -2
- package/dist/types/client/client.e2e-test.d.ts.map +0 -1
- package/dist/types/exports/internal.d.ts +0 -15
- package/dist/types/exports/internal.d.ts.map +0 -1
- package/dist/types/isomorphic/actions/createSession.d.ts +0 -15
- package/dist/types/isomorphic/actions/createSession.d.ts.map +0 -1
- package/dist/types/isomorphic/actions/getCallsStatus.d.ts +0 -22
- package/dist/types/isomorphic/actions/getCallsStatus.d.ts.map +0 -1
- package/dist/types/isomorphic/actions/prepareCalls.d.ts +0 -9
- package/dist/types/isomorphic/actions/prepareCalls.d.ts.map +0 -1
- package/dist/types/isomorphic/actions/sendPreparedCalls.d.ts +0 -9
- package/dist/types/isomorphic/actions/sendPreparedCalls.d.ts.map +0 -1
- package/dist/types/isomorphic/client.d.ts +0 -240
- package/dist/types/isomorphic/client.d.ts.map +0 -1
- package/dist/types/isomorphic/utils/7702.d.ts +0 -24
- package/dist/types/isomorphic/utils/7702.d.ts.map +0 -1
- package/dist/types/isomorphic/utils/createAccount.d.ts +0 -25
- package/dist/types/isomorphic/utils/createAccount.d.ts.map +0 -1
- package/dist/types/isomorphic/utils/createDummySigner.d.ts +0 -4
- package/dist/types/isomorphic/utils/createDummySigner.d.ts.map +0 -1
- package/dist/types/isomorphic/utils/decodeSignature.d.ts +0 -4
- package/dist/types/isomorphic/utils/decodeSignature.d.ts.map +0 -1
- package/dist/types/isomorphic/utils/parsePermissionsContext.d.ts +0 -22
- package/dist/types/isomorphic/utils/parsePermissionsContext.d.ts.map +0 -1
- package/dist/types/isomorphic/utils/supportsFeature.d.ts +0 -5
- package/dist/types/isomorphic/utils/supportsFeature.d.ts.map +0 -1
- package/dist/types/local/client.d.ts +0 -4
- package/dist/types/local/client.d.ts.map +0 -1
- package/dist/types/remote/client.d.ts +0 -10
- package/dist/types/remote/client.d.ts.map +0 -1
- package/dist/types/rpc/examples.d.ts +0 -231
- package/dist/types/rpc/examples.d.ts.map +0 -1
- package/dist/types/rpc/request.d.ts +0 -756
- package/dist/types/rpc/request.d.ts.map +0 -1
- package/dist/types/rpc/schema.d.ts +0 -704
- package/dist/types/rpc/schema.d.ts.map +0 -1
- package/dist/types/schemas.d.ts +0 -713
- package/dist/types/schemas.d.ts.map +0 -1
- package/src/capabilities/eip7702Auth.ts +0 -26
- package/src/capabilities/index.ts +0 -14
- package/src/capabilities/multiDimensionalNonce.ts +0 -7
- package/src/capabilities/overrides.ts +0 -35
- package/src/capabilities/paymaster.ts +0 -5
- package/src/capabilities/permissions/index.ts +0 -163
- package/src/capabilities/permissions/mav2.ts +0 -138
- package/src/client/actions/createAccount.ts +0 -53
- package/src/client/client.e2e-test.ts +0 -463
- package/src/exports/internal.ts +0 -17
- package/src/isomorphic/actions/createSession.ts +0 -159
- package/src/isomorphic/actions/getCallsStatus.ts +0 -170
- package/src/isomorphic/actions/prepareCalls.ts +0 -170
- package/src/isomorphic/actions/sendPreparedCalls.ts +0 -232
- package/src/isomorphic/client.ts +0 -94
- package/src/isomorphic/utils/7702.ts +0 -143
- package/src/isomorphic/utils/createAccount.ts +0 -170
- package/src/isomorphic/utils/createDummySigner.ts +0 -27
- package/src/isomorphic/utils/decodeSignature.ts +0 -18
- package/src/isomorphic/utils/parsePermissionsContext.ts +0 -49
- package/src/isomorphic/utils/supportsFeature.ts +0 -34
- package/src/local/client.ts +0 -136
- package/src/remote/client.ts +0 -67
- package/src/rpc/examples.ts +0 -342
- package/src/rpc/request.ts +0 -300
- package/src/rpc/schema.ts +0 -40
- package/src/schemas.ts +0 -657
package/src/schemas.ts
DELETED
|
@@ -1,657 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
FormatRegistry,
|
|
3
|
-
Type,
|
|
4
|
-
type SchemaOptions,
|
|
5
|
-
type Static,
|
|
6
|
-
} from "@sinclair/typebox";
|
|
7
|
-
import { yParityToV } from "ox/Signature";
|
|
8
|
-
import {
|
|
9
|
-
toHex,
|
|
10
|
-
slice,
|
|
11
|
-
pad,
|
|
12
|
-
concat,
|
|
13
|
-
hexToBigInt,
|
|
14
|
-
serializeSignature,
|
|
15
|
-
hexToNumber,
|
|
16
|
-
parseSignature,
|
|
17
|
-
numberToHex,
|
|
18
|
-
} from "viem";
|
|
19
|
-
import type { Expect } from "./utils.ts";
|
|
20
|
-
|
|
21
|
-
const UUID_V4_REGEX =
|
|
22
|
-
/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
23
|
-
FormatRegistry.Set("uuid", (value) => UUID_V4_REGEX.test(value));
|
|
24
|
-
|
|
25
|
-
const BASE_64_URL_REGEX = /^[A-Za-z0-9_-]+$/; // Matches base64url encoded strings (without padding)
|
|
26
|
-
FormatRegistry.Set("base64url", (value) => BASE_64_URL_REGEX.test(value));
|
|
27
|
-
|
|
28
|
-
export const baseAccountTypes = [
|
|
29
|
-
"sma-b",
|
|
30
|
-
"la-v2",
|
|
31
|
-
"la-v2-multi-owner",
|
|
32
|
-
"la-v1.0.1",
|
|
33
|
-
"la-v1.0.2",
|
|
34
|
-
"la-v1.1.0",
|
|
35
|
-
"ma-v1-multi-owner",
|
|
36
|
-
] as const;
|
|
37
|
-
|
|
38
|
-
export type BaseAccountType = (typeof baseAccountTypes)[number];
|
|
39
|
-
|
|
40
|
-
export const accountTypes = [...baseAccountTypes, "7702"] as const;
|
|
41
|
-
|
|
42
|
-
export type AccountType = (typeof accountTypes)[number];
|
|
43
|
-
|
|
44
|
-
export const TypeHex = (options?: SchemaOptions) =>
|
|
45
|
-
Type.TemplateLiteral("0x${string}", {
|
|
46
|
-
...options,
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
export const TypeAddress = Type.TemplateLiteral("0x${string}", {});
|
|
50
|
-
|
|
51
|
-
export const TypeUuid = Type.String({
|
|
52
|
-
format: "uuid",
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
export const TypeBase64UrlEncodedString = Type.String({
|
|
56
|
-
format: "base64url",
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
// BigInt is not json-serializable, so it must be encoded as a string.
|
|
60
|
-
export const TypeU256 = Type.Transform(Type.String({}))
|
|
61
|
-
.Decode((value) => BigInt(value))
|
|
62
|
-
.Encode((value) => toHex(value));
|
|
63
|
-
|
|
64
|
-
export const TypeU32 = Type.Transform(Type.String({}))
|
|
65
|
-
.Decode((value) => Number.parseInt(value, 16))
|
|
66
|
-
.Encode((value) => toHex(value));
|
|
67
|
-
|
|
68
|
-
export const TypeUserOperationRequest_v6 = Type.Object({
|
|
69
|
-
sender: TypeAddress,
|
|
70
|
-
nonce: TypeHex(),
|
|
71
|
-
initCode: Type.Union([
|
|
72
|
-
TypeHex({
|
|
73
|
-
description: "Present",
|
|
74
|
-
}),
|
|
75
|
-
Type.Literal("0x", {
|
|
76
|
-
description: "Absent",
|
|
77
|
-
}),
|
|
78
|
-
]),
|
|
79
|
-
callData: TypeHex(),
|
|
80
|
-
callGasLimit: TypeHex(),
|
|
81
|
-
verificationGasLimit: TypeHex(),
|
|
82
|
-
preVerificationGas: TypeHex(),
|
|
83
|
-
maxFeePerGas: TypeHex(),
|
|
84
|
-
maxPriorityFeePerGas: TypeHex(),
|
|
85
|
-
paymasterAndData: Type.Union([
|
|
86
|
-
TypeHex({
|
|
87
|
-
description: "Present",
|
|
88
|
-
}),
|
|
89
|
-
Type.Literal("0x", {
|
|
90
|
-
description: "Absent",
|
|
91
|
-
}),
|
|
92
|
-
]),
|
|
93
|
-
signature: TypeHex(),
|
|
94
|
-
});
|
|
95
|
-
|
|
96
|
-
export const TypeUserOperationRequest_v7 = Type.Object({
|
|
97
|
-
sender: TypeAddress,
|
|
98
|
-
nonce: TypeHex(),
|
|
99
|
-
factory: Type.Optional(TypeAddress),
|
|
100
|
-
factoryData: Type.Optional(TypeHex()),
|
|
101
|
-
callData: TypeHex(),
|
|
102
|
-
callGasLimit: TypeHex(),
|
|
103
|
-
verificationGasLimit: TypeHex(),
|
|
104
|
-
preVerificationGas: TypeHex(),
|
|
105
|
-
maxFeePerGas: TypeHex(),
|
|
106
|
-
maxPriorityFeePerGas: TypeHex(),
|
|
107
|
-
paymaster: Type.Optional(TypeAddress),
|
|
108
|
-
paymasterData: Type.Optional(TypeHex()),
|
|
109
|
-
paymasterVerificationGasLimit: Type.Optional(TypeHex()),
|
|
110
|
-
paymasterPostOpGasLimit: Type.Optional(TypeHex()),
|
|
111
|
-
signature: TypeHex(),
|
|
112
|
-
});
|
|
113
|
-
|
|
114
|
-
export const TypeEip7702UnsignedAuth = Type.Object({
|
|
115
|
-
chainId: TypeHex(),
|
|
116
|
-
address: TypeAddress,
|
|
117
|
-
nonce: TypeHex(),
|
|
118
|
-
});
|
|
119
|
-
|
|
120
|
-
export const TypeEip7702SignedAuth = Type.Intersect([
|
|
121
|
-
TypeEip7702UnsignedAuth,
|
|
122
|
-
Type.Object({
|
|
123
|
-
r: TypeHex(),
|
|
124
|
-
s: TypeHex(),
|
|
125
|
-
yParity: TypeHex(),
|
|
126
|
-
}),
|
|
127
|
-
]);
|
|
128
|
-
|
|
129
|
-
export const TypeWebAuthnPublicKey = Type.Object({
|
|
130
|
-
x: TypeU256,
|
|
131
|
-
y: TypeU256,
|
|
132
|
-
});
|
|
133
|
-
|
|
134
|
-
export const TypePersistedInitcode = Type.Object({
|
|
135
|
-
factoryAddress: TypeAddress,
|
|
136
|
-
initcode: Type.Union([
|
|
137
|
-
Type.Object(
|
|
138
|
-
{
|
|
139
|
-
factoryType: Type.Literal("unknown", {
|
|
140
|
-
description: "Unknown factory type",
|
|
141
|
-
}),
|
|
142
|
-
factoryData: TypeHex({}),
|
|
143
|
-
},
|
|
144
|
-
{
|
|
145
|
-
description: "Unknown factory type",
|
|
146
|
-
},
|
|
147
|
-
),
|
|
148
|
-
Type.Object(
|
|
149
|
-
{
|
|
150
|
-
factoryType: Type.Union([
|
|
151
|
-
Type.Literal("LightAccountV2.0.0"),
|
|
152
|
-
Type.Literal("LightAccountV1.1.0"),
|
|
153
|
-
Type.Literal("LightAccountV1.0.2"),
|
|
154
|
-
Type.Literal("LightAccountV1.0.1"),
|
|
155
|
-
]),
|
|
156
|
-
salt: TypeU256,
|
|
157
|
-
initialOwner: TypeAddress,
|
|
158
|
-
},
|
|
159
|
-
{
|
|
160
|
-
description: "Light Account",
|
|
161
|
-
},
|
|
162
|
-
),
|
|
163
|
-
Type.Object(
|
|
164
|
-
{
|
|
165
|
-
factoryType: Type.Union([
|
|
166
|
-
Type.Literal("MAv1.0.0-MultiOwner"),
|
|
167
|
-
Type.Literal("LightAccountV2.0.0-MultiOwner"),
|
|
168
|
-
]),
|
|
169
|
-
salt: TypeU256,
|
|
170
|
-
initialOwners: Type.Array(TypeAddress),
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
description: "Multi-Owner Modular Account",
|
|
174
|
-
},
|
|
175
|
-
),
|
|
176
|
-
Type.Object(
|
|
177
|
-
{
|
|
178
|
-
factoryType: Type.Literal("MAv1.0.0-MultiSig"),
|
|
179
|
-
salt: TypeU256,
|
|
180
|
-
initialOwners: Type.Array(TypeAddress),
|
|
181
|
-
threshold: TypeU256,
|
|
182
|
-
},
|
|
183
|
-
{
|
|
184
|
-
description: "Multi-Sig Modular Account",
|
|
185
|
-
},
|
|
186
|
-
),
|
|
187
|
-
Type.Intersect([
|
|
188
|
-
Type.Object({
|
|
189
|
-
factoryType: Type.Literal("MAv2.0.0"),
|
|
190
|
-
salt: TypeU256,
|
|
191
|
-
}),
|
|
192
|
-
Type.Union([
|
|
193
|
-
Type.Object(
|
|
194
|
-
{
|
|
195
|
-
mav2type: Type.Literal("ma-ssv"),
|
|
196
|
-
initialOwner: TypeAddress,
|
|
197
|
-
entityId: TypeU32,
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
description: "Modular Account V2 SSV",
|
|
201
|
-
},
|
|
202
|
-
),
|
|
203
|
-
Type.Object(
|
|
204
|
-
{
|
|
205
|
-
mav2type: Type.Literal("sma-b"),
|
|
206
|
-
initialOwner: TypeAddress,
|
|
207
|
-
},
|
|
208
|
-
{
|
|
209
|
-
description: "Modular Account V2 SMA-B",
|
|
210
|
-
},
|
|
211
|
-
),
|
|
212
|
-
Type.Object(
|
|
213
|
-
{
|
|
214
|
-
mav2type: Type.Literal("ma-webauthn"),
|
|
215
|
-
initialOwner: TypeWebAuthnPublicKey,
|
|
216
|
-
entityId: TypeU32,
|
|
217
|
-
},
|
|
218
|
-
{
|
|
219
|
-
description: "Modular Account V2 WebAuthn",
|
|
220
|
-
},
|
|
221
|
-
),
|
|
222
|
-
]),
|
|
223
|
-
]),
|
|
224
|
-
]),
|
|
225
|
-
});
|
|
226
|
-
|
|
227
|
-
export const TypeSerializedInitcode = Type.Object({
|
|
228
|
-
factoryType: Type.Union([
|
|
229
|
-
Type.Literal("LightAccountV1.0.1", { description: "Light Account v1.0.1" }),
|
|
230
|
-
Type.Literal("LightAccountV1.0.2", { description: "Light Account v1.0.2" }),
|
|
231
|
-
Type.Literal("LightAccountV1.1.0", { description: "Light Account v1.1.0" }),
|
|
232
|
-
Type.Literal("LightAccountV2.0.0", { description: "Light Account v2.0.0" }),
|
|
233
|
-
Type.Literal("LightAccountV2.0.0-MultiOwner", {
|
|
234
|
-
description: "Light Account v2.0.0 MultiOwner",
|
|
235
|
-
}),
|
|
236
|
-
Type.Literal("MAv1.0.0-MultiOwner", {
|
|
237
|
-
description: "Modular Account v1.0.0 MultiOwner",
|
|
238
|
-
}),
|
|
239
|
-
Type.Literal("MAv1.0.0-MultiSig", {
|
|
240
|
-
description: "Modular Account v1.0.0 MultiSig",
|
|
241
|
-
}),
|
|
242
|
-
Type.Literal("MAv2.0.0-sma-b", {
|
|
243
|
-
description: "Modular Account v2.0.0 SMA-B",
|
|
244
|
-
}),
|
|
245
|
-
Type.Literal("MAv2.0.0-ma-ssv", {
|
|
246
|
-
description: "Modular Account v2.0.0 SSV",
|
|
247
|
-
}),
|
|
248
|
-
Type.Literal("MAv2.0.0-ma-webauthn", {
|
|
249
|
-
description: "Modular Account v2.0.0 WebAuthn",
|
|
250
|
-
}),
|
|
251
|
-
Type.Literal("unknown", { description: "Unknown factory type" }),
|
|
252
|
-
]),
|
|
253
|
-
factoryAddress: TypeAddress,
|
|
254
|
-
factoryData: TypeHex({}),
|
|
255
|
-
});
|
|
256
|
-
|
|
257
|
-
export const TypeCounterfactualInfo = Type.Intersect([
|
|
258
|
-
Type.Object({
|
|
259
|
-
accountAddress: TypeAddress,
|
|
260
|
-
}),
|
|
261
|
-
Type.Union([
|
|
262
|
-
Type.Intersect(
|
|
263
|
-
[
|
|
264
|
-
Type.Object({
|
|
265
|
-
type: Type.Literal("sca"),
|
|
266
|
-
}),
|
|
267
|
-
TypePersistedInitcode,
|
|
268
|
-
],
|
|
269
|
-
{
|
|
270
|
-
description: "Smart Contract Account",
|
|
271
|
-
},
|
|
272
|
-
),
|
|
273
|
-
Type.Object(
|
|
274
|
-
{
|
|
275
|
-
type: Type.Literal("7702"),
|
|
276
|
-
implementationAddress: TypeAddress,
|
|
277
|
-
},
|
|
278
|
-
{
|
|
279
|
-
description: "7702 Account",
|
|
280
|
-
},
|
|
281
|
-
),
|
|
282
|
-
]),
|
|
283
|
-
]);
|
|
284
|
-
export type TypeCounterfactualInfo = Static<typeof TypeCounterfactualInfo>;
|
|
285
|
-
|
|
286
|
-
export const TypeCreationOptions = Type.Optional(
|
|
287
|
-
Type.Union([
|
|
288
|
-
Type.Object(
|
|
289
|
-
{
|
|
290
|
-
// Optional b/c `sma-b` is the default if no accountType is specified.
|
|
291
|
-
accountType: Type.Optional(Type.Literal("sma-b")),
|
|
292
|
-
salt: Type.Optional(TypeHex()),
|
|
293
|
-
},
|
|
294
|
-
{
|
|
295
|
-
description: "Modular Account V2 SMA-B account type",
|
|
296
|
-
},
|
|
297
|
-
),
|
|
298
|
-
Type.Object(
|
|
299
|
-
{
|
|
300
|
-
accountType: Type.Literal("la-v2"),
|
|
301
|
-
salt: Type.Optional(TypeHex()),
|
|
302
|
-
},
|
|
303
|
-
{
|
|
304
|
-
description: "Light Account V2 account type",
|
|
305
|
-
},
|
|
306
|
-
),
|
|
307
|
-
Type.Object(
|
|
308
|
-
{
|
|
309
|
-
accountType: Type.Literal("la-v2-multi-owner"),
|
|
310
|
-
salt: Type.Optional(TypeHex()),
|
|
311
|
-
initialOwners: Type.Optional(
|
|
312
|
-
Type.Array(TypeAddress, {
|
|
313
|
-
description:
|
|
314
|
-
"The initial owners of the account. The signer address will be implicitly added if not specified in this list.",
|
|
315
|
-
}),
|
|
316
|
-
),
|
|
317
|
-
},
|
|
318
|
-
{
|
|
319
|
-
description: "Light Account V2 Multi-Owner account type",
|
|
320
|
-
},
|
|
321
|
-
),
|
|
322
|
-
Type.Object(
|
|
323
|
-
{
|
|
324
|
-
accountType: Type.Literal("la-v1.0.1"),
|
|
325
|
-
salt: Type.Optional(TypeHex()),
|
|
326
|
-
},
|
|
327
|
-
{
|
|
328
|
-
description: "Light Account V1.0.1 account type",
|
|
329
|
-
},
|
|
330
|
-
),
|
|
331
|
-
Type.Object(
|
|
332
|
-
{
|
|
333
|
-
accountType: Type.Literal("la-v1.0.2"),
|
|
334
|
-
salt: Type.Optional(TypeHex()),
|
|
335
|
-
},
|
|
336
|
-
{
|
|
337
|
-
description: "Light Account V1.0.2 account type",
|
|
338
|
-
},
|
|
339
|
-
),
|
|
340
|
-
Type.Object(
|
|
341
|
-
{
|
|
342
|
-
accountType: Type.Literal("la-v1.1.0"),
|
|
343
|
-
salt: Type.Optional(TypeHex()),
|
|
344
|
-
},
|
|
345
|
-
{
|
|
346
|
-
description: "Light Account V1.1.0 account type",
|
|
347
|
-
},
|
|
348
|
-
),
|
|
349
|
-
Type.Object(
|
|
350
|
-
{
|
|
351
|
-
accountType: Type.Literal("ma-v1-multi-owner"),
|
|
352
|
-
salt: Type.Optional(TypeHex()),
|
|
353
|
-
initialOwners: Type.Optional(
|
|
354
|
-
Type.Array(TypeAddress, {
|
|
355
|
-
description:
|
|
356
|
-
"The initial owners of the account. The signer address will be implicitly added if not specified in this list.",
|
|
357
|
-
}),
|
|
358
|
-
),
|
|
359
|
-
},
|
|
360
|
-
{
|
|
361
|
-
description: "Modular Account V1 Multi-Owner account type",
|
|
362
|
-
},
|
|
363
|
-
),
|
|
364
|
-
Type.Object(
|
|
365
|
-
{
|
|
366
|
-
accountType: Type.Literal("7702"),
|
|
367
|
-
// TODO: Add support for specifying a delegation address.
|
|
368
|
-
// Currently we only support delegating to MAv2, and it's important
|
|
369
|
-
// that wallet applications maintain a strict shortlist of well-known
|
|
370
|
-
// accounts: https://github.com/ethereum/ERCs/pull/947/files#diff-dab085f963ca621595044bcbc0922705aa38b69f5bf8770dcb3d0496a633efcfR189
|
|
371
|
-
// delegation: TypeAddress,
|
|
372
|
-
},
|
|
373
|
-
{
|
|
374
|
-
description: "7702 account type",
|
|
375
|
-
},
|
|
376
|
-
),
|
|
377
|
-
]),
|
|
378
|
-
);
|
|
379
|
-
export type TypeCreationOptions = Static<typeof TypeCreationOptions>;
|
|
380
|
-
|
|
381
|
-
type BaseAccountTypeExhaustive = BaseAccountType extends Exclude<
|
|
382
|
-
Static<typeof TypeCreationOptions>,
|
|
383
|
-
undefined
|
|
384
|
-
>["accountType"]
|
|
385
|
-
? true
|
|
386
|
-
: "BaseAccountType values not fully covered in TypeCreationOptions";
|
|
387
|
-
|
|
388
|
-
// Compile-time assertion that TypeCreationOptions covers all BaseAccountType values.
|
|
389
|
-
type _AssertBaseAccountTypeExhaustive = Expect<BaseAccountTypeExhaustive>;
|
|
390
|
-
|
|
391
|
-
export const TypeSignatureType = Type.Union([
|
|
392
|
-
Type.Literal("secp256k1", { description: "Secp256k1" }),
|
|
393
|
-
Type.Literal("ecdsa", { description: "ECDSA (alias for secp256k1)" }),
|
|
394
|
-
Type.Literal("contract", { description: "Contract" }),
|
|
395
|
-
]);
|
|
396
|
-
export type TypeSignatureType = Static<typeof TypeSignatureType>;
|
|
397
|
-
|
|
398
|
-
export const KeySigner = Type.Object({
|
|
399
|
-
type: TypeSignatureType,
|
|
400
|
-
publicKey: TypeHex({}),
|
|
401
|
-
});
|
|
402
|
-
export type KeySigner = Static<typeof KeySigner>;
|
|
403
|
-
|
|
404
|
-
export const TTypedDataDefinition = Type.Transform(
|
|
405
|
-
Type.Object({
|
|
406
|
-
domain: Type.Optional(
|
|
407
|
-
Type.Object({
|
|
408
|
-
chainId: Type.Optional(Type.Integer()),
|
|
409
|
-
name: Type.Optional(Type.String()),
|
|
410
|
-
salt: Type.Optional(TypeHex()),
|
|
411
|
-
verifyingContract: Type.Optional(TypeAddress),
|
|
412
|
-
version: Type.Optional(Type.String()),
|
|
413
|
-
}),
|
|
414
|
-
),
|
|
415
|
-
types: Type.Record(
|
|
416
|
-
Type.String(),
|
|
417
|
-
Type.Array(
|
|
418
|
-
Type.Object({
|
|
419
|
-
name: Type.String(),
|
|
420
|
-
type: Type.String(),
|
|
421
|
-
}),
|
|
422
|
-
),
|
|
423
|
-
),
|
|
424
|
-
primaryType: Type.String(),
|
|
425
|
-
message: Type.Record(Type.String(), Type.Unknown()),
|
|
426
|
-
}),
|
|
427
|
-
)
|
|
428
|
-
// No-op b/c Viem is happy w/ the encoded version too.
|
|
429
|
-
.Decode((it) => it)
|
|
430
|
-
// Encode the TypedDataDefinition into our json-serialized format.
|
|
431
|
-
.Encode(({ domain, types, primaryType, message }) => {
|
|
432
|
-
return {
|
|
433
|
-
domain: {
|
|
434
|
-
...domain,
|
|
435
|
-
chainId:
|
|
436
|
-
typeof domain?.chainId === "bigint"
|
|
437
|
-
? Number(domain.chainId)
|
|
438
|
-
: domain?.chainId,
|
|
439
|
-
},
|
|
440
|
-
types,
|
|
441
|
-
primaryType,
|
|
442
|
-
message: JSON.parse(
|
|
443
|
-
JSON.stringify(message, (_, v) =>
|
|
444
|
-
typeof v === "bigint" ? toHex(v) : v,
|
|
445
|
-
),
|
|
446
|
-
),
|
|
447
|
-
};
|
|
448
|
-
});
|
|
449
|
-
|
|
450
|
-
export const TypePersonalSignSignatureRequest = Type.Object(
|
|
451
|
-
{
|
|
452
|
-
type: Type.Literal("personal_sign"),
|
|
453
|
-
data: Type.Union([
|
|
454
|
-
Type.String({ minLength: 1, description: "Message" }),
|
|
455
|
-
Type.Object(
|
|
456
|
-
{
|
|
457
|
-
raw: TypeHex(),
|
|
458
|
-
},
|
|
459
|
-
{ description: "Raw message" },
|
|
460
|
-
),
|
|
461
|
-
]),
|
|
462
|
-
rawPayload: TypeHex(),
|
|
463
|
-
},
|
|
464
|
-
{ description: "Personal sign" },
|
|
465
|
-
);
|
|
466
|
-
|
|
467
|
-
export const TypeTypedDataSignatureRequest = Type.Object(
|
|
468
|
-
{
|
|
469
|
-
type: Type.Literal("eth_signTypedData_v4"),
|
|
470
|
-
data: TTypedDataDefinition,
|
|
471
|
-
rawPayload: TypeHex(),
|
|
472
|
-
},
|
|
473
|
-
{
|
|
474
|
-
description: "Typed data",
|
|
475
|
-
},
|
|
476
|
-
);
|
|
477
|
-
|
|
478
|
-
export const TypeAuthorizationSignatureRequest = Type.Object({
|
|
479
|
-
type: Type.Literal("eip7702Auth"),
|
|
480
|
-
rawPayload: TypeHex(),
|
|
481
|
-
});
|
|
482
|
-
|
|
483
|
-
export const TypeSignatureRequest = Type.Union([
|
|
484
|
-
TypePersonalSignSignatureRequest,
|
|
485
|
-
TypeTypedDataSignatureRequest,
|
|
486
|
-
TypeAuthorizationSignatureRequest,
|
|
487
|
-
]);
|
|
488
|
-
|
|
489
|
-
export const TypeCallId = Type.Transform(TypeHex())
|
|
490
|
-
.Decode((value) => {
|
|
491
|
-
return {
|
|
492
|
-
chainId: toHex(hexToBigInt(slice(value, 0, 32))),
|
|
493
|
-
hash: slice(value, 32),
|
|
494
|
-
};
|
|
495
|
-
})
|
|
496
|
-
.Encode(({ chainId, hash }) => {
|
|
497
|
-
const chainIdPadded = pad(chainId, { size: 32 });
|
|
498
|
-
return concat([chainIdPadded, hash]);
|
|
499
|
-
});
|
|
500
|
-
|
|
501
|
-
export const PreparedCall_UserOpV060 = Type.Object(
|
|
502
|
-
{
|
|
503
|
-
type: Type.Literal("user-operation-v060", {
|
|
504
|
-
description: "User Operation (Entrypoint v0.6.0)",
|
|
505
|
-
}),
|
|
506
|
-
data: Type.Omit(TypeUserOperationRequest_v6, ["signature"], {
|
|
507
|
-
description: "Unsigned User Operation (Entrypoint v0.6.0)",
|
|
508
|
-
}),
|
|
509
|
-
chainId: TypeHex(),
|
|
510
|
-
signatureRequest: Type.Union([
|
|
511
|
-
TypePersonalSignSignatureRequest,
|
|
512
|
-
TypeTypedDataSignatureRequest,
|
|
513
|
-
]),
|
|
514
|
-
},
|
|
515
|
-
{
|
|
516
|
-
description: "Prepared User Operation (Entrypoint v0.6.0)",
|
|
517
|
-
},
|
|
518
|
-
);
|
|
519
|
-
|
|
520
|
-
export const PreparedCall_UserOpV070 = Type.Object(
|
|
521
|
-
{
|
|
522
|
-
type: Type.Literal("user-operation-v070", {
|
|
523
|
-
description: "User Operation (Entrypoint v0.7.0)",
|
|
524
|
-
}),
|
|
525
|
-
data: Type.Omit(TypeUserOperationRequest_v7, ["signature"], {
|
|
526
|
-
description: "Unsigned User Operation (Entrypoint v0.7.0)",
|
|
527
|
-
}),
|
|
528
|
-
chainId: TypeHex(),
|
|
529
|
-
signatureRequest: Type.Union([
|
|
530
|
-
TypePersonalSignSignatureRequest,
|
|
531
|
-
TypeTypedDataSignatureRequest,
|
|
532
|
-
]),
|
|
533
|
-
},
|
|
534
|
-
{
|
|
535
|
-
description: "Prepared User Operation (Entrypoint v0.7.0)",
|
|
536
|
-
},
|
|
537
|
-
);
|
|
538
|
-
|
|
539
|
-
export const PreparedCall_Authorization = Type.Object(
|
|
540
|
-
{
|
|
541
|
-
type: Type.Literal("authorization", {
|
|
542
|
-
description: "EIP-7702 Authorization Request",
|
|
543
|
-
}),
|
|
544
|
-
data: Type.Omit(TypeEip7702UnsignedAuth, ["chainId"]),
|
|
545
|
-
chainId: TypeHex(),
|
|
546
|
-
signatureRequest: TypeAuthorizationSignatureRequest,
|
|
547
|
-
},
|
|
548
|
-
{
|
|
549
|
-
description: "Prepared EIP-7702 Authorization",
|
|
550
|
-
},
|
|
551
|
-
);
|
|
552
|
-
|
|
553
|
-
export const TypeEdcsaSigData = Type.Union([
|
|
554
|
-
TypeHex({
|
|
555
|
-
description: "Hex-encoded signature",
|
|
556
|
-
}),
|
|
557
|
-
Type.Transform(
|
|
558
|
-
Type.Object(
|
|
559
|
-
{
|
|
560
|
-
r: TypeHex(),
|
|
561
|
-
s: TypeHex(),
|
|
562
|
-
yParity: TypeHex(),
|
|
563
|
-
},
|
|
564
|
-
{ description: "r, s, yParity" },
|
|
565
|
-
),
|
|
566
|
-
)
|
|
567
|
-
.Decode((sig) =>
|
|
568
|
-
serializeSignature({ ...sig, yParity: hexToNumber(sig.yParity) }),
|
|
569
|
-
)
|
|
570
|
-
.Encode((hex) => {
|
|
571
|
-
const parsed = parseSignature(hex);
|
|
572
|
-
return {
|
|
573
|
-
...parsed,
|
|
574
|
-
yParity: numberToHex(parsed.yParity),
|
|
575
|
-
};
|
|
576
|
-
}),
|
|
577
|
-
Type.Transform(
|
|
578
|
-
Type.Object(
|
|
579
|
-
{
|
|
580
|
-
r: TypeHex(),
|
|
581
|
-
s: TypeHex(),
|
|
582
|
-
v: TypeHex(),
|
|
583
|
-
},
|
|
584
|
-
{
|
|
585
|
-
description: "r, s, v",
|
|
586
|
-
},
|
|
587
|
-
),
|
|
588
|
-
)
|
|
589
|
-
.Decode((sig) => serializeSignature({ ...sig, v: hexToBigInt(sig.v) }))
|
|
590
|
-
.Encode((hex) => {
|
|
591
|
-
const parsed = parseSignature(hex);
|
|
592
|
-
return {
|
|
593
|
-
...parsed,
|
|
594
|
-
v: numberToHex(yParityToV(parsed.yParity)),
|
|
595
|
-
};
|
|
596
|
-
}),
|
|
597
|
-
]);
|
|
598
|
-
|
|
599
|
-
export const TypeEcdsaSig = Type.Object({
|
|
600
|
-
signature: Type.Union([
|
|
601
|
-
Type.Object(
|
|
602
|
-
{
|
|
603
|
-
type: Type.Literal("secp256k1"),
|
|
604
|
-
data: TypeEdcsaSigData,
|
|
605
|
-
},
|
|
606
|
-
{
|
|
607
|
-
description: "Secp256k1 signature",
|
|
608
|
-
},
|
|
609
|
-
),
|
|
610
|
-
Type.Object(
|
|
611
|
-
{
|
|
612
|
-
type: Type.Literal("ecdsa"),
|
|
613
|
-
data: TypeEdcsaSigData,
|
|
614
|
-
},
|
|
615
|
-
{
|
|
616
|
-
description: "ECDSA signature (alias for secp256k1)",
|
|
617
|
-
},
|
|
618
|
-
),
|
|
619
|
-
]),
|
|
620
|
-
});
|
|
621
|
-
|
|
622
|
-
export const TypePrepareCall_UserOpV060_Signed = Type.Intersect(
|
|
623
|
-
[Type.Omit(PreparedCall_UserOpV060, ["signatureRequest"]), TypeEcdsaSig],
|
|
624
|
-
{
|
|
625
|
-
description: "Prepared User Operation (Entrypoint v0.6.0) with signature",
|
|
626
|
-
},
|
|
627
|
-
);
|
|
628
|
-
|
|
629
|
-
export const TypePrepareCall_UserOpV070_Signed = Type.Intersect(
|
|
630
|
-
[Type.Omit(PreparedCall_UserOpV070, ["signatureRequest"]), TypeEcdsaSig],
|
|
631
|
-
{
|
|
632
|
-
description: "Prepared User Operation (Entrypoint v0.7.0) with signature",
|
|
633
|
-
},
|
|
634
|
-
);
|
|
635
|
-
|
|
636
|
-
export const TypePrepareCall_Authorization_Signed = Type.Intersect(
|
|
637
|
-
[Type.Omit(PreparedCall_Authorization, ["signatureRequest"]), TypeEcdsaSig],
|
|
638
|
-
{
|
|
639
|
-
description: "Prepared EIP-7702 Authorization with signature",
|
|
640
|
-
},
|
|
641
|
-
);
|
|
642
|
-
|
|
643
|
-
export const TypeCallArray = Type.Object(
|
|
644
|
-
{
|
|
645
|
-
type: Type.Literal("array"),
|
|
646
|
-
data: Type.Array(
|
|
647
|
-
Type.Union([
|
|
648
|
-
TypePrepareCall_UserOpV060_Signed,
|
|
649
|
-
TypePrepareCall_UserOpV070_Signed,
|
|
650
|
-
TypePrepareCall_Authorization_Signed,
|
|
651
|
-
]),
|
|
652
|
-
),
|
|
653
|
-
},
|
|
654
|
-
{
|
|
655
|
-
description: "Array of prepared calls with signatures",
|
|
656
|
-
},
|
|
657
|
-
);
|