@ordanetwork/sdk 1.0.2 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/README.md +204 -18
  2. package/dist/browser/api/JWT.d.ts +41 -0
  3. package/dist/browser/api/JWT.d.ts.map +1 -0
  4. package/dist/browser/api/JWT.js +59 -0
  5. package/dist/browser/api/JWT.js.map +1 -0
  6. package/dist/browser/api/{OffRampAPI.d.ts → OffRamp.d.ts} +2 -2
  7. package/dist/browser/api/OffRamp.d.ts.map +1 -0
  8. package/dist/{esm/api/OffRampAPI.js → browser/api/OffRamp.js} +11 -2
  9. package/dist/browser/api/OffRamp.js.map +1 -0
  10. package/dist/{esm/api/OnRampAPI.d.ts → browser/api/OnRamp.d.ts} +2 -2
  11. package/dist/browser/api/OnRamp.d.ts.map +1 -0
  12. package/dist/{esm/api/OnRampAPI.js → browser/api/OnRamp.js} +9 -2
  13. package/dist/browser/api/OnRamp.js.map +1 -0
  14. package/dist/browser/api/{QuoteAPI.d.ts → Quote.d.ts} +2 -2
  15. package/dist/browser/api/Quote.d.ts.map +1 -0
  16. package/dist/browser/api/Quote.js +24 -0
  17. package/dist/browser/api/Quote.js.map +1 -0
  18. package/dist/{esm/api/RecipientAPI.d.ts → browser/api/Recipient.d.ts} +2 -2
  19. package/dist/browser/api/Recipient.d.ts.map +1 -0
  20. package/dist/browser/api/{RecipientAPI.js → Recipient.js} +2 -2
  21. package/dist/browser/api/Recipient.js.map +1 -0
  22. package/dist/{esm/api/TransactionAPI.d.ts → browser/api/Transaction.d.ts} +2 -2
  23. package/dist/browser/api/Transaction.d.ts.map +1 -0
  24. package/dist/browser/api/{TransactionAPI.js → Transaction.js} +2 -2
  25. package/dist/browser/api/Transaction.js.map +1 -0
  26. package/dist/browser/auth/jwt.d.ts +23 -0
  27. package/dist/browser/auth/jwt.d.ts.map +1 -0
  28. package/dist/browser/auth/jwt.js +36 -0
  29. package/dist/browser/auth/jwt.js.map +1 -0
  30. package/dist/browser/http/client.d.ts +3 -2
  31. package/dist/browser/http/client.d.ts.map +1 -1
  32. package/dist/browser/http/client.js +12 -4
  33. package/dist/browser/http/client.js.map +1 -1
  34. package/dist/browser/index.d.ts +28 -16
  35. package/dist/browser/index.d.ts.map +1 -1
  36. package/dist/browser/index.js +68 -26
  37. package/dist/browser/index.js.map +1 -1
  38. package/dist/browser/types/index.d.ts +7 -1
  39. package/dist/browser/types/index.d.ts.map +1 -1
  40. package/dist/browser/types/index.js +1 -0
  41. package/dist/browser/types/index.js.map +1 -1
  42. package/dist/browser/types/jwt.d.ts +37 -0
  43. package/dist/browser/types/jwt.d.ts.map +1 -0
  44. package/dist/browser/types/jwt.js +9 -0
  45. package/dist/browser/types/jwt.js.map +1 -0
  46. package/dist/browser/types/onramp.d.ts +6 -1
  47. package/dist/browser/types/onramp.d.ts.map +1 -1
  48. package/dist/cjs/api/JWT.d.ts +41 -0
  49. package/dist/cjs/api/JWT.d.ts.map +1 -0
  50. package/dist/cjs/api/JWT.js +63 -0
  51. package/dist/cjs/api/JWT.js.map +1 -0
  52. package/dist/{esm/api/OffRampAPI.d.ts → cjs/api/OffRamp.d.ts} +2 -2
  53. package/dist/cjs/api/OffRamp.d.ts.map +1 -0
  54. package/dist/cjs/api/{OffRampAPI.js → OffRamp.js} +13 -4
  55. package/dist/cjs/api/OffRamp.js.map +1 -0
  56. package/dist/{browser/api/OnRampAPI.d.ts → cjs/api/OnRamp.d.ts} +2 -2
  57. package/dist/cjs/api/OnRamp.d.ts.map +1 -0
  58. package/dist/cjs/api/{OnRampAPI.js → OnRamp.js} +11 -4
  59. package/dist/cjs/api/OnRamp.js.map +1 -0
  60. package/dist/{types/api/QuoteAPI.d.ts → cjs/api/Quote.d.ts} +2 -2
  61. package/dist/cjs/api/Quote.d.ts.map +1 -0
  62. package/dist/cjs/api/Quote.js +28 -0
  63. package/dist/cjs/api/Quote.js.map +1 -0
  64. package/dist/{types/api/RecipientAPI.d.ts → cjs/api/Recipient.d.ts} +2 -2
  65. package/dist/cjs/api/Recipient.d.ts.map +1 -0
  66. package/dist/cjs/api/{RecipientAPI.js → Recipient.js} +4 -4
  67. package/dist/cjs/api/Recipient.js.map +1 -0
  68. package/dist/{types/api/TransactionAPI.d.ts → cjs/api/Transaction.d.ts} +2 -2
  69. package/dist/cjs/api/Transaction.d.ts.map +1 -0
  70. package/dist/cjs/api/{TransactionAPI.js → Transaction.js} +4 -4
  71. package/dist/cjs/api/Transaction.js.map +1 -0
  72. package/dist/cjs/auth/jwt.d.ts +23 -0
  73. package/dist/cjs/auth/jwt.d.ts.map +1 -0
  74. package/dist/cjs/auth/jwt.js +40 -0
  75. package/dist/cjs/auth/jwt.js.map +1 -0
  76. package/dist/cjs/http/client.d.ts +3 -2
  77. package/dist/cjs/http/client.d.ts.map +1 -1
  78. package/dist/cjs/http/client.js +12 -4
  79. package/dist/cjs/http/client.js.map +1 -1
  80. package/dist/cjs/index.d.ts +28 -16
  81. package/dist/cjs/index.d.ts.map +1 -1
  82. package/dist/cjs/index.js +76 -32
  83. package/dist/cjs/index.js.map +1 -1
  84. package/dist/cjs/types/index.d.ts +7 -1
  85. package/dist/cjs/types/index.d.ts.map +1 -1
  86. package/dist/cjs/types/index.js +15 -0
  87. package/dist/cjs/types/index.js.map +1 -1
  88. package/dist/cjs/types/jwt.d.ts +37 -0
  89. package/dist/cjs/types/jwt.d.ts.map +1 -0
  90. package/dist/cjs/types/jwt.js +10 -0
  91. package/dist/cjs/types/jwt.js.map +1 -0
  92. package/dist/cjs/types/onramp.d.ts +6 -1
  93. package/dist/cjs/types/onramp.d.ts.map +1 -1
  94. package/dist/esm/api/JWT.d.ts +41 -0
  95. package/dist/esm/api/JWT.d.ts.map +1 -0
  96. package/dist/esm/api/JWT.js +59 -0
  97. package/dist/esm/api/JWT.js.map +1 -0
  98. package/dist/{cjs/api/OffRampAPI.d.ts → esm/api/OffRamp.d.ts} +2 -2
  99. package/dist/esm/api/OffRamp.d.ts.map +1 -0
  100. package/dist/{browser/api/OffRampAPI.js → esm/api/OffRamp.js} +11 -2
  101. package/dist/esm/api/OffRamp.js.map +1 -0
  102. package/dist/{cjs/api/OnRampAPI.d.ts → esm/api/OnRamp.d.ts} +2 -2
  103. package/dist/esm/api/OnRamp.d.ts.map +1 -0
  104. package/dist/{browser/api/OnRampAPI.js → esm/api/OnRamp.js} +9 -2
  105. package/dist/esm/api/OnRamp.js.map +1 -0
  106. package/dist/esm/api/{QuoteAPI.d.ts → Quote.d.ts} +2 -2
  107. package/dist/esm/api/Quote.d.ts.map +1 -0
  108. package/dist/esm/api/Quote.js +24 -0
  109. package/dist/esm/api/Quote.js.map +1 -0
  110. package/dist/{cjs/api/RecipientAPI.d.ts → esm/api/Recipient.d.ts} +2 -2
  111. package/dist/esm/api/Recipient.d.ts.map +1 -0
  112. package/dist/esm/api/{RecipientAPI.js → Recipient.js} +2 -2
  113. package/dist/esm/api/Recipient.js.map +1 -0
  114. package/dist/{browser/api/TransactionAPI.d.ts → esm/api/Transaction.d.ts} +2 -2
  115. package/dist/esm/api/Transaction.d.ts.map +1 -0
  116. package/dist/esm/api/{TransactionAPI.js → Transaction.js} +2 -2
  117. package/dist/esm/api/Transaction.js.map +1 -0
  118. package/dist/esm/auth/jwt.d.ts +23 -0
  119. package/dist/esm/auth/jwt.d.ts.map +1 -0
  120. package/dist/esm/auth/jwt.js +36 -0
  121. package/dist/esm/auth/jwt.js.map +1 -0
  122. package/dist/esm/http/client.d.ts +3 -2
  123. package/dist/esm/http/client.d.ts.map +1 -1
  124. package/dist/esm/http/client.js +12 -4
  125. package/dist/esm/http/client.js.map +1 -1
  126. package/dist/esm/index.d.ts +28 -16
  127. package/dist/esm/index.d.ts.map +1 -1
  128. package/dist/esm/index.js +68 -26
  129. package/dist/esm/index.js.map +1 -1
  130. package/dist/esm/types/index.d.ts +7 -1
  131. package/dist/esm/types/index.d.ts.map +1 -1
  132. package/dist/esm/types/index.js +1 -0
  133. package/dist/esm/types/index.js.map +1 -1
  134. package/dist/esm/types/jwt.d.ts +37 -0
  135. package/dist/esm/types/jwt.d.ts.map +1 -0
  136. package/dist/esm/types/jwt.js +9 -0
  137. package/dist/esm/types/jwt.js.map +1 -0
  138. package/dist/esm/types/onramp.d.ts +6 -1
  139. package/dist/esm/types/onramp.d.ts.map +1 -1
  140. package/dist/types/api/JWT.d.ts +41 -0
  141. package/dist/types/api/JWT.d.ts.map +1 -0
  142. package/dist/types/api/{OffRampAPI.d.ts → OffRamp.d.ts} +2 -2
  143. package/dist/types/api/OffRamp.d.ts.map +1 -0
  144. package/dist/types/api/{OnRampAPI.d.ts → OnRamp.d.ts} +2 -2
  145. package/dist/types/api/OnRamp.d.ts.map +1 -0
  146. package/dist/{cjs/api/QuoteAPI.d.ts → types/api/Quote.d.ts} +2 -2
  147. package/dist/types/api/Quote.d.ts.map +1 -0
  148. package/dist/{browser/api/RecipientAPI.d.ts → types/api/Recipient.d.ts} +2 -2
  149. package/dist/types/api/Recipient.d.ts.map +1 -0
  150. package/dist/{cjs/api/TransactionAPI.d.ts → types/api/Transaction.d.ts} +2 -2
  151. package/dist/types/api/Transaction.d.ts.map +1 -0
  152. package/dist/types/auth/jwt.d.ts +23 -0
  153. package/dist/types/auth/jwt.d.ts.map +1 -0
  154. package/dist/types/http/client.d.ts +3 -2
  155. package/dist/types/http/client.d.ts.map +1 -1
  156. package/dist/types/index.d.ts +28 -16
  157. package/dist/types/index.d.ts.map +1 -1
  158. package/dist/types/types/index.d.ts +7 -1
  159. package/dist/types/types/index.d.ts.map +1 -1
  160. package/dist/types/types/jwt.d.ts +37 -0
  161. package/dist/types/types/jwt.d.ts.map +1 -0
  162. package/dist/types/types/onramp.d.ts +6 -1
  163. package/dist/types/types/onramp.d.ts.map +1 -1
  164. package/package.json +1 -1
  165. package/dist/browser/api/OffRampAPI.d.ts.map +0 -1
  166. package/dist/browser/api/OffRampAPI.js.map +0 -1
  167. package/dist/browser/api/OnRampAPI.d.ts.map +0 -1
  168. package/dist/browser/api/OnRampAPI.js.map +0 -1
  169. package/dist/browser/api/QuoteAPI.d.ts.map +0 -1
  170. package/dist/browser/api/QuoteAPI.js +0 -17
  171. package/dist/browser/api/QuoteAPI.js.map +0 -1
  172. package/dist/browser/api/RecipientAPI.d.ts.map +0 -1
  173. package/dist/browser/api/RecipientAPI.js.map +0 -1
  174. package/dist/browser/api/TransactionAPI.d.ts.map +0 -1
  175. package/dist/browser/api/TransactionAPI.js.map +0 -1
  176. package/dist/cjs/api/OffRampAPI.d.ts.map +0 -1
  177. package/dist/cjs/api/OffRampAPI.js.map +0 -1
  178. package/dist/cjs/api/OnRampAPI.d.ts.map +0 -1
  179. package/dist/cjs/api/OnRampAPI.js.map +0 -1
  180. package/dist/cjs/api/QuoteAPI.d.ts.map +0 -1
  181. package/dist/cjs/api/QuoteAPI.js +0 -21
  182. package/dist/cjs/api/QuoteAPI.js.map +0 -1
  183. package/dist/cjs/api/RecipientAPI.d.ts.map +0 -1
  184. package/dist/cjs/api/RecipientAPI.js.map +0 -1
  185. package/dist/cjs/api/TransactionAPI.d.ts.map +0 -1
  186. package/dist/cjs/api/TransactionAPI.js.map +0 -1
  187. package/dist/esm/api/OffRampAPI.d.ts.map +0 -1
  188. package/dist/esm/api/OffRampAPI.js.map +0 -1
  189. package/dist/esm/api/OnRampAPI.d.ts.map +0 -1
  190. package/dist/esm/api/OnRampAPI.js.map +0 -1
  191. package/dist/esm/api/QuoteAPI.d.ts.map +0 -1
  192. package/dist/esm/api/QuoteAPI.js +0 -17
  193. package/dist/esm/api/QuoteAPI.js.map +0 -1
  194. package/dist/esm/api/RecipientAPI.d.ts.map +0 -1
  195. package/dist/esm/api/RecipientAPI.js.map +0 -1
  196. package/dist/esm/api/TransactionAPI.d.ts.map +0 -1
  197. package/dist/esm/api/TransactionAPI.js.map +0 -1
  198. package/dist/types/api/OffRampAPI.d.ts.map +0 -1
  199. package/dist/types/api/OnRampAPI.d.ts.map +0 -1
  200. package/dist/types/api/QuoteAPI.d.ts.map +0 -1
  201. package/dist/types/api/RecipientAPI.d.ts.map +0 -1
  202. package/dist/types/api/TransactionAPI.d.ts.map +0 -1
package/dist/cjs/index.js CHANGED
@@ -14,50 +14,89 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.AccountNotDeployedError = exports.InsufficientFundsError = exports.UserOperationError = exports.ConnectionError = exports.SmartWalletError = exports.createSmartWallet = exports.LocalSigner = exports.SmartWalletManager = exports.SmartWalletClient = exports.HmacAuthenticator = exports.UniversalHttpClient = exports.OnRampAPI = exports.OffRampAPI = exports.TransactionAPI = exports.RecipientAPI = exports.QuoteAPI = exports.OrdaSDK = void 0;
18
- const QuoteAPI_1 = require("./api/QuoteAPI");
19
- const RecipientAPI_1 = require("./api/RecipientAPI");
20
- const TransactionAPI_1 = require("./api/TransactionAPI");
21
- const OffRampAPI_1 = require("./api/OffRampAPI");
22
- const OnRampAPI_1 = require("./api/OnRampAPI");
17
+ exports.AccountNotDeployedError = exports.InsufficientFundsError = exports.UserOperationError = exports.ConnectionError = exports.SmartWalletError = exports.createSmartWallet = exports.LocalSigner = exports.SmartWalletManager = exports.SmartWalletClient = exports.JWTAuthenticator = exports.HmacAuthenticator = exports.UniversalHttpClient = exports.JWT = exports.OnRamp = exports.OffRamp = exports.Transaction = exports.Recipient = exports.Quote = exports.OrdaSDK = void 0;
18
+ const Quote_1 = require("./api/Quote");
19
+ const Recipient_1 = require("./api/Recipient");
20
+ const Transaction_1 = require("./api/Transaction");
21
+ const OffRamp_1 = require("./api/OffRamp");
22
+ const OnRamp_1 = require("./api/OnRamp");
23
+ const JWT_1 = require("./api/JWT");
23
24
  const client_1 = require("./http/client");
24
25
  const hmac_1 = require("./auth/hmac");
26
+ const jwt_1 = require("./auth/jwt");
25
27
  const smart_wallets_1 = require("./smart-wallets");
26
28
  /**
27
29
  * Main SDK class for interacting with Orda API
30
+ *
31
+ * Supports both authentication modes:
32
+ * 1. HMAC: Server-side authentication with clientId/clientSecret
33
+ * 2. JWT: Client-side authentication with JWT
28
34
  */
29
35
  class OrdaSDK {
30
36
  constructor(config) {
31
37
  this.config = config;
32
- if (!config.clientId || !config.clientSecret) {
33
- throw new Error('clientId and clientSecret are required');
38
+ const isJWTMode = 'token' in config;
39
+ const isHmacMode = 'clientId' in config && 'clientSecret' in config;
40
+ if (!isJWTMode && !isHmacMode) {
41
+ throw new Error('Either token (JWT) OR (clientId + clientSecret) is required');
34
42
  }
35
43
  // Prevent any attempts to override the API URL
36
44
  if ('baseUrl' in config || 'environment' in config) {
37
45
  throw new Error('API endpoint configuration is not allowed. This SDK only connects to production.');
38
46
  }
39
- if (typeof window !== 'undefined') {
47
+ if (typeof window !== 'undefined' && isHmacMode) {
40
48
  console.warn('Security Warning: Using API credentials in the browser is not recommended for production. ' +
41
- 'Consider using a backend proxy to protect your credentials.');
49
+ 'Consider using JWT authentication method or a backend proxy to protect your credentials.');
42
50
  }
43
- const authenticator = new hmac_1.HmacAuthenticator(config.clientId, config.clientSecret);
44
51
  const baseUrl = 'https://api.orda.network/v1';
45
- this.httpClient = new client_1.UniversalHttpClient(baseUrl, config.requestTimeout || 30000, {
46
- authenticator,
47
- enableTimestamp: config.enableTimestamp !== false,
48
- debug: config.debug || false
49
- });
52
+ let authenticator;
53
+ if (isJWTMode) {
54
+ const jwtConfig = config;
55
+ authenticator = new jwt_1.JWTAuthenticator(jwtConfig.token);
56
+ this.httpClient = new client_1.UniversalHttpClient(baseUrl, jwtConfig.requestTimeout || 30000, {
57
+ authenticator,
58
+ enableTimestamp: false, // JWT doesn't need timestamps
59
+ debug: jwtConfig.debug || false
60
+ });
61
+ }
62
+ else {
63
+ // HMAC mode
64
+ const hmacConfig = config;
65
+ authenticator = new hmac_1.HmacAuthenticator(hmacConfig.clientId, hmacConfig.clientSecret);
66
+ this.httpClient = new client_1.UniversalHttpClient(baseUrl, hmacConfig.requestTimeout || 30000, {
67
+ authenticator,
68
+ enableTimestamp: hmacConfig.enableTimestamp !== false,
69
+ debug: hmacConfig.debug || false
70
+ });
71
+ }
50
72
  // init API modules
51
- this.quote = new QuoteAPI_1.QuoteAPI(this.httpClient);
52
- this.recipients = new RecipientAPI_1.RecipientAPI(this.httpClient);
53
- this.transactions = new TransactionAPI_1.TransactionAPI(this.httpClient);
54
- this.offRamp = new OffRampAPI_1.OffRampAPI(this.httpClient);
55
- this.onRamp = new OnRampAPI_1.OnRampAPI(this.httpClient);
73
+ this.quote = new Quote_1.Quote(this.httpClient);
74
+ this.recipients = new Recipient_1.Recipient(this.httpClient);
75
+ this.transactions = new Transaction_1.Transaction(this.httpClient);
76
+ this.offRamp = new OffRamp_1.OffRamp(this.httpClient);
77
+ this.onRamp = new OnRamp_1.OnRamp(this.httpClient);
78
+ this.jwt = new JWT_1.JWT(this.httpClient);
56
79
  // init smart wallet manager
57
80
  this.smartWallets = new smart_wallets_1.SmartWalletManager({
58
81
  alchemyApiKey: this.config.alchemyApiKey
59
82
  });
60
83
  }
84
+ updateToken(newToken) {
85
+ if (!this.config || !('token' in this.config)) {
86
+ throw new Error('updateToken() is only available in JWT authentication mode');
87
+ }
88
+ this.config.token = newToken;
89
+ const authenticator = this.httpClient.authenticator;
90
+ if (authenticator instanceof jwt_1.JWTAuthenticator) {
91
+ authenticator.updateToken(newToken);
92
+ }
93
+ else {
94
+ throw new Error('Internal error: Authenticator type mismatch. Expected JWTAuthenticator.');
95
+ }
96
+ }
97
+ isJWTMode() {
98
+ return this.config && 'token' in this.config;
99
+ }
61
100
  /**
62
101
  * Checks if the SDK is running in a browser environment
63
102
  */
@@ -74,28 +113,33 @@ class OrdaSDK {
74
113
  * Gets the current SDK version
75
114
  */
76
115
  static get version() {
77
- return '1.0.0';
116
+ return '1.1.1';
78
117
  }
79
118
  }
80
119
  exports.OrdaSDK = OrdaSDK;
81
120
  __exportStar(require("./types"), exports);
82
121
  __exportStar(require("./types/offramp"), exports);
83
122
  __exportStar(require("./types/onramp"), exports);
123
+ __exportStar(require("./types/jwt"), exports);
84
124
  __exportStar(require("./errors"), exports);
85
- var QuoteAPI_2 = require("./api/QuoteAPI");
86
- Object.defineProperty(exports, "QuoteAPI", { enumerable: true, get: function () { return QuoteAPI_2.QuoteAPI; } });
87
- var RecipientAPI_2 = require("./api/RecipientAPI");
88
- Object.defineProperty(exports, "RecipientAPI", { enumerable: true, get: function () { return RecipientAPI_2.RecipientAPI; } });
89
- var TransactionAPI_2 = require("./api/TransactionAPI");
90
- Object.defineProperty(exports, "TransactionAPI", { enumerable: true, get: function () { return TransactionAPI_2.TransactionAPI; } });
91
- var OffRampAPI_2 = require("./api/OffRampAPI");
92
- Object.defineProperty(exports, "OffRampAPI", { enumerable: true, get: function () { return OffRampAPI_2.OffRampAPI; } });
93
- var OnRampAPI_2 = require("./api/OnRampAPI");
94
- Object.defineProperty(exports, "OnRampAPI", { enumerable: true, get: function () { return OnRampAPI_2.OnRampAPI; } });
125
+ var Quote_2 = require("./api/Quote");
126
+ Object.defineProperty(exports, "Quote", { enumerable: true, get: function () { return Quote_2.Quote; } });
127
+ var Recipient_2 = require("./api/Recipient");
128
+ Object.defineProperty(exports, "Recipient", { enumerable: true, get: function () { return Recipient_2.Recipient; } });
129
+ var Transaction_2 = require("./api/Transaction");
130
+ Object.defineProperty(exports, "Transaction", { enumerable: true, get: function () { return Transaction_2.Transaction; } });
131
+ var OffRamp_2 = require("./api/OffRamp");
132
+ Object.defineProperty(exports, "OffRamp", { enumerable: true, get: function () { return OffRamp_2.OffRamp; } });
133
+ var OnRamp_2 = require("./api/OnRamp");
134
+ Object.defineProperty(exports, "OnRamp", { enumerable: true, get: function () { return OnRamp_2.OnRamp; } });
135
+ var JWT_2 = require("./api/JWT");
136
+ Object.defineProperty(exports, "JWT", { enumerable: true, get: function () { return JWT_2.JWT; } });
95
137
  var client_2 = require("./http/client");
96
138
  Object.defineProperty(exports, "UniversalHttpClient", { enumerable: true, get: function () { return client_2.UniversalHttpClient; } });
97
139
  var hmac_2 = require("./auth/hmac");
98
140
  Object.defineProperty(exports, "HmacAuthenticator", { enumerable: true, get: function () { return hmac_2.HmacAuthenticator; } });
141
+ var jwt_2 = require("./auth/jwt");
142
+ Object.defineProperty(exports, "JWTAuthenticator", { enumerable: true, get: function () { return jwt_2.JWTAuthenticator; } });
99
143
  // Smart Wallet exports
100
144
  var smart_wallets_2 = require("./smart-wallets");
101
145
  Object.defineProperty(exports, "SmartWalletClient", { enumerable: true, get: function () { return smart_wallets_2.SmartWalletClient; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export * from './jwt';
1
2
  export type IntentMethod = 'usd' | 'fromAmount' | 'toAmount';
2
3
  export interface Intent {
3
4
  method: IntentMethod;
@@ -36,7 +37,12 @@ export interface QuoteRequestParams {
36
37
  fromToken: string;
37
38
  fromAddress: string;
38
39
  intent: Intent;
39
- recipientId: string;
40
+ recipientId?: string;
41
+ settlementDetails?: {
42
+ toChain: string;
43
+ toToken: string;
44
+ toAddress: string;
45
+ };
40
46
  timeout?: number;
41
47
  }
42
48
  export interface QuoteResponse {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,YAAY,GAAG,UAAU,CAAC;AAE7D,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,kBAAkB,EAAE,GAAG,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,MAAM,WAAW,+BAA+B;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;IACF,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE;QACf,MAAM,CAAC,EAAE;YACP,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,IAAI,CAAC;SACjB,CAAC;QACF,IAAI,CAAC,EAAE;YACL,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;YAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;YACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;YACtB,SAAS,EAAE,IAAI,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,aAAa,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;AACpG,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,WAAW,CAAC;AAE7F,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE;QACX,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,qBAAqB,CAAC;QAC9B,IAAI,EAAE,uBAAuB,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,0BAA0B,EAAE,MAAM,CAAC;QACnC,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAGD,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,21 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
17
  exports.TransactionStatus = void 0;
18
+ __exportStar(require("./jwt"), exports);
4
19
  var TransactionStatus;
5
20
  (function (TransactionStatus) {
6
21
  TransactionStatus["PENDING"] = "Pending";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;AAOA,IAAY,iBAOX;AAPD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,sCAAiB,CAAA;IACjB,4CAAuB,CAAA;IACvB,0CAAqB,CAAA;AACvB,CAAC,EAPW,iBAAiB,iCAAjB,iBAAiB,QAO5B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wCAAsB;AAStB,IAAY,iBAOX;AAPD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,sCAAiB,CAAA;IACjB,4CAAuB,CAAA;IACvB,0CAAqB,CAAA;AACvB,CAAC,EAPW,iBAAiB,iCAAjB,iBAAiB,QAO5B"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * JWT Authentication & Authorization Types
3
+ *
4
+ * JWT serves dual purposes:
5
+ * - Authentication: Verifies identity via signature
6
+ * - Authorization: Permissions control access to resources
7
+ */
8
+ /**
9
+ * Available permissions for JWT-based authorization
10
+ */
11
+ export type JWTPermission = 'quotes:read' | 'offramp:read' | 'onramp:read' | 'transactions:read' | 'recipients:read' | 'recipients:write';
12
+ /**
13
+ * Request parameters for generating a JWT
14
+ */
15
+ export interface GenerateJWTRequest {
16
+ clientId: string;
17
+ clientSecret: string;
18
+ expiresIn?: number;
19
+ permissions?: JWTPermission[];
20
+ }
21
+ /**
22
+ * Response from JWT generation
23
+ */
24
+ export interface GenerateJWTResponse {
25
+ token: string;
26
+ expiresAt: string;
27
+ }
28
+ /**
29
+ * Configuration for JWT-based SDK authentication
30
+ */
31
+ export interface JWTAuthConfig {
32
+ token: string;
33
+ requestTimeout?: number;
34
+ debug?: boolean;
35
+ alchemyApiKey?: string;
36
+ }
37
+ //# sourceMappingURL=jwt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jwt.d.ts","sourceRoot":"","sources":["../../../src/types/jwt.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,aAAa,GACb,cAAc,GACd,aAAa,GACb,mBAAmB,GACnB,iBAAiB,GACjB,kBAAkB,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,aAAa,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * JWT Authentication & Authorization Types
4
+ *
5
+ * JWT serves dual purposes:
6
+ * - Authentication: Verifies identity via signature
7
+ * - Authorization: Permissions control access to resources
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=jwt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jwt.js","sourceRoot":"","sources":["../../../src/types/jwt.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
@@ -5,7 +5,12 @@ import { Intent } from './index';
5
5
  export interface OnRampQuoteParams {
6
6
  fromCurrency: string;
7
7
  intent: Intent;
8
- recipientId: string;
8
+ recipientId?: string;
9
+ settlementDetails?: {
10
+ toChain: string;
11
+ toToken: string;
12
+ toAddress: string;
13
+ };
9
14
  }
10
15
  export interface OnRampQuoteResponse {
11
16
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"onramp.d.ts","sourceRoot":"","sources":["../../../src/types/onramp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,YAAY,EAAE,GAAG,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;CAC1B"}
1
+ {"version":3,"file":"onramp.d.ts","sourceRoot":"","sources":["../../../src/types/onramp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC;IAChB,YAAY,EAAE,GAAG,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;CAC1B"}
@@ -0,0 +1,41 @@
1
+ import { UniversalHttpClient } from '../http/client';
2
+ import { GenerateJWTRequest, GenerateJWTResponse } from '../types/jwt';
3
+ /**
4
+ * API wrapper for JWT authentication operations
5
+ *
6
+ * Handles generation of JWTs for client-side authentication.
7
+ * Note: "token" in this context refers to JWT (authentication), not ERC-20 tokens (assets).
8
+ */
9
+ export declare class JWT {
10
+ private httpClient;
11
+ constructor(httpClient: UniversalHttpClient);
12
+ /**
13
+ * Generates a JWT for authentication using project credentials
14
+ *
15
+ * This endpoint does NOT use HMAC authentication - it directly validates
16
+ * the clientId and clientSecret to generate a JWT.
17
+ *
18
+ * @param params JWT generation parameters
19
+ * @returns JWT string and expiration timestamp
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * // Create an unauthenticated client
24
+ * const client = new UniversalHttpClient('https://api.orda.network/v1');
25
+ *
26
+ * // Generate a JWT
27
+ * const jwtApi = new JWT(client);
28
+ * const { token, expiresAt } = await jwtApi.generate({
29
+ * clientId: 'proj_xxx',
30
+ * clientSecret: 'secret_yyy',
31
+ * expiresIn: 3600,
32
+ * permissions: ['quotes:read', 'transactions:read']
33
+ * });
34
+ *
35
+ * // Use the JWT with SDK
36
+ * const sdk = new OrdaSDK({ token });
37
+ * ```
38
+ */
39
+ generate(params: GenerateJWTRequest): Promise<GenerateJWTResponse>;
40
+ }
41
+ //# sourceMappingURL=JWT.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JWT.d.ts","sourceRoot":"","sources":["../../../src/api/JWT.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEvE;;;;;GAKG;AACH,qBAAa,GAAG;IACF,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,mBAAmB;IAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAuBzE"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * API wrapper for JWT authentication operations
3
+ *
4
+ * Handles generation of JWTs for client-side authentication.
5
+ * Note: "token" in this context refers to JWT (authentication), not ERC-20 tokens (assets).
6
+ */
7
+ export class JWT {
8
+ constructor(httpClient) {
9
+ this.httpClient = httpClient;
10
+ }
11
+ /**
12
+ * Generates a JWT for authentication using project credentials
13
+ *
14
+ * This endpoint does NOT use HMAC authentication - it directly validates
15
+ * the clientId and clientSecret to generate a JWT.
16
+ *
17
+ * @param params JWT generation parameters
18
+ * @returns JWT string and expiration timestamp
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * // Create an unauthenticated client
23
+ * const client = new UniversalHttpClient('https://api.orda.network/v1');
24
+ *
25
+ * // Generate a JWT
26
+ * const jwtApi = new JWT(client);
27
+ * const { token, expiresAt } = await jwtApi.generate({
28
+ * clientId: 'proj_xxx',
29
+ * clientSecret: 'secret_yyy',
30
+ * expiresIn: 3600,
31
+ * permissions: ['quotes:read', 'transactions:read']
32
+ * });
33
+ *
34
+ * // Use the JWT with SDK
35
+ * const sdk = new OrdaSDK({ token });
36
+ * ```
37
+ */
38
+ async generate(params) {
39
+ const { clientId, clientSecret, expiresIn, permissions } = params;
40
+ const body = {};
41
+ if (expiresIn) {
42
+ body.expiresIn = expiresIn;
43
+ }
44
+ if (permissions) {
45
+ body.permissions = permissions;
46
+ }
47
+ const response = await this.httpClient.request({
48
+ path: '/tokens',
49
+ method: 'POST',
50
+ headers: {
51
+ 'x-client-id': clientId,
52
+ 'x-client-secret': clientSecret
53
+ },
54
+ body: Object.keys(body).length > 0 ? body : undefined
55
+ });
56
+ return response;
57
+ }
58
+ }
59
+ //# sourceMappingURL=JWT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JWT.js","sourceRoot":"","sources":["../../../src/api/JWT.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,MAAM,OAAO,GAAG;IACd,YAAoB,UAA+B;QAA/B,eAAU,GAAV,UAAU,CAAqB;IAAG,CAAC;IAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,KAAK,CAAC,QAAQ,CAAC,MAA0B;QACvC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAElE,MAAM,IAAI,GAAwB,EAAE,CAAC;QACrC,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QACjC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAsB;YAClE,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,QAAQ;gBACvB,iBAAiB,EAAE,YAAY;aAChC;YACD,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SACtD,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
@@ -11,7 +11,7 @@ export interface OffRampPollingOptions {
11
11
  /**
12
12
  * API wrapper for off-ramp (crypto to fiat) operations
13
13
  */
14
- export declare class OffRampAPI {
14
+ export declare class OffRamp {
15
15
  private httpClient;
16
16
  constructor(httpClient: UniversalHttpClient);
17
17
  /**
@@ -42,4 +42,4 @@ export declare class OffRampAPI {
42
42
  */
43
43
  private sleep;
44
44
  }
45
- //# sourceMappingURL=OffRampAPI.d.ts.map
45
+ //# sourceMappingURL=OffRamp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OffRamp.d.ts","sourceRoot":"","sources":["../../../src/api/OffRamp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACtD;AAED;;GAEG;AACH,qBAAa,OAAO;IACN,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,mBAAmB;IAEnD;;;;OAIG;IACG,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAiB7E;;;;OAIG;IACG,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAItE;;;;;OAKG;IACG,iBAAiB,CACrB,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,qBAAqB,CAAC;IAqCjC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * API wrapper for off-ramp (crypto to fiat) operations
3
3
  */
4
- export class OffRampAPI {
4
+ export class OffRamp {
5
5
  constructor(httpClient) {
6
6
  this.httpClient = httpClient;
7
7
  }
@@ -11,6 +11,15 @@ export class OffRampAPI {
11
11
  * @returns Off-ramp quote response
12
12
  */
13
13
  async requestQuote(params) {
14
+ // mutual exclusivity: either recipientId OR settlementDetails, not both
15
+ const hasRecipientId = !!params.recipientId;
16
+ const hasInlineData = !!(params.kycInformation && params.fiatSettlementDetails);
17
+ if (hasRecipientId && hasInlineData) {
18
+ throw new Error('Cannot provide both recipientId and inline KYC/settlement details');
19
+ }
20
+ if (!hasRecipientId && !hasInlineData) {
21
+ throw new Error('Must provide either recipientId OR both kycInformation and fiatSettlementDetails');
22
+ }
14
23
  return this.httpClient.post('/offramp/quote', params);
15
24
  }
16
25
  /**
@@ -70,4 +79,4 @@ export class OffRampAPI {
70
79
  return new Promise((resolve) => setTimeout(resolve, ms));
71
80
  }
72
81
  }
73
- //# sourceMappingURL=OffRampAPI.js.map
82
+ //# sourceMappingURL=OffRamp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OffRamp.js","sourceRoot":"","sources":["../../../src/api/OffRamp.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export interface OnRampPollingOptions {
8
8
  /**
9
9
  * API wrapper for on-ramp (fiat to crypto) operations
10
10
  */
11
- export declare class OnRampAPI {
11
+ export declare class OnRamp {
12
12
  private httpClient;
13
13
  constructor(httpClient: UniversalHttpClient);
14
14
  /**
@@ -39,4 +39,4 @@ export declare class OnRampAPI {
39
39
  */
40
40
  private sleep;
41
41
  }
42
- //# sourceMappingURL=OnRampAPI.d.ts.map
42
+ //# sourceMappingURL=OnRamp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnRamp.d.ts","sourceRoot":"","sources":["../../../src/api/OnRamp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAG/F,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,MAAM;IACL,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,mBAAmB;IAEnD;;;;OAIG;IACG,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAY3E;;;;OAIG;IACG,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAIrE;;;;;OAKG;IACG,iBAAiB,CACrB,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,oBAAoB,CAAC;IAmChC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * API wrapper for on-ramp (fiat to crypto) operations
3
3
  */
4
- export class OnRampAPI {
4
+ export class OnRamp {
5
5
  constructor(httpClient) {
6
6
  this.httpClient = httpClient;
7
7
  }
@@ -11,6 +11,13 @@ export class OnRampAPI {
11
11
  * @returns On-ramp quote response with deposit instructions
12
12
  */
13
13
  async requestQuote(params) {
14
+ // mutual exclusivity: either recipientId OR settlementDetails, not both
15
+ if (params.recipientId && params.settlementDetails) {
16
+ throw new Error('Cannot provide both recipientId and settlementDetails');
17
+ }
18
+ if (!params.recipientId && !params.settlementDetails) {
19
+ throw new Error('Must provide either recipientId or settlementDetails');
20
+ }
14
21
  return this.httpClient.post('/onramp/quote', params);
15
22
  }
16
23
  /**
@@ -70,4 +77,4 @@ export class OnRampAPI {
70
77
  return new Promise((resolve) => setTimeout(resolve, ms));
71
78
  }
72
79
  }
73
- //# sourceMappingURL=OnRampAPI.js.map
80
+ //# sourceMappingURL=OnRamp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnRamp.js","sourceRoot":"","sources":["../../../src/api/OnRamp.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,MAAM,OAAO,MAAM;IACjB,YAAoB,UAA+B;QAA/B,eAAU,GAAV,UAAU,CAAqB;IAAG,CAAC;IAEvD;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAAC,MAAyB;QAC1C,wEAAwE;QACxE,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAsB,eAAe,EAAE,MAAM,CAAC,CAAC;IAC5E,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,aAAqB;QACnC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAuB,gBAAgB,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,aAAqB,EACrB,OAA8B;QAE9B,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,KAAK,CAAC,CAAC,UAAU;QAC3D,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,OAAO,CAAC,CAAC,kBAAkB;QACnE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,UAAU,GAAkB,IAAI,CAAC;QAErC,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,iCAAiC,SAAS,oBAAoB,UAAU,EAAE,CAAC,CAAC;YAC9F,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBACrD,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC;gBAEtC,IAAI,aAAa,KAAK,UAAU,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;oBAC5D,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;gBACxC,CAAC;gBACD,UAAU,GAAG,aAAa,CAAC;gBAE3B,IAAI,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;oBACzC,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,wBAAwB;YACxD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAChE,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBAC7B,SAAS,CAAC,4BAA4B;gBACxC,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,MAAc;QACrC,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;CACF"}
@@ -3,7 +3,7 @@ import { QuoteRequestParams, QuoteResponse } from '../types';
3
3
  /**
4
4
  * API wrapper for quote operations
5
5
  */
6
- export declare class QuoteAPI {
6
+ export declare class Quote {
7
7
  private httpClient;
8
8
  constructor(httpClient: UniversalHttpClient);
9
9
  /**
@@ -13,4 +13,4 @@ export declare class QuoteAPI {
13
13
  */
14
14
  request(params: QuoteRequestParams): Promise<QuoteResponse>;
15
15
  }
16
- //# sourceMappingURL=QuoteAPI.d.ts.map
16
+ //# sourceMappingURL=Quote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Quote.d.ts","sourceRoot":"","sources":["../../../src/api/Quote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE7D;;GAEG;AACH,qBAAa,KAAK;IACJ,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,mBAAmB;IAEnD;;;;OAIG;IACG,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;CAWlE"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * API wrapper for quote operations
3
+ */
4
+ export class Quote {
5
+ constructor(httpClient) {
6
+ this.httpClient = httpClient;
7
+ }
8
+ /**
9
+ * Requests a quote for a cross-chain transfer
10
+ * @param params Quote request parameters
11
+ * @returns Quote response with transaction ID and transfer details
12
+ */
13
+ async request(params) {
14
+ // mutual exclusivity: either recipientId OR settlementDetails, not both
15
+ if (params.recipientId && params.settlementDetails) {
16
+ throw new Error('Cannot provide both recipientId and settlementDetails');
17
+ }
18
+ if (!params.recipientId && !params.settlementDetails) {
19
+ throw new Error('Must provide either recipientId or settlementDetails');
20
+ }
21
+ return this.httpClient.post('/quote', params);
22
+ }
23
+ }
24
+ //# sourceMappingURL=Quote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Quote.js","sourceRoot":"","sources":["../../../src/api/Quote.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,OAAO,KAAK;IAChB,YAAoB,UAA+B;QAA/B,eAAU,GAAV,UAAU,CAAqB;IAAG,CAAC;IAEvD;;;;OAIG;IACH,KAAK,CAAC,OAAO,CAAC,MAA0B;QACtC,wEAAwE;QACxE,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAgB,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF"}
@@ -1,6 +1,6 @@
1
1
  import { UniversalHttpClient } from '../http/client';
2
2
  import { CreateRecipientParams, UpdateRecipientSettlementParams, DeactivateRecipientParams, CreateRecipientResponse, UpdateRecipientResponse, DeactivateRecipientResponse } from '../types';
3
- export declare class RecipientAPI {
3
+ export declare class Recipient {
4
4
  private httpClient;
5
5
  constructor(httpClient: UniversalHttpClient);
6
6
  /**
@@ -22,4 +22,4 @@ export declare class RecipientAPI {
22
22
  */
23
23
  deactivate(params: DeactivateRecipientParams): Promise<DeactivateRecipientResponse>;
24
24
  }
25
- //# sourceMappingURL=RecipientAPI.d.ts.map
25
+ //# sourceMappingURL=Recipient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Recipient.d.ts","sourceRoot":"","sources":["../../../src/api/Recipient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,qBAAqB,EACrB,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,UAAU,CAAC;AAElB,qBAAa,SAAS;IACR,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,mBAAmB;IAEnD;;;;OAIG;IACG,MAAM,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAI7E;;;;OAIG;IACG,gBAAgB,CACpB,MAAM,EAAE,+BAA+B,GACtC,OAAO,CAAC,uBAAuB,CAAC;IAInC;;;;OAIG;IACG,UAAU,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,2BAA2B,CAAC;CAG1F"}