@turnkey/gas-station 2.0.0 → 3.0.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.
@@ -107,22 +107,22 @@ class IntentBuilder {
107
107
  chainId: this.config.chainId,
108
108
  verifyingContract: this.config.eoaAddress,
109
109
  };
110
- // Original: keccak256("Execution(uint128 nonce,uint32 deadline,address outputContract,uint256 ethAmount,bytes arguments)")
110
+ // keccak256("Execution(uint128 nonce,uint32 deadline,address to,uint256 value,bytes data)")
111
111
  const types = {
112
112
  Execution: [
113
113
  { name: "nonce", type: "uint128" },
114
114
  { name: "deadline", type: "uint32" },
115
- { name: "outputContract", type: "address" },
116
- { name: "ethAmount", type: "uint256" },
117
- { name: "arguments", type: "bytes" },
115
+ { name: "to", type: "address" },
116
+ { name: "value", type: "uint256" },
117
+ { name: "data", type: "bytes" },
118
118
  ],
119
119
  };
120
120
  const message = {
121
121
  nonce,
122
122
  deadline,
123
- outputContract: this.outputContract,
124
- ethAmount: this.ethAmount,
125
- arguments: this.callData,
123
+ to: this.outputContract,
124
+ value: this.ethAmount,
125
+ data: this.callData,
126
126
  };
127
127
  const signature = await this.config.eoaWalletClient.signTypedData({
128
128
  account: this.config.eoaWalletClient.account,
@@ -161,7 +161,7 @@ class IntentBuilder {
161
161
  verifyingContract: this.config.eoaAddress,
162
162
  };
163
163
  // Based on hashApproveThenExecute from the contract
164
- // keccak256("ApproveThenExecute(uint128 nonce,uint32 deadline,address erc20Contract,address spender,uint256 approveAmount,address outputContract,uint256 ethAmount,bytes arguments)")
164
+ // keccak256("ApproveThenExecute(uint128 nonce,uint32 deadline,address erc20Contract,address spender,uint256 approveAmount,address to,uint256 value,bytes data)")
165
165
  const types = {
166
166
  ApproveThenExecute: [
167
167
  { name: "nonce", type: "uint128" },
@@ -169,9 +169,9 @@ class IntentBuilder {
169
169
  { name: "erc20Contract", type: "address" },
170
170
  { name: "spender", type: "address" },
171
171
  { name: "approveAmount", type: "uint256" },
172
- { name: "outputContract", type: "address" },
173
- { name: "ethAmount", type: "uint256" },
174
- { name: "arguments", type: "bytes" },
172
+ { name: "to", type: "address" },
173
+ { name: "value", type: "uint256" },
174
+ { name: "data", type: "bytes" },
175
175
  ],
176
176
  };
177
177
  const message = {
@@ -180,9 +180,9 @@ class IntentBuilder {
180
180
  erc20Contract: erc20Address,
181
181
  spender,
182
182
  approveAmount,
183
- outputContract: this.outputContract,
184
- ethAmount: this.ethAmount,
185
- arguments: this.callData,
183
+ to: this.outputContract,
184
+ value: this.ethAmount,
185
+ data: this.callData,
186
186
  };
187
187
  const signature = await this.config.eoaWalletClient.signTypedData({
188
188
  account: this.config.eoaWalletClient.account,
@@ -1 +1 @@
1
- {"version":3,"file":"intentBuilder.mjs","sources":["../src/intentBuilder.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"intentBuilder.mjs","sources":["../src/intentBuilder.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -11,15 +11,15 @@ import type { Hex } from "viem";
11
11
  * @param config.customConsensus - Optional custom consensus expression (overrides eoaUserId and additionalApprovers)
12
12
  * @param config.restrictions - Signing restrictions
13
13
  * @param config.restrictions.allowedContracts - Whitelist of contract addresses EOA can sign intents for
14
- * @param config.restrictions.disallowEthTransfer - Whether to disallow ETH transfers (if true, ethAmount must be 0)
14
+ * @param config.restrictions.disallowEthTransfer - Whether to disallow ETH transfers (if true, value must be 0)
15
15
  * @param config.policyName - Optional policy name
16
16
  * @returns Policy object ready to submit to Turnkey createPolicy API
17
17
  *
18
18
  * @example
19
19
  * // Simple: single user approval, token-only transfers
20
20
  * const policy = buildIntentSigningPolicy({
21
- * organizationId: "org-123",
22
- * eoaUserId: "user-456",
21
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
22
+ * eoaUserId: "3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
23
23
  * restrictions: {
24
24
  * allowedContracts: ["0x833...USDC", "0x6B1...DAI"],
25
25
  * disallowEthTransfer: true,
@@ -29,24 +29,24 @@ import type { Hex } from "viem";
29
29
  *
30
30
  * // Resulting policy:
31
31
  * {
32
- * organizationId: "org-123",
32
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
33
33
  * policyName: "Stablecoin Only",
34
34
  * effect: "EFFECT_ALLOW",
35
- * consensus: "approvers.any(user, user.id == 'user-456')",
35
+ * consensus: "approvers.any(user, user.id == '3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a')",
36
36
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
37
37
  * "eth.eip_712.primary_type == 'Execution' && " +
38
- * "(eth.eip_712.message['outputContract'] == '0x833...usdc' || " +
39
- * "eth.eip_712.message['outputContract'] == '0x6b1...dai') && " +
40
- * "eth.eip_712.message['ethAmount'] == '0'",
38
+ * "(eth.eip_712.message['to'] == '0x833...usdc' || " +
39
+ * "eth.eip_712.message['to'] == '0x6b1...dai') && " +
40
+ * "eth.eip_712.message['value'] == '0'",
41
41
  * notes: "Restricts which EIP-712 intents the EOA can sign for gas station execution"
42
42
  * }
43
43
  *
44
44
  * @example
45
45
  * // Multi-approval: EOA AND backup user must both approve
46
46
  * const policy = buildIntentSigningPolicy({
47
- * organizationId: "org-123",
48
- * eoaUserId: "user-456",
49
- * additionalApprovers: ["backup-user-789"],
47
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
48
+ * eoaUserId: "3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
49
+ * additionalApprovers: ["9d4e2f5b-6c7d-8e9f-0a1b-2c3d4e5f6a7b"],
50
50
  * restrictions: {
51
51
  * allowedContracts: ["0x833...USDC"],
52
52
  * disallowEthTransfer: true,
@@ -55,23 +55,23 @@ import type { Hex } from "viem";
55
55
  *
56
56
  * // Resulting policy:
57
57
  * {
58
- * organizationId: "org-123",
58
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
59
59
  * policyName: "Gas Station Intent Signing Policy",
60
60
  * effect: "EFFECT_ALLOW",
61
- * consensus: "approvers.any(user, user.id == 'user-456') && " +
62
- * "approvers.any(user, user.id == 'backup-user-789')",
61
+ * consensus: "approvers.any(user, user.id == '3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a') && " +
62
+ * "approvers.any(user, user.id == '9d4e2f5b-6c7d-8e9f-0a1b-2c3d4e5f6a7b')",
63
63
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
64
64
  * "eth.eip_712.primary_type == 'Execution' && " +
65
- * "(eth.eip_712.message['outputContract'] == '0x833...usdc') && " +
66
- * "eth.eip_712.message['ethAmount'] == '0'",
65
+ * "(eth.eip_712.message['to'] == '0x833...usdc') && " +
66
+ * "eth.eip_712.message['value'] == '0'",
67
67
  * notes: "Restricts which EIP-712 intents the EOA can sign for gas station execution"
68
68
  * }
69
69
  *
70
70
  * @example
71
71
  * // Advanced: custom consensus expression
72
72
  * const policy = buildIntentSigningPolicy({
73
- * organizationId: "org-123",
74
- * eoaUserId: "user-456",
73
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
74
+ * eoaUserId: "3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
75
75
  * customConsensus: "approvers.count() >= 2",
76
76
  * restrictions: {
77
77
  * disallowEthTransfer: false,
@@ -125,9 +125,9 @@ export declare function buildIntentSigningPolicy(config: {
125
125
  * @example
126
126
  * // Simple: single paymaster approval with ETH amount limit
127
127
  * const policy = buildPaymasterExecutionPolicy({
128
- * organizationId: "org-paymaster",
129
- * paymasterUserId: "paymaster-user-123",
130
- * executionContractAddress: "0x576A4D741b96996cc93B4919a04c16545734481f",
128
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
129
+ * paymasterUserId: "8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
130
+ * executionContractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
131
131
  * restrictions: {
132
132
  * allowedEOAs: ["0xAli...ce", "0xBob...by"],
133
133
  * allowedContracts: ["0x833...USDC", "0x6B1...DAI"],
@@ -140,17 +140,17 @@ export declare function buildIntentSigningPolicy(config: {
140
140
  *
141
141
  * // Resulting policy (uses ABI parsing):
142
142
  * {
143
- * organizationId: "org-paymaster",
143
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
144
144
  * policyName: "Paymaster Protection",
145
145
  * effect: "EFFECT_ALLOW",
146
- * consensus: "approvers.any(user, user.id == 'paymaster-user-123')",
146
+ * consensus: "approvers.any(user, user.id == '8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c')",
147
147
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
148
- * "eth.tx.to == '0x576a...481f' && " +
148
+ * "eth.tx.to == '0x00000000008c57a1ce37836a5e9d36759d070d8c' && " +
149
149
  * "(eth.tx.contract_call_args['_to'] == '0x833...usdc' || " +
150
150
  * "eth.tx.contract_call_args['_to'] == '0x6b1...dai') && " +
151
- * "(eth.tx.contract_call_args['_targetEoA'] == '0xali...ce' || " +
152
- * "eth.tx.contract_call_args['_targetEoA'] == '0xbob...by') && " +
153
- * "eth.tx.contract_call_args['ethAmount'] <= 100000000000000000 && " +
151
+ * "(eth.tx.contract_call_args['_target'] == '0xali...ce' || " +
152
+ * "eth.tx.contract_call_args['_target'] == '0xbob...by') && " +
153
+ * "eth.tx.contract_call_args['_ethAmount'] <= 100000000000000000 && " +
154
154
  * "eth.tx.gasPrice <= 50000000000 && eth.tx.gas <= 500000",
155
155
  * notes: "Restricts which execute() transactions the paymaster can submit on-chain"
156
156
  * }
@@ -158,10 +158,10 @@ export declare function buildIntentSigningPolicy(config: {
158
158
  * @example
159
159
  * // Multi-user: primary paymaster OR backup can approve
160
160
  * const policy = buildPaymasterExecutionPolicy({
161
- * organizationId: "org-paymaster",
162
- * paymasterUserId: "paymaster-user-123",
163
- * additionalApprovers: ["backup-paymaster-456"],
164
- * executionContractAddress: "0x576A4D741b96996cc93B4919a04c16545734481f",
161
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
162
+ * paymasterUserId: "8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
163
+ * additionalApprovers: ["2e4f6a8b-9c0d-1e2f-3a4b-5c6d7e8f9a0b"],
164
+ * executionContractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
165
165
  * restrictions: {
166
166
  * allowedEOAs: ["0xAli...ce"],
167
167
  * maxEthAmount: parseEther("1"), // Max 1 ETH
@@ -171,15 +171,15 @@ export declare function buildIntentSigningPolicy(config: {
171
171
  *
172
172
  * // Resulting policy (uses ABI parsing):
173
173
  * {
174
- * organizationId: "org-paymaster",
174
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
175
175
  * policyName: "Gas Station Paymaster Execution Policy",
176
176
  * effect: "EFFECT_ALLOW",
177
- * consensus: "approvers.any(user, user.id == 'paymaster-user-123' || " +
178
- * "user.id == 'backup-paymaster-456')",
177
+ * consensus: "approvers.any(user, user.id == '8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c' || " +
178
+ * "user.id == '2e4f6a8b-9c0d-1e2f-3a4b-5c6d7e8f9a0b')",
179
179
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
180
- * "eth.tx.to == '0x576a...481f' && " +
181
- * "(eth.tx.contract_call_args['_targetEoA'] == '0xali...ce') && " +
182
- * "eth.tx.contract_call_args['ethAmount'] <= 1000000000000000000 && " +
180
+ * "eth.tx.to == '0x00000000008c57a1ce37836a5e9d36759d070d8c' && " +
181
+ * "(eth.tx.contract_call_args['_target'] == '0xali...ce') && " +
182
+ * "eth.tx.contract_call_args['_ethAmount'] <= 1000000000000000000 && " +
183
183
  * "eth.tx.gasPrice <= 100000000000",
184
184
  * notes: "Restricts which execute() transactions the paymaster can submit on-chain"
185
185
  * }
@@ -187,10 +187,10 @@ export declare function buildIntentSigningPolicy(config: {
187
187
  * @example
188
188
  * // Advanced: require multiple approvals
189
189
  * const policy = buildPaymasterExecutionPolicy({
190
- * organizationId: "org-paymaster",
191
- * paymasterUserId: "paymaster-user-123",
190
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
191
+ * paymasterUserId: "8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
192
192
  * customConsensus: "approvers.count() >= 2",
193
- * executionContractAddress: "0x576A4D741b96996cc93B4919a04c16545734481f",
193
+ * executionContractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
194
194
  * restrictions: { ... },
195
195
  * });
196
196
  *
@@ -254,13 +254,12 @@ export declare function uploadGasStationInterface({ client, organizationId, cont
254
254
  * @returns The smart contract interface ID
255
255
  *
256
256
  * @example
257
- * const interfaceId = await ensureGasStationInterface(
258
- * turnkeyClient.apiClient(),
259
- * "org-123",
260
- * "0x576A4D741b96996cc93B4919a04c16545734481f",
261
- * undefined,
262
- * "Base Sepolia"
263
- * );
257
+ * const interfaceId = await ensureGasStationInterface({
258
+ * client: turnkeyClient.apiClient(),
259
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
260
+ * contractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
261
+ * chainName: "Base Sepolia"
262
+ * });
264
263
  */
265
264
  export declare function ensureGasStationInterface({ client, organizationId, contractAddress, label, chainName, }: {
266
265
  client: TurnkeyApiClient;
@@ -1 +1 @@
1
- {"version":3,"file":"policyUtils.d.ts","sourceRoot":"","sources":["../src/policyUtils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE;QACb,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC;QACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;;;;;;;EAwDA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB,EAAE,GAAG,CAAC;IAC9B,YAAY,CAAC,EAAE;QACb,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;QACpB,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;;;;;;;EAmFA;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,MAAM,EACN,cAAc,EACd,eAAe,GAChB,EAAE;IACD,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;CACtB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB9B;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,MAAM,EACN,cAAc,EACd,eAAe,EACf,KAAK,EACL,SAAS,GACV,EAAE;IACD,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,MAAM,CAAC,CAyBlB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,MAAM,EACN,cAAc,EACd,eAAe,EACf,KAAK,EACL,SAAS,GACV,EAAE;IACD,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBlB"}
1
+ {"version":3,"file":"policyUtils.d.ts","sourceRoot":"","sources":["../src/policyUtils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE;QACb,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC;QACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;;;;;;;EAsDA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wBAAwB,EAAE,GAAG,CAAC;IAC9B,YAAY,CAAC,EAAE;QACb,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;QACpB,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;;;;;;;EAmFA;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,MAAM,EACN,cAAc,EACd,eAAe,GAChB,EAAE;IACD,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;CACtB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAoB9B;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,MAAM,EACN,cAAc,EACd,eAAe,EACf,KAAK,EACL,SAAS,GACV,EAAE;IACD,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,MAAM,CAAC,CAyBlB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,MAAM,EACN,cAAc,EACd,eAAe,EACf,KAAK,EACL,SAAS,GACV,EAAE;IACD,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBlB"}
@@ -14,15 +14,15 @@ var gasStation = require('./abi/gas-station.js');
14
14
  * @param config.customConsensus - Optional custom consensus expression (overrides eoaUserId and additionalApprovers)
15
15
  * @param config.restrictions - Signing restrictions
16
16
  * @param config.restrictions.allowedContracts - Whitelist of contract addresses EOA can sign intents for
17
- * @param config.restrictions.disallowEthTransfer - Whether to disallow ETH transfers (if true, ethAmount must be 0)
17
+ * @param config.restrictions.disallowEthTransfer - Whether to disallow ETH transfers (if true, value must be 0)
18
18
  * @param config.policyName - Optional policy name
19
19
  * @returns Policy object ready to submit to Turnkey createPolicy API
20
20
  *
21
21
  * @example
22
22
  * // Simple: single user approval, token-only transfers
23
23
  * const policy = buildIntentSigningPolicy({
24
- * organizationId: "org-123",
25
- * eoaUserId: "user-456",
24
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
25
+ * eoaUserId: "3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
26
26
  * restrictions: {
27
27
  * allowedContracts: ["0x833...USDC", "0x6B1...DAI"],
28
28
  * disallowEthTransfer: true,
@@ -32,24 +32,24 @@ var gasStation = require('./abi/gas-station.js');
32
32
  *
33
33
  * // Resulting policy:
34
34
  * {
35
- * organizationId: "org-123",
35
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
36
36
  * policyName: "Stablecoin Only",
37
37
  * effect: "EFFECT_ALLOW",
38
- * consensus: "approvers.any(user, user.id == 'user-456')",
38
+ * consensus: "approvers.any(user, user.id == '3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a')",
39
39
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
40
40
  * "eth.eip_712.primary_type == 'Execution' && " +
41
- * "(eth.eip_712.message['outputContract'] == '0x833...usdc' || " +
42
- * "eth.eip_712.message['outputContract'] == '0x6b1...dai') && " +
43
- * "eth.eip_712.message['ethAmount'] == '0'",
41
+ * "(eth.eip_712.message['to'] == '0x833...usdc' || " +
42
+ * "eth.eip_712.message['to'] == '0x6b1...dai') && " +
43
+ * "eth.eip_712.message['value'] == '0'",
44
44
  * notes: "Restricts which EIP-712 intents the EOA can sign for gas station execution"
45
45
  * }
46
46
  *
47
47
  * @example
48
48
  * // Multi-approval: EOA AND backup user must both approve
49
49
  * const policy = buildIntentSigningPolicy({
50
- * organizationId: "org-123",
51
- * eoaUserId: "user-456",
52
- * additionalApprovers: ["backup-user-789"],
50
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
51
+ * eoaUserId: "3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
52
+ * additionalApprovers: ["9d4e2f5b-6c7d-8e9f-0a1b-2c3d4e5f6a7b"],
53
53
  * restrictions: {
54
54
  * allowedContracts: ["0x833...USDC"],
55
55
  * disallowEthTransfer: true,
@@ -58,23 +58,23 @@ var gasStation = require('./abi/gas-station.js');
58
58
  *
59
59
  * // Resulting policy:
60
60
  * {
61
- * organizationId: "org-123",
61
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
62
62
  * policyName: "Gas Station Intent Signing Policy",
63
63
  * effect: "EFFECT_ALLOW",
64
- * consensus: "approvers.any(user, user.id == 'user-456') && " +
65
- * "approvers.any(user, user.id == 'backup-user-789')",
64
+ * consensus: "approvers.any(user, user.id == '3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a') && " +
65
+ * "approvers.any(user, user.id == '9d4e2f5b-6c7d-8e9f-0a1b-2c3d4e5f6a7b')",
66
66
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
67
67
  * "eth.eip_712.primary_type == 'Execution' && " +
68
- * "(eth.eip_712.message['outputContract'] == '0x833...usdc') && " +
69
- * "eth.eip_712.message['ethAmount'] == '0'",
68
+ * "(eth.eip_712.message['to'] == '0x833...usdc') && " +
69
+ * "eth.eip_712.message['value'] == '0'",
70
70
  * notes: "Restricts which EIP-712 intents the EOA can sign for gas station execution"
71
71
  * }
72
72
  *
73
73
  * @example
74
74
  * // Advanced: custom consensus expression
75
75
  * const policy = buildIntentSigningPolicy({
76
- * organizationId: "org-123",
77
- * eoaUserId: "user-456",
76
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
77
+ * eoaUserId: "3c7d6e8a-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
78
78
  * customConsensus: "approvers.count() >= 2",
79
79
  * restrictions: {
80
80
  * disallowEthTransfer: false,
@@ -94,12 +94,12 @@ function buildIntentSigningPolicy(config) {
94
94
  // Build OR conditions for each allowed contract
95
95
  // Convert to lowercase for case-insensitive comparison
96
96
  const contractConditions = config.restrictions.allowedContracts
97
- .map((c) => `eth.eip_712.message['outputContract'] == '${c.toLowerCase()}'`)
97
+ .map((c) => `eth.eip_712.message['to'] == '${c.toLowerCase()}'`)
98
98
  .join(" || ");
99
99
  conditions.push(`(${contractConditions})`);
100
100
  }
101
101
  if (!!config.restrictions?.disallowEthTransfer) {
102
- conditions.push(`eth.eip_712.message['ethAmount'] == '0'`);
102
+ conditions.push(`eth.eip_712.message['value'] == '0'`);
103
103
  }
104
104
  // Build consensus expression
105
105
  let consensus;
@@ -156,9 +156,9 @@ function buildIntentSigningPolicy(config) {
156
156
  * @example
157
157
  * // Simple: single paymaster approval with ETH amount limit
158
158
  * const policy = buildPaymasterExecutionPolicy({
159
- * organizationId: "org-paymaster",
160
- * paymasterUserId: "paymaster-user-123",
161
- * executionContractAddress: "0x576A4D741b96996cc93B4919a04c16545734481f",
159
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
160
+ * paymasterUserId: "8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
161
+ * executionContractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
162
162
  * restrictions: {
163
163
  * allowedEOAs: ["0xAli...ce", "0xBob...by"],
164
164
  * allowedContracts: ["0x833...USDC", "0x6B1...DAI"],
@@ -171,17 +171,17 @@ function buildIntentSigningPolicy(config) {
171
171
  *
172
172
  * // Resulting policy (uses ABI parsing):
173
173
  * {
174
- * organizationId: "org-paymaster",
174
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
175
175
  * policyName: "Paymaster Protection",
176
176
  * effect: "EFFECT_ALLOW",
177
- * consensus: "approvers.any(user, user.id == 'paymaster-user-123')",
177
+ * consensus: "approvers.any(user, user.id == '8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c')",
178
178
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
179
- * "eth.tx.to == '0x576a...481f' && " +
179
+ * "eth.tx.to == '0x00000000008c57a1ce37836a5e9d36759d070d8c' && " +
180
180
  * "(eth.tx.contract_call_args['_to'] == '0x833...usdc' || " +
181
181
  * "eth.tx.contract_call_args['_to'] == '0x6b1...dai') && " +
182
- * "(eth.tx.contract_call_args['_targetEoA'] == '0xali...ce' || " +
183
- * "eth.tx.contract_call_args['_targetEoA'] == '0xbob...by') && " +
184
- * "eth.tx.contract_call_args['ethAmount'] <= 100000000000000000 && " +
182
+ * "(eth.tx.contract_call_args['_target'] == '0xali...ce' || " +
183
+ * "eth.tx.contract_call_args['_target'] == '0xbob...by') && " +
184
+ * "eth.tx.contract_call_args['_ethAmount'] <= 100000000000000000 && " +
185
185
  * "eth.tx.gasPrice <= 50000000000 && eth.tx.gas <= 500000",
186
186
  * notes: "Restricts which execute() transactions the paymaster can submit on-chain"
187
187
  * }
@@ -189,10 +189,10 @@ function buildIntentSigningPolicy(config) {
189
189
  * @example
190
190
  * // Multi-user: primary paymaster OR backup can approve
191
191
  * const policy = buildPaymasterExecutionPolicy({
192
- * organizationId: "org-paymaster",
193
- * paymasterUserId: "paymaster-user-123",
194
- * additionalApprovers: ["backup-paymaster-456"],
195
- * executionContractAddress: "0x576A4D741b96996cc93B4919a04c16545734481f",
192
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
193
+ * paymasterUserId: "8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
194
+ * additionalApprovers: ["2e4f6a8b-9c0d-1e2f-3a4b-5c6d7e8f9a0b"],
195
+ * executionContractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
196
196
  * restrictions: {
197
197
  * allowedEOAs: ["0xAli...ce"],
198
198
  * maxEthAmount: parseEther("1"), // Max 1 ETH
@@ -202,15 +202,15 @@ function buildIntentSigningPolicy(config) {
202
202
  *
203
203
  * // Resulting policy (uses ABI parsing):
204
204
  * {
205
- * organizationId: "org-paymaster",
205
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
206
206
  * policyName: "Gas Station Paymaster Execution Policy",
207
207
  * effect: "EFFECT_ALLOW",
208
- * consensus: "approvers.any(user, user.id == 'paymaster-user-123' || " +
209
- * "user.id == 'backup-paymaster-456')",
208
+ * consensus: "approvers.any(user, user.id == '8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c' || " +
209
+ * "user.id == '2e4f6a8b-9c0d-1e2f-3a4b-5c6d7e8f9a0b')",
210
210
  * condition: "activity.resource == 'PRIVATE_KEY' && activity.action == 'SIGN' && " +
211
- * "eth.tx.to == '0x576a...481f' && " +
212
- * "(eth.tx.contract_call_args['_targetEoA'] == '0xali...ce') && " +
213
- * "eth.tx.contract_call_args['ethAmount'] <= 1000000000000000000 && " +
211
+ * "eth.tx.to == '0x00000000008c57a1ce37836a5e9d36759d070d8c' && " +
212
+ * "(eth.tx.contract_call_args['_target'] == '0xali...ce') && " +
213
+ * "eth.tx.contract_call_args['_ethAmount'] <= 1000000000000000000 && " +
214
214
  * "eth.tx.gasPrice <= 100000000000",
215
215
  * notes: "Restricts which execute() transactions the paymaster can submit on-chain"
216
216
  * }
@@ -218,10 +218,10 @@ function buildIntentSigningPolicy(config) {
218
218
  * @example
219
219
  * // Advanced: require multiple approvals
220
220
  * const policy = buildPaymasterExecutionPolicy({
221
- * organizationId: "org-paymaster",
222
- * paymasterUserId: "paymaster-user-123",
221
+ * organizationId: "f8c3a5e7-9876-5432-1abc-def098765432",
222
+ * paymasterUserId: "8f2a1b4c-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
223
223
  * customConsensus: "approvers.count() >= 2",
224
- * executionContractAddress: "0x576A4D741b96996cc93B4919a04c16545734481f",
224
+ * executionContractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
225
225
  * restrictions: { ... },
226
226
  * });
227
227
  *
@@ -234,7 +234,7 @@ function buildPaymasterExecutionPolicy(config) {
234
234
  `eth.tx.to == '${config.executionContractAddress.toLowerCase()}'`,
235
235
  ];
236
236
  // Check output contract address using ABI parsing
237
- // Turnkey parses execute(address _targetEoA, address _to, uint256 ethAmount, bytes _data)
237
+ // Turnkey parses execute(address _target, address _to, uint256 _ethAmount, bytes _data)
238
238
  // and exposes arguments via eth.tx.contract_call_args
239
239
  if (config.restrictions?.allowedContracts &&
240
240
  config.restrictions.allowedContracts.length > 0) {
@@ -351,13 +351,12 @@ async function uploadGasStationInterface({ client, organizationId, contractAddre
351
351
  * @returns The smart contract interface ID
352
352
  *
353
353
  * @example
354
- * const interfaceId = await ensureGasStationInterface(
355
- * turnkeyClient.apiClient(),
356
- * "org-123",
357
- * "0x576A4D741b96996cc93B4919a04c16545734481f",
358
- * undefined,
359
- * "Base Sepolia"
360
- * );
354
+ * const interfaceId = await ensureGasStationInterface({
355
+ * client: turnkeyClient.apiClient(),
356
+ * organizationId: "a5b89e4f-1234-5678-9abc-def012345678",
357
+ * contractAddress: "0x00000000008c57a1CE37836a5e9d36759D070d8c",
358
+ * chainName: "Base Sepolia"
359
+ * });
361
360
  */
362
361
  async function ensureGasStationInterface({ client, organizationId, contractAddress, label, chainName, }) {
363
362
  // Check if interface already exists
@@ -1 +1 @@
1
- {"version":3,"file":"policyUtils.js","sources":["../src/policyUtils.ts"],"sourcesContent":[null],"names":["gasStationAbi"],"mappings":"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"}
1
+ {"version":3,"file":"policyUtils.js","sources":["../src/policyUtils.ts"],"sourcesContent":[null],"names":["gasStationAbi"],"mappings":"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"}