@atxp/common 0.10.7 → 0.10.9

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/index.d.ts CHANGED
@@ -26,9 +26,11 @@ declare enum NetworkEnum {
26
26
  Base = "base",
27
27
  World = "world",
28
28
  Polygon = "polygon",
29
+ Tempo = "tempo",
29
30
  BaseSepolia = "base_sepolia",
30
31
  WorldSepolia = "world_sepolia",
31
32
  PolygonAmoy = "polygon_amoy",
33
+ TempoModerato = "tempo_moderato",
32
34
  ATXP = "atxp"
33
35
  }
34
36
  type Network = `${NetworkEnum}`;
@@ -37,11 +39,32 @@ declare enum ChainEnum {
37
39
  Base = "base",
38
40
  World = "world",
39
41
  Polygon = "polygon",
42
+ Tempo = "tempo",
40
43
  BaseSepolia = "base_sepolia",
41
44
  WorldSepolia = "world_sepolia",
42
- PolygonAmoy = "polygon_amoy"
45
+ PolygonAmoy = "polygon_amoy",
46
+ TempoModerato = "tempo_moderato"
43
47
  }
44
48
  type Chain = `${ChainEnum}`;
49
+ declare enum PaymentProtocolEnum {
50
+ ATXP = "atxp",
51
+ X402 = "x402",
52
+ MPP = "mpp"
53
+ }
54
+ type PaymentProtocol = `${PaymentProtocolEnum}`;
55
+ /**
56
+ * Feature flag function that determines which payment protocol to use
57
+ * for a given user and destination combination.
58
+ */
59
+ type ProtocolFlag = (userId: string, destination: string) => PaymentProtocol;
60
+ /**
61
+ * Feature flag function that determines which chain to use
62
+ * for a given user and destination combination.
63
+ *
64
+ * Constraint: If the corresponding protocolFlag returns 'mpp', chainFlag must return 'tempo'.
65
+ * X402 and ATXP can use 'base' or 'solana'.
66
+ */
67
+ type ChainFlag = (userId: string, destination: string) => Chain;
45
68
  declare enum WalletTypeEnum {
46
69
  EOA = "eoa",
47
70
  Smart = "smart"
@@ -149,6 +172,30 @@ interface PaymentDestination {
149
172
  getAccountId: () => Promise<AccountId>;
150
173
  getSources: () => Promise<Source[]>;
151
174
  }
175
+ interface AuthorizeParams {
176
+ protocol: PaymentProtocol;
177
+ amount: BigNumber;
178
+ destination: string;
179
+ memo?: string;
180
+ /** X402: payment requirements from server challenge */
181
+ paymentRequirements?: unknown;
182
+ /** MPP: challenge object from server */
183
+ challenge?: unknown;
184
+ }
185
+ interface AuthorizeResult {
186
+ protocol: PaymentProtocol;
187
+ /** Opaque credential string - pass to ProtocolSettlement.settle() */
188
+ credential: string;
189
+ }
190
+ /**
191
+ * Error thrown when authorization fails.
192
+ * Includes HTTP status code and error code for structured error handling.
193
+ */
194
+ declare class AuthorizationError extends Error {
195
+ readonly statusCode: number;
196
+ readonly errorCode: string;
197
+ constructor(message: string, statusCode: number, errorCode: string);
198
+ }
152
199
  /**
153
200
  * Full account interface that can both receive and make payments.
154
201
  * Extends PaymentDestination so any Account can be used as a destination.
@@ -163,6 +210,15 @@ type Account = PaymentDestination & {
163
210
  * @returns The spend permission token, or null if this account type doesn't support spend permissions
164
211
  */
165
212
  createSpendPermission: (resourceUrl: string) => Promise<string | null>;
213
+ /**
214
+ * Authorize a payment through the appropriate channel for this account type.
215
+ *
216
+ * For ATXPAccount: calls /authorize/{protocol} on the accounts service (pre-check only, no payment execution).
217
+ * For local-key accounts (Base, Solana, etc.): signs locally and/or executes the payment, returning evidence.
218
+ *
219
+ * Returns an opaque credential that can be passed to ProtocolSettlement.settle().
220
+ */
221
+ authorize: (params: AuthorizeParams) => Promise<AuthorizeResult>;
166
222
  };
167
223
  /**
168
224
  * Response from the /me endpoint on the accounts service.
@@ -627,6 +683,11 @@ declare class ATXPAccount implements Account {
627
683
  * @returns The spend permission token to pass to the authorization URL
628
684
  */
629
685
  createSpendPermission(resourceUrl: string): Promise<string>;
686
+ /**
687
+ * Authorize a payment through the accounts service.
688
+ * Calls /authorize/{protocol} and returns an opaque credential.
689
+ */
690
+ authorize(params: AuthorizeParams): Promise<AuthorizeResult>;
630
691
  }
631
692
 
632
693
  /**
@@ -653,5 +714,5 @@ declare class AccountIdDestination implements PaymentDestination {
653
714
  getSources(): Promise<Source[]>;
654
715
  }
655
716
 
656
- export { ATXPAccount, AccountIdDestination, BrowserCache, ChainEnum, ConsoleLogger, CurrencyEnum, DEFAULT_ATXP_ACCOUNTS_SERVER, DEFAULT_AUTHORIZATION_SERVER, JsonCache, LogLevel, MemoryCache, MemoryOAuthDb, NetworkEnum, OAuthResourceClient, PAYMENT_REQUIRED_ERROR_CODE, PAYMENT_REQUIRED_PREAMBLE, Servers, WalletTypeEnum, assertNever, buildES256KJWTMessage, captureErrorTelemetry, completeES256KJWT, constructEIP1271Message, createEIP1271AuthData, createEIP1271JWT, createLegacyEIP1271Auth, createReactNativeSafeFetch, crypto, extractAddressFromAccountId, extractJSONFromSSE, extractNetworkFromAccountId, generateJWT, getErrorRecoveryHint, getIsReactNative, isBrowser, isEnumValue, isNextJS, isNode, isRecoverableError, isSSEResponse, isWebEnvironment, parseMcpMessages, parsePaymentRequests, parseSSEMessages, paymentRequiredError };
657
- export type { AccessToken, Account, AccountId, AuthorizationServerUrl, Chain, ClientCredentials, Currency, CustomJWTPayload, Destination, DestinationMaker, ES256KJWTPayload, ErrorRecoveryHint, ErrorTelemetry, FetchLike, ICache, Logger, MeResponse, MemoryOAuthDbConfig, Network, OAuthDb, OAuthResourceClientConfig, OAuthResourceDb, PKCEValues, PaymentDestination, PaymentIdentifier, PaymentMaker, PaymentRequest, PaymentRequestOption, PlatformCrypto, RecoverableError, RequirePaymentConfig, SSEMessage, Source, TokenData, UrlString, WalletType };
717
+ export { ATXPAccount, AccountIdDestination, AuthorizationError, BrowserCache, ChainEnum, ConsoleLogger, CurrencyEnum, DEFAULT_ATXP_ACCOUNTS_SERVER, DEFAULT_AUTHORIZATION_SERVER, JsonCache, LogLevel, MemoryCache, MemoryOAuthDb, NetworkEnum, OAuthResourceClient, PAYMENT_REQUIRED_ERROR_CODE, PAYMENT_REQUIRED_PREAMBLE, PaymentProtocolEnum, Servers, WalletTypeEnum, assertNever, buildES256KJWTMessage, captureErrorTelemetry, completeES256KJWT, constructEIP1271Message, createEIP1271AuthData, createEIP1271JWT, createLegacyEIP1271Auth, createReactNativeSafeFetch, crypto, extractAddressFromAccountId, extractJSONFromSSE, extractNetworkFromAccountId, generateJWT, getErrorRecoveryHint, getIsReactNative, isBrowser, isEnumValue, isNextJS, isNode, isRecoverableError, isSSEResponse, isWebEnvironment, parseMcpMessages, parsePaymentRequests, parseSSEMessages, paymentRequiredError };
718
+ export type { AccessToken, Account, AccountId, AuthorizationServerUrl, AuthorizeParams, AuthorizeResult, Chain, ChainFlag, ClientCredentials, Currency, CustomJWTPayload, Destination, DestinationMaker, ES256KJWTPayload, ErrorRecoveryHint, ErrorTelemetry, FetchLike, ICache, Logger, MeResponse, MemoryOAuthDbConfig, Network, OAuthDb, OAuthResourceClientConfig, OAuthResourceDb, PKCEValues, PaymentDestination, PaymentIdentifier, PaymentMaker, PaymentProtocol, PaymentRequest, PaymentRequestOption, PlatformCrypto, ProtocolFlag, RecoverableError, RequirePaymentConfig, SSEMessage, Source, TokenData, UrlString, WalletType };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,mBAAmB,EACnB,KAAK,yBAAyB,EAC/B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,QAAQ,EACR,KAAK,MAAM,EACX,KAAK,SAAS,EACd,KAAK,sBAAsB,EAC3B,YAAY,EACZ,KAAK,QAAQ,EACb,WAAW,EACX,KAAK,OAAO,EACZ,SAAS,EACT,KAAK,KAAK,EACV,cAAc,EACd,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,MAAM,EACX,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACX,WAAW,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,KAAK,UAAU,EACf,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,KAAK,cAAc,EACnB,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,0BAA0B,EAC1B,MAAM,EACP,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,KAAK,MAAM,EACX,SAAS,EACT,YAAY,EACZ,WAAW,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,oBAAoB,EACrB,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EACL,aAAa,EACb,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,mBAAmB,EACnB,KAAK,yBAAyB,EAC/B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,QAAQ,EACR,KAAK,MAAM,EACX,KAAK,SAAS,EACd,KAAK,sBAAsB,EAC3B,YAAY,EACZ,KAAK,QAAQ,EACb,WAAW,EACX,KAAK,OAAO,EACZ,SAAS,EACT,KAAK,KAAK,EACV,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,cAAc,EACd,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,OAAO,EACZ,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,kBAAkB,EAClB,KAAK,UAAU,EACf,KAAK,MAAM,EACX,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACX,WAAW,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,KAAK,UAAU,EACf,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,KAAK,cAAc,EACnB,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,0BAA0B,EAC1B,MAAM,EACP,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,KAAK,MAAM,EACX,SAAS,EACT,YAAY,EACZ,WAAW,EACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,oBAAoB,EACrB,MAAM,2BAA2B,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { SignJWT } from 'jose';
2
2
  import * as oauth from 'oauth4webapi';
3
- import { McpError, JSONRPCMessageSchema, isJSONRPCError, isJSONRPCResponse } from '@modelcontextprotocol/sdk/types.js';
3
+ import { McpError, isJSONRPCError, isJSONRPCResponse, JSONRPCMessageSchema } from '@modelcontextprotocol/sdk/types.js';
4
4
  import { ZodError } from 'zod';
5
5
 
6
6
  // TODO: revisit this
@@ -79,9 +79,11 @@ var NetworkEnum;
79
79
  NetworkEnum["Base"] = "base";
80
80
  NetworkEnum["World"] = "world";
81
81
  NetworkEnum["Polygon"] = "polygon";
82
+ NetworkEnum["Tempo"] = "tempo";
82
83
  NetworkEnum["BaseSepolia"] = "base_sepolia";
83
84
  NetworkEnum["WorldSepolia"] = "world_sepolia";
84
85
  NetworkEnum["PolygonAmoy"] = "polygon_amoy";
86
+ NetworkEnum["TempoModerato"] = "tempo_moderato";
85
87
  NetworkEnum["ATXP"] = "atxp";
86
88
  })(NetworkEnum || (NetworkEnum = {}));
87
89
  var ChainEnum;
@@ -90,15 +92,36 @@ var ChainEnum;
90
92
  ChainEnum["Base"] = "base";
91
93
  ChainEnum["World"] = "world";
92
94
  ChainEnum["Polygon"] = "polygon";
95
+ ChainEnum["Tempo"] = "tempo";
93
96
  ChainEnum["BaseSepolia"] = "base_sepolia";
94
97
  ChainEnum["WorldSepolia"] = "world_sepolia";
95
98
  ChainEnum["PolygonAmoy"] = "polygon_amoy";
99
+ ChainEnum["TempoModerato"] = "tempo_moderato";
96
100
  })(ChainEnum || (ChainEnum = {}));
101
+ // Payment protocol types for multi-protocol support
102
+ var PaymentProtocolEnum;
103
+ (function (PaymentProtocolEnum) {
104
+ PaymentProtocolEnum["ATXP"] = "atxp";
105
+ PaymentProtocolEnum["X402"] = "x402";
106
+ PaymentProtocolEnum["MPP"] = "mpp";
107
+ })(PaymentProtocolEnum || (PaymentProtocolEnum = {}));
97
108
  var WalletTypeEnum;
98
109
  (function (WalletTypeEnum) {
99
110
  WalletTypeEnum["EOA"] = "eoa";
100
111
  WalletTypeEnum["Smart"] = "smart";
101
112
  })(WalletTypeEnum || (WalletTypeEnum = {}));
113
+ /**
114
+ * Error thrown when authorization fails.
115
+ * Includes HTTP status code and error code for structured error handling.
116
+ */
117
+ class AuthorizationError extends Error {
118
+ constructor(message, statusCode, errorCode) {
119
+ super(message);
120
+ this.name = 'AuthorizationError';
121
+ this.statusCode = statusCode;
122
+ this.errorCode = errorCode;
123
+ }
124
+ }
102
125
  /**
103
126
  * Extract the address portion from a fully-qualified accountId
104
127
  * @param accountId - Format: network:address
@@ -1648,6 +1671,85 @@ class ATXPAccount {
1648
1671
  }
1649
1672
  return json.spendPermissionToken;
1650
1673
  }
1674
+ /**
1675
+ * Authorize a payment through the accounts service.
1676
+ * Calls /authorize/{protocol} and returns an opaque credential.
1677
+ */
1678
+ async authorize(params) {
1679
+ const { protocol } = params;
1680
+ const authHeaders = {
1681
+ 'Content-Type': 'application/json',
1682
+ 'Authorization': toBasicAuth(this.token),
1683
+ };
1684
+ let body;
1685
+ switch (protocol) {
1686
+ case 'atxp':
1687
+ body = {
1688
+ amount: params.amount.toString(),
1689
+ currency: 'USDC',
1690
+ receiver: params.destination,
1691
+ memo: params.memo,
1692
+ };
1693
+ break;
1694
+ case 'x402':
1695
+ body = { paymentRequirements: params.paymentRequirements };
1696
+ break;
1697
+ case 'mpp':
1698
+ body = { challenge: params.challenge };
1699
+ break;
1700
+ default:
1701
+ throw new Error(`ATXPAccount: unsupported protocol '${protocol}'`);
1702
+ }
1703
+ const controller = new AbortController();
1704
+ const timeout = setTimeout(() => controller.abort(), 30000);
1705
+ let response;
1706
+ try {
1707
+ response = await this.fetchFn(`${this.origin}/authorize/${protocol}`, {
1708
+ method: 'POST',
1709
+ headers: authHeaders,
1710
+ body: JSON.stringify(body),
1711
+ signal: controller.signal,
1712
+ });
1713
+ }
1714
+ finally {
1715
+ clearTimeout(timeout);
1716
+ }
1717
+ if (!response.ok) {
1718
+ const errorText = await response.text();
1719
+ let errorCode = 'authorization_failed';
1720
+ try {
1721
+ const parsed = JSON.parse(errorText);
1722
+ errorCode = parsed.error || errorCode;
1723
+ }
1724
+ catch { /* not JSON */ }
1725
+ throw new AuthorizationError(`ATXPAccount: /authorize/${protocol} failed (${response.status}): ${errorText}`, response.status, errorCode);
1726
+ }
1727
+ const responseBody = await response.json();
1728
+ let credential;
1729
+ switch (protocol) {
1730
+ case 'atxp': {
1731
+ // Inject the connection token so the credential is self-contained
1732
+ responseBody.sourceAccountToken = this.token;
1733
+ credential = JSON.stringify(responseBody);
1734
+ break;
1735
+ }
1736
+ case 'x402':
1737
+ if (!responseBody.paymentHeader || typeof responseBody.paymentHeader !== 'string') {
1738
+ throw new Error('ATXPAccount: /authorize/x402 response missing or invalid paymentHeader');
1739
+ }
1740
+ credential = responseBody.paymentHeader;
1741
+ break;
1742
+ case 'mpp':
1743
+ if (!responseBody.credential || typeof responseBody.credential !== 'string') {
1744
+ throw new Error('ATXPAccount: /authorize/mpp response missing or invalid credential');
1745
+ }
1746
+ credential = responseBody.credential;
1747
+ break;
1748
+ default:
1749
+ throw new Error(`ATXPAccount: unsupported protocol '${protocol}'`);
1750
+ }
1751
+ return { protocol, credential };
1752
+ }
1651
1753
  }
1652
1754
 
1653
1755
  /**
@@ -1697,5 +1799,5 @@ class AccountIdDestination {
1697
1799
  }
1698
1800
  }
1699
1801
 
1700
- export { ATXPAccount, AccountIdDestination, BrowserCache, ChainEnum, ConsoleLogger, CurrencyEnum, DEFAULT_ATXP_ACCOUNTS_SERVER, DEFAULT_AUTHORIZATION_SERVER, JsonCache, LogLevel, MemoryCache, MemoryOAuthDb, NetworkEnum, OAuthResourceClient, PAYMENT_REQUIRED_ERROR_CODE, PAYMENT_REQUIRED_PREAMBLE, Servers, WalletTypeEnum, assertNever, buildES256KJWTMessage, captureErrorTelemetry, completeES256KJWT, constructEIP1271Message, createEIP1271AuthData, createEIP1271JWT, createLegacyEIP1271Auth, createReactNativeSafeFetch, crypto, extractAddressFromAccountId, extractJSONFromSSE, extractNetworkFromAccountId, generateJWT, getErrorRecoveryHint, getIsReactNative, isBrowser, isEnumValue, isNextJS, isNode, isRecoverableError, isSSEResponse, isWebEnvironment, parseMcpMessages, parsePaymentRequests, parseSSEMessages, paymentRequiredError };
1802
+ export { ATXPAccount, AccountIdDestination, AuthorizationError, BrowserCache, ChainEnum, ConsoleLogger, CurrencyEnum, DEFAULT_ATXP_ACCOUNTS_SERVER, DEFAULT_AUTHORIZATION_SERVER, JsonCache, LogLevel, MemoryCache, MemoryOAuthDb, NetworkEnum, OAuthResourceClient, PAYMENT_REQUIRED_ERROR_CODE, PAYMENT_REQUIRED_PREAMBLE, PaymentProtocolEnum, Servers, WalletTypeEnum, assertNever, buildES256KJWTMessage, captureErrorTelemetry, completeES256KJWT, constructEIP1271Message, createEIP1271AuthData, createEIP1271JWT, createLegacyEIP1271Auth, createReactNativeSafeFetch, crypto, extractAddressFromAccountId, extractJSONFromSSE, extractNetworkFromAccountId, generateJWT, getErrorRecoveryHint, getIsReactNative, isBrowser, isEnumValue, isNextJS, isNode, isRecoverableError, isSSEResponse, isWebEnvironment, parseMcpMessages, parsePaymentRequests, parseSSEMessages, paymentRequiredError };
1701
1803
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/jwt.ts","../src/utils.ts","../src/types.ts","../src/logger.ts","../src/memoryOAuthDb.ts","../src/oAuthResource.ts","../src/paymentRequiredError.ts","../src/errorRecovery.ts","../src/servers.ts","../src/sseParser.ts","../src/mcpJson.ts","../src/platform/index.ts","../src/eip1271JwtHelper.ts","../src/es256kJwtHelper.ts","../src/cache.ts","../src/atxpAccount.ts","../src/accountIdDestination.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["ISSUER","AUDIENCE"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/jwt.ts","../src/utils.ts","../src/types.ts","../src/logger.ts","../src/memoryOAuthDb.ts","../src/oAuthResource.ts","../src/paymentRequiredError.ts","../src/errorRecovery.ts","../src/servers.ts","../src/sseParser.ts","../src/mcpJson.ts","../src/platform/index.ts","../src/eip1271JwtHelper.ts","../src/es256kJwtHelper.ts","../src/cache.ts","../src/atxpAccount.ts","../src/accountIdDestination.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["ISSUER","AUDIENCE"],"mappings":"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"}
package/dist/mcpJson.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { PAYMENT_REQUIRED_ERROR_CODE, PAYMENT_REQUIRED_PREAMBLE } from './paymentRequiredError.js';
2
- import { JSONRPCMessageSchema, isJSONRPCError, isJSONRPCResponse } from '@modelcontextprotocol/sdk/types.js';
2
+ import { isJSONRPCError, isJSONRPCResponse, JSONRPCMessageSchema } from '@modelcontextprotocol/sdk/types.js';
3
3
  import { ZodError } from 'zod';
4
4
  import { isSSEResponse, parseSSEMessages, extractJSONFromSSE } from './sseParser.js';
5
5
 
package/dist/types.d.ts CHANGED
@@ -23,9 +23,11 @@ export declare enum NetworkEnum {
23
23
  Base = "base",
24
24
  World = "world",
25
25
  Polygon = "polygon",
26
+ Tempo = "tempo",
26
27
  BaseSepolia = "base_sepolia",
27
28
  WorldSepolia = "world_sepolia",
28
29
  PolygonAmoy = "polygon_amoy",
30
+ TempoModerato = "tempo_moderato",
29
31
  ATXP = "atxp"
30
32
  }
31
33
  export type Network = `${NetworkEnum}`;
@@ -34,11 +36,32 @@ export declare enum ChainEnum {
34
36
  Base = "base",
35
37
  World = "world",
36
38
  Polygon = "polygon",
39
+ Tempo = "tempo",
37
40
  BaseSepolia = "base_sepolia",
38
41
  WorldSepolia = "world_sepolia",
39
- PolygonAmoy = "polygon_amoy"
42
+ PolygonAmoy = "polygon_amoy",
43
+ TempoModerato = "tempo_moderato"
40
44
  }
41
45
  export type Chain = `${ChainEnum}`;
46
+ export declare enum PaymentProtocolEnum {
47
+ ATXP = "atxp",
48
+ X402 = "x402",
49
+ MPP = "mpp"
50
+ }
51
+ export type PaymentProtocol = `${PaymentProtocolEnum}`;
52
+ /**
53
+ * Feature flag function that determines which payment protocol to use
54
+ * for a given user and destination combination.
55
+ */
56
+ export type ProtocolFlag = (userId: string, destination: string) => PaymentProtocol;
57
+ /**
58
+ * Feature flag function that determines which chain to use
59
+ * for a given user and destination combination.
60
+ *
61
+ * Constraint: If the corresponding protocolFlag returns 'mpp', chainFlag must return 'tempo'.
62
+ * X402 and ATXP can use 'base' or 'solana'.
63
+ */
64
+ export type ChainFlag = (userId: string, destination: string) => Chain;
42
65
  export declare enum WalletTypeEnum {
43
66
  EOA = "eoa",
44
67
  Smart = "smart"
@@ -146,6 +169,30 @@ export interface PaymentDestination {
146
169
  getAccountId: () => Promise<AccountId>;
147
170
  getSources: () => Promise<Source[]>;
148
171
  }
172
+ export interface AuthorizeParams {
173
+ protocol: PaymentProtocol;
174
+ amount: BigNumber;
175
+ destination: string;
176
+ memo?: string;
177
+ /** X402: payment requirements from server challenge */
178
+ paymentRequirements?: unknown;
179
+ /** MPP: challenge object from server */
180
+ challenge?: unknown;
181
+ }
182
+ export interface AuthorizeResult {
183
+ protocol: PaymentProtocol;
184
+ /** Opaque credential string - pass to ProtocolSettlement.settle() */
185
+ credential: string;
186
+ }
187
+ /**
188
+ * Error thrown when authorization fails.
189
+ * Includes HTTP status code and error code for structured error handling.
190
+ */
191
+ export declare class AuthorizationError extends Error {
192
+ readonly statusCode: number;
193
+ readonly errorCode: string;
194
+ constructor(message: string, statusCode: number, errorCode: string);
195
+ }
149
196
  /**
150
197
  * Full account interface that can both receive and make payments.
151
198
  * Extends PaymentDestination so any Account can be used as a destination.
@@ -160,6 +207,15 @@ export type Account = PaymentDestination & {
160
207
  * @returns The spend permission token, or null if this account type doesn't support spend permissions
161
208
  */
162
209
  createSpendPermission: (resourceUrl: string) => Promise<string | null>;
210
+ /**
211
+ * Authorize a payment through the appropriate channel for this account type.
212
+ *
213
+ * For ATXPAccount: calls /authorize/{protocol} on the accounts service (pre-check only, no payment execution).
214
+ * For local-key accounts (Base, Solana, etc.): signs locally and/or executes the payment, returning evidence.
215
+ *
216
+ * Returns an opaque credential that can be passed to ProtocolSettlement.settle().
217
+ */
218
+ authorize: (params: AuthorizeParams) => Promise<AuthorizeResult>;
163
219
  };
164
220
  /**
165
221
  * Response from the /me endpoint on the accounts service.