@ampersend_ai/ampersend-sdk 0.0.12 → 0.0.13
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/dist/ampersend/treasurer.d.ts +2 -1
- package/dist/ampersend/treasurer.d.ts.map +1 -1
- package/dist/ampersend/treasurer.js +16 -4
- package/dist/ampersend/treasurer.js.map +1 -1
- package/dist/ampersend/types.d.ts +116 -4
- package/dist/ampersend/types.d.ts.map +1 -1
- package/dist/ampersend/types.js +46 -2
- package/dist/ampersend/types.js.map +1 -1
- package/dist/smart-account/constants.d.ts +5 -0
- package/dist/smart-account/constants.d.ts.map +1 -1
- package/dist/smart-account/constants.js +5 -0
- package/dist/smart-account/constants.js.map +1 -1
- package/dist/smart-account/eip712-types.d.ts +27 -0
- package/dist/smart-account/eip712-types.d.ts.map +1 -0
- package/dist/smart-account/eip712-types.js +16 -0
- package/dist/smart-account/eip712-types.js.map +1 -0
- package/dist/smart-account/index.d.ts +2 -1
- package/dist/smart-account/index.d.ts.map +1 -1
- package/dist/smart-account/index.js +2 -1
- package/dist/smart-account/index.js.map +1 -1
- package/dist/smart-account/signing.d.ts.map +1 -1
- package/dist/smart-account/signing.js +2 -8
- package/dist/smart-account/signing.js.map +1 -1
- package/dist/x402/index.d.ts +1 -0
- package/dist/x402/index.d.ts.map +1 -1
- package/dist/x402/index.js.map +1 -1
- package/dist/x402/types.d.ts +36 -0
- package/dist/x402/types.d.ts.map +1 -0
- package/dist/x402/types.js +9 -0
- package/dist/x402/types.js.map +1 -0
- package/dist/x402/wallet.d.ts +3 -1
- package/dist/x402/wallet.d.ts.map +1 -1
- package/dist/x402/wallet.js.map +1 -1
- package/dist/x402/wallets/account/wallet.d.ts +5 -3
- package/dist/x402/wallets/account/wallet.d.ts.map +1 -1
- package/dist/x402/wallets/account/wallet.js +2 -1
- package/dist/x402/wallets/account/wallet.js.map +1 -1
- package/dist/x402/wallets/index.d.ts +1 -0
- package/dist/x402/wallets/index.d.ts.map +1 -1
- package/dist/x402/wallets/index.js +1 -0
- package/dist/x402/wallets/index.js.map +1 -1
- package/dist/x402/wallets/smart-account/cosigned.d.ts +46 -0
- package/dist/x402/wallets/smart-account/cosigned.d.ts.map +1 -0
- package/dist/x402/wallets/smart-account/cosigned.js +90 -0
- package/dist/x402/wallets/smart-account/cosigned.js.map +1 -0
- package/dist/x402/wallets/smart-account/wallet.d.ts +8 -1
- package/dist/x402/wallets/smart-account/wallet.d.ts.map +1 -1
- package/dist/x402/wallets/smart-account/wallet.js +14 -3
- package/dist/x402/wallets/smart-account/wallet.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Address, Hex } from "viem";
|
|
2
|
+
import type { PaymentRequirements } from "x402/types";
|
|
2
3
|
import { type Authorization, type PaymentContext, type PaymentStatus, type WalletConfig, type X402Treasurer, type X402Wallet } from "../x402/index.ts";
|
|
3
4
|
import { ApiClient } from "./client.ts";
|
|
4
5
|
/**
|
|
@@ -71,7 +72,7 @@ export declare class AmpersendTreasurer implements X402Treasurer {
|
|
|
71
72
|
* Requests payment authorization from API before creating payment.
|
|
72
73
|
* Only creates payment if API authorizes it.
|
|
73
74
|
*/
|
|
74
|
-
onPaymentRequired(requirements:
|
|
75
|
+
onPaymentRequired(requirements: ReadonlyArray<PaymentRequirements>, context?: PaymentContext): Promise<Authorization | null>;
|
|
75
76
|
/**
|
|
76
77
|
* Reports payment status updates back to API for tracking.
|
|
77
78
|
* Logs errors but doesn't fail on tracking errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treasurer.d.ts","sourceRoot":"","sources":["../../src/ampersend/treasurer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"treasurer.d.ts","sourceRoot":"","sources":["../../src/ampersend/treasurer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EAAkB,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAIrE,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAElB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AASvC;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,8BAA8B;IAC7C,4BAA4B;IAC5B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,0CAA0C;IAC1C,oBAAoB,EAAE,GAAG,CAAA;IACzB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAA;IACd,kDAAkD;IAClD,YAAY,EAAE,YAAY,CAAA;IAC1B,4CAA4C;IAC5C,UAAU,CAAC,EAAE;QACX,qCAAqC;QACrC,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,wCAAwC;QACxC,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,8BAA8B,GAAG,4BAA4B,CAAA;AASpG;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,kBAAmB,YAAW,aAAa;IAEpD,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,MAAM;gBADN,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,UAAU;IAG5B;;;OAGG;IACG,iBAAiB,CACrB,YAAY,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAkDhC;;;OAGG;IACG,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAW7G;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAczB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,wBAAwB,GAAG,aAAa,CA+CxF"}
|
|
@@ -44,6 +44,8 @@ export class AmpersendTreasurer {
|
|
|
44
44
|
async onPaymentRequired(requirements, context) {
|
|
45
45
|
try {
|
|
46
46
|
// Authorize payment with API
|
|
47
|
+
// Cast needed: x402 PaymentRequirements (zod) → ampersend PaymentRequirements (Effect Schema)
|
|
48
|
+
// Structurally compatible at runtime, different type systems
|
|
47
49
|
const response = await this.apiClient.authorizePayment(requirements, context);
|
|
48
50
|
// Check if any requirements were authorized
|
|
49
51
|
if (response.authorized.requirements.length === 0) {
|
|
@@ -58,10 +60,20 @@ export class AmpersendTreasurer {
|
|
|
58
60
|
if (!authorizedReq) {
|
|
59
61
|
throw new Error("Recommended requirement index out of bounds");
|
|
60
62
|
}
|
|
61
|
-
//
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
// Check if server provided co-signature (for co-signed keys)
|
|
64
|
+
let payment;
|
|
65
|
+
if (response.payment) {
|
|
66
|
+
// Co-signed path: use server-provided authorization data and signature
|
|
67
|
+
const serverAuth = {
|
|
68
|
+
authorizationData: response.payment.authorizationData,
|
|
69
|
+
serverSignature: response.payment.serverSignature,
|
|
70
|
+
};
|
|
71
|
+
payment = await this.wallet.createPayment(response.payment.requirement, serverAuth);
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
// Full-access path: sign independently
|
|
75
|
+
payment = await this.wallet.createPayment(authorizedReq.requirement);
|
|
76
|
+
}
|
|
65
77
|
return {
|
|
66
78
|
payment,
|
|
67
79
|
authorizationId: crypto.randomUUID(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treasurer.js","sourceRoot":"","sources":["../../src/ampersend/treasurer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"treasurer.js","sourceRoot":"","sources":["../../src/ampersend/treasurer.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,7 +64,7 @@ declare const PaymentRequirements_base: Schema.Class<PaymentRequirements, {
|
|
|
64
64
|
maxAmountRequired: Schema.refine<string, typeof Schema.Trimmed>;
|
|
65
65
|
resource: Schema.refine<string, typeof Schema.Trimmed>;
|
|
66
66
|
description: Schema.refine<string, typeof Schema.Trimmed>;
|
|
67
|
-
mimeType: Schema.
|
|
67
|
+
mimeType: Schema.SchemaClass<string, string, never>;
|
|
68
68
|
payTo: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
69
69
|
maxTimeoutSeconds: Schema.SchemaClass<number, number, never>;
|
|
70
70
|
asset: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
@@ -75,7 +75,7 @@ declare const PaymentRequirements_base: Schema.Class<PaymentRequirements, {
|
|
|
75
75
|
maxAmountRequired: Schema.refine<string, typeof Schema.Trimmed>;
|
|
76
76
|
resource: Schema.refine<string, typeof Schema.Trimmed>;
|
|
77
77
|
description: Schema.refine<string, typeof Schema.Trimmed>;
|
|
78
|
-
mimeType: Schema.
|
|
78
|
+
mimeType: Schema.SchemaClass<string, string, never>;
|
|
79
79
|
payTo: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
80
80
|
maxTimeoutSeconds: Schema.SchemaClass<number, number, never>;
|
|
81
81
|
asset: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
@@ -105,6 +105,62 @@ declare const PaymentRequirements_base: Schema.Class<PaymentRequirements, {
|
|
|
105
105
|
}, {}, {}>;
|
|
106
106
|
export declare class PaymentRequirements extends PaymentRequirements_base {
|
|
107
107
|
}
|
|
108
|
+
declare const ERC3009AuthorizationData_base: Schema.Class<ERC3009AuthorizationData, {
|
|
109
|
+
from: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
110
|
+
to: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
111
|
+
value: Schema.SchemaClass<string, string, never>;
|
|
112
|
+
validAfter: Schema.SchemaClass<string, string, never>;
|
|
113
|
+
validBefore: Schema.SchemaClass<string, string, never>;
|
|
114
|
+
nonce: Schema.SchemaClass<string, string, never>;
|
|
115
|
+
}, Schema.Struct.Encoded<{
|
|
116
|
+
from: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
117
|
+
to: Schema.refine<string, typeof Schema.NonEmptyTrimmedString>;
|
|
118
|
+
value: Schema.SchemaClass<string, string, never>;
|
|
119
|
+
validAfter: Schema.SchemaClass<string, string, never>;
|
|
120
|
+
validBefore: Schema.SchemaClass<string, string, never>;
|
|
121
|
+
nonce: Schema.SchemaClass<string, string, never>;
|
|
122
|
+
}>, never, {
|
|
123
|
+
readonly nonce: string;
|
|
124
|
+
} & {
|
|
125
|
+
readonly from: string;
|
|
126
|
+
} & {
|
|
127
|
+
readonly to: string;
|
|
128
|
+
} & {
|
|
129
|
+
readonly value: string;
|
|
130
|
+
} & {
|
|
131
|
+
readonly validAfter: string;
|
|
132
|
+
} & {
|
|
133
|
+
readonly validBefore: string;
|
|
134
|
+
}, {}, {}>;
|
|
135
|
+
export declare class ERC3009AuthorizationData extends ERC3009AuthorizationData_base {
|
|
136
|
+
}
|
|
137
|
+
declare const ServerAuthorizationData_base: Schema.Class<ServerAuthorizationData, {
|
|
138
|
+
authorizationData: Schema.SchemaClass<ERC3009AuthorizationData, {
|
|
139
|
+
readonly nonce: string;
|
|
140
|
+
readonly from: string;
|
|
141
|
+
readonly to: string;
|
|
142
|
+
readonly value: string;
|
|
143
|
+
readonly validAfter: string;
|
|
144
|
+
readonly validBefore: string;
|
|
145
|
+
}, never>;
|
|
146
|
+
serverSignature: Schema.SchemaClass<string, string, never>;
|
|
147
|
+
}, Schema.Struct.Encoded<{
|
|
148
|
+
authorizationData: Schema.SchemaClass<ERC3009AuthorizationData, {
|
|
149
|
+
readonly nonce: string;
|
|
150
|
+
readonly from: string;
|
|
151
|
+
readonly to: string;
|
|
152
|
+
readonly value: string;
|
|
153
|
+
readonly validAfter: string;
|
|
154
|
+
readonly validBefore: string;
|
|
155
|
+
}, never>;
|
|
156
|
+
serverSignature: Schema.SchemaClass<string, string, never>;
|
|
157
|
+
}>, never, {
|
|
158
|
+
readonly authorizationData: ERC3009AuthorizationData;
|
|
159
|
+
} & {
|
|
160
|
+
readonly serverSignature: string;
|
|
161
|
+
}, {}, {}>;
|
|
162
|
+
export declare class ServerAuthorizationData extends ServerAuthorizationData_base {
|
|
163
|
+
}
|
|
108
164
|
declare const AgentPaymentAuthRequest_base: Schema.Class<AgentPaymentAuthRequest, {
|
|
109
165
|
requirements: Schema.NonEmptyArray<typeof PaymentRequirements>;
|
|
110
166
|
context: Schema.optional<Schema.Struct<{
|
|
@@ -171,6 +227,31 @@ declare const AgentPaymentAuthResponse_base: Schema.Class<AgentPaymentAuthRespon
|
|
|
171
227
|
}, never>;
|
|
172
228
|
reason: Schema.refine<string, typeof Schema.Trimmed>;
|
|
173
229
|
}>>;
|
|
230
|
+
payment: Schema.NullOr<Schema.Struct<{
|
|
231
|
+
authorizationData: Schema.SchemaClass<ERC3009AuthorizationData, {
|
|
232
|
+
readonly nonce: string;
|
|
233
|
+
readonly from: string;
|
|
234
|
+
readonly to: string;
|
|
235
|
+
readonly value: string;
|
|
236
|
+
readonly validAfter: string;
|
|
237
|
+
readonly validBefore: string;
|
|
238
|
+
}, never>;
|
|
239
|
+
serverSignature: Schema.SchemaClass<string, string, never>;
|
|
240
|
+
requirement: Schema.SchemaClass<PaymentRequirements, {
|
|
241
|
+
readonly description: string;
|
|
242
|
+
readonly scheme: "exact";
|
|
243
|
+
readonly network: string;
|
|
244
|
+
readonly maxAmountRequired: string;
|
|
245
|
+
readonly resource: string;
|
|
246
|
+
readonly mimeType: string;
|
|
247
|
+
readonly payTo: string;
|
|
248
|
+
readonly maxTimeoutSeconds: number;
|
|
249
|
+
readonly asset: string;
|
|
250
|
+
readonly extra?: {
|
|
251
|
+
readonly [x: string]: unknown;
|
|
252
|
+
} | undefined;
|
|
253
|
+
}, never>;
|
|
254
|
+
}>>;
|
|
174
255
|
}, Schema.Struct.Encoded<{
|
|
175
256
|
authorized: Schema.Struct<{
|
|
176
257
|
recommended: Schema.NullOr<Schema.refine<number, typeof Schema.NonNegative>>;
|
|
@@ -212,6 +293,31 @@ declare const AgentPaymentAuthResponse_base: Schema.Class<AgentPaymentAuthRespon
|
|
|
212
293
|
}, never>;
|
|
213
294
|
reason: Schema.refine<string, typeof Schema.Trimmed>;
|
|
214
295
|
}>>;
|
|
296
|
+
payment: Schema.NullOr<Schema.Struct<{
|
|
297
|
+
authorizationData: Schema.SchemaClass<ERC3009AuthorizationData, {
|
|
298
|
+
readonly nonce: string;
|
|
299
|
+
readonly from: string;
|
|
300
|
+
readonly to: string;
|
|
301
|
+
readonly value: string;
|
|
302
|
+
readonly validAfter: string;
|
|
303
|
+
readonly validBefore: string;
|
|
304
|
+
}, never>;
|
|
305
|
+
serverSignature: Schema.SchemaClass<string, string, never>;
|
|
306
|
+
requirement: Schema.SchemaClass<PaymentRequirements, {
|
|
307
|
+
readonly description: string;
|
|
308
|
+
readonly scheme: "exact";
|
|
309
|
+
readonly network: string;
|
|
310
|
+
readonly maxAmountRequired: string;
|
|
311
|
+
readonly resource: string;
|
|
312
|
+
readonly mimeType: string;
|
|
313
|
+
readonly payTo: string;
|
|
314
|
+
readonly maxTimeoutSeconds: number;
|
|
315
|
+
readonly asset: string;
|
|
316
|
+
readonly extra?: {
|
|
317
|
+
readonly [x: string]: unknown;
|
|
318
|
+
} | undefined;
|
|
319
|
+
}, never>;
|
|
320
|
+
}>>;
|
|
215
321
|
}>, never, {
|
|
216
322
|
readonly authorized: {
|
|
217
323
|
readonly requirements: readonly {
|
|
@@ -228,6 +334,12 @@ declare const AgentPaymentAuthResponse_base: Schema.Class<AgentPaymentAuthRespon
|
|
|
228
334
|
readonly requirement: PaymentRequirements;
|
|
229
335
|
readonly reason: string;
|
|
230
336
|
}[];
|
|
337
|
+
} & {
|
|
338
|
+
readonly payment: {
|
|
339
|
+
readonly authorizationData: ERC3009AuthorizationData;
|
|
340
|
+
readonly serverSignature: string;
|
|
341
|
+
readonly requirement: PaymentRequirements;
|
|
342
|
+
} | null;
|
|
231
343
|
}, {}, {}>;
|
|
232
344
|
export declare class AgentPaymentAuthResponse extends AgentPaymentAuthResponse_base {
|
|
233
345
|
}
|
|
@@ -359,9 +471,9 @@ declare const AgentPaymentEventReport_base: Schema.Class<AgentPaymentEventReport
|
|
|
359
471
|
reason: Schema.refine<string, typeof Schema.Trimmed>;
|
|
360
472
|
}>]>;
|
|
361
473
|
}>, never, {
|
|
362
|
-
readonly id: string;
|
|
363
|
-
} & {
|
|
364
474
|
readonly payment: PaymentPayload;
|
|
475
|
+
} & {
|
|
476
|
+
readonly id: string;
|
|
365
477
|
} & {
|
|
366
478
|
readonly event: {
|
|
367
479
|
readonly type: "sending";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ampersend/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAK/B,eAAO,MAAM,MAAM,uCAAsC,CAAA;AACzD,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAA;AAEvC,eAAO,MAAM,OAAO,4DAWnB,CAAA;AACD,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,eAAO,MAAM,MAAM,oDAElB,CAAA;AACD,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAA;AAOvC,eAAO,MAAM,OAAO,oDAEnB,CAAA;AACD,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;;;;;;;;;;;;AAIzC,qBAAa,iBAAkB,SAAQ,sBAOrC;CAAG;;;;;;;;;;;;;;;;;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAapC;CAAG;;;;;;;;;;;;;;;;AAEL,qBAAa,iBAAkB,SAAQ,sBAerC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIL,qBAAa,mBAAoB,SAAQ,wBA+BvC;CAAG;;;;;;;;;;;;;;;;;;;;;;;;AAIL,qBAAa,uBAAwB,SAAQ,4BAa3C;CAAG
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ampersend/types.ts"],"names":[],"mappings":"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"}
|
package/dist/ampersend/types.js
CHANGED
|
@@ -73,8 +73,8 @@ export class PaymentRequirements extends Schema.Class("PaymentRequirements")({
|
|
|
73
73
|
description: Schema.NonEmptyTrimmedString.annotations({
|
|
74
74
|
description: "Human-readable payment description",
|
|
75
75
|
}),
|
|
76
|
-
mimeType: Schema.
|
|
77
|
-
description: "MIME type of the resource",
|
|
76
|
+
mimeType: Schema.String.annotations({
|
|
77
|
+
description: "MIME type of the resource (may be empty if not specified by the seller)",
|
|
78
78
|
}),
|
|
79
79
|
payTo: Address.annotations({
|
|
80
80
|
description: "Seller address to receive payment",
|
|
@@ -90,6 +90,37 @@ export class PaymentRequirements extends Schema.Class("PaymentRequirements")({
|
|
|
90
90
|
}),
|
|
91
91
|
}) {
|
|
92
92
|
}
|
|
93
|
+
// ============ ERC-3009 Authorization (for co-signed payments) ============
|
|
94
|
+
export class ERC3009AuthorizationData extends Schema.Class("ERC3009AuthorizationData")({
|
|
95
|
+
from: Address.annotations({
|
|
96
|
+
description: "Sender address (agent smart account)",
|
|
97
|
+
}),
|
|
98
|
+
to: Address.annotations({
|
|
99
|
+
description: "Recipient address (seller)",
|
|
100
|
+
}),
|
|
101
|
+
value: Schema.String.annotations({
|
|
102
|
+
description: "Transfer amount in wei (stringified bigint)",
|
|
103
|
+
}),
|
|
104
|
+
validAfter: Schema.String.annotations({
|
|
105
|
+
description: "Unix timestamp after which the authorization is valid (stringified bigint)",
|
|
106
|
+
}),
|
|
107
|
+
validBefore: Schema.String.annotations({
|
|
108
|
+
description: "Unix timestamp before which the authorization expires (stringified bigint)",
|
|
109
|
+
}),
|
|
110
|
+
nonce: Schema.String.annotations({
|
|
111
|
+
description: "Random 32-byte nonce as hex string for replay protection",
|
|
112
|
+
}),
|
|
113
|
+
}) {
|
|
114
|
+
}
|
|
115
|
+
export class ServerAuthorizationData extends Schema.Class("ServerAuthorizationData")({
|
|
116
|
+
authorizationData: ERC3009AuthorizationData.annotations({
|
|
117
|
+
description: "ERC-3009 TransferWithAuthorization data",
|
|
118
|
+
}),
|
|
119
|
+
serverSignature: Schema.String.annotations({
|
|
120
|
+
description: "Server's ECDSA signature (65 bytes as hex string)",
|
|
121
|
+
}),
|
|
122
|
+
}) {
|
|
123
|
+
}
|
|
93
124
|
// ============ Agent Payment Authorization ============
|
|
94
125
|
export class AgentPaymentAuthRequest extends Schema.Class("AgentPaymentAuthRequest")({
|
|
95
126
|
requirements: Schema.NonEmptyArray(PaymentRequirements).annotations({
|
|
@@ -139,6 +170,19 @@ export class AgentPaymentAuthResponse extends Schema.Class("AgentPaymentAuthResp
|
|
|
139
170
|
})).annotations({
|
|
140
171
|
description: "List of rejected payment requirements with reasons",
|
|
141
172
|
}),
|
|
173
|
+
payment: Schema.NullOr(Schema.Struct({
|
|
174
|
+
authorizationData: ERC3009AuthorizationData.annotations({
|
|
175
|
+
description: "Server-generated ERC-3009 authorization data",
|
|
176
|
+
}),
|
|
177
|
+
serverSignature: Schema.String.annotations({
|
|
178
|
+
description: "Server's co-signature (65 bytes as hex string)",
|
|
179
|
+
}),
|
|
180
|
+
requirement: PaymentRequirements.annotations({
|
|
181
|
+
description: "The payment requirement this authorization is for",
|
|
182
|
+
}),
|
|
183
|
+
})).annotations({
|
|
184
|
+
description: "Server-generated payment data and co-signature. Present only for co-signed keys when authorization passes. Null for full-access keys or when authorization fails.",
|
|
185
|
+
}),
|
|
142
186
|
}) {
|
|
143
187
|
}
|
|
144
188
|
// ============ Payment Event Types ============
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ampersend/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ampersend/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,4 +7,9 @@
|
|
|
7
7
|
* @see https://github.com/rhinestonewtf/sdk/blob/main/src/modules/validators/core.ts
|
|
8
8
|
*/
|
|
9
9
|
export declare const OWNABLE_VALIDATOR: "0x000000000013fdB5234E4E3162a810F54d9f7E98";
|
|
10
|
+
/**
|
|
11
|
+
* CoSignerValidator address - ERC-7579 validator requiring dual ECDSA signatures
|
|
12
|
+
* Deployed via CREATE2 (same address on all chains)
|
|
13
|
+
*/
|
|
14
|
+
export declare const COSIGNER_VALIDATOR: "0x375992f0Eff108D87eAcD355B610bE2263B49bF8";
|
|
10
15
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/smart-account/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAG,4CAAqD,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/smart-account/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAG,4CAAqD,CAAA;AAEtF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAG,4CAAqD,CAAA"}
|
|
@@ -7,4 +7,9 @@
|
|
|
7
7
|
* @see https://github.com/rhinestonewtf/sdk/blob/main/src/modules/validators/core.ts
|
|
8
8
|
*/
|
|
9
9
|
export const OWNABLE_VALIDATOR = "0x000000000013fdB5234E4E3162a810F54d9f7E98";
|
|
10
|
+
/**
|
|
11
|
+
* CoSignerValidator address - ERC-7579 validator requiring dual ECDSA signatures
|
|
12
|
+
* Deployed via CREATE2 (same address on all chains)
|
|
13
|
+
*/
|
|
14
|
+
export const COSIGNER_VALIDATOR = "0x375992f0Eff108D87eAcD355B610bE2263B49bF8";
|
|
10
15
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/smart-account/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,4CAAqD,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/smart-account/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,4CAAqD,CAAA;AAEtF;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,4CAAqD,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared EIP-712 type definitions for ERC-3009 TransferWithAuthorization
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* ERC-3009 TransferWithAuthorization message type
|
|
6
|
+
* Used by USDC and other ERC-3009 compliant tokens for gasless transfers
|
|
7
|
+
*/
|
|
8
|
+
export declare const TRANSFER_WITH_AUTHORIZATION_TYPE: readonly [{
|
|
9
|
+
readonly name: "from";
|
|
10
|
+
readonly type: "address";
|
|
11
|
+
}, {
|
|
12
|
+
readonly name: "to";
|
|
13
|
+
readonly type: "address";
|
|
14
|
+
}, {
|
|
15
|
+
readonly name: "value";
|
|
16
|
+
readonly type: "uint256";
|
|
17
|
+
}, {
|
|
18
|
+
readonly name: "validAfter";
|
|
19
|
+
readonly type: "uint256";
|
|
20
|
+
}, {
|
|
21
|
+
readonly name: "validBefore";
|
|
22
|
+
readonly type: "uint256";
|
|
23
|
+
}, {
|
|
24
|
+
readonly name: "nonce";
|
|
25
|
+
readonly type: "bytes32";
|
|
26
|
+
}];
|
|
27
|
+
//# sourceMappingURL=eip712-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eip712-types.d.ts","sourceRoot":"","sources":["../../src/smart-account/eip712-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;EAOnC,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared EIP-712 type definitions for ERC-3009 TransferWithAuthorization
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* ERC-3009 TransferWithAuthorization message type
|
|
6
|
+
* Used by USDC and other ERC-3009 compliant tokens for gasless transfers
|
|
7
|
+
*/
|
|
8
|
+
export const TRANSFER_WITH_AUTHORIZATION_TYPE = [
|
|
9
|
+
{ name: "from", type: "address" },
|
|
10
|
+
{ name: "to", type: "address" },
|
|
11
|
+
{ name: "value", type: "uint256" },
|
|
12
|
+
{ name: "validAfter", type: "uint256" },
|
|
13
|
+
{ name: "validBefore", type: "uint256" },
|
|
14
|
+
{ name: "nonce", type: "bytes32" },
|
|
15
|
+
];
|
|
16
|
+
//# sourceMappingURL=eip712-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eip712-types.js","sourceRoot":"","sources":["../../src/smart-account/eip712-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;IACjC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;IAC/B,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;IAClC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;IACvC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;IACxC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;CAC1B,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export { OWNABLE_VALIDATOR } from "./constants.ts";
|
|
1
|
+
export { COSIGNER_VALIDATOR, OWNABLE_VALIDATOR } from "./constants.ts";
|
|
2
|
+
export { TRANSFER_WITH_AUTHORIZATION_TYPE } from "./eip712-types.ts";
|
|
2
3
|
export { signERC3009Authorization, signSmartAccountTypedData } from "./signing.ts";
|
|
3
4
|
export type { ERC3009AuthorizationData } from "./types.ts";
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/smart-account/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/smart-account/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAA;AACpE,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AAClF,YAAY,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export { OWNABLE_VALIDATOR } from "./constants.js";
|
|
1
|
+
export { COSIGNER_VALIDATOR, OWNABLE_VALIDATOR } from "./constants.js";
|
|
2
|
+
export { TRANSFER_WITH_AUTHORIZATION_TYPE } from "./eip712-types.js";
|
|
2
3
|
export { signERC3009Authorization, signSmartAccountTypedData } from "./signing.js";
|
|
3
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/smart-account/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/smart-account/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAA;AACpE,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signing.d.ts","sourceRoot":"","sources":["../../src/smart-account/signing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"signing.d.ts","sourceRoot":"","sources":["../../src/smart-account/signing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAA;AAIxE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAE1D;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,KAAK,CAAC,SAAS,SAAS,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,WAAW,SAAS,MAAM,SAAS,GAAG,cAAc,GAAG,MAAM,SAAS,EAEtE,oBAAoB,EAAE,GAAG,EACzB,mBAAmB,EAAE,OAAO,EAC5B,MAAM,EAAE,mBAAmB,CAAC,SAAS,EAAE,WAAW,CAAC,EACnD,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC,GAAG,CAAC,CAqBd;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,wBAAwB,CAC5C,oBAAoB,EAAE,GAAG,EACzB,mBAAmB,EAAE,OAAO,EAC5B,QAAQ,EAAE,wBAAwB,EAClC,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,OAAO,EACzB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,GAAG,CAAC,CA2Bd"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { encode1271Signature, getAccount, getOwnableValidatorSignature } from "@rhinestone/module-sdk";
|
|
2
2
|
import { privateKeyToAccount } from "viem/accounts";
|
|
3
|
+
import { TRANSFER_WITH_AUTHORIZATION_TYPE } from "./eip712-types.js";
|
|
3
4
|
/**
|
|
4
5
|
* Generic smart account typed data signing with OwnableValidator
|
|
5
6
|
*
|
|
@@ -54,14 +55,7 @@ export async function signERC3009Authorization(sessionKeyPrivateKey, smartAccoun
|
|
|
54
55
|
verifyingContract: tokenAddress,
|
|
55
56
|
},
|
|
56
57
|
types: {
|
|
57
|
-
TransferWithAuthorization:
|
|
58
|
-
{ name: "from", type: "address" },
|
|
59
|
-
{ name: "to", type: "address" },
|
|
60
|
-
{ name: "value", type: "uint256" },
|
|
61
|
-
{ name: "validAfter", type: "uint256" },
|
|
62
|
-
{ name: "validBefore", type: "uint256" },
|
|
63
|
-
{ name: "nonce", type: "bytes32" },
|
|
64
|
-
],
|
|
58
|
+
TransferWithAuthorization: TRANSFER_WITH_AUTHORIZATION_TYPE,
|
|
65
59
|
},
|
|
66
60
|
primaryType: "TransferWithAuthorization",
|
|
67
61
|
message: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signing.js","sourceRoot":"","sources":["../../src/smart-account/signing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAA;AAEtG,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"signing.js","sourceRoot":"","sources":["../../src/smart-account/signing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAA;AAEtG,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,EAAE,gCAAgC,EAAE,MAAM,mBAAmB,CAAA;AAGpE;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAI7C,oBAAyB,EACzB,mBAA4B,EAC5B,MAAmD,EACnD,gBAAyB;IAEzB,yCAAyC;IACzC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,oBAAoB,CAAC,CAAA;IAEnE,+CAA+C;IAC/C,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAElE,sEAAsE;IACtE,MAAM,kBAAkB,GAAG,4BAA4B,CAAC;QACtD,UAAU,EAAE,CAAC,YAAY,CAAC;KAC3B,CAAC,CAAA;IAEF,qDAAqD;IACrD,OAAO,mBAAmB,CAAC;QACzB,OAAO,EAAE,UAAU,CAAC;YAClB,OAAO,EAAE,mBAAmB;YAC5B,IAAI,EAAE,MAAM;SACb,CAAC;QACF,SAAS,EAAE,gBAAgB;QAC3B,SAAS,EAAE,kBAAkB;KAC9B,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,oBAAyB,EACzB,mBAA4B,EAC5B,QAAkC,EAClC,YAAqB,EACrB,OAAe,EACf,gBAAyB,EACzB,UAAkB,EAClB,aAAqB;IAErB,4DAA4D;IAC5D,OAAO,MAAM,yBAAyB,CACpC,oBAAoB,EACpB,mBAAmB,EACnB;QACE,MAAM,EAAE;YACN,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,aAAa;YACtB,OAAO;YACP,iBAAiB,EAAE,YAAY;SAChC;QACD,KAAK,EAAE;YACL,yBAAyB,EAAE,gCAAgC;SAC5D;QACD,WAAW,EAAE,2BAA2B;QACxC,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB;KACF,EACD,gBAAgB,CACjB,CAAA;AACH,CAAC"}
|
package/dist/x402/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export type { Authorization, PaymentContext, PaymentStatus, X402Treasurer } from "./treasurer.ts";
|
|
2
|
+
export type { ERC3009AuthorizationData, ServerAuthorizationData } from "./types.ts";
|
|
2
3
|
export { WalletError } from "./wallet.ts";
|
|
3
4
|
export type { X402Wallet } from "./wallet.ts";
|
|
4
5
|
export { AccountWallet, SmartAccountWallet, createWalletFromConfig } from "./wallets/index.ts";
|
package/dist/x402/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/x402/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAG7C,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC9F,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAGrH,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/x402/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACjG,YAAY,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAG7C,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC9F,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAGrH,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA"}
|
package/dist/x402/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/x402/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/x402/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAGzC,yBAAyB;AACzB,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAG9F,eAAe;AACf,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared types for the x402 payment layer.
|
|
3
|
+
*
|
|
4
|
+
* These are plain interfaces used by the x402 wallet abstraction.
|
|
5
|
+
* The ampersend-specific layer (ampersend/types.ts) defines Effect Schema
|
|
6
|
+
* classes that are structurally compatible with these interfaces.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* ERC-3009 TransferWithAuthorization data fields.
|
|
10
|
+
* Used by wallets to construct EIP-712 typed data for signing.
|
|
11
|
+
*/
|
|
12
|
+
export interface ERC3009AuthorizationData {
|
|
13
|
+
/** Sender address (agent smart account) */
|
|
14
|
+
from: string;
|
|
15
|
+
/** Recipient address (seller) */
|
|
16
|
+
to: string;
|
|
17
|
+
/** Transfer amount in wei (stringified bigint) */
|
|
18
|
+
value: string;
|
|
19
|
+
/** Unix timestamp after which the authorization is valid (stringified bigint) */
|
|
20
|
+
validAfter: string;
|
|
21
|
+
/** Unix timestamp before which the authorization expires (stringified bigint) */
|
|
22
|
+
validBefore: string;
|
|
23
|
+
/** Random 32-byte nonce as hex string for replay protection */
|
|
24
|
+
nonce: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Server co-signature data for co-signed agent keys.
|
|
28
|
+
* Provided by the Ampersend API when authorizing payments for co-signed keys.
|
|
29
|
+
*/
|
|
30
|
+
export interface ServerAuthorizationData {
|
|
31
|
+
/** ERC-3009 TransferWithAuthorization data */
|
|
32
|
+
authorizationData: ERC3009AuthorizationData;
|
|
33
|
+
/** Server's ECDSA signature (65 bytes as hex string) */
|
|
34
|
+
serverSignature: string;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/x402/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAA;IACZ,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAA;IACb,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAA;IAClB,iFAAiF;IACjF,WAAW,EAAE,MAAM,CAAA;IACnB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,8CAA8C;IAC9C,iBAAiB,EAAE,wBAAwB,CAAA;IAC3C,wDAAwD;IACxD,eAAe,EAAE,MAAM,CAAA;CACxB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared types for the x402 payment layer.
|
|
3
|
+
*
|
|
4
|
+
* These are plain interfaces used by the x402 wallet abstraction.
|
|
5
|
+
* The ampersend-specific layer (ampersend/types.ts) defines Effect Schema
|
|
6
|
+
* classes that are structurally compatible with these interfaces.
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/x402/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
package/dist/x402/wallet.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PaymentPayload, PaymentRequirements } from "x402/types";
|
|
2
|
+
import type { ServerAuthorizationData } from "./types.ts";
|
|
2
3
|
/**
|
|
3
4
|
* Error thrown when wallet cannot create a payment
|
|
4
5
|
*/
|
|
@@ -33,9 +34,10 @@ export interface X402Wallet {
|
|
|
33
34
|
* Creates a payment payload from requirements.
|
|
34
35
|
*
|
|
35
36
|
* @param requirements - Payment requirements from seller
|
|
37
|
+
* @param serverAuthorization - Optional server co-signature data (for co-signed smart account keys)
|
|
36
38
|
* @returns Signed payment payload ready for submission
|
|
37
39
|
* @throws {WalletError} If unable to create payment (unsupported scheme, insufficient funds, etc.)
|
|
38
40
|
*/
|
|
39
|
-
createPayment(requirements: PaymentRequirements): Promise<PaymentPayload>;
|
|
41
|
+
createPayment(requirements: PaymentRequirements, serverAuthorization?: ServerAuthorizationData): Promise<PaymentPayload>;
|
|
40
42
|
}
|
|
41
43
|
//# sourceMappingURL=wallet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/x402/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAErE;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;IAG3B,KAAK,CAAC,EAAE,KAAK;gBADpB,OAAO,EAAE,MAAM,EACR,KAAK,CAAC,EAAE,KAAK,YAAA;CAKvB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,UAAU;IACzB
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/x402/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAErE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAEzD;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;IAG3B,KAAK,CAAC,EAAE,KAAK;gBADpB,OAAO,EAAE,MAAM,EACR,KAAK,CAAC,EAAE,KAAK,YAAA;CAKvB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;OAOG;IACH,aAAa,CACX,YAAY,EAAE,mBAAmB,EACjC,mBAAmB,CAAC,EAAE,uBAAuB,GAC5C,OAAO,CAAC,cAAc,CAAC,CAAA;CAC3B"}
|
package/dist/x402/wallet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/x402/wallet.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/x402/wallet.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IAG3B;IAFT,YACE,OAAe,EACR,KAAa;QAEpB,KAAK,CAAC,OAAO,CAAC,CAAA;QAFP,UAAK,GAAL,KAAK,CAAQ;QAGpB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAA;IAC3B,CAAC;CACF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Hex, LocalAccount } from "viem";
|
|
2
2
|
import type { PaymentPayload, PaymentRequirements } from "x402/types";
|
|
3
|
+
import type { ServerAuthorizationData } from "../../../ampersend/types.ts";
|
|
3
4
|
import { type X402Wallet } from "../../wallet.ts";
|
|
4
5
|
/**
|
|
5
6
|
* AccountWallet - EOA (Externally Owned Account) wallet implementation
|
|
@@ -21,7 +22,7 @@ import { type X402Wallet } from "../../wallet.ts";
|
|
|
21
22
|
*/
|
|
22
23
|
export declare class AccountWallet implements X402Wallet {
|
|
23
24
|
private account;
|
|
24
|
-
constructor(account:
|
|
25
|
+
constructor(account: LocalAccount);
|
|
25
26
|
/**
|
|
26
27
|
* Creates an AccountWallet from a private key
|
|
27
28
|
*/
|
|
@@ -29,8 +30,9 @@ export declare class AccountWallet implements X402Wallet {
|
|
|
29
30
|
/**
|
|
30
31
|
* Creates a payment payload from requirements.
|
|
31
32
|
* Only supports "exact" payment scheme.
|
|
33
|
+
* Note: serverAuthorization parameter is ignored for EOA wallets (only used by SmartAccountWallet)
|
|
32
34
|
*/
|
|
33
|
-
createPayment(requirements: PaymentRequirements): Promise<PaymentPayload>;
|
|
35
|
+
createPayment(requirements: PaymentRequirements, _serverAuthorization?: ServerAuthorizationData): Promise<PaymentPayload>;
|
|
34
36
|
/**
|
|
35
37
|
* Returns the account address
|
|
36
38
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/x402/wallets/account/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/x402/wallets/account/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAG7C,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAErE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAC1E,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE9D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAc,YAAW,UAAU;IAC9C,OAAO,CAAC,OAAO,CAAc;gBAEjB,OAAO,EAAE,YAAY;IAIjC;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,GAAG,GAAG,aAAa;IAIrD;;;;OAIG;IACG,aAAa,CACjB,YAAY,EAAE,mBAAmB,EACjC,oBAAoB,CAAC,EAAE,uBAAuB,GAC7C,OAAO,CAAC,cAAc,CAAC;IAsB1B;;OAEG;IACH,IAAI,OAAO,IAAI,GAAG,CAEjB;CACF"}
|
|
@@ -33,8 +33,9 @@ export class AccountWallet {
|
|
|
33
33
|
/**
|
|
34
34
|
* Creates a payment payload from requirements.
|
|
35
35
|
* Only supports "exact" payment scheme.
|
|
36
|
+
* Note: serverAuthorization parameter is ignored for EOA wallets (only used by SmartAccountWallet)
|
|
36
37
|
*/
|
|
37
|
-
async createPayment(requirements) {
|
|
38
|
+
async createPayment(requirements, _serverAuthorization) {
|
|
38
39
|
if (requirements.scheme !== "exact") {
|
|
39
40
|
throw new WalletError(`Unsupported payment scheme: ${requirements.scheme}. AccountWallet only supports "exact".`);
|
|
40
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../../src/x402/wallets/account/wallet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../../src/x402/wallets/account/wallet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAIjD,OAAO,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAA;AAE9D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,aAAa;IAChB,OAAO,CAAc;IAE7B,YAAY,OAAqB;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,UAAe;QACnC,OAAO,IAAI,aAAa,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CACjB,YAAiC,EACjC,oBAA8C;QAE9C,IAAI,YAAY,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,WAAW,CAAC,+BAA+B,YAAY,CAAC,MAAM,wCAAwC,CAAC,CAAA;QACnH,CAAC;QAED,IAAI,CAAC;YACH,kDAAkD;YAClD,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,YAAY,CAAC,CAAA;YAE9E,iDAAiD;YACjD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;YACtE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAmB,CAAA;YAErD,OAAO,OAAO,CAAA;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,WAAW,CACnB,6BAA6B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACrF,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAA;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;IAC7B,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/x402/wallets/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAI9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAEvF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,KAAK,CAAA;IACX,UAAU,EAAE,GAAG,CAAA;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IACrB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,oBAAoB,EAAE,GAAG,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/x402/wallets/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAI9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAEvF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,KAAK,CAAA;IACX,UAAU,EAAE,GAAG,CAAA;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,eAAe,CAAA;IACrB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,oBAAoB,EAAE,GAAG,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,OAAO,CAAA;IACzB,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,wBAAwB,CAAA;AAErE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,YAAY,GAAG,UAAU,CAYvE"}
|
|
@@ -18,6 +18,7 @@ export function createWalletFromConfig(config) {
|
|
|
18
18
|
sessionKeyPrivateKey: config.sessionKeyPrivateKey,
|
|
19
19
|
chainId: config.chainId,
|
|
20
20
|
validatorAddress: config.validatorAddress,
|
|
21
|
+
...(config.coSignerValidatorAddress != null && { coSignerValidatorAddress: config.coSignerValidatorAddress }),
|
|
21
22
|
});
|
|
22
23
|
}
|
|
23
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/x402/wallets/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAA2B,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/x402/wallets/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAA2B,MAAM,2BAA2B,CAAA;AA2BvF;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAoB;IACzD,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC1B,OAAO,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,IAAI,kBAAkB,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;QAC/C,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;QACjD,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,GAAG,CAAC,MAAM,CAAC,wBAAwB,IAAI,IAAI,IAAI,EAAE,wBAAwB,EAAE,MAAM,CAAC,wBAAwB,EAAE,CAAC;KAC9G,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { type Address, type Hex, type TypedDataDefinition } from "viem";
|
|
2
|
+
import type { PaymentPayload, PaymentRequirements } from "x402/types";
|
|
3
|
+
import type { ServerAuthorizationData } from "../../types.ts";
|
|
4
|
+
/**
|
|
5
|
+
* Configuration for creating a co-signed payment
|
|
6
|
+
*/
|
|
7
|
+
export interface CoSignedPaymentConfig {
|
|
8
|
+
/** Smart account address (payment sender) */
|
|
9
|
+
smartAccountAddress: Address;
|
|
10
|
+
/** Session key private key for signing */
|
|
11
|
+
sessionKeyPrivateKey: Hex;
|
|
12
|
+
/** Chain ID for the blockchain network */
|
|
13
|
+
chainId: number;
|
|
14
|
+
/** CoSignerValidator address */
|
|
15
|
+
coSignerValidatorAddress: Address;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Encode a co-signed ERC-1271 signature
|
|
19
|
+
*
|
|
20
|
+
* Combines agent signature + server signature according to CoSignerValidator format:
|
|
21
|
+
* 1. Sign typed data with agent key (raw ECDSA)
|
|
22
|
+
* 2. Combine: abi.encode(agentSig, serverSig)
|
|
23
|
+
* 3. Wrap for ERC-1271: encodePacked(validatorAddress, combined)
|
|
24
|
+
*
|
|
25
|
+
* @param agentPrivateKey - Agent's session key private key
|
|
26
|
+
* @param typedDataParams - EIP-712 typed data to sign
|
|
27
|
+
* @param serverSignature - Server's ECDSA signature (65 bytes as hex)
|
|
28
|
+
* @param coSignerValidatorAddress - CoSignerValidator contract address
|
|
29
|
+
* @returns ERC-1271 formatted signature
|
|
30
|
+
*/
|
|
31
|
+
export declare function encodeCoSignedERC1271Signature(agentPrivateKey: Hex, typedDataParams: TypedDataDefinition, serverSignature: Hex, coSignerValidatorAddress: Address): Promise<Hex>;
|
|
32
|
+
/**
|
|
33
|
+
* Creates a payment payload using server co-signature
|
|
34
|
+
*
|
|
35
|
+
* This is used for co-signed agent keys where the server provides the ERC-3009
|
|
36
|
+
* authorization data and co-signature. The agent key adds its signature and
|
|
37
|
+
* combines them for ERC-1271 validation via CoSignerValidator.
|
|
38
|
+
*
|
|
39
|
+
* @param requirements - Payment requirements from the x402 server
|
|
40
|
+
* @param config - Configuration for the smart account wallet
|
|
41
|
+
* @param serverAuthorization - Server-provided authorization data and co-signature
|
|
42
|
+
* @returns Payment payload ready to send to x402 server
|
|
43
|
+
* @throws Error if requirements are invalid or signing fails
|
|
44
|
+
*/
|
|
45
|
+
export declare function createCoSignedPayment(requirements: PaymentRequirements, config: CoSignedPaymentConfig, serverAuthorization: ServerAuthorizationData): Promise<PaymentPayload>;
|
|
46
|
+
//# sourceMappingURL=cosigned.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cosigned.d.ts","sourceRoot":"","sources":["../../../../src/x402/wallets/smart-account/cosigned.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,mBAAmB,EAAE,MAAM,MAAM,CAAA;AAE1G,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGrE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAE7D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,6CAA6C;IAC7C,mBAAmB,EAAE,OAAO,CAAA;IAC5B,0CAA0C;IAC1C,oBAAoB,EAAE,GAAG,CAAA;IACzB,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAA;IACf,gCAAgC;IAChC,wBAAwB,EAAE,OAAO,CAAA;CAClC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,8BAA8B,CAClD,eAAe,EAAE,GAAG,EACpB,eAAe,EAAE,mBAAmB,EACpC,eAAe,EAAE,GAAG,EACpB,wBAAwB,EAAE,OAAO,GAChC,OAAO,CAAC,GAAG,CAAC,CAad;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,CACzC,YAAY,EAAE,mBAAmB,EACjC,MAAM,EAAE,qBAAqB,EAC7B,mBAAmB,EAAE,uBAAuB,GAC3C,OAAO,CAAC,cAAc,CAAC,CA4DzB"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { encodeAbiParameters, encodePacked } from "viem";
|
|
2
|
+
import { privateKeyToAccount } from "viem/accounts";
|
|
3
|
+
import { TRANSFER_WITH_AUTHORIZATION_TYPE } from "../../../smart-account/eip712-types.js";
|
|
4
|
+
/**
|
|
5
|
+
* Encode a co-signed ERC-1271 signature
|
|
6
|
+
*
|
|
7
|
+
* Combines agent signature + server signature according to CoSignerValidator format:
|
|
8
|
+
* 1. Sign typed data with agent key (raw ECDSA)
|
|
9
|
+
* 2. Combine: abi.encode(agentSig, serverSig)
|
|
10
|
+
* 3. Wrap for ERC-1271: encodePacked(validatorAddress, combined)
|
|
11
|
+
*
|
|
12
|
+
* @param agentPrivateKey - Agent's session key private key
|
|
13
|
+
* @param typedDataParams - EIP-712 typed data to sign
|
|
14
|
+
* @param serverSignature - Server's ECDSA signature (65 bytes as hex)
|
|
15
|
+
* @param coSignerValidatorAddress - CoSignerValidator contract address
|
|
16
|
+
* @returns ERC-1271 formatted signature
|
|
17
|
+
*/
|
|
18
|
+
export async function encodeCoSignedERC1271Signature(agentPrivateKey, typedDataParams, serverSignature, coSignerValidatorAddress) {
|
|
19
|
+
// 1. Sign with agent key
|
|
20
|
+
const agentAccount = privateKeyToAccount(agentPrivateKey);
|
|
21
|
+
const agentSignature = await agentAccount.signTypedData(typedDataParams);
|
|
22
|
+
// 2. Combine signatures: abi.encode(bytes agentSig, bytes serverSig)
|
|
23
|
+
const combinedSignature = encodeAbiParameters([{ type: "bytes" }, { type: "bytes" }], [agentSignature, serverSignature]);
|
|
24
|
+
// 3. Encode for ERC-1271: encodePacked(address validator, bytes signature)
|
|
25
|
+
return encodePacked(["address", "bytes"], [coSignerValidatorAddress, combinedSignature]);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Creates a payment payload using server co-signature
|
|
29
|
+
*
|
|
30
|
+
* This is used for co-signed agent keys where the server provides the ERC-3009
|
|
31
|
+
* authorization data and co-signature. The agent key adds its signature and
|
|
32
|
+
* combines them for ERC-1271 validation via CoSignerValidator.
|
|
33
|
+
*
|
|
34
|
+
* @param requirements - Payment requirements from the x402 server
|
|
35
|
+
* @param config - Configuration for the smart account wallet
|
|
36
|
+
* @param serverAuthorization - Server-provided authorization data and co-signature
|
|
37
|
+
* @returns Payment payload ready to send to x402 server
|
|
38
|
+
* @throws Error if requirements are invalid or signing fails
|
|
39
|
+
*/
|
|
40
|
+
export async function createCoSignedPayment(requirements, config, serverAuthorization) {
|
|
41
|
+
const { authorizationData, serverSignature } = serverAuthorization;
|
|
42
|
+
// Get domain params from requirements.extra
|
|
43
|
+
const domainName = requirements.extra?.name;
|
|
44
|
+
const domainVersion = requirements.extra?.version;
|
|
45
|
+
if (!domainName || !domainVersion) {
|
|
46
|
+
throw new Error("requirements.extra must contain 'name' and 'version' for EIP-712 domain");
|
|
47
|
+
}
|
|
48
|
+
// Construct EIP-712 typed data from server-provided authorization data
|
|
49
|
+
const typedData = {
|
|
50
|
+
domain: {
|
|
51
|
+
name: domainName,
|
|
52
|
+
version: domainVersion,
|
|
53
|
+
chainId: config.chainId,
|
|
54
|
+
verifyingContract: requirements.asset,
|
|
55
|
+
},
|
|
56
|
+
types: {
|
|
57
|
+
TransferWithAuthorization: TRANSFER_WITH_AUTHORIZATION_TYPE,
|
|
58
|
+
},
|
|
59
|
+
primaryType: "TransferWithAuthorization",
|
|
60
|
+
message: {
|
|
61
|
+
from: authorizationData.from,
|
|
62
|
+
to: authorizationData.to,
|
|
63
|
+
value: BigInt(authorizationData.value),
|
|
64
|
+
validAfter: BigInt(authorizationData.validAfter),
|
|
65
|
+
validBefore: BigInt(authorizationData.validBefore),
|
|
66
|
+
nonce: authorizationData.nonce,
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
// Encode co-signed signature
|
|
70
|
+
const signature = await encodeCoSignedERC1271Signature(config.sessionKeyPrivateKey, typedData, serverSignature, config.coSignerValidatorAddress);
|
|
71
|
+
// Construct payment payload matching x402 exact scheme format
|
|
72
|
+
const paymentPayload = {
|
|
73
|
+
x402Version: 1,
|
|
74
|
+
scheme: "exact",
|
|
75
|
+
network: requirements.network,
|
|
76
|
+
payload: {
|
|
77
|
+
signature: signature,
|
|
78
|
+
authorization: {
|
|
79
|
+
from: authorizationData.from,
|
|
80
|
+
to: authorizationData.to,
|
|
81
|
+
value: authorizationData.value,
|
|
82
|
+
validAfter: authorizationData.validAfter,
|
|
83
|
+
validBefore: authorizationData.validBefore,
|
|
84
|
+
nonce: authorizationData.nonce,
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
return paymentPayload;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=cosigned.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cosigned.js","sourceRoot":"","sources":["../../../../src/x402/wallets/smart-account/cosigned.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type Address, type Hex } from "viem";
|
|
2
2
|
import type { PaymentPayload, PaymentRequirements } from "x402/types";
|
|
3
|
+
import type { ServerAuthorizationData } from "../../types.ts";
|
|
3
4
|
import { type X402Wallet } from "../../wallet.ts";
|
|
4
5
|
/**
|
|
5
6
|
* Configuration for SmartAccountWallet
|
|
@@ -13,6 +14,8 @@ export interface SmartAccountConfig {
|
|
|
13
14
|
chainId: number;
|
|
14
15
|
/** OwnableValidator address (defaults to standard OwnableValidator) */
|
|
15
16
|
validatorAddress?: Address;
|
|
17
|
+
/** CoSignerValidator address (defaults to standard CoSignerValidator) */
|
|
18
|
+
coSignerValidatorAddress?: Address;
|
|
16
19
|
}
|
|
17
20
|
/**
|
|
18
21
|
* SmartAccountWallet - Smart account wallet implementation using ERC-1271
|
|
@@ -39,8 +42,12 @@ export declare class SmartAccountWallet implements X402Wallet {
|
|
|
39
42
|
/**
|
|
40
43
|
* Creates a payment payload from requirements.
|
|
41
44
|
* Only supports "exact" payment scheme with ERC-3009 authorizations.
|
|
45
|
+
*
|
|
46
|
+
* @param requirements Payment requirements from x402
|
|
47
|
+
* @param serverAuthorization Optional server co-signature data for co-signed keys
|
|
48
|
+
* @returns Payment payload ready to submit
|
|
42
49
|
*/
|
|
43
|
-
createPayment(requirements: PaymentRequirements): Promise<PaymentPayload>;
|
|
50
|
+
createPayment(requirements: PaymentRequirements, serverAuthorization?: ServerAuthorizationData): Promise<PaymentPayload>;
|
|
44
51
|
/**
|
|
45
52
|
* Returns the smart account address
|
|
46
53
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/x402/wallets/smart-account/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAA;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGrE,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/x402/wallets/smart-account/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAA;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAGrE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAI9D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4BAA4B;IAC5B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,0CAA0C;IAC1C,oBAAoB,EAAE,GAAG,CAAA;IACzB,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAA;IACf,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,yEAAyE;IACzE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuF;gBAElG,MAAM,EAAE,kBAAkB;IAStC;;;;;;;OAOG;IACG,aAAa,CACjB,YAAY,EAAE,mBAAmB,EACjC,mBAAmB,CAAC,EAAE,uBAAuB,GAC5C,OAAO,CAAC,cAAc,CAAC;IAuB1B;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import {} from "viem";
|
|
2
|
-
import { OWNABLE_VALIDATOR } from "../../../smart-account/constants.js";
|
|
2
|
+
import { COSIGNER_VALIDATOR, OWNABLE_VALIDATOR } from "../../../smart-account/constants.js";
|
|
3
3
|
import { WalletError } from "../../wallet.js";
|
|
4
|
+
import { createCoSignedPayment } from "./cosigned.js";
|
|
4
5
|
import { createExactPayment } from "./exact.js";
|
|
5
6
|
/**
|
|
6
7
|
* SmartAccountWallet - Smart account wallet implementation using ERC-1271
|
|
@@ -24,21 +25,31 @@ import { createExactPayment } from "./exact.js";
|
|
|
24
25
|
export class SmartAccountWallet {
|
|
25
26
|
config;
|
|
26
27
|
constructor(config) {
|
|
27
|
-
// Apply default validator
|
|
28
|
+
// Apply default validator addresses if not provided
|
|
28
29
|
this.config = {
|
|
29
30
|
...config,
|
|
30
31
|
validatorAddress: config.validatorAddress ?? OWNABLE_VALIDATOR,
|
|
32
|
+
coSignerValidatorAddress: config.coSignerValidatorAddress ?? COSIGNER_VALIDATOR,
|
|
31
33
|
};
|
|
32
34
|
}
|
|
33
35
|
/**
|
|
34
36
|
* Creates a payment payload from requirements.
|
|
35
37
|
* Only supports "exact" payment scheme with ERC-3009 authorizations.
|
|
38
|
+
*
|
|
39
|
+
* @param requirements Payment requirements from x402
|
|
40
|
+
* @param serverAuthorization Optional server co-signature data for co-signed keys
|
|
41
|
+
* @returns Payment payload ready to submit
|
|
36
42
|
*/
|
|
37
|
-
async createPayment(requirements) {
|
|
43
|
+
async createPayment(requirements, serverAuthorization) {
|
|
38
44
|
if (requirements.scheme !== "exact") {
|
|
39
45
|
throw new WalletError(`Unsupported payment scheme: ${requirements.scheme}. SmartAccountWallet only supports "exact".`);
|
|
40
46
|
}
|
|
41
47
|
try {
|
|
48
|
+
// If server authorization provided, use co-signed path
|
|
49
|
+
if (serverAuthorization) {
|
|
50
|
+
return await createCoSignedPayment(requirements, this.config, serverAuthorization);
|
|
51
|
+
}
|
|
52
|
+
// Otherwise use direct signing (full-access keys)
|
|
42
53
|
return await createExactPayment(requirements, this.config);
|
|
43
54
|
}
|
|
44
55
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../../src/x402/wallets/smart-account/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,MAAM,MAAM,CAAA;AAG7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../../src/x402/wallets/smart-account/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,MAAM,MAAM,CAAA;AAG7C,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AAE3F,OAAO,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAkB/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAuF;IAE9G,YAAY,MAA0B;QACpC,oDAAoD;QACpD,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,MAAM;YACT,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,iBAAiB;YAC9D,wBAAwB,EAAE,MAAM,CAAC,wBAAwB,IAAI,kBAAkB;SAChF,CAAA;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CACjB,YAAiC,EACjC,mBAA6C;QAE7C,IAAI,YAAY,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACpC,MAAM,IAAI,WAAW,CACnB,+BAA+B,YAAY,CAAC,MAAM,6CAA6C,CAChG,CAAA;QACH,CAAC;QAED,IAAI,CAAC;YACH,uDAAuD;YACvD,IAAI,mBAAmB,EAAE,CAAC;gBACxB,OAAO,MAAM,qBAAqB,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;YACpF,CAAC;YAED,kDAAkD;YAClD,OAAO,MAAM,kBAAkB,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,WAAW,CACnB,2CAA2C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACnG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAA;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAA;IACxC,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ampersend_ai/ampersend-sdk",
|
|
3
3
|
"description": "Tooling for building applications with x402 payment capabilities. Supports buyer and seller roles.",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.13",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/edgeandnode/ampersend-sdk.git"
|