@gala-chain/launchpad-sdk 8.0.2 → 9.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. package/CHANGELOG.md +362 -0
  2. package/EXAMPLES.md +95 -681
  3. package/MIGRATING-TO-9.0.md +301 -0
  4. package/README.md +46 -17
  5. package/dist/LaunchpadSDK.d.ts +150 -419
  6. package/dist/LaunchpadSDK.d.ts.map +1 -1
  7. package/dist/api/LaunchpadAPI.d.ts +37 -43
  8. package/dist/api/LaunchpadAPI.d.ts.map +1 -1
  9. package/dist/auth/SessionAuthService.d.ts.map +1 -1
  10. package/dist/auth/SignatureAuth.d.ts +2 -2
  11. package/dist/auth/SignatureAuth.d.ts.map +1 -1
  12. package/dist/auth/types.d.ts +1 -1
  13. package/dist/auth/types.d.ts.map +1 -1
  14. package/dist/config/environments.d.ts +7 -2
  15. package/dist/config/environments.d.ts.map +1 -1
  16. package/dist/constants/decimals.d.ts +0 -23
  17. package/dist/constants/decimals.d.ts.map +1 -1
  18. package/dist/constants/endpoints.d.ts +0 -7
  19. package/dist/constants/endpoints.d.ts.map +1 -1
  20. package/dist/constants/version.generated.d.ts +1 -1
  21. package/dist/constants/version.generated.d.ts.map +1 -1
  22. package/dist/helpers/sdk.d.ts.map +1 -1
  23. package/dist/index.browser.d.ts +11 -23
  24. package/dist/index.browser.d.ts.map +1 -1
  25. package/dist/index.browser.esm.js +1 -1
  26. package/dist/index.cjs +1 -1
  27. package/dist/index.esm.js +1 -1
  28. package/dist/index.js +1 -1
  29. package/dist/index.node.d.ts +4 -5
  30. package/dist/index.node.d.ts.map +1 -1
  31. package/dist/launchpad/bundle-submission.d.ts +1 -9
  32. package/dist/launchpad/bundle-submission.d.ts.map +1 -1
  33. package/dist/launchpad/sell-fee-ceiling.d.ts +66 -0
  34. package/dist/launchpad/sell-fee-ceiling.d.ts.map +1 -0
  35. package/dist/launchpad/transport.d.ts +2 -1
  36. package/dist/launchpad/transport.d.ts.map +1 -1
  37. package/dist/launchpad/writes.d.ts +30 -2
  38. package/dist/launchpad/writes.d.ts.map +1 -1
  39. package/dist/native.cjs +1 -1
  40. package/dist/native.d.ts +3 -4
  41. package/dist/native.d.ts.map +1 -1
  42. package/dist/native.esm.js +1 -1
  43. package/dist/schemas/launchpad.d.ts +4 -4
  44. package/dist/schemas/launchpad.d.ts.map +1 -1
  45. package/dist/schemas/user.d.ts +0 -15
  46. package/dist/schemas/user.d.ts.map +1 -1
  47. package/dist/services/AbstractCacheService.d.ts +2 -2
  48. package/dist/services/BundleService.d.ts +9 -1
  49. package/dist/services/BundleService.d.ts.map +1 -1
  50. package/dist/services/GalaChainBalanceService.d.ts +17 -89
  51. package/dist/services/GalaChainBalanceService.d.ts.map +1 -1
  52. package/dist/services/GalaChainLockService.d.ts +19 -20
  53. package/dist/services/GalaChainLockService.d.ts.map +1 -1
  54. package/dist/services/GalaChainService.d.ts +28 -64
  55. package/dist/services/GalaChainService.d.ts.map +1 -1
  56. package/dist/services/GalaChainTokenService.d.ts +25 -53
  57. package/dist/services/GalaChainTokenService.d.ts.map +1 -1
  58. package/dist/services/GalaChainTransferService.d.ts +42 -41
  59. package/dist/services/GalaChainTransferService.d.ts.map +1 -1
  60. package/dist/services/LaunchpadPriceService.d.ts +66 -0
  61. package/dist/services/LaunchpadPriceService.d.ts.map +1 -0
  62. package/dist/services/NftCollectionService.d.ts +22 -6
  63. package/dist/services/NftCollectionService.d.ts.map +1 -1
  64. package/dist/services/TokenResolverService.d.ts +5 -5
  65. package/dist/services/TokenResolverService.d.ts.map +1 -1
  66. package/dist/services/TradingQuotesService.d.ts +3 -5
  67. package/dist/services/TradingQuotesService.d.ts.map +1 -1
  68. package/dist/services/gateway-transport.d.ts +32 -0
  69. package/dist/services/gateway-transport.d.ts.map +1 -0
  70. package/dist/services/gateway-writes.d.ts +83 -0
  71. package/dist/services/gateway-writes.d.ts.map +1 -0
  72. package/dist/signing/index.d.ts +2 -3
  73. package/dist/signing/index.d.ts.map +1 -1
  74. package/dist/signing/signers.d.ts +23 -11
  75. package/dist/signing/signers.d.ts.map +1 -1
  76. package/dist/signing/types.d.ts +7 -10
  77. package/dist/signing/types.d.ts.map +1 -1
  78. package/dist/types/burn.dto.d.ts +4 -2
  79. package/dist/types/burn.dto.d.ts.map +1 -1
  80. package/dist/types/common.d.ts +2 -23
  81. package/dist/types/common.d.ts.map +1 -1
  82. package/dist/types/dto.d.ts +0 -5
  83. package/dist/types/dto.d.ts.map +1 -1
  84. package/dist/types/launchpad.dto.d.ts +0 -269
  85. package/dist/types/launchpad.dto.d.ts.map +1 -1
  86. package/dist/types/lock.dto.d.ts +12 -7
  87. package/dist/types/lock.dto.d.ts.map +1 -1
  88. package/dist/types/options.dto.d.ts +8 -34
  89. package/dist/types/options.dto.d.ts.map +1 -1
  90. package/dist/types/session-auth.dto.d.ts +2 -4
  91. package/dist/types/session-auth.dto.d.ts.map +1 -1
  92. package/dist/types/user.dto.d.ts +7 -62
  93. package/dist/types/user.dto.d.ts.map +1 -1
  94. package/dist/utils/address-formatter.d.ts +10 -2
  95. package/dist/utils/address-formatter.d.ts.map +1 -1
  96. package/dist/utils/agent-config.d.ts +9 -4
  97. package/dist/utils/agent-config.d.ts.map +1 -1
  98. package/dist/utils/auto-pagination.d.ts +6 -239
  99. package/dist/utils/auto-pagination.d.ts.map +1 -1
  100. package/dist/utils/bignumber-helpers.d.ts +3 -2
  101. package/dist/utils/bignumber-helpers.d.ts.map +1 -1
  102. package/dist/utils/delimiter-parser.d.ts +0 -13
  103. package/dist/utils/delimiter-parser.d.ts.map +1 -1
  104. package/dist/utils/error-patterns.d.ts +0 -47
  105. package/dist/utils/error-patterns.d.ts.map +1 -1
  106. package/dist/utils/error-wrapper.d.ts +5 -5
  107. package/dist/utils/errors.d.ts +0 -308
  108. package/dist/utils/errors.d.ts.map +1 -1
  109. package/dist/utils/http.d.ts +15 -3
  110. package/dist/utils/http.d.ts.map +1 -1
  111. package/dist/utils/token-format-converter.d.ts +1 -1
  112. package/dist/utils/token-parser.d.ts +6 -127
  113. package/dist/utils/token-parser.d.ts.map +1 -1
  114. package/dist/utils/token-stringification.d.ts +7 -7
  115. package/dist/utils/token-stringification.d.ts.map +1 -1
  116. package/dist/utils/tokenNameNormalizer.d.ts +2 -2
  117. package/dist/utils/tokenNormalizer.d.ts +5 -29
  118. package/dist/utils/tokenNormalizer.d.ts.map +1 -1
  119. package/dist/utils/trade-quote.d.ts +32 -0
  120. package/dist/utils/trade-quote.d.ts.map +1 -0
  121. package/dist/utils/unique-key-generator.d.ts +7 -134
  122. package/dist/utils/unique-key-generator.d.ts.map +1 -1
  123. package/dist/utils/validation-helpers.d.ts +3 -5
  124. package/dist/utils/validation-helpers.d.ts.map +1 -1
  125. package/package.json +47 -87
  126. package/dist/api/dto/BurnTokensDto.d.ts +0 -77
  127. package/dist/api/dto/BurnTokensDto.d.ts.map +0 -1
  128. package/dist/api/dto/LockTokenDto.d.ts +0 -85
  129. package/dist/api/dto/LockTokenDto.d.ts.map +0 -1
  130. package/dist/api/dto/TransferTokenDto.d.ts +0 -64
  131. package/dist/api/dto/TransferTokenDto.d.ts.map +0 -1
  132. package/dist/api/dto/UnlockTokenDto.d.ts +0 -74
  133. package/dist/api/dto/UnlockTokenDto.d.ts.map +0 -1
  134. package/dist/bridge/BridgeService.d.ts +0 -484
  135. package/dist/bridge/BridgeService.d.ts.map +0 -1
  136. package/dist/bridge/GalaConnectClient.d.ts +0 -170
  137. package/dist/bridge/GalaConnectClient.d.ts.map +0 -1
  138. package/dist/bridge/constants/index.d.ts +0 -7
  139. package/dist/bridge/constants/index.d.ts.map +0 -1
  140. package/dist/bridge/constants/tokens.d.ts +0 -212
  141. package/dist/bridge/constants/tokens.d.ts.map +0 -1
  142. package/dist/bridge/index.d.ts +0 -24
  143. package/dist/bridge/index.d.ts.map +0 -1
  144. package/dist/bridge/public-types.d.ts +0 -2
  145. package/dist/bridge/public-types.d.ts.map +0 -1
  146. package/dist/bridge/strategies/BridgeStrategy.d.ts +0 -204
  147. package/dist/bridge/strategies/BridgeStrategy.d.ts.map +0 -1
  148. package/dist/bridge/strategies/EthereumBridgeStrategy.d.ts +0 -178
  149. package/dist/bridge/strategies/EthereumBridgeStrategy.d.ts.map +0 -1
  150. package/dist/bridge/strategies/SolanaBridgeStrategy.d.ts +0 -236
  151. package/dist/bridge/strategies/SolanaBridgeStrategy.d.ts.map +0 -1
  152. package/dist/bridge/types/bridge.dto.d.ts +0 -772
  153. package/dist/bridge/types/bridge.dto.d.ts.map +0 -1
  154. package/dist/bridge/types/bridgeable-token.dto.d.ts +0 -209
  155. package/dist/bridge/types/bridgeable-token.dto.d.ts.map +0 -1
  156. package/dist/bridge/types/eip712.d.ts +0 -66
  157. package/dist/bridge/types/eip712.d.ts.map +0 -1
  158. package/dist/bridge/types/index.d.ts +0 -8
  159. package/dist/bridge/types/index.d.ts.map +0 -1
  160. package/dist/bridge/utils/RateLimiter.d.ts +0 -34
  161. package/dist/bridge/utils/RateLimiter.d.ts.map +0 -1
  162. package/dist/bridge/utils/address-formatter.d.ts +0 -25
  163. package/dist/bridge/utils/address-formatter.d.ts.map +0 -1
  164. package/dist/bridge/utils/addressValidation.d.ts +0 -200
  165. package/dist/bridge/utils/addressValidation.d.ts.map +0 -1
  166. package/dist/bridge/utils/balanceHelpers.d.ts +0 -215
  167. package/dist/bridge/utils/balanceHelpers.d.ts.map +0 -1
  168. package/dist/bridge/utils/bridgeErrors.d.ts +0 -98
  169. package/dist/bridge/utils/bridgeErrors.d.ts.map +0 -1
  170. package/dist/bridge/utils/bridgeOutHelpers.d.ts +0 -68
  171. package/dist/bridge/utils/bridgeOutHelpers.d.ts.map +0 -1
  172. package/dist/bridge/utils/bridgePayload.d.ts +0 -98
  173. package/dist/bridge/utils/bridgePayload.d.ts.map +0 -1
  174. package/dist/bridge/utils/bridgeStatusParser.d.ts +0 -76
  175. package/dist/bridge/utils/bridgeStatusParser.d.ts.map +0 -1
  176. package/dist/bridge/utils/eip712Helpers.d.ts +0 -66
  177. package/dist/bridge/utils/eip712Helpers.d.ts.map +0 -1
  178. package/dist/bridge/utils/index.d.ts +0 -19
  179. package/dist/bridge/utils/index.d.ts.map +0 -1
  180. package/dist/bridge/utils/retry.d.ts +0 -112
  181. package/dist/bridge/utils/retry.d.ts.map +0 -1
  182. package/dist/bridge/utils/strategyDelegation.d.ts +0 -126
  183. package/dist/bridge/utils/strategyDelegation.d.ts.map +0 -1
  184. package/dist/bridge/utils/tokenIdUtils.d.ts +0 -86
  185. package/dist/bridge/utils/tokenIdUtils.d.ts.map +0 -1
  186. package/dist/bridge/utils/tokenMath.d.ts +0 -39
  187. package/dist/bridge/utils/tokenMath.d.ts.map +0 -1
  188. package/dist/bridge/utils/tokenMetadataResolver.d.ts +0 -97
  189. package/dist/bridge/utils/tokenMetadataResolver.d.ts.map +0 -1
  190. package/dist/helpers/wallet.d.ts +0 -151
  191. package/dist/helpers/wallet.d.ts.map +0 -1
  192. package/dist/react/WalletContext.d.ts +0 -60
  193. package/dist/react/WalletContext.d.ts.map +0 -1
  194. package/dist/react/index.d.ts +0 -65
  195. package/dist/react/index.d.ts.map +0 -1
  196. package/dist/react/types.d.ts +0 -76
  197. package/dist/react/types.d.ts.map +0 -1
  198. package/dist/react/useWallet.d.ts +0 -123
  199. package/dist/react/useWallet.d.ts.map +0 -1
  200. package/dist/react/useWalletConnection.d.ts +0 -89
  201. package/dist/react/useWalletConnection.d.ts.map +0 -1
  202. package/dist/react/useWalletDetection.d.ts +0 -81
  203. package/dist/react/useWalletDetection.d.ts.map +0 -1
  204. package/dist/react.cjs +0 -1
  205. package/dist/react.esm.js +0 -1
  206. package/dist/services/AbstractTokenFetchService.d.ts +0 -150
  207. package/dist/services/AbstractTokenFetchService.d.ts.map +0 -1
  208. package/dist/services/BatchedCacheService.d.ts +0 -133
  209. package/dist/services/BatchedCacheService.d.ts.map +0 -1
  210. package/dist/services/BridgeableTokenCache.d.ts +0 -120
  211. package/dist/services/BridgeableTokenCache.d.ts.map +0 -1
  212. package/dist/services/BridgeableTokenService.d.ts +0 -218
  213. package/dist/services/BridgeableTokenService.d.ts.map +0 -1
  214. package/dist/services/DexService.d.ts +0 -440
  215. package/dist/services/DexService.d.ts.map +0 -1
  216. package/dist/services/NetworkKeyedCacheService.d.ts +0 -185
  217. package/dist/services/NetworkKeyedCacheService.d.ts.map +0 -1
  218. package/dist/services/PriceHistoryService.d.ts +0 -209
  219. package/dist/services/PriceHistoryService.d.ts.map +0 -1
  220. package/dist/services/WrapService.d.ts +0 -171
  221. package/dist/services/WrapService.d.ts.map +0 -1
  222. package/dist/services/WrappableTokenCache.d.ts +0 -100
  223. package/dist/services/WrappableTokenCache.d.ts.map +0 -1
  224. package/dist/services/WrappableTokenService.d.ts +0 -130
  225. package/dist/services/WrappableTokenService.d.ts.map +0 -1
  226. package/dist/setup.d.ts +0 -8
  227. package/dist/setup.d.ts.map +0 -1
  228. package/dist/signing/eip712.d.ts +0 -13
  229. package/dist/signing/eip712.d.ts.map +0 -1
  230. package/dist/tokens/transfers.d.ts +0 -95
  231. package/dist/tokens/transfers.d.ts.map +0 -1
  232. package/dist/types/galachain-api.types.d.ts +0 -297
  233. package/dist/types/galachain-api.types.d.ts.map +0 -1
  234. package/dist/types/priceHistory.dto.d.ts +0 -134
  235. package/dist/types/priceHistory.dto.d.ts.map +0 -1
  236. package/dist/types/token.types.d.ts +0 -359
  237. package/dist/types/token.types.d.ts.map +0 -1
  238. package/dist/types/wrappable-token.dto.d.ts +0 -305
  239. package/dist/types/wrappable-token.dto.d.ts.map +0 -1
  240. package/dist/utils/crypto-compat.d.ts +0 -40
  241. package/dist/utils/crypto-compat.d.ts.map +0 -1
  242. package/dist/utils/load-env.d.ts +0 -31
  243. package/dist/utils/load-env.d.ts.map +0 -1
  244. package/dist/utils/token-instance-key.d.ts +0 -57
  245. package/dist/utils/token-instance-key.d.ts.map +0 -1
  246. package/dist/utils/wallet.d.ts +0 -166
  247. package/dist/utils/wallet.d.ts.map +0 -1
  248. package/dist/wallet/ExternalWalletProvider.d.ts +0 -90
  249. package/dist/wallet/ExternalWalletProvider.d.ts.map +0 -1
  250. package/dist/wallet/GalaWalletProvider.d.ts +0 -122
  251. package/dist/wallet/GalaWalletProvider.d.ts.map +0 -1
  252. package/dist/wallet/PrivateKeyProvider.d.ts +0 -90
  253. package/dist/wallet/PrivateKeyProvider.d.ts.map +0 -1
  254. package/dist/wallet/detection.d.ts +0 -107
  255. package/dist/wallet/detection.d.ts.map +0 -1
  256. package/dist/wallet/event-handlers.d.ts +0 -50
  257. package/dist/wallet/event-handlers.d.ts.map +0 -1
  258. package/dist/wallet/index.d.ts +0 -51
  259. package/dist/wallet/index.d.ts.map +0 -1
  260. package/dist/wallet/signing-operation.d.ts +0 -19
  261. package/dist/wallet/signing-operation.d.ts.map +0 -1
  262. package/dist/wallet/typed-data-helpers.d.ts +0 -68
  263. package/dist/wallet/typed-data-helpers.d.ts.map +0 -1
  264. package/dist/wallet/types.d.ts +0 -267
  265. package/dist/wallet/types.d.ts.map +0 -1
  266. package/dist/wallet/utils.d.ts +0 -117
  267. package/dist/wallet/utils.d.ts.map +0 -1
  268. package/dist/wallet.cjs +0 -1
  269. package/dist/wallet.esm.js +0 -1
@@ -1,23 +1,19 @@
1
1
  /**
2
2
  * GalaChain Token Service
3
3
  *
4
- * Service responsible for token metadata and class queries from GalaChain.
5
- * Extracted from GalaChainService for single responsibility.
6
- *
7
- * Features:
8
- * - Token class metadata fetching (symbol, decimals, name, image)
9
- * - Token supply information queries
10
- * - Support for both native and wrapped tokens
4
+ * Token classes from GalaChain (metadata and supply). The reads themselves (`FetchTokenClasses`,
5
+ * `FetchTokenClassesWithSupply`, the answer's checks) are `@gala-chain/gala-core-sdk`'s
6
+ * `GatewayReads`; this service keeps launchpad's token-id spellings, results and error contract on
7
+ * top of it, and sends the reads through the SDK's unauthenticated gateway axios instance exactly
8
+ * as before.
11
9
  *
12
10
  * @example
13
11
  * ```typescript
14
12
  * const tokenService = new GalaChainTokenService(http, debug, publicAxios);
15
13
  *
16
- * // Fetch native GALA token metadata
17
14
  * const gala = await tokenService.fetchTokenClassFromChain('GALA|Unit|none|none');
18
15
  * console.log(`Symbol: ${gala.symbol}`); // "GALA"
19
16
  *
20
- * // Fetch token supply information
21
17
  * const supplies = await tokenService.fetchTokenClassesWithSupply([
22
18
  * { collection: 'GALA', category: 'Unit', type: 'none', additionalKey: 'none' }
23
19
  * ]);
@@ -26,10 +22,8 @@
26
22
  * @category Services
27
23
  * @since 5.15.0
28
24
  */
29
- import type { TokenClass } from '@gala-chain/api';
25
+ import { type GalaChainTokenClass, type GalaChainTokenClassKey } from '@gala-chain/gala-core-sdk';
30
26
  import type { AxiosInstance } from 'axios';
31
- import type { TokenClassKey } from '../types/common';
32
- import type { TokenClassWithSupply } from '../types/launchpad.dto';
33
27
  import type { HttpClient } from '../utils/http';
34
28
  import { BaseService } from './BaseService';
35
29
  /**
@@ -48,62 +42,40 @@ export declare class GalaChainTokenService extends BaseService {
48
42
  */
49
43
  constructor(http: HttpClient, debug?: boolean, publicAxios?: AxiosInstance | undefined);
50
44
  /**
51
- * Fetch token metadata from GalaChain using native FetchTokenClasses API
52
- *
53
- * Queries the authoritative GalaChain token registry for complete token metadata
54
- * including symbol, decimals, name, image, and description. This is the source
55
- * of truth for all tokens on GalaChain (both native and wrapped).
56
- *
57
- * Supports both native tokens (GALA, etc.) and wrapped DEX tokens.
45
+ * Fetch a token class from GalaChain (`FetchTokenClasses`): the authoritative registry of every
46
+ * token (native and wrapped), with its symbol, decimals, name, image and description.
58
47
  *
59
- * @param tokenId Token identifier (string or TokenClassKey format)
60
- * @returns Promise<TokenClass> Complete token metadata from GalaChain
48
+ * @param tokenId Token identifier (pipe string, 4 or 5 parts, or TokenClassKey object)
49
+ * @returns Promise<GalaChainTokenClass> The token class
61
50
  * @throws ValidationError if tokenId validation fails
62
- * @throws Error if token fetch fails or token not found
51
+ * @throws NetworkError if the token is not found (404) or the fetch fails
63
52
  *
64
53
  * @example
65
54
  * ```typescript
66
- * // Fetch native GALA token metadata
67
55
  * const gala = await tokenService.fetchTokenClassFromChain('GALA|Unit|none|none');
68
56
  * console.log(`Symbol: ${gala.symbol}`); // "GALA"
69
57
  * console.log(`Decimals: ${gala.decimals}`); // 8
70
- *
71
- * // Fetch wrapped token metadata
72
- * const gusdc = await tokenService.fetchTokenClassFromChain({
73
- * collection: 'GUSDC',
74
- * category: 'Unit',
75
- * type: 'none',
76
- * additionalKey: 'none'
77
- * });
78
- * console.log(`Symbol: ${gusdc.symbol}`); // "GUSDC"
79
58
  * ```
80
59
  */
81
- fetchTokenClassFromChain(tokenId: string | TokenClassKey): Promise<TokenClass>;
60
+ fetchTokenClassFromChain(tokenId: string | GalaChainTokenClassKey): Promise<GalaChainTokenClass>;
82
61
  /**
83
62
  * Fetch supply information for one or more token classes from GalaChain
63
+ * (`FetchTokenClassesWithSupply`): total and maximum supply, burned amount, known mint supplies
64
+ * and the class metadata, one class per key in the order asked.
84
65
  *
85
- * Queries GalaChain for authoritative token supply data including:
86
- * - Total supply and maximum supply
87
- * - Total burned amount
88
- * - Mint-related supply metrics
89
- * - Token metadata (symbol, decimals, name)
90
- *
91
- * @param tokenClasses - Array of token class keys to query
92
- * @returns Promise<TokenClassWithSupply[]> Array of token classes with supply information
66
+ * @param tokenClasses - Array of token class keys to query (1 to 1000)
67
+ * @returns Promise<GalaChainTokenClass[]> The token classes with their supply figures
93
68
  * @throws {ValidationError} if tokenClasses array is empty
94
- * @throws {Error} if network request fails or GalaChain returns error status
95
- *
96
- * @example
97
- * ```typescript
98
- * const supplies = await tokenService.fetchTokenClassesWithSupply([
99
- * { collection: 'GALA', category: 'Unit', type: 'none', additionalKey: 'none' },
100
- * { collection: 'GUSDC', category: 'Unit', type: 'none', additionalKey: 'eth:0x...' }
101
- * ]);
102
- *
103
- * console.log(`${supplies[0].symbol}: ${supplies[0].totalSupply}`);
104
- * ```
69
+ * @throws {NetworkError} if a class is not found, the request fails or GalaChain refuses it
70
+ */
71
+ fetchTokenClassesWithSupply(tokenClasses: GalaChainTokenClassKey[]): Promise<GalaChainTokenClass[]>;
72
+ /**
73
+ * Runs a core read through the public gateway axios instance. When core refuses the gateway's
74
+ * 2xx answer, `legacyChecks` re-reads that same answer and throws launchpad's own error for it
75
+ * (the error launchpad has always thrown); should it not, `notFound` (for a missing class) or
76
+ * core's error stands (fail closed: an answer core refused is never returned).
105
77
  */
106
- fetchTokenClassesWithSupply(tokenClasses: TokenClassKey[]): Promise<TokenClassWithSupply[]>;
78
+ private readPublic;
107
79
  private handleTokenServiceError;
108
80
  }
109
81
  //# sourceMappingURL=GalaChainTokenService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GalaChainTokenService.d.ts","sourceRoot":"","sources":["../../src/services/GalaChainTokenService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;IAWlD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAV/B;;;;;;OAMG;gBAED,IAAI,EAAE,UAAU,EAChB,KAAK,GAAE,OAAe,EACL,WAAW,CAAC,EAAE,aAAa,YAAA;IAK9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACG,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IA4DpF;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,2BAA2B,CAC/B,YAAY,EAAE,aAAa,EAAE,GAC5B,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAyClC,OAAO,CAAC,uBAAuB;CAuBhC"}
1
+ {"version":3,"file":"GalaChainTokenService.d.ts","sourceRoot":"","sources":["../../src/services/GalaChainTokenService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC5B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAK3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAgB5C;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;IAWlD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAV/B;;;;;;OAMG;gBAED,IAAI,EAAE,UAAU,EAChB,KAAK,GAAE,OAAe,EACL,WAAW,CAAC,EAAE,aAAa,YAAA;IAK9C;;;;;;;;;;;;;;;OAeG;IACG,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAsBtG;;;;;;;;;OASG;IACG,2BAA2B,CAC/B,YAAY,EAAE,sBAAsB,EAAE,GACrC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAoBjC;;;;;OAKG;YACW,UAAU;IAwBxB,OAAO,CAAC,uBAAuB;CAuBhC"}
@@ -4,8 +4,12 @@
4
4
  * Service responsible for token transfer and burn operations on GalaChain.
5
5
  * Extracted from GalaChainService for single responsibility.
6
6
  *
7
+ * The writes themselves are `@gala-chain/gala-core-sdk`'s `GatewayWrites` (DTO, signature, the
8
+ * POST and the reading of GalaChain's answer); this service keeps the launchpad API on top of it:
9
+ * its input checks, launchpad token-name resolution, its result shapes and its error classes.
10
+ *
7
11
  * Features:
8
- * - GALA transfers with EIP-712 signatures
12
+ * - GALA transfers
9
13
  * - Generic token transfers (launchpad and standard tokens)
10
14
  * - Token burning (irreversible)
11
15
  * - Token class key resolution
@@ -36,43 +40,28 @@
36
40
  * @category Services
37
41
  * @since 5.15.0
38
42
  */
39
- import type { Wallet } from 'ethers';
43
+ import { type GalaChainTokenClassKey } from '@gala-chain/gala-core-sdk';
40
44
  import type { BurnTokensData, BurnTokensResult } from '../types/burn.dto';
41
- import type { TokenClassKey } from '../types/common';
42
45
  import type { GalaChainTransferReceipt, TransferGalaData, TransferTokenData } from '../types/transfer.dto';
43
- import type { HttpClient } from '../utils/http';
44
- import { BaseService } from './BaseService';
45
- import type { TokenResolverService } from './TokenResolverService';
46
+ import { GatewayWriteService } from './gateway-writes';
46
47
  /**
47
48
  * GalaChain Transfer Service
48
49
  *
49
50
  * Handles all token transfer and burn operations on GalaChain.
50
51
  */
51
- export declare class GalaChainTransferService extends BaseService {
52
- private readonly wallet;
53
- private readonly tokenResolver;
54
- private readonly nativeSigner;
55
- /**
56
- * Initialize GalaChain Transfer Service
57
- *
58
- * @param http - HTTP client configured for GalaChain gateway
59
- * @param wallet - Ethers wallet for signing transactions (optional for read-only operations)
60
- * @param tokenResolver - Token resolver service for vault address resolution
61
- * @param debug - Enable debug logging (default: false)
62
- */
63
- constructor(http: HttpClient, wallet: Wallet | undefined, tokenResolver: TokenResolverService, debug?: boolean);
52
+ export declare class GalaChainTransferService extends GatewayWriteService {
64
53
  /**
65
54
  * Transfer GALA tokens between wallets
66
55
  *
67
- * Creates and signs a TransferToken transaction for GALA using native
68
- * GalaChain signing and submits it to the GalaChain gateway.
56
+ * Signs a TransferToken write for GALA with the wallet's key (native GalaChain signing) and
57
+ * submits it to the GalaChain gateway.
69
58
  *
70
59
  * @param data - Transfer data including recipient and amount
71
- * @returns Promise<string> Transaction ID from successful transfer
60
+ * @returns The receipt: the chain transaction id and, when the gateway sends it, the block
72
61
  *
73
62
  * @example
74
63
  * ```typescript
75
- * const transactionId = await transferService.transferGala({
64
+ * const { transactionId } = await transferService.transferGala({
76
65
  * recipientAddress: 'eth|1234567890abcdef1234567890abcdef12345678',
77
66
  * amount: '1' // 1 GALA
78
67
  * });
@@ -86,15 +75,15 @@ export declare class GalaChainTransferService extends BaseService {
86
75
  /**
87
76
  * Transfer launchpad tokens between wallets
88
77
  *
89
- * Creates and signs a TransferToken transaction for launchpad tokens using
90
- * native GalaChain signing and submits it to the GalaChain gateway.
78
+ * Signs a TransferToken write with the wallet's key (native GalaChain signing) and submits it
79
+ * to the GalaChain gateway.
91
80
  *
92
81
  * @param data - Transfer data including recipient, token name, and amount
93
- * @returns Promise<string> Transaction ID from successful transfer
82
+ * @returns The receipt: the chain transaction id and, when the gateway sends it, the block
94
83
  *
95
84
  * @example
96
85
  * ```typescript
97
- * const transactionId = await transferService.transferToken({
86
+ * const { transactionId } = await transferService.transferToken({
98
87
  * to: 'eth|9876543210fedcba9876543210fedcba98765432',
99
88
  * tokenName: 'tinyevil',
100
89
  * amount: '100000000'
@@ -130,7 +119,7 @@ export declare class GalaChainTransferService extends BaseService {
130
119
  *
131
120
  * @throws {TransferError} When token name cannot be resolved
132
121
  */
133
- resolveTokenClassKey(tokenName: string): Promise<TokenClassKey>;
122
+ resolveTokenClassKey(tokenName: string): Promise<GalaChainTokenClassKey>;
134
123
  /**
135
124
  * Permanently burn tokens on GalaChain
136
125
  *
@@ -141,7 +130,7 @@ export declare class GalaChainTransferService extends BaseService {
141
130
  * Supports batch burning of multiple token types in a single transaction.
142
131
  *
143
132
  * @param data - Burn data containing tokens array with amounts
144
- * @returns Result with transaction ID and burned token details
133
+ * @returns Result with transaction ID, block (when the gateway sends it) and burned token details
145
134
  * @throws {BurnError} When validation fails or burn operation is rejected
146
135
  *
147
136
  * @example
@@ -173,33 +162,45 @@ export declare class GalaChainTransferService extends BaseService {
173
162
  * Validate burn tokens data
174
163
  */
175
164
  private validateBurnTokensData;
165
+ /**
166
+ * The token instance a launchpad input names: `tokenId` (string, class key or instance key)
167
+ * first, else `tokenName` through the launchpad resolver, else `missing()`.
168
+ */
169
+ private tokenInstanceOf;
176
170
  /**
177
171
  * Resolve token name to tokenInstance object for transfers
178
172
  * Uses TokenResolverService to get vault address, then parses it to extract tokenInstance components
179
173
  */
180
174
  private resolveTokenInstance;
181
175
  /**
182
- * Extract transfer result from gateway body + response headers.
176
+ * The launchpad receipt of a transfer, from the gateway's answer (and core's receipt, when core
177
+ * accepted it). Called with no receipt when core refused the answer: it then throws the error
178
+ * this service has always thrown for that answer.
183
179
  *
184
180
  * If the body carries GalaChain's `{ Status, Data }` envelope, `Status` is checked FIRST and
185
- * throws on anything but success (1) -- before the `x-transaction-id` header or any body field
186
- * is trusted. A gateway proxy can set that header independent of whether the chain call
187
- * actually succeeded, so it must never be treated as its own success signal.
181
+ * throws on anything but success (1) -- before any transaction id is trusted. A gateway proxy can
182
+ * set `x-transaction-id` independent of whether the chain call actually succeeded, so it must
183
+ * never be treated as its own success signal. Checked on `Status` alone, NOT `Status` + `Data`:
184
+ * GalaChain's error envelope (`{ Status, Message, ErrorCode, ErrorKey, ErrorPayload }`) has no
185
+ * `Data`.
188
186
  *
189
187
  * Priority for transactionId once Status (if present) has passed:
190
- * 1. Header `x-transaction-id` (real chain hash — use for Chainmeter)
191
- * 2. Body.transactionId (legacy)
192
- * 3. Body.Data[].transactionId / txnId / etc.
193
- * 4. Operation success stub only if Status:1 with no hash (should be rare)
188
+ * 1. core's: the `x-transaction-id` header (the real chain hash -- use for Chainmeter), else a
189
+ * top-level `transactionId` of the body (legacy)
190
+ * 2. Body.Data[].transactionId / txnId / etc.
191
+ * 3. Operation success stub only if Status:1 with no hash (should be rare)
194
192
  *
195
- * blockNumber from header `x-block-number` when present.
193
+ * blockNumber from the gateway's `x-block-number` header when present.
196
194
  *
197
195
  * @private
198
196
  */
199
197
  private extractTransferResult;
200
- /** Read a header case-insensitively (headers are already lowercased by HttpClient). */
201
- private readHeaderValue;
202
- private readBlockNumberHeader;
198
+ /**
199
+ * The launchpad result of a burn, from the gateway's answer (and core's receipt, when core
200
+ * accepted it). Called with no receipt when core refused the answer: it then throws the error
201
+ * this service has always thrown for that answer.
202
+ */
203
+ private burnResultOf;
203
204
  /**
204
205
  * Extract burn result from GalaChain response
205
206
  */
@@ -1 +1 @@
1
- {"version":3,"file":"GalaChainTransferService.d.ts","sourceRoot":"","sources":["../../src/services/GalaChainTransferService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAKrC,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EACuB,MAAM,mBAAmB,CAAC;AAMnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD,OAAO,KAAK,EAGV,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAW/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAOhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AA4BnE;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,WAAW;IAarD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAbhC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;IAE5D;;;;;;;OAOG;gBAED,IAAI,EAAE,UAAU,EACC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,aAAa,EAAE,oBAAoB,EACpD,KAAK,GAAE,OAAe;IAUxB;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IA+D7E;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAiG/E;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA8BrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAoGjE;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAuBhC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAkDjC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA6C9B;;;OAGG;YACW,oBAAoB;IA+BlC;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,qBAAqB;IAoG7B,uFAAuF;IACvF,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,qBAAqB;IAO7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAuCzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqE3B;;OAEG;IACH,OAAO,CAAC,eAAe;CAgCxB"}
1
+ {"version":3,"file":"GalaChainTransferService.d.ts","sourceRoot":"","sources":["../../src/services/GalaChainTransferService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,EAAkE,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAExI,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAGjB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,KAAK,EACV,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAsB/B,OAAO,EAEL,mBAAmB,EAIpB,MAAM,kBAAkB,CAAC;AA2B1B;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,mBAAmB;IAO/D;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAgC7E;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAqC/E;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA8B9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuCjE;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAuBhC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAkDjC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA6C9B;;;OAGG;YACW,eAAe;IAmB7B;;;OAGG;YACW,oBAAoB;IAyBlC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,qBAAqB;IA8E7B;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAqBpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwCzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2E3B;;OAEG;IACH,OAAO,CAAC,eAAe;CAyCxB"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Launchpad token USD spot price.
3
+ *
4
+ * The one price launchpad-sdk computes itself: a launchpad token's USD price, from the launchpad
5
+ * backend's bonding curve (tokens per 1 GALA) and GALA's USD price, or, once the token graduated,
6
+ * its USD price on the swap backend. The swap backend (dex-backend) `GET /market/price` read here is
7
+ * launchpad-backend-adjacent and deliberately thin: GALA's price and a graduated launchpad token's
8
+ * price, nothing else. Every other DEX price (any token by class key, GALA on its own, price series)
9
+ * is gswap-sdk's `gSwap.market` (`getPrice`, `getPrices`, `getPriceSeries`).
10
+ */
11
+ import type { GalaChainTokenDetails } from '@gala-chain/gala-core-sdk';
12
+ import type { AmountCalculationResult, TokenSpotPrice } from '../types/launchpad.dto';
13
+ import type { CalculateBuyAmountOptions } from '../types/options.dto';
14
+ import type { HttpClient } from '../utils/http';
15
+ import { LoggerBase } from './BaseService';
16
+ import type { TokenMetadataCache } from './TokenMetadataCache';
17
+ /**
18
+ * Computes launchpad token USD spot prices (bonding curve, or the swap backend once graduated).
19
+ *
20
+ * @category Services
21
+ */
22
+ export declare class LaunchpadPriceService extends LoggerBase {
23
+ private readonly dexBackendHttp?;
24
+ private readonly cache?;
25
+ private readonly fetchTokenDetails?;
26
+ /**
27
+ * @param dexBackendHttp The swap backend client (`GET /market/price`)
28
+ * @param cache Token symbols already known
29
+ * @param fetchTokenDetails Reads a token's GalaChain token class details (its symbol), at call time
30
+ * @param debugMode Debug logging
31
+ */
32
+ constructor(dexBackendHttp?: HttpClient | undefined, cache?: TokenMetadataCache | undefined, fetchTokenDetails?: ((tokenId: string) => Promise<GalaChainTokenDetails>) | undefined, debugMode?: boolean);
33
+ /**
34
+ * A launchpad token's USD spot price.
35
+ *
36
+ * - Graduated (`isGraduated` from `fetchPoolDetails`): the token's price on the swap backend.
37
+ * - Otherwise (or when graduation cannot be read): `GALA USD price / tokens bought with 1 GALA`
38
+ * on the bonding curve.
39
+ *
40
+ * @param tokenName Launchpad token name (e.g. 'anime')
41
+ * @param calculateBuyAmount The bonding-curve buy calculation (tokens for 1 GALA)
42
+ * @param fetchPoolDetails Optional pool read used to detect graduation
43
+ * @returns The token's symbol and USD price
44
+ * @throws ValidationError if `tokenName` is empty
45
+ * @throws NetworkError if the calculation or a price read fails
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const price = await service.fetchLaunchpadTokenSpotPrice('anime', calculateBuyAmount, fetchPoolDetails);
50
+ * console.log(`${price.symbol}: $${price.price}`);
51
+ * ```
52
+ */
53
+ fetchLaunchpadTokenSpotPrice(tokenName: string, calculateBuyAmount: (options: CalculateBuyAmountOptions) => Promise<AmountCalculationResult>, fetchPoolDetails?: (tokenName: string) => Promise<unknown>): Promise<TokenSpotPrice>;
54
+ /**
55
+ * The symbol of a token, from the token metadata cache or the GalaChain token class; never
56
+ * derived from the class key. GALA's is fixed.
57
+ */
58
+ private resolveAuthoritativeSymbol;
59
+ /**
60
+ * A token's USD price on the swap backend (`GET /market/price?assetIds=<$ key>`), with its
61
+ * authoritative symbol. The backend answers each asset under its symbol and under the id asked
62
+ * for (recorded on prod and stage); one asset is asked for, so a sole entry is its entry.
63
+ */
64
+ private fetchMarketUsdPrice;
65
+ }
66
+ //# sourceMappingURL=LaunchpadPriceService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LaunchpadPriceService.d.ts","sourceRoot":"","sources":["../../src/services/LaunchpadPriceService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAA0B,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAG/F,OAAO,KAAK,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAItE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAMhD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK/D;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,UAAU;IAQjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IATrC;;;;;OAKG;gBAEgB,cAAc,CAAC,EAAE,UAAU,YAAA,EAC3B,KAAK,CAAC,EAAE,kBAAkB,YAAA,EAC1B,iBAAiB,CAAC,GAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAC,aAAA,EACxF,SAAS,GAAE,OAAe;IAK5B;;;;;;;;;;;;;;;;;;;OAmBG;IACG,4BAA4B,CAChC,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,OAAO,CAAC,uBAAuB,CAAC,EAC5F,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GACzD,OAAO,CAAC,cAAc,CAAC;IA2D1B;;;OAGG;YACW,0BAA0B;IA8BxC;;;;OAIG;YACW,mBAAmB;CA4ClC"}
@@ -7,6 +7,11 @@
7
7
  * - Minting NFTs
8
8
  * - Fetching NFT data and balances
9
9
  *
10
+ * The reads (collection authorizations, a collection's token classes, an owner's NFT balances) are
11
+ * `@gala-chain/gala-core-sdk`'s `GatewayReads`, sent through the SDK's gateway `HttpClient`. The
12
+ * writes (claim, create class, mint) do not reach GalaChain yet: they build their DTO and return a
13
+ * locally made transaction id with status `pending`.
14
+ *
10
15
  * @category Services
11
16
  * @since 5.12.0
12
17
  */
@@ -73,14 +78,19 @@ export declare class NftCollectionService extends BaseService {
73
78
  */
74
79
  claimCollection(params: ClaimCollectionParams): Promise<ClaimCollectionResult>;
75
80
  /**
76
- * Fetch all NFT collections authorized to a user
81
+ * Fetch all NFT collections authorized to a user: every collection authorization on GalaChain
82
+ * (`FetchNftCollectionAuthorizationsWithPagination`, page by page, bounded) whose authorized users
83
+ * include `walletAddress`.
77
84
  *
78
- * @param walletAddress - Wallet address to fetch collections for
85
+ * @param walletAddress - Wallet address to fetch collections for (`eth|<40 hex>`)
79
86
  * @returns List of authorized collections
87
+ * @throws Error for an address that is not `eth|<40 hex>`; the read's errors otherwise
80
88
  */
81
89
  fetchUserCollections(walletAddress: string): Promise<NftCollectionAuthorization[]>;
82
90
  /**
83
- * Check if an NFT collection name is available
91
+ * Check if an NFT collection name is available: no collection authorization on GalaChain names
92
+ * it. A read that fails (or a set of authorizations larger than the read's page bound) throws:
93
+ * it is never reported as "available".
84
94
  *
85
95
  * @param collectionName - Collection name to check
86
96
  * @returns True if available, false if already claimed
@@ -95,7 +105,8 @@ export declare class NftCollectionService extends BaseService {
95
105
  */
96
106
  createTokenClass(params: CreateTokenClassParams): Promise<CreateTokenClassResult>;
97
107
  /**
98
- * Fetch token classes for a collection
108
+ * Fetch the token classes of a collection (`FetchTokenClassesWithPagination`, page by page,
109
+ * bounded), optionally narrowed by type and category.
99
110
  *
100
111
  * @param params - Query parameters (collection, type, category)
101
112
  * @returns List of token classes with supply info
@@ -110,12 +121,17 @@ export declare class NftCollectionService extends BaseService {
110
121
  */
111
122
  mintNft(params: MintNftParams): Promise<MintNftResult>;
112
123
  /**
113
- * Fetch NFT balances for an owner
124
+ * Fetch NFT balances for an owner: the owner's GalaChain balance records (`FetchBalances`) that
125
+ * hold at least one token instance, optionally of one collection.
114
126
  *
115
- * @param ownerAddress - Owner wallet address
127
+ * @param ownerAddress - Owner wallet address (`eth|<40 hex>`)
116
128
  * @param collectionFilter - Optional collection name to filter by
117
129
  * @returns List of NFT balances
118
130
  */
119
131
  fetchNftBalances(ownerAddress: string, collectionFilter?: string): Promise<NftBalance[]>;
132
+ /** Core gateway reads over this service's gateway client (one per read: nothing is shared). */
133
+ private reads;
134
+ /** Every collection authorization on GalaChain (bounded: more pages than allowed throws). */
135
+ private allAuthorizations;
120
136
  }
121
137
  //# sourceMappingURL=NftCollectionService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NftCollectionService.d.ts","sourceRoot":"","sources":["../../src/services/NftCollectionService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,EACb,aAAa,EACb,UAAU,EACV,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAShD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;gBACvC,UAAU,EAAE,UAAU;IAQlC;;;OAGG;IACH,qBAAqB,IAAI,MAAM;IAI/B;;;OAGG;IACH,sBAAsB,IAAI,MAAM;IAIhC;;;;;;OAMG;IAEG,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IA8BrE;;;;;OAKG;IACH,wBAAwB,CAAC,MAAM,EAAE,qBAAqB,GAAG,cAAc;IA8BvE;;;;;;OAMG;IACG,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA0CpF;;;;;OAKG;IAEG,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAoBxF;;;;;OAKG;IAEG,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBrE;;;;;;OAMG;IAEG,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA+DvF;;;;;OAKG;IAEG,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAwB5F;;;;;;OAMG;IAEG,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAsE5D;;;;;;OAMG;IAEG,gBAAgB,CACpB,YAAY,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,UAAU,EAAE,CAAC;CAoBzB"}
1
+ {"version":3,"file":"NftCollectionService.d.ts","sourceRoot":"","sources":["../../src/services/NftCollectionService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,aAAa,EACb,aAAa,EACb,UAAU,EACV,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAShD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;gBACvC,UAAU,EAAE,UAAU;IAQlC;;;OAGG;IACH,qBAAqB,IAAI,MAAM;IAI/B;;;OAGG;IACH,sBAAsB,IAAI,MAAM;IAIhC;;;;;;OAMG;IAEG,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC;IA8BrE;;;;;OAKG;IACH,wBAAwB,CAAC,MAAM,EAAE,qBAAqB,GAAG,cAAc;IA8BvE;;;;;;OAMG;IACG,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA0CpF;;;;;;;;OAQG;IACG,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAsBxF;;;;;;;OAOG;IACG,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBrE;;;;;;OAMG;IAEG,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA+DvF;;;;;;OAMG;IACG,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAwC5F;;;;;;OAMG;IAEG,OAAO,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAsE5D;;;;;;;OAOG;IACG,gBAAgB,CACpB,YAAY,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,UAAU,EAAE,CAAC;IA4BxB,+FAA+F;IAC/F,OAAO,CAAC,KAAK;IAKb,6FAA6F;IAC7F,OAAO,CAAC,iBAAiB;CAG1B"}
@@ -42,7 +42,7 @@
42
42
  *
43
43
  * @packageDocumentation
44
44
  */
45
- import type { TokenClassKey } from '../types/common';
45
+ import type { GalaChainTokenClassKey } from '@gala-chain/gala-core-sdk';
46
46
  import { LoggerBase } from './BaseService';
47
47
  import type { PoolService } from './PoolService';
48
48
  /**
@@ -55,7 +55,7 @@ export interface TokenResolutionEntry {
55
55
  /** GalaChain vault address (immutable after token creation) */
56
56
  vaultAddress: string;
57
57
  /** Parsed TokenClassKey from the vault address */
58
- tokenClassKey: TokenClassKey;
58
+ tokenClassKey: GalaChainTokenClassKey;
59
59
  /** Unix timestamp (ms) when this entry was cached */
60
60
  cachedAt: number;
61
61
  }
@@ -218,7 +218,7 @@ export declare class TokenResolverService extends LoggerBase {
218
218
  * };
219
219
  * ```
220
220
  */
221
- resolveTokenClassKey(tokenName: string): Promise<TokenClassKey>;
221
+ resolveTokenClassKey(tokenName: string): Promise<GalaChainTokenClassKey>;
222
222
  /**
223
223
  * Gets cached vault address for a token name
224
224
  *
@@ -275,7 +275,7 @@ export declare class TokenResolverService extends LoggerBase {
275
275
  * @param tokenName Token name to lookup (case-insensitive)
276
276
  * @returns Cached TokenClassKey or null if not in cache
277
277
  */
278
- getCachedTokenClassKey(tokenName: string): TokenClassKey | null;
278
+ getCachedTokenClassKey(tokenName: string): GalaChainTokenClassKey | null;
279
279
  /**
280
280
  * Pre-warms the cache with known tokenName → vaultAddress mappings
281
281
  *
@@ -319,7 +319,7 @@ export declare class TokenResolverService extends LoggerBase {
319
319
  preWarmWithTokenClassKey(mappings: Array<{
320
320
  tokenName: string;
321
321
  vaultAddress: string;
322
- tokenClassKey: TokenClassKey;
322
+ tokenClassKey: GalaChainTokenClassKey;
323
323
  }>): void;
324
324
  /**
325
325
  * Parses a vault address string to extract TokenClassKey components
@@ -1 +1 @@
1
- {"version":3,"file":"TokenResolverService.d.ts","sourceRoot":"","sources":["../../src/services/TokenResolverService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAUrD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,aAAa,EAAE,aAAa,CAAC;IAC7B,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oDAAoD;IACpD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;IAiCtC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAhCxC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAS;IAE/C;;;;OAIG;IACH,OAAO,CAAC,KAAK,CAA2C;IAExD;;;OAGG;IACH,OAAO,CAAC,WAAW,CAA0B;IAE7C;;OAEG;IACH,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,WAAW,CAAK;IAExB;;;;;OAKG;gBAC0B,WAAW,EAAE,WAAW,EAAE,SAAS,GAAE,OAAe;IAIjF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAmCpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0CG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAuCrE;;;;;OAKG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAKrC;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAUrB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;;;;OAKG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAUlD;;;;OAIG;IACH,KAAK,IAAI,IAAI;IAOb;;;;OAIG;IACH,QAAQ,IAAI,eAAe;IAiB3B;;;;;OAKG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAK/D;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CACL,QAAQ,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,GAC3D,IAAI;IAMP;;;;;;;;;;;;;;;;;;OAkBG;IACH,wBAAwB,CACtB,QAAQ,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,aAAa,CAAA;KAAE,CAAC,GACzF,IAAI;IAWP;;;;;;;OAOG;IACH,OAAO,CAAC,gCAAgC;CAkBzC"}
1
+ {"version":3,"file":"TokenResolverService.d.ts","sourceRoot":"","sources":["../../src/services/TokenResolverService.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@
5
5
  * Uses local bonding curve math on the backend for instant quotes without GalaChain calls.
6
6
  *
7
7
  * **Key distinctions from existing services:**
8
- * - `fetchLaunchpadFee()` → backend proxy (cached 1h) vs `GalaChainService.fetchLaunchTokenFee()` → chain direct
9
- * - `fetchSaleDetails(tokenName)` → backend proxy (cached 10s, tokenName only) vs `GalaChainService.fetchPoolDetails()` → chain (vaultAddress required)
8
+ * - `fetchLaunchpadFee()` → backend proxy (cached 1h); backs `sdk.fetchLaunchTokenFee()`
9
+ * - `fetchSaleDetails(tokenName)` → backend proxy (cached 10s, tokenName only)
10
10
  * - `getTradeQuote(params)` → backend local math (instant) vs `calculateBuyAmountExternal()` → chain call
11
11
  * - `getPremintQuote(amount)` → backend local math (supply=0) — no existing equivalent
12
12
  *
@@ -58,8 +58,7 @@ export declare class TradingQuotesService extends BaseService {
58
58
  /**
59
59
  * Fetches the current launchpad fee via the backend proxy (cached 1 hour).
60
60
  *
61
- * Distinct from `GalaChainService.fetchLaunchTokenFee()` which calls the chain
62
- * directly. This version is faster due to backend caching.
61
+ * Backs `sdk.fetchLaunchTokenFee()`; cached by the backend.
63
62
  *
64
63
  * @returns Promise resolving to the fee amount in GALA (number)
65
64
  * @throws {ValidationError} If the backend returns an error response
@@ -77,7 +76,6 @@ export declare class TradingQuotesService extends BaseService {
77
76
  /**
78
77
  * Fetches sale details (supply, status) for a token via backend proxy (cached 10 seconds).
79
78
  *
80
- * Distinct from `GalaChainService.fetchPoolDetails()` which requires a vaultAddress.
81
79
  * The backend resolves the vaultAddress internally using the tokenName.
82
80
  *
83
81
  * @param tokenName Token name to fetch sale details for (e.g. 'anime')
@@ -1 +1 @@
1
- {"version":3,"file":"TradingQuotesService.d.ts","sourceRoot":"","sources":["../../src/services/TradingQuotesService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC3G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAa5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;IACnD;;;;;OAKG;gBACS,IAAI,EAAE,UAAU,EAAE,SAAS,GAAE,OAAe;IAIxD;;;;;;;;;;;;;;;;;OAiBG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;IAO1C;;;;;;;;;;;;;;;;;;;OAmBG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAUrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACG,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAe/E;;;;;;;;;;;;;;;;;;;OAmBG;IACG,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;CASxE"}
1
+ {"version":3,"file":"TradingQuotesService.d.ts","sourceRoot":"","sources":["../../src/services/TradingQuotesService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC3G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAa5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;IACnD;;;;;OAKG;gBACS,IAAI,EAAE,UAAU,EAAE,SAAS,GAAE,OAAe;IAIxD;;;;;;;;;;;;;;;;OAgBG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;IAO1C;;;;;;;;;;;;;;;;;;OAkBG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAUrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACG,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgB/E;;;;;;;;;;;;;;;;;;;OAmBG;IACG,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAUxE"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * The launchpad side of the transport of `@gala-chain/gala-core-sdk`'s gateway reads and writes.
3
+ *
4
+ * Core is handed an `HttpRequestor` that sends its request through one of the SDK's own HTTP
5
+ * clients (the gateway `HttpClient` with its interceptors and `Sign` header, or the public gateway
6
+ * axios instance), so the requests launchpad makes are exactly the ones it made before the reads and
7
+ * writes moved to core: same client, same headers (core's own headers are not forwarded), same
8
+ * errors (a client rejection, an HTTP error or a network failure, reaches the caller unchanged:
9
+ * core passes an app requestor's rejection through). Paths are relative: the base URL is the
10
+ * client's. Core arms no timer (`requestTimeoutMs: Infinity`); the client owns request lifetimes.
11
+ */
12
+ import type { HttpRequestor } from '@gala-chain/gala-core-sdk';
13
+ /** What one of the SDK's HTTP clients answered: the body and, when the client reports them, status and headers. */
14
+ export interface ClientAnswer {
15
+ readonly data: unknown;
16
+ readonly status?: number | undefined;
17
+ readonly headers?: Record<string, string | undefined> | undefined;
18
+ }
19
+ /** Sends a JSON POST through one of the SDK's HTTP clients. */
20
+ export type ClientPost = (url: string, body: unknown) => Promise<ClientAnswer>;
21
+ /** A core requestor over `post`, and the body of the last answer it read. */
22
+ export interface CapturingRequestor {
23
+ readonly requestor: HttpRequestor;
24
+ /** The body the client returned for the request (`undefined` until it answered). */
25
+ readonly answer: () => unknown;
26
+ }
27
+ /**
28
+ * A core `HttpRequestor` over one of the SDK's HTTP clients, keeping the answer it read. Make one
29
+ * per operation, so the answer it keeps can never be another concurrent operation's.
30
+ */
31
+ export declare function capturingRequestor(post: ClientPost): CapturingRequestor;
32
+ //# sourceMappingURL=gateway-transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gateway-transport.d.ts","sourceRoot":"","sources":["../../src/services/gateway-transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAgB,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE7E,mHAAmH;AACnH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;CACnE;AAED,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;AAE/E,6EAA6E;AAC7E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,oFAAoF;IACpF,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC;CAChC;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,kBAAkB,CAmBvE"}