@account-kit/wallet-client 0.1.0-alpha.9 → 4.50.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/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 +33 -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/dist/esm/schemas.js
DELETED
|
@@ -1,463 +0,0 @@
|
|
|
1
|
-
import { FormatRegistry, Type, } from "@sinclair/typebox";
|
|
2
|
-
import { yParityToV } from "ox/Signature";
|
|
3
|
-
import { toHex, slice, pad, concat, hexToBigInt, serializeSignature, hexToNumber, parseSignature, numberToHex, } from "viem";
|
|
4
|
-
const UUID_V4_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
5
|
-
FormatRegistry.Set("uuid", (value) => UUID_V4_REGEX.test(value));
|
|
6
|
-
const BASE_64_URL_REGEX = /^[A-Za-z0-9_-]+$/; // Matches base64url encoded strings (without padding)
|
|
7
|
-
FormatRegistry.Set("base64url", (value) => BASE_64_URL_REGEX.test(value));
|
|
8
|
-
export const baseAccountTypes = [
|
|
9
|
-
"sma-b",
|
|
10
|
-
"la-v2",
|
|
11
|
-
"la-v2-multi-owner",
|
|
12
|
-
"la-v1.0.1",
|
|
13
|
-
"la-v1.0.2",
|
|
14
|
-
"la-v1.1.0",
|
|
15
|
-
"ma-v1-multi-owner",
|
|
16
|
-
];
|
|
17
|
-
export const accountTypes = [...baseAccountTypes, "7702"];
|
|
18
|
-
export const TypeHex = (options) => Type.TemplateLiteral("0x${string}", {
|
|
19
|
-
...options,
|
|
20
|
-
});
|
|
21
|
-
export const TypeAddress = Type.TemplateLiteral("0x${string}", {});
|
|
22
|
-
export const TypeUuid = Type.String({
|
|
23
|
-
format: "uuid",
|
|
24
|
-
});
|
|
25
|
-
export const TypeBase64UrlEncodedString = Type.String({
|
|
26
|
-
format: "base64url",
|
|
27
|
-
});
|
|
28
|
-
// BigInt is not json-serializable, so it must be encoded as a string.
|
|
29
|
-
export const TypeU256 = Type.Transform(Type.String({}))
|
|
30
|
-
.Decode((value) => BigInt(value))
|
|
31
|
-
.Encode((value) => toHex(value));
|
|
32
|
-
export const TypeU32 = Type.Transform(Type.String({}))
|
|
33
|
-
.Decode((value) => Number.parseInt(value, 16))
|
|
34
|
-
.Encode((value) => toHex(value));
|
|
35
|
-
export const TypeUserOperationRequest_v6 = Type.Object({
|
|
36
|
-
sender: TypeAddress,
|
|
37
|
-
nonce: TypeHex(),
|
|
38
|
-
initCode: Type.Union([
|
|
39
|
-
TypeHex({
|
|
40
|
-
description: "Present",
|
|
41
|
-
}),
|
|
42
|
-
Type.Literal("0x", {
|
|
43
|
-
description: "Absent",
|
|
44
|
-
}),
|
|
45
|
-
]),
|
|
46
|
-
callData: TypeHex(),
|
|
47
|
-
callGasLimit: TypeHex(),
|
|
48
|
-
verificationGasLimit: TypeHex(),
|
|
49
|
-
preVerificationGas: TypeHex(),
|
|
50
|
-
maxFeePerGas: TypeHex(),
|
|
51
|
-
maxPriorityFeePerGas: TypeHex(),
|
|
52
|
-
paymasterAndData: Type.Union([
|
|
53
|
-
TypeHex({
|
|
54
|
-
description: "Present",
|
|
55
|
-
}),
|
|
56
|
-
Type.Literal("0x", {
|
|
57
|
-
description: "Absent",
|
|
58
|
-
}),
|
|
59
|
-
]),
|
|
60
|
-
signature: TypeHex(),
|
|
61
|
-
});
|
|
62
|
-
export const TypeUserOperationRequest_v7 = Type.Object({
|
|
63
|
-
sender: TypeAddress,
|
|
64
|
-
nonce: TypeHex(),
|
|
65
|
-
factory: Type.Optional(TypeAddress),
|
|
66
|
-
factoryData: Type.Optional(TypeHex()),
|
|
67
|
-
callData: TypeHex(),
|
|
68
|
-
callGasLimit: TypeHex(),
|
|
69
|
-
verificationGasLimit: TypeHex(),
|
|
70
|
-
preVerificationGas: TypeHex(),
|
|
71
|
-
maxFeePerGas: TypeHex(),
|
|
72
|
-
maxPriorityFeePerGas: TypeHex(),
|
|
73
|
-
paymaster: Type.Optional(TypeAddress),
|
|
74
|
-
paymasterData: Type.Optional(TypeHex()),
|
|
75
|
-
paymasterVerificationGasLimit: Type.Optional(TypeHex()),
|
|
76
|
-
paymasterPostOpGasLimit: Type.Optional(TypeHex()),
|
|
77
|
-
signature: TypeHex(),
|
|
78
|
-
});
|
|
79
|
-
export const TypeEip7702UnsignedAuth = Type.Object({
|
|
80
|
-
chainId: TypeHex(),
|
|
81
|
-
address: TypeAddress,
|
|
82
|
-
nonce: TypeHex(),
|
|
83
|
-
});
|
|
84
|
-
export const TypeEip7702SignedAuth = Type.Intersect([
|
|
85
|
-
TypeEip7702UnsignedAuth,
|
|
86
|
-
Type.Object({
|
|
87
|
-
r: TypeHex(),
|
|
88
|
-
s: TypeHex(),
|
|
89
|
-
yParity: TypeHex(),
|
|
90
|
-
}),
|
|
91
|
-
]);
|
|
92
|
-
export const TypeWebAuthnPublicKey = Type.Object({
|
|
93
|
-
x: TypeU256,
|
|
94
|
-
y: TypeU256,
|
|
95
|
-
});
|
|
96
|
-
export const TypePersistedInitcode = Type.Object({
|
|
97
|
-
factoryAddress: TypeAddress,
|
|
98
|
-
initcode: Type.Union([
|
|
99
|
-
Type.Object({
|
|
100
|
-
factoryType: Type.Literal("unknown", {
|
|
101
|
-
description: "Unknown factory type",
|
|
102
|
-
}),
|
|
103
|
-
factoryData: TypeHex({}),
|
|
104
|
-
}, {
|
|
105
|
-
description: "Unknown factory type",
|
|
106
|
-
}),
|
|
107
|
-
Type.Object({
|
|
108
|
-
factoryType: Type.Union([
|
|
109
|
-
Type.Literal("LightAccountV2.0.0"),
|
|
110
|
-
Type.Literal("LightAccountV1.1.0"),
|
|
111
|
-
Type.Literal("LightAccountV1.0.2"),
|
|
112
|
-
Type.Literal("LightAccountV1.0.1"),
|
|
113
|
-
]),
|
|
114
|
-
salt: TypeU256,
|
|
115
|
-
initialOwner: TypeAddress,
|
|
116
|
-
}, {
|
|
117
|
-
description: "Light Account",
|
|
118
|
-
}),
|
|
119
|
-
Type.Object({
|
|
120
|
-
factoryType: Type.Union([
|
|
121
|
-
Type.Literal("MAv1.0.0-MultiOwner"),
|
|
122
|
-
Type.Literal("LightAccountV2.0.0-MultiOwner"),
|
|
123
|
-
]),
|
|
124
|
-
salt: TypeU256,
|
|
125
|
-
initialOwners: Type.Array(TypeAddress),
|
|
126
|
-
}, {
|
|
127
|
-
description: "Multi-Owner Modular Account",
|
|
128
|
-
}),
|
|
129
|
-
Type.Object({
|
|
130
|
-
factoryType: Type.Literal("MAv1.0.0-MultiSig"),
|
|
131
|
-
salt: TypeU256,
|
|
132
|
-
initialOwners: Type.Array(TypeAddress),
|
|
133
|
-
threshold: TypeU256,
|
|
134
|
-
}, {
|
|
135
|
-
description: "Multi-Sig Modular Account",
|
|
136
|
-
}),
|
|
137
|
-
Type.Intersect([
|
|
138
|
-
Type.Object({
|
|
139
|
-
factoryType: Type.Literal("MAv2.0.0"),
|
|
140
|
-
salt: TypeU256,
|
|
141
|
-
}),
|
|
142
|
-
Type.Union([
|
|
143
|
-
Type.Object({
|
|
144
|
-
mav2type: Type.Literal("ma-ssv"),
|
|
145
|
-
initialOwner: TypeAddress,
|
|
146
|
-
entityId: TypeU32,
|
|
147
|
-
}, {
|
|
148
|
-
description: "Modular Account V2 SSV",
|
|
149
|
-
}),
|
|
150
|
-
Type.Object({
|
|
151
|
-
mav2type: Type.Literal("sma-b"),
|
|
152
|
-
initialOwner: TypeAddress,
|
|
153
|
-
}, {
|
|
154
|
-
description: "Modular Account V2 SMA-B",
|
|
155
|
-
}),
|
|
156
|
-
Type.Object({
|
|
157
|
-
mav2type: Type.Literal("ma-webauthn"),
|
|
158
|
-
initialOwner: TypeWebAuthnPublicKey,
|
|
159
|
-
entityId: TypeU32,
|
|
160
|
-
}, {
|
|
161
|
-
description: "Modular Account V2 WebAuthn",
|
|
162
|
-
}),
|
|
163
|
-
]),
|
|
164
|
-
]),
|
|
165
|
-
]),
|
|
166
|
-
});
|
|
167
|
-
export const TypeSerializedInitcode = Type.Object({
|
|
168
|
-
factoryType: Type.Union([
|
|
169
|
-
Type.Literal("LightAccountV1.0.1", { description: "Light Account v1.0.1" }),
|
|
170
|
-
Type.Literal("LightAccountV1.0.2", { description: "Light Account v1.0.2" }),
|
|
171
|
-
Type.Literal("LightAccountV1.1.0", { description: "Light Account v1.1.0" }),
|
|
172
|
-
Type.Literal("LightAccountV2.0.0", { description: "Light Account v2.0.0" }),
|
|
173
|
-
Type.Literal("LightAccountV2.0.0-MultiOwner", {
|
|
174
|
-
description: "Light Account v2.0.0 MultiOwner",
|
|
175
|
-
}),
|
|
176
|
-
Type.Literal("MAv1.0.0-MultiOwner", {
|
|
177
|
-
description: "Modular Account v1.0.0 MultiOwner",
|
|
178
|
-
}),
|
|
179
|
-
Type.Literal("MAv1.0.0-MultiSig", {
|
|
180
|
-
description: "Modular Account v1.0.0 MultiSig",
|
|
181
|
-
}),
|
|
182
|
-
Type.Literal("MAv2.0.0-sma-b", {
|
|
183
|
-
description: "Modular Account v2.0.0 SMA-B",
|
|
184
|
-
}),
|
|
185
|
-
Type.Literal("MAv2.0.0-ma-ssv", {
|
|
186
|
-
description: "Modular Account v2.0.0 SSV",
|
|
187
|
-
}),
|
|
188
|
-
Type.Literal("MAv2.0.0-ma-webauthn", {
|
|
189
|
-
description: "Modular Account v2.0.0 WebAuthn",
|
|
190
|
-
}),
|
|
191
|
-
Type.Literal("unknown", { description: "Unknown factory type" }),
|
|
192
|
-
]),
|
|
193
|
-
factoryAddress: TypeAddress,
|
|
194
|
-
factoryData: TypeHex({}),
|
|
195
|
-
});
|
|
196
|
-
export const TypeCounterfactualInfo = Type.Intersect([
|
|
197
|
-
Type.Object({
|
|
198
|
-
accountAddress: TypeAddress,
|
|
199
|
-
}),
|
|
200
|
-
Type.Union([
|
|
201
|
-
Type.Intersect([
|
|
202
|
-
Type.Object({
|
|
203
|
-
type: Type.Literal("sca"),
|
|
204
|
-
}),
|
|
205
|
-
TypePersistedInitcode,
|
|
206
|
-
], {
|
|
207
|
-
description: "Smart Contract Account",
|
|
208
|
-
}),
|
|
209
|
-
Type.Object({
|
|
210
|
-
type: Type.Literal("7702"),
|
|
211
|
-
implementationAddress: TypeAddress,
|
|
212
|
-
}, {
|
|
213
|
-
description: "7702 Account",
|
|
214
|
-
}),
|
|
215
|
-
]),
|
|
216
|
-
]);
|
|
217
|
-
export const TypeCreationOptions = Type.Optional(Type.Union([
|
|
218
|
-
Type.Object({
|
|
219
|
-
// Optional b/c `sma-b` is the default if no accountType is specified.
|
|
220
|
-
accountType: Type.Optional(Type.Literal("sma-b")),
|
|
221
|
-
salt: Type.Optional(TypeHex()),
|
|
222
|
-
}, {
|
|
223
|
-
description: "Modular Account V2 SMA-B account type",
|
|
224
|
-
}),
|
|
225
|
-
Type.Object({
|
|
226
|
-
accountType: Type.Literal("la-v2"),
|
|
227
|
-
salt: Type.Optional(TypeHex()),
|
|
228
|
-
}, {
|
|
229
|
-
description: "Light Account V2 account type",
|
|
230
|
-
}),
|
|
231
|
-
Type.Object({
|
|
232
|
-
accountType: Type.Literal("la-v2-multi-owner"),
|
|
233
|
-
salt: Type.Optional(TypeHex()),
|
|
234
|
-
initialOwners: Type.Optional(Type.Array(TypeAddress, {
|
|
235
|
-
description: "The initial owners of the account. The signer address will be implicitly added if not specified in this list.",
|
|
236
|
-
})),
|
|
237
|
-
}, {
|
|
238
|
-
description: "Light Account V2 Multi-Owner account type",
|
|
239
|
-
}),
|
|
240
|
-
Type.Object({
|
|
241
|
-
accountType: Type.Literal("la-v1.0.1"),
|
|
242
|
-
salt: Type.Optional(TypeHex()),
|
|
243
|
-
}, {
|
|
244
|
-
description: "Light Account V1.0.1 account type",
|
|
245
|
-
}),
|
|
246
|
-
Type.Object({
|
|
247
|
-
accountType: Type.Literal("la-v1.0.2"),
|
|
248
|
-
salt: Type.Optional(TypeHex()),
|
|
249
|
-
}, {
|
|
250
|
-
description: "Light Account V1.0.2 account type",
|
|
251
|
-
}),
|
|
252
|
-
Type.Object({
|
|
253
|
-
accountType: Type.Literal("la-v1.1.0"),
|
|
254
|
-
salt: Type.Optional(TypeHex()),
|
|
255
|
-
}, {
|
|
256
|
-
description: "Light Account V1.1.0 account type",
|
|
257
|
-
}),
|
|
258
|
-
Type.Object({
|
|
259
|
-
accountType: Type.Literal("ma-v1-multi-owner"),
|
|
260
|
-
salt: Type.Optional(TypeHex()),
|
|
261
|
-
initialOwners: Type.Optional(Type.Array(TypeAddress, {
|
|
262
|
-
description: "The initial owners of the account. The signer address will be implicitly added if not specified in this list.",
|
|
263
|
-
})),
|
|
264
|
-
}, {
|
|
265
|
-
description: "Modular Account V1 Multi-Owner account type",
|
|
266
|
-
}),
|
|
267
|
-
Type.Object({
|
|
268
|
-
accountType: Type.Literal("7702"),
|
|
269
|
-
// TODO: Add support for specifying a delegation address.
|
|
270
|
-
// Currently we only support delegating to MAv2, and it's important
|
|
271
|
-
// that wallet applications maintain a strict shortlist of well-known
|
|
272
|
-
// accounts: https://github.com/ethereum/ERCs/pull/947/files#diff-dab085f963ca621595044bcbc0922705aa38b69f5bf8770dcb3d0496a633efcfR189
|
|
273
|
-
// delegation: TypeAddress,
|
|
274
|
-
}, {
|
|
275
|
-
description: "7702 account type",
|
|
276
|
-
}),
|
|
277
|
-
]));
|
|
278
|
-
export const TypeSignatureType = Type.Union([
|
|
279
|
-
Type.Literal("secp256k1", { description: "Secp256k1" }),
|
|
280
|
-
Type.Literal("ecdsa", { description: "ECDSA (alias for secp256k1)" }),
|
|
281
|
-
Type.Literal("contract", { description: "Contract" }),
|
|
282
|
-
]);
|
|
283
|
-
export const KeySigner = Type.Object({
|
|
284
|
-
type: TypeSignatureType,
|
|
285
|
-
publicKey: TypeHex({}),
|
|
286
|
-
});
|
|
287
|
-
export const TTypedDataDefinition = Type.Transform(Type.Object({
|
|
288
|
-
domain: Type.Optional(Type.Object({
|
|
289
|
-
chainId: Type.Optional(Type.Integer()),
|
|
290
|
-
name: Type.Optional(Type.String()),
|
|
291
|
-
salt: Type.Optional(TypeHex()),
|
|
292
|
-
verifyingContract: Type.Optional(TypeAddress),
|
|
293
|
-
version: Type.Optional(Type.String()),
|
|
294
|
-
})),
|
|
295
|
-
types: Type.Record(Type.String(), Type.Array(Type.Object({
|
|
296
|
-
name: Type.String(),
|
|
297
|
-
type: Type.String(),
|
|
298
|
-
}))),
|
|
299
|
-
primaryType: Type.String(),
|
|
300
|
-
message: Type.Record(Type.String(), Type.Unknown()),
|
|
301
|
-
}))
|
|
302
|
-
// No-op b/c Viem is happy w/ the encoded version too.
|
|
303
|
-
.Decode((it) => it)
|
|
304
|
-
// Encode the TypedDataDefinition into our json-serialized format.
|
|
305
|
-
.Encode(({ domain, types, primaryType, message }) => {
|
|
306
|
-
return {
|
|
307
|
-
domain: {
|
|
308
|
-
...domain,
|
|
309
|
-
chainId: typeof domain?.chainId === "bigint"
|
|
310
|
-
? Number(domain.chainId)
|
|
311
|
-
: domain?.chainId,
|
|
312
|
-
},
|
|
313
|
-
types,
|
|
314
|
-
primaryType,
|
|
315
|
-
message: JSON.parse(JSON.stringify(message, (_, v) => typeof v === "bigint" ? toHex(v) : v)),
|
|
316
|
-
};
|
|
317
|
-
});
|
|
318
|
-
export const TypePersonalSignSignatureRequest = Type.Object({
|
|
319
|
-
type: Type.Literal("personal_sign"),
|
|
320
|
-
data: Type.Union([
|
|
321
|
-
Type.String({ minLength: 1, description: "Message" }),
|
|
322
|
-
Type.Object({
|
|
323
|
-
raw: TypeHex(),
|
|
324
|
-
}, { description: "Raw message" }),
|
|
325
|
-
]),
|
|
326
|
-
rawPayload: TypeHex(),
|
|
327
|
-
}, { description: "Personal sign" });
|
|
328
|
-
export const TypeTypedDataSignatureRequest = Type.Object({
|
|
329
|
-
type: Type.Literal("eth_signTypedData_v4"),
|
|
330
|
-
data: TTypedDataDefinition,
|
|
331
|
-
rawPayload: TypeHex(),
|
|
332
|
-
}, {
|
|
333
|
-
description: "Typed data",
|
|
334
|
-
});
|
|
335
|
-
export const TypeAuthorizationSignatureRequest = Type.Object({
|
|
336
|
-
type: Type.Literal("eip7702Auth"),
|
|
337
|
-
rawPayload: TypeHex(),
|
|
338
|
-
});
|
|
339
|
-
export const TypeSignatureRequest = Type.Union([
|
|
340
|
-
TypePersonalSignSignatureRequest,
|
|
341
|
-
TypeTypedDataSignatureRequest,
|
|
342
|
-
TypeAuthorizationSignatureRequest,
|
|
343
|
-
]);
|
|
344
|
-
export const TypeCallId = Type.Transform(TypeHex())
|
|
345
|
-
.Decode((value) => {
|
|
346
|
-
return {
|
|
347
|
-
chainId: toHex(hexToBigInt(slice(value, 0, 32))),
|
|
348
|
-
hash: slice(value, 32),
|
|
349
|
-
};
|
|
350
|
-
})
|
|
351
|
-
.Encode(({ chainId, hash }) => {
|
|
352
|
-
const chainIdPadded = pad(chainId, { size: 32 });
|
|
353
|
-
return concat([chainIdPadded, hash]);
|
|
354
|
-
});
|
|
355
|
-
export const PreparedCall_UserOpV060 = Type.Object({
|
|
356
|
-
type: Type.Literal("user-operation-v060", {
|
|
357
|
-
description: "User Operation (Entrypoint v0.6.0)",
|
|
358
|
-
}),
|
|
359
|
-
data: Type.Omit(TypeUserOperationRequest_v6, ["signature"], {
|
|
360
|
-
description: "Unsigned User Operation (Entrypoint v0.6.0)",
|
|
361
|
-
}),
|
|
362
|
-
chainId: TypeHex(),
|
|
363
|
-
signatureRequest: Type.Union([
|
|
364
|
-
TypePersonalSignSignatureRequest,
|
|
365
|
-
TypeTypedDataSignatureRequest,
|
|
366
|
-
]),
|
|
367
|
-
}, {
|
|
368
|
-
description: "Prepared User Operation (Entrypoint v0.6.0)",
|
|
369
|
-
});
|
|
370
|
-
export const PreparedCall_UserOpV070 = Type.Object({
|
|
371
|
-
type: Type.Literal("user-operation-v070", {
|
|
372
|
-
description: "User Operation (Entrypoint v0.7.0)",
|
|
373
|
-
}),
|
|
374
|
-
data: Type.Omit(TypeUserOperationRequest_v7, ["signature"], {
|
|
375
|
-
description: "Unsigned User Operation (Entrypoint v0.7.0)",
|
|
376
|
-
}),
|
|
377
|
-
chainId: TypeHex(),
|
|
378
|
-
signatureRequest: Type.Union([
|
|
379
|
-
TypePersonalSignSignatureRequest,
|
|
380
|
-
TypeTypedDataSignatureRequest,
|
|
381
|
-
]),
|
|
382
|
-
}, {
|
|
383
|
-
description: "Prepared User Operation (Entrypoint v0.7.0)",
|
|
384
|
-
});
|
|
385
|
-
export const PreparedCall_Authorization = Type.Object({
|
|
386
|
-
type: Type.Literal("authorization", {
|
|
387
|
-
description: "EIP-7702 Authorization Request",
|
|
388
|
-
}),
|
|
389
|
-
data: Type.Omit(TypeEip7702UnsignedAuth, ["chainId"]),
|
|
390
|
-
chainId: TypeHex(),
|
|
391
|
-
signatureRequest: TypeAuthorizationSignatureRequest,
|
|
392
|
-
}, {
|
|
393
|
-
description: "Prepared EIP-7702 Authorization",
|
|
394
|
-
});
|
|
395
|
-
export const TypeEdcsaSigData = Type.Union([
|
|
396
|
-
TypeHex({
|
|
397
|
-
description: "Hex-encoded signature",
|
|
398
|
-
}),
|
|
399
|
-
Type.Transform(Type.Object({
|
|
400
|
-
r: TypeHex(),
|
|
401
|
-
s: TypeHex(),
|
|
402
|
-
yParity: TypeHex(),
|
|
403
|
-
}, { description: "r, s, yParity" }))
|
|
404
|
-
.Decode((sig) => serializeSignature({ ...sig, yParity: hexToNumber(sig.yParity) }))
|
|
405
|
-
.Encode((hex) => {
|
|
406
|
-
const parsed = parseSignature(hex);
|
|
407
|
-
return {
|
|
408
|
-
...parsed,
|
|
409
|
-
yParity: numberToHex(parsed.yParity),
|
|
410
|
-
};
|
|
411
|
-
}),
|
|
412
|
-
Type.Transform(Type.Object({
|
|
413
|
-
r: TypeHex(),
|
|
414
|
-
s: TypeHex(),
|
|
415
|
-
v: TypeHex(),
|
|
416
|
-
}, {
|
|
417
|
-
description: "r, s, v",
|
|
418
|
-
}))
|
|
419
|
-
.Decode((sig) => serializeSignature({ ...sig, v: hexToBigInt(sig.v) }))
|
|
420
|
-
.Encode((hex) => {
|
|
421
|
-
const parsed = parseSignature(hex);
|
|
422
|
-
return {
|
|
423
|
-
...parsed,
|
|
424
|
-
v: numberToHex(yParityToV(parsed.yParity)),
|
|
425
|
-
};
|
|
426
|
-
}),
|
|
427
|
-
]);
|
|
428
|
-
export const TypeEcdsaSig = Type.Object({
|
|
429
|
-
signature: Type.Union([
|
|
430
|
-
Type.Object({
|
|
431
|
-
type: Type.Literal("secp256k1"),
|
|
432
|
-
data: TypeEdcsaSigData,
|
|
433
|
-
}, {
|
|
434
|
-
description: "Secp256k1 signature",
|
|
435
|
-
}),
|
|
436
|
-
Type.Object({
|
|
437
|
-
type: Type.Literal("ecdsa"),
|
|
438
|
-
data: TypeEdcsaSigData,
|
|
439
|
-
}, {
|
|
440
|
-
description: "ECDSA signature (alias for secp256k1)",
|
|
441
|
-
}),
|
|
442
|
-
]),
|
|
443
|
-
});
|
|
444
|
-
export const TypePrepareCall_UserOpV060_Signed = Type.Intersect([Type.Omit(PreparedCall_UserOpV060, ["signatureRequest"]), TypeEcdsaSig], {
|
|
445
|
-
description: "Prepared User Operation (Entrypoint v0.6.0) with signature",
|
|
446
|
-
});
|
|
447
|
-
export const TypePrepareCall_UserOpV070_Signed = Type.Intersect([Type.Omit(PreparedCall_UserOpV070, ["signatureRequest"]), TypeEcdsaSig], {
|
|
448
|
-
description: "Prepared User Operation (Entrypoint v0.7.0) with signature",
|
|
449
|
-
});
|
|
450
|
-
export const TypePrepareCall_Authorization_Signed = Type.Intersect([Type.Omit(PreparedCall_Authorization, ["signatureRequest"]), TypeEcdsaSig], {
|
|
451
|
-
description: "Prepared EIP-7702 Authorization with signature",
|
|
452
|
-
});
|
|
453
|
-
export const TypeCallArray = Type.Object({
|
|
454
|
-
type: Type.Literal("array"),
|
|
455
|
-
data: Type.Array(Type.Union([
|
|
456
|
-
TypePrepareCall_UserOpV060_Signed,
|
|
457
|
-
TypePrepareCall_UserOpV070_Signed,
|
|
458
|
-
TypePrepareCall_Authorization_Signed,
|
|
459
|
-
])),
|
|
460
|
-
}, {
|
|
461
|
-
description: "Array of prepared calls with signatures",
|
|
462
|
-
});
|
|
463
|
-
//# sourceMappingURL=schemas.js.map
|
package/dist/esm/schemas.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n FormatRegistry,\n Type,\n type SchemaOptions,\n type Static,\n} from \"@sinclair/typebox\";\nimport { yParityToV } from \"ox/Signature\";\nimport {\n toHex,\n slice,\n pad,\n concat,\n hexToBigInt,\n serializeSignature,\n hexToNumber,\n parseSignature,\n numberToHex,\n} from \"viem\";\nimport type { Expect } from \"./utils.ts\";\n\nconst UUID_V4_REGEX =\n /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\nFormatRegistry.Set(\"uuid\", (value) => UUID_V4_REGEX.test(value));\n\nconst BASE_64_URL_REGEX = /^[A-Za-z0-9_-]+$/; // Matches base64url encoded strings (without padding)\nFormatRegistry.Set(\"base64url\", (value) => BASE_64_URL_REGEX.test(value));\n\nexport const baseAccountTypes = [\n \"sma-b\",\n \"la-v2\",\n \"la-v2-multi-owner\",\n \"la-v1.0.1\",\n \"la-v1.0.2\",\n \"la-v1.1.0\",\n \"ma-v1-multi-owner\",\n] as const;\n\nexport type BaseAccountType = (typeof baseAccountTypes)[number];\n\nexport const accountTypes = [...baseAccountTypes, \"7702\"] as const;\n\nexport type AccountType = (typeof accountTypes)[number];\n\nexport const TypeHex = (options?: SchemaOptions) =>\n Type.TemplateLiteral(\"0x${string}\", {\n ...options,\n });\n\nexport const TypeAddress = Type.TemplateLiteral(\"0x${string}\", {});\n\nexport const TypeUuid = Type.String({\n format: \"uuid\",\n});\n\nexport const TypeBase64UrlEncodedString = Type.String({\n format: \"base64url\",\n});\n\n// BigInt is not json-serializable, so it must be encoded as a string.\nexport const TypeU256 = Type.Transform(Type.String({}))\n .Decode((value) => BigInt(value))\n .Encode((value) => toHex(value));\n\nexport const TypeU32 = Type.Transform(Type.String({}))\n .Decode((value) => Number.parseInt(value, 16))\n .Encode((value) => toHex(value));\n\nexport const TypeUserOperationRequest_v6 = Type.Object({\n sender: TypeAddress,\n nonce: TypeHex(),\n initCode: Type.Union([\n TypeHex({\n description: \"Present\",\n }),\n Type.Literal(\"0x\", {\n description: \"Absent\",\n }),\n ]),\n callData: TypeHex(),\n callGasLimit: TypeHex(),\n verificationGasLimit: TypeHex(),\n preVerificationGas: TypeHex(),\n maxFeePerGas: TypeHex(),\n maxPriorityFeePerGas: TypeHex(),\n paymasterAndData: Type.Union([\n TypeHex({\n description: \"Present\",\n }),\n Type.Literal(\"0x\", {\n description: \"Absent\",\n }),\n ]),\n signature: TypeHex(),\n});\n\nexport const TypeUserOperationRequest_v7 = Type.Object({\n sender: TypeAddress,\n nonce: TypeHex(),\n factory: Type.Optional(TypeAddress),\n factoryData: Type.Optional(TypeHex()),\n callData: TypeHex(),\n callGasLimit: TypeHex(),\n verificationGasLimit: TypeHex(),\n preVerificationGas: TypeHex(),\n maxFeePerGas: TypeHex(),\n maxPriorityFeePerGas: TypeHex(),\n paymaster: Type.Optional(TypeAddress),\n paymasterData: Type.Optional(TypeHex()),\n paymasterVerificationGasLimit: Type.Optional(TypeHex()),\n paymasterPostOpGasLimit: Type.Optional(TypeHex()),\n signature: TypeHex(),\n});\n\nexport const TypeEip7702UnsignedAuth = Type.Object({\n chainId: TypeHex(),\n address: TypeAddress,\n nonce: TypeHex(),\n});\n\nexport const TypeEip7702SignedAuth = Type.Intersect([\n TypeEip7702UnsignedAuth,\n Type.Object({\n r: TypeHex(),\n s: TypeHex(),\n yParity: TypeHex(),\n }),\n]);\n\nexport const TypeWebAuthnPublicKey = Type.Object({\n x: TypeU256,\n y: TypeU256,\n});\n\nexport const TypePersistedInitcode = Type.Object({\n factoryAddress: TypeAddress,\n initcode: Type.Union([\n Type.Object(\n {\n factoryType: Type.Literal(\"unknown\", {\n description: \"Unknown factory type\",\n }),\n factoryData: TypeHex({}),\n },\n {\n description: \"Unknown factory type\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Union([\n Type.Literal(\"LightAccountV2.0.0\"),\n Type.Literal(\"LightAccountV1.1.0\"),\n Type.Literal(\"LightAccountV1.0.2\"),\n Type.Literal(\"LightAccountV1.0.1\"),\n ]),\n salt: TypeU256,\n initialOwner: TypeAddress,\n },\n {\n description: \"Light Account\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Union([\n Type.Literal(\"MAv1.0.0-MultiOwner\"),\n Type.Literal(\"LightAccountV2.0.0-MultiOwner\"),\n ]),\n salt: TypeU256,\n initialOwners: Type.Array(TypeAddress),\n },\n {\n description: \"Multi-Owner Modular Account\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Literal(\"MAv1.0.0-MultiSig\"),\n salt: TypeU256,\n initialOwners: Type.Array(TypeAddress),\n threshold: TypeU256,\n },\n {\n description: \"Multi-Sig Modular Account\",\n },\n ),\n Type.Intersect([\n Type.Object({\n factoryType: Type.Literal(\"MAv2.0.0\"),\n salt: TypeU256,\n }),\n Type.Union([\n Type.Object(\n {\n mav2type: Type.Literal(\"ma-ssv\"),\n initialOwner: TypeAddress,\n entityId: TypeU32,\n },\n {\n description: \"Modular Account V2 SSV\",\n },\n ),\n Type.Object(\n {\n mav2type: Type.Literal(\"sma-b\"),\n initialOwner: TypeAddress,\n },\n {\n description: \"Modular Account V2 SMA-B\",\n },\n ),\n Type.Object(\n {\n mav2type: Type.Literal(\"ma-webauthn\"),\n initialOwner: TypeWebAuthnPublicKey,\n entityId: TypeU32,\n },\n {\n description: \"Modular Account V2 WebAuthn\",\n },\n ),\n ]),\n ]),\n ]),\n});\n\nexport const TypeSerializedInitcode = Type.Object({\n factoryType: Type.Union([\n Type.Literal(\"LightAccountV1.0.1\", { description: \"Light Account v1.0.1\" }),\n Type.Literal(\"LightAccountV1.0.2\", { description: \"Light Account v1.0.2\" }),\n Type.Literal(\"LightAccountV1.1.0\", { description: \"Light Account v1.1.0\" }),\n Type.Literal(\"LightAccountV2.0.0\", { description: \"Light Account v2.0.0\" }),\n Type.Literal(\"LightAccountV2.0.0-MultiOwner\", {\n description: \"Light Account v2.0.0 MultiOwner\",\n }),\n Type.Literal(\"MAv1.0.0-MultiOwner\", {\n description: \"Modular Account v1.0.0 MultiOwner\",\n }),\n Type.Literal(\"MAv1.0.0-MultiSig\", {\n description: \"Modular Account v1.0.0 MultiSig\",\n }),\n Type.Literal(\"MAv2.0.0-sma-b\", {\n description: \"Modular Account v2.0.0 SMA-B\",\n }),\n Type.Literal(\"MAv2.0.0-ma-ssv\", {\n description: \"Modular Account v2.0.0 SSV\",\n }),\n Type.Literal(\"MAv2.0.0-ma-webauthn\", {\n description: \"Modular Account v2.0.0 WebAuthn\",\n }),\n Type.Literal(\"unknown\", { description: \"Unknown factory type\" }),\n ]),\n factoryAddress: TypeAddress,\n factoryData: TypeHex({}),\n});\n\nexport const TypeCounterfactualInfo = Type.Intersect([\n Type.Object({\n accountAddress: TypeAddress,\n }),\n Type.Union([\n Type.Intersect(\n [\n Type.Object({\n type: Type.Literal(\"sca\"),\n }),\n TypePersistedInitcode,\n ],\n {\n description: \"Smart Contract Account\",\n },\n ),\n Type.Object(\n {\n type: Type.Literal(\"7702\"),\n implementationAddress: TypeAddress,\n },\n {\n description: \"7702 Account\",\n },\n ),\n ]),\n]);\nexport type TypeCounterfactualInfo = Static<typeof TypeCounterfactualInfo>;\n\nexport const TypeCreationOptions = Type.Optional(\n Type.Union([\n Type.Object(\n {\n // Optional b/c `sma-b` is the default if no accountType is specified.\n accountType: Type.Optional(Type.Literal(\"sma-b\")),\n salt: Type.Optional(TypeHex()),\n },\n {\n description: \"Modular Account V2 SMA-B account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"la-v2\"),\n salt: Type.Optional(TypeHex()),\n },\n {\n description: \"Light Account V2 account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"la-v2-multi-owner\"),\n salt: Type.Optional(TypeHex()),\n initialOwners: Type.Optional(\n Type.Array(TypeAddress, {\n description:\n \"The initial owners of the account. The signer address will be implicitly added if not specified in this list.\",\n }),\n ),\n },\n {\n description: \"Light Account V2 Multi-Owner account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"la-v1.0.1\"),\n salt: Type.Optional(TypeHex()),\n },\n {\n description: \"Light Account V1.0.1 account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"la-v1.0.2\"),\n salt: Type.Optional(TypeHex()),\n },\n {\n description: \"Light Account V1.0.2 account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"la-v1.1.0\"),\n salt: Type.Optional(TypeHex()),\n },\n {\n description: \"Light Account V1.1.0 account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"ma-v1-multi-owner\"),\n salt: Type.Optional(TypeHex()),\n initialOwners: Type.Optional(\n Type.Array(TypeAddress, {\n description:\n \"The initial owners of the account. The signer address will be implicitly added if not specified in this list.\",\n }),\n ),\n },\n {\n description: \"Modular Account V1 Multi-Owner account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"7702\"),\n // TODO: Add support for specifying a delegation address.\n // Currently we only support delegating to MAv2, and it's important\n // that wallet applications maintain a strict shortlist of well-known\n // accounts: https://github.com/ethereum/ERCs/pull/947/files#diff-dab085f963ca621595044bcbc0922705aa38b69f5bf8770dcb3d0496a633efcfR189\n // delegation: TypeAddress,\n },\n {\n description: \"7702 account type\",\n },\n ),\n ]),\n);\nexport type TypeCreationOptions = Static<typeof TypeCreationOptions>;\n\ntype BaseAccountTypeExhaustive = BaseAccountType extends Exclude<\n Static<typeof TypeCreationOptions>,\n undefined\n>[\"accountType\"]\n ? true\n : \"BaseAccountType values not fully covered in TypeCreationOptions\";\n\n// Compile-time assertion that TypeCreationOptions covers all BaseAccountType values.\ntype _AssertBaseAccountTypeExhaustive = Expect<BaseAccountTypeExhaustive>;\n\nexport const TypeSignatureType = Type.Union([\n Type.Literal(\"secp256k1\", { description: \"Secp256k1\" }),\n Type.Literal(\"ecdsa\", { description: \"ECDSA (alias for secp256k1)\" }),\n Type.Literal(\"contract\", { description: \"Contract\" }),\n]);\nexport type TypeSignatureType = Static<typeof TypeSignatureType>;\n\nexport const KeySigner = Type.Object({\n type: TypeSignatureType,\n publicKey: TypeHex({}),\n});\nexport type KeySigner = Static<typeof KeySigner>;\n\nexport const TTypedDataDefinition = Type.Transform(\n Type.Object({\n domain: Type.Optional(\n Type.Object({\n chainId: Type.Optional(Type.Integer()),\n name: Type.Optional(Type.String()),\n salt: Type.Optional(TypeHex()),\n verifyingContract: Type.Optional(TypeAddress),\n version: Type.Optional(Type.String()),\n }),\n ),\n types: Type.Record(\n Type.String(),\n Type.Array(\n Type.Object({\n name: Type.String(),\n type: Type.String(),\n }),\n ),\n ),\n primaryType: Type.String(),\n message: Type.Record(Type.String(), Type.Unknown()),\n }),\n)\n // No-op b/c Viem is happy w/ the encoded version too.\n .Decode((it) => it)\n // Encode the TypedDataDefinition into our json-serialized format.\n .Encode(({ domain, types, primaryType, message }) => {\n return {\n domain: {\n ...domain,\n chainId:\n typeof domain?.chainId === \"bigint\"\n ? Number(domain.chainId)\n : domain?.chainId,\n },\n types,\n primaryType,\n message: JSON.parse(\n JSON.stringify(message, (_, v) =>\n typeof v === \"bigint\" ? toHex(v) : v,\n ),\n ),\n };\n });\n\nexport const TypePersonalSignSignatureRequest = Type.Object(\n {\n type: Type.Literal(\"personal_sign\"),\n data: Type.Union([\n Type.String({ minLength: 1, description: \"Message\" }),\n Type.Object(\n {\n raw: TypeHex(),\n },\n { description: \"Raw message\" },\n ),\n ]),\n rawPayload: TypeHex(),\n },\n { description: \"Personal sign\" },\n);\n\nexport const TypeTypedDataSignatureRequest = Type.Object(\n {\n type: Type.Literal(\"eth_signTypedData_v4\"),\n data: TTypedDataDefinition,\n rawPayload: TypeHex(),\n },\n {\n description: \"Typed data\",\n },\n);\n\nexport const TypeAuthorizationSignatureRequest = Type.Object({\n type: Type.Literal(\"eip7702Auth\"),\n rawPayload: TypeHex(),\n});\n\nexport const TypeSignatureRequest = Type.Union([\n TypePersonalSignSignatureRequest,\n TypeTypedDataSignatureRequest,\n TypeAuthorizationSignatureRequest,\n]);\n\nexport const TypeCallId = Type.Transform(TypeHex())\n .Decode((value) => {\n return {\n chainId: toHex(hexToBigInt(slice(value, 0, 32))),\n hash: slice(value, 32),\n };\n })\n .Encode(({ chainId, hash }) => {\n const chainIdPadded = pad(chainId, { size: 32 });\n return concat([chainIdPadded, hash]);\n });\n\nexport const PreparedCall_UserOpV060 = Type.Object(\n {\n type: Type.Literal(\"user-operation-v060\", {\n description: \"User Operation (Entrypoint v0.6.0)\",\n }),\n data: Type.Omit(TypeUserOperationRequest_v6, [\"signature\"], {\n description: \"Unsigned User Operation (Entrypoint v0.6.0)\",\n }),\n chainId: TypeHex(),\n signatureRequest: Type.Union([\n TypePersonalSignSignatureRequest,\n TypeTypedDataSignatureRequest,\n ]),\n },\n {\n description: \"Prepared User Operation (Entrypoint v0.6.0)\",\n },\n);\n\nexport const PreparedCall_UserOpV070 = Type.Object(\n {\n type: Type.Literal(\"user-operation-v070\", {\n description: \"User Operation (Entrypoint v0.7.0)\",\n }),\n data: Type.Omit(TypeUserOperationRequest_v7, [\"signature\"], {\n description: \"Unsigned User Operation (Entrypoint v0.7.0)\",\n }),\n chainId: TypeHex(),\n signatureRequest: Type.Union([\n TypePersonalSignSignatureRequest,\n TypeTypedDataSignatureRequest,\n ]),\n },\n {\n description: \"Prepared User Operation (Entrypoint v0.7.0)\",\n },\n);\n\nexport const PreparedCall_Authorization = Type.Object(\n {\n type: Type.Literal(\"authorization\", {\n description: \"EIP-7702 Authorization Request\",\n }),\n data: Type.Omit(TypeEip7702UnsignedAuth, [\"chainId\"]),\n chainId: TypeHex(),\n signatureRequest: TypeAuthorizationSignatureRequest,\n },\n {\n description: \"Prepared EIP-7702 Authorization\",\n },\n);\n\nexport const TypeEdcsaSigData = Type.Union([\n TypeHex({\n description: \"Hex-encoded signature\",\n }),\n Type.Transform(\n Type.Object(\n {\n r: TypeHex(),\n s: TypeHex(),\n yParity: TypeHex(),\n },\n { description: \"r, s, yParity\" },\n ),\n )\n .Decode((sig) =>\n serializeSignature({ ...sig, yParity: hexToNumber(sig.yParity) }),\n )\n .Encode((hex) => {\n const parsed = parseSignature(hex);\n return {\n ...parsed,\n yParity: numberToHex(parsed.yParity),\n };\n }),\n Type.Transform(\n Type.Object(\n {\n r: TypeHex(),\n s: TypeHex(),\n v: TypeHex(),\n },\n {\n description: \"r, s, v\",\n },\n ),\n )\n .Decode((sig) => serializeSignature({ ...sig, v: hexToBigInt(sig.v) }))\n .Encode((hex) => {\n const parsed = parseSignature(hex);\n return {\n ...parsed,\n v: numberToHex(yParityToV(parsed.yParity)),\n };\n }),\n]);\n\nexport const TypeEcdsaSig = Type.Object({\n signature: Type.Union([\n Type.Object(\n {\n type: Type.Literal(\"secp256k1\"),\n data: TypeEdcsaSigData,\n },\n {\n description: \"Secp256k1 signature\",\n },\n ),\n Type.Object(\n {\n type: Type.Literal(\"ecdsa\"),\n data: TypeEdcsaSigData,\n },\n {\n description: \"ECDSA signature (alias for secp256k1)\",\n },\n ),\n ]),\n});\n\nexport const TypePrepareCall_UserOpV060_Signed = Type.Intersect(\n [Type.Omit(PreparedCall_UserOpV060, [\"signatureRequest\"]), TypeEcdsaSig],\n {\n description: \"Prepared User Operation (Entrypoint v0.6.0) with signature\",\n },\n);\n\nexport const TypePrepareCall_UserOpV070_Signed = Type.Intersect(\n [Type.Omit(PreparedCall_UserOpV070, [\"signatureRequest\"]), TypeEcdsaSig],\n {\n description: \"Prepared User Operation (Entrypoint v0.7.0) with signature\",\n },\n);\n\nexport const TypePrepareCall_Authorization_Signed = Type.Intersect(\n [Type.Omit(PreparedCall_Authorization, [\"signatureRequest\"]), TypeEcdsaSig],\n {\n description: \"Prepared EIP-7702 Authorization with signature\",\n },\n);\n\nexport const TypeCallArray = Type.Object(\n {\n type: Type.Literal(\"array\"),\n data: Type.Array(\n Type.Union([\n TypePrepareCall_UserOpV060_Signed,\n TypePrepareCall_UserOpV070_Signed,\n TypePrepareCall_Authorization_Signed,\n ]),\n ),\n },\n {\n description: \"Array of prepared calls with signatures\",\n },\n);\n"]}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare const Eip7702AuthCapability: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
2
|
-
account: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">>;
|
|
3
|
-
delegation: import("@sinclair/typebox").TUnion<(import("@sinclair/typebox").TLiteral<"0x69007702764179f14F51cdce752f4f775d74E139"> | import("@sinclair/typebox").TLiteral<"ModularAccountV2">)[]>;
|
|
4
|
-
}>, import("@sinclair/typebox").TLiteral<true>]>;
|
|
5
|
-
//# sourceMappingURL=eip7702Auth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"eip7702Auth.d.ts","sourceRoot":"","sources":["../../../src/capabilities/eip7702Auth.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,qBAAqB;;;gDAkBhC,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
export declare const Capabilities: import("@sinclair/typebox").TObject<{
|
|
2
|
-
permissions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
3
|
-
context: import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">;
|
|
4
|
-
}>, import("@sinclair/typebox").TObject<{
|
|
5
|
-
sessionId: import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">;
|
|
6
|
-
signature: import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">;
|
|
7
|
-
}>]>>;
|
|
8
|
-
paymasterService: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
9
|
-
policyId: import("@sinclair/typebox").TString;
|
|
10
|
-
}>>;
|
|
11
|
-
gasParamsOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
12
|
-
preVerificationGas: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
13
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
14
|
-
}>]>>;
|
|
15
|
-
verificationGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
16
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
17
|
-
}>]>>;
|
|
18
|
-
callGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
19
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
20
|
-
}>]>>;
|
|
21
|
-
paymasterVerificationGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
22
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
23
|
-
}>]>>;
|
|
24
|
-
paymasterPostOpGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
25
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
26
|
-
}>]>>;
|
|
27
|
-
maxFeePerGas: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
28
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
29
|
-
}>]>>;
|
|
30
|
-
maxPriorityFeePerGas: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
31
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
32
|
-
}>]>>;
|
|
33
|
-
}>>;
|
|
34
|
-
eip7702Auth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
35
|
-
account: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">>;
|
|
36
|
-
delegation: import("@sinclair/typebox").TUnion<(import("@sinclair/typebox").TLiteral<"0x69007702764179f14F51cdce752f4f775d74E139"> | import("@sinclair/typebox").TLiteral<"ModularAccountV2">)[]>;
|
|
37
|
-
}>, import("@sinclair/typebox").TLiteral<true>]>>;
|
|
38
|
-
nonceOverride: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
39
|
-
nonceKey: import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">;
|
|
40
|
-
}>>;
|
|
41
|
-
}>;
|
|
42
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/capabilities/index.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMvB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"multiDimensionalNonce.d.ts","sourceRoot":"","sources":["../../../src/capabilities/multiDimensionalNonce.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,+BAA+B;;EAG1C,CAAC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export declare const Mutliplier: import("@sinclair/typebox").TObject<{
|
|
2
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
3
|
-
}>;
|
|
4
|
-
export declare const GasParamsOverrideCapability: import("@sinclair/typebox").TObject<{
|
|
5
|
-
preVerificationGas: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
6
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
7
|
-
}>]>>;
|
|
8
|
-
verificationGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
9
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
10
|
-
}>]>>;
|
|
11
|
-
callGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
12
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
13
|
-
}>]>>;
|
|
14
|
-
paymasterVerificationGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
15
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
16
|
-
}>]>>;
|
|
17
|
-
paymasterPostOpGasLimit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
18
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
19
|
-
}>]>>;
|
|
20
|
-
maxFeePerGas: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
21
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
22
|
-
}>]>>;
|
|
23
|
-
maxPriorityFeePerGas: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">, import("@sinclair/typebox").TObject<{
|
|
24
|
-
multiplier: import("@sinclair/typebox").TNumber;
|
|
25
|
-
}>]>>;
|
|
26
|
-
}>;
|
|
27
|
-
//# sourceMappingURL=overrides.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"overrides.d.ts","sourceRoot":"","sources":["../../../src/capabilities/overrides.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU;;EAGtB,CAAC;AAGF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;EAyBvC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"paymaster.d.ts","sourceRoot":"","sources":["../../../src/capabilities/paymaster.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB;;EAE9B,CAAC"}
|