@gearbox-protocol/sdk 13.7.0-kyc.3 → 14.0.0-next.10

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 (214) hide show
  1. package/dist/cjs/dev/AccountOpener.js +5 -45
  2. package/dist/cjs/dev/RevolverTransport.js +10 -4
  3. package/dist/cjs/dev/index.js +0 -2
  4. package/dist/cjs/dev/logSplitterTransport.js +10 -1
  5. package/dist/cjs/permissionless/utils/create2.js +2 -2
  6. package/dist/cjs/permissionless/utils/price-update/get-price-feeds.js +11 -5
  7. package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +11 -5
  8. package/dist/cjs/permissionless/utils/price-update/get-prices.js +12 -6
  9. package/dist/cjs/sdk/MultichainSDK.js +232 -0
  10. package/dist/cjs/sdk/OnchainSDK.js +478 -0
  11. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +16 -324
  12. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +1 -7
  13. package/dist/cjs/sdk/base/TokensMeta.js +42 -22
  14. package/dist/cjs/sdk/base/token-types.js +0 -9
  15. package/dist/cjs/sdk/chain/chains.js +1 -2
  16. package/dist/cjs/sdk/constants/address-provider.js +0 -3
  17. package/dist/cjs/sdk/core/errors.js +77 -0
  18. package/dist/cjs/sdk/core/index.js +2 -0
  19. package/dist/cjs/sdk/index.js +4 -2
  20. package/dist/cjs/sdk/market/MarketRegister.js +116 -70
  21. package/dist/cjs/sdk/market/MarketSuite.js +0 -3
  22. package/dist/cjs/sdk/market/index.js +0 -2
  23. package/dist/cjs/sdk/market/pool/PoolSuite.js +0 -3
  24. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +2 -11
  25. package/dist/cjs/sdk/market/pool/index.js +0 -2
  26. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +10 -3
  27. package/dist/cjs/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.js +20 -23
  28. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +7 -4
  29. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +4 -4
  30. package/dist/cjs/sdk/market/pricefeeds/updates/fetchPythPayloads.js +1 -1
  31. package/dist/cjs/sdk/market/pricefeeds/updates/index.js +3 -0
  32. package/dist/cjs/sdk/options.js +24 -52
  33. package/dist/cjs/sdk/plugins/BasePlugin.js +11 -4
  34. package/dist/cjs/sdk/pools/PoolService.js +12 -104
  35. package/dist/cjs/sdk/utils/formatter.js +99 -20
  36. package/dist/cjs/sdk/utils/viem/index.js +3 -3
  37. package/dist/cjs/sdk/utils/viem/watchBlocksAsync.js +76 -0
  38. package/dist/esm/dev/AccountOpener.js +6 -47
  39. package/dist/esm/dev/RevolverTransport.js +10 -4
  40. package/dist/esm/dev/index.js +0 -1
  41. package/dist/esm/dev/logSplitterTransport.js +10 -1
  42. package/dist/esm/permissionless/utils/create2.js +1 -1
  43. package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +12 -6
  44. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +13 -7
  45. package/dist/esm/permissionless/utils/price-update/get-prices.js +13 -7
  46. package/dist/esm/sdk/MultichainSDK.js +217 -0
  47. package/dist/esm/sdk/OnchainSDK.js +472 -0
  48. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +17 -328
  49. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +1 -7
  50. package/dist/esm/sdk/base/TokensMeta.js +44 -22
  51. package/dist/esm/sdk/base/token-types.js +0 -6
  52. package/dist/esm/sdk/chain/chains.js +1 -2
  53. package/dist/esm/sdk/constants/address-provider.js +0 -2
  54. package/dist/esm/sdk/core/errors.js +48 -0
  55. package/dist/esm/sdk/core/index.js +1 -0
  56. package/dist/esm/sdk/index.js +2 -1
  57. package/dist/esm/sdk/market/MarketRegister.js +118 -74
  58. package/dist/esm/sdk/market/MarketSuite.js +0 -3
  59. package/dist/esm/sdk/market/index.js +0 -1
  60. package/dist/esm/sdk/market/pool/PoolSuite.js +0 -3
  61. package/dist/esm/sdk/market/pool/PoolV310Contract.js +2 -11
  62. package/dist/esm/sdk/market/pool/index.js +0 -1
  63. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +10 -3
  64. package/dist/esm/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.js +20 -13
  65. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +7 -4
  66. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +4 -4
  67. package/dist/esm/sdk/market/pricefeeds/updates/fetchPythPayloads.js +1 -1
  68. package/dist/esm/sdk/market/pricefeeds/updates/index.js +2 -0
  69. package/dist/esm/sdk/options.js +22 -51
  70. package/dist/esm/sdk/plugins/BasePlugin.js +11 -4
  71. package/dist/esm/sdk/pools/PoolService.js +13 -109
  72. package/dist/esm/sdk/utils/formatter.js +99 -10
  73. package/dist/esm/sdk/utils/viem/index.js +1 -1
  74. package/dist/esm/sdk/utils/viem/watchBlocksAsync.js +52 -0
  75. package/dist/types/dev/RevolverTransport.d.ts +2 -1
  76. package/dist/types/dev/calcLiquidatableLTs.d.ts +2 -2
  77. package/dist/types/dev/claimFromFaucet.d.ts +2 -2
  78. package/dist/types/dev/create2.d.ts +3 -4
  79. package/dist/types/dev/index.d.ts +0 -1
  80. package/dist/types/dev/logSplitterTransport.d.ts +3 -1
  81. package/dist/types/dev/migrateFaucet.d.ts +2 -2
  82. package/dist/types/dev/mint/AbstractMinter.d.ts +2 -2
  83. package/dist/types/dev/mint/FallbackMinter.d.ts +2 -2
  84. package/dist/types/dev/mint/factory.d.ts +2 -2
  85. package/dist/types/dev/replaceStorage.d.ts +1 -1
  86. package/dist/types/permissionless/utils/price-update/get-updatable-feeds.d.ts +2 -2
  87. package/dist/types/plugins/accounts/AccountsPlugin.d.ts +2 -2
  88. package/dist/types/plugins/accounts-counter/AccountsCounterPlugin.d.ts +2 -2
  89. package/dist/types/plugins/adapters/AdaptersPlugin.d.ts +2 -2
  90. package/dist/types/plugins/apy/ApyPlugin.d.ts +2 -2
  91. package/dist/types/plugins/bots/BotsPlugin.d.ts +2 -2
  92. package/dist/types/plugins/bots/PartialLiquidationBotV310Contract.d.ts +2 -2
  93. package/dist/types/plugins/degen-distributors/DegenDistributorsPlugin.d.ts +2 -2
  94. package/dist/types/plugins/delayed-withdrawal/DelayedWithdrawalPlugin.d.ts +2 -2
  95. package/dist/types/sdk/MultichainSDK.d.ts +144 -0
  96. package/dist/types/sdk/OnchainSDK.d.ts +257 -0
  97. package/dist/types/sdk/accounts/AbstractCreditAccountsService.d.ts +4 -54
  98. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +1 -1
  99. package/dist/types/sdk/accounts/createCreditAccountService.d.ts +2 -2
  100. package/dist/types/sdk/accounts/types.d.ts +15 -95
  101. package/dist/types/sdk/base/SDKConstruct.d.ts +4 -4
  102. package/dist/types/sdk/base/TokensMeta.d.ts +3 -14
  103. package/dist/types/sdk/base/token-types.d.ts +4 -44
  104. package/dist/types/sdk/base/types.d.ts +2 -116
  105. package/dist/types/sdk/chain/chains.d.ts +1 -5
  106. package/dist/types/sdk/constants/address-provider.d.ts +0 -1
  107. package/dist/types/sdk/core/createAddressProvider.d.ts +3 -3
  108. package/dist/types/sdk/core/errors.d.ts +51 -0
  109. package/dist/types/sdk/core/index.d.ts +1 -0
  110. package/dist/types/sdk/index.d.ts +2 -1
  111. package/dist/types/sdk/market/MarketRegister.d.ts +11 -8
  112. package/dist/types/sdk/market/MarketSuite.d.ts +2 -4
  113. package/dist/types/sdk/market/adapters/createAdapter.d.ts +2 -2
  114. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  115. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +2 -2
  116. package/dist/types/sdk/market/credit/CreditSuite.d.ts +2 -2
  117. package/dist/types/sdk/market/credit/createCreditConfigurator.d.ts +2 -2
  118. package/dist/types/sdk/market/credit/createCreditFacade.d.ts +2 -2
  119. package/dist/types/sdk/market/credit/createCreditManager.d.ts +2 -2
  120. package/dist/types/sdk/market/credit/types.d.ts +1 -1
  121. package/dist/types/sdk/market/index.d.ts +0 -1
  122. package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +3 -3
  123. package/dist/types/sdk/market/loss-policy/createLossPolicy.d.ts +2 -2
  124. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +5 -6
  125. package/dist/types/sdk/market/oracle/PriceOracleV310Contract.d.ts +2 -2
  126. package/dist/types/sdk/market/oracle/createPriceOracle.d.ts +2 -2
  127. package/dist/types/sdk/market/oracle/types.d.ts +10 -3
  128. package/dist/types/sdk/market/pool/PoolSuite.d.ts +2 -4
  129. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +2 -6
  130. package/dist/types/sdk/market/pool/createInterestRateModel.d.ts +2 -2
  131. package/dist/types/sdk/market/pool/createPool.d.ts +2 -2
  132. package/dist/types/sdk/market/pool/createPoolQuotaKeeper.d.ts +2 -2
  133. package/dist/types/sdk/market/pool/createRateKeeper.d.ts +2 -2
  134. package/dist/types/sdk/market/pool/index.d.ts +0 -1
  135. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +8 -3
  136. package/dist/types/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.d.ts +12 -13
  137. package/dist/types/sdk/market/pricefeeds/updates/PythUpdater.d.ts +8 -3
  138. package/dist/types/sdk/market/pricefeeds/updates/RedstoneUpdater.d.ts +8 -3
  139. package/dist/types/sdk/market/pricefeeds/updates/index.d.ts +1 -0
  140. package/dist/types/sdk/market/pricefeeds/updates/types.d.ts +4 -0
  141. package/dist/types/sdk/market/types.d.ts +1 -1
  142. package/dist/types/sdk/options.d.ts +15 -16
  143. package/dist/types/sdk/plugins/BasePlugin.d.ts +12 -6
  144. package/dist/types/sdk/plugins/errors.d.ts +2 -2
  145. package/dist/types/sdk/plugins/types.d.ts +16 -6
  146. package/dist/types/sdk/pools/PoolService.d.ts +8 -8
  147. package/dist/types/sdk/pools/types.d.ts +2 -3
  148. package/dist/types/sdk/router/AbstractRouterContract.d.ts +3 -3
  149. package/dist/types/sdk/router/RouterV310Contract.d.ts +2 -2
  150. package/dist/types/sdk/router/createRouter.d.ts +2 -2
  151. package/dist/types/sdk/router/helpers.d.ts +1 -1
  152. package/dist/types/sdk/types/state-human.d.ts +10 -2
  153. package/dist/types/sdk/types/state.d.ts +14 -8
  154. package/dist/types/sdk/utils/filterDust.d.ts +2 -2
  155. package/dist/types/sdk/utils/formatter.d.ts +1 -1
  156. package/dist/types/sdk/utils/isDust.d.ts +2 -2
  157. package/dist/types/sdk/utils/toAddress.d.ts +1 -1
  158. package/dist/types/sdk/utils/viem/getLogsPaginated.d.ts +1 -2
  159. package/dist/types/sdk/utils/viem/getLogsSafe.d.ts +1 -1
  160. package/dist/types/sdk/utils/viem/index.d.ts +1 -1
  161. package/dist/types/sdk/utils/viem/simulateWithPriceUpdates.d.ts +1 -2
  162. package/dist/types/sdk/utils/viem/watchBlocksAsync.d.ts +74 -0
  163. package/package.json +3 -6
  164. package/dist/cjs/abi/kyc/iDSRegistryService.js +0 -70
  165. package/dist/cjs/abi/kyc/iDSToken.js +0 -71
  166. package/dist/cjs/abi/kyc/iKYCCompressor.js +0 -196
  167. package/dist/cjs/abi/kyc/iKYCFactory.js +0 -122
  168. package/dist/cjs/abi/kyc/iKYCUnderlying.js +0 -401
  169. package/dist/cjs/abi/kyc/iSecuritizeDegenNFT.js +0 -326
  170. package/dist/cjs/abi/kyc/iSecuritizeKYCFactory.js +0 -319
  171. package/dist/cjs/dev/CachedStateSubscriber.js +0 -78
  172. package/dist/cjs/sdk/GearboxSDK.js +0 -696
  173. package/dist/cjs/sdk/market/kyc/KYCRegistry.js +0 -269
  174. package/dist/cjs/sdk/market/kyc/index.js +0 -26
  175. package/dist/cjs/sdk/market/kyc/securitize/SecuritizeKYCFactory.js +0 -244
  176. package/dist/cjs/sdk/market/kyc/securitize/constants.js +0 -28
  177. package/dist/cjs/sdk/market/kyc/securitize/index.js +0 -26
  178. package/dist/cjs/sdk/market/kyc/securitize/types.js +0 -16
  179. package/dist/cjs/sdk/market/kyc/types.js +0 -34
  180. package/dist/cjs/sdk/utils/viem/executeDelegatedMulticalls.js +0 -38
  181. package/dist/esm/abi/kyc/iDSRegistryService.js +0 -46
  182. package/dist/esm/abi/kyc/iDSToken.js +0 -47
  183. package/dist/esm/abi/kyc/iKYCCompressor.js +0 -172
  184. package/dist/esm/abi/kyc/iKYCFactory.js +0 -98
  185. package/dist/esm/abi/kyc/iKYCUnderlying.js +0 -377
  186. package/dist/esm/abi/kyc/iSecuritizeDegenNFT.js +0 -302
  187. package/dist/esm/abi/kyc/iSecuritizeKYCFactory.js +0 -295
  188. package/dist/esm/dev/CachedStateSubscriber.js +0 -54
  189. package/dist/esm/sdk/GearboxSDK.js +0 -689
  190. package/dist/esm/sdk/market/kyc/KYCRegistry.js +0 -253
  191. package/dist/esm/sdk/market/kyc/index.js +0 -3
  192. package/dist/esm/sdk/market/kyc/securitize/SecuritizeKYCFactory.js +0 -220
  193. package/dist/esm/sdk/market/kyc/securitize/constants.js +0 -4
  194. package/dist/esm/sdk/market/kyc/securitize/index.js +0 -3
  195. package/dist/esm/sdk/market/kyc/securitize/types.js +0 -0
  196. package/dist/esm/sdk/market/kyc/types.js +0 -9
  197. package/dist/esm/sdk/utils/viem/executeDelegatedMulticalls.js +0 -14
  198. package/dist/types/abi/kyc/iDSRegistryService.d.ts +0 -71
  199. package/dist/types/abi/kyc/iDSToken.d.ts +0 -67
  200. package/dist/types/abi/kyc/iKYCCompressor.d.ts +0 -228
  201. package/dist/types/abi/kyc/iKYCFactory.d.ts +0 -139
  202. package/dist/types/abi/kyc/iKYCUnderlying.d.ts +0 -548
  203. package/dist/types/abi/kyc/iSecuritizeDegenNFT.d.ts +0 -404
  204. package/dist/types/abi/kyc/iSecuritizeKYCFactory.d.ts +0 -376
  205. package/dist/types/dev/CachedStateSubscriber.d.ts +0 -21
  206. package/dist/types/sdk/GearboxSDK.d.ts +0 -324
  207. package/dist/types/sdk/market/kyc/KYCRegistry.d.ts +0 -52
  208. package/dist/types/sdk/market/kyc/index.d.ts +0 -3
  209. package/dist/types/sdk/market/kyc/securitize/SecuritizeKYCFactory.d.ts +0 -428
  210. package/dist/types/sdk/market/kyc/securitize/constants.d.ts +0 -1
  211. package/dist/types/sdk/market/kyc/securitize/index.d.ts +0 -3
  212. package/dist/types/sdk/market/kyc/securitize/types.d.ts +0 -127
  213. package/dist/types/sdk/market/kyc/types.d.ts +0 -170
  214. package/dist/types/sdk/utils/viem/executeDelegatedMulticalls.d.ts +0 -28
@@ -1,170 +0,0 @@
1
- import type { AbiParametersToPrimitiveTypes, ExtractAbiFunction } from "abitype";
2
- import type { Address, ContractFunctionParameters } from "viem";
3
- import type { iKYCCompressorAbi } from "../../../abi/kyc/iKYCCompressor.js";
4
- import type { IBaseContract, Unarray } from "../../base/index.js";
5
- import type { MultiCall, RawTx } from "../../types/index.js";
6
- import type { SecuritizeInvestorData, SecuritizeKYCFactoryStateHuman, SecuritizeMulticallParams, SecuritizeOpenAccountRequirements } from "./securitize/index.js";
7
- import { KYC_FACTORY_SECURITIZE } from "./securitize/index.js";
8
- /**
9
- * Discriminated union of all known KYC factory contract type strings.
10
- **/
11
- export declare const KYC_FACTORY_TYPES: readonly ["KYC_FACTORY::SECURITIZE"];
12
- /**
13
- * String literal union of known KYC factory types.
14
- **/
15
- export type KYCFactoryType = (typeof KYC_FACTORY_TYPES)[number];
16
- /**
17
- * @internal
18
- *
19
- * Type-level registry mapping each {@link KYCFactoryType} to its associated
20
- * data types. Adding a new KYC factory requires a single new entry here;
21
- * all derived types ({@link InvestorData}, {@link AnyOpenAccountRequirements},
22
- * etc.) update automatically.
23
- **/
24
- interface KYCFactoryTypeMap {
25
- [KYC_FACTORY_SECURITIZE]: {
26
- investorData: SecuritizeInvestorData;
27
- openAccountRequirements: SecuritizeOpenAccountRequirements;
28
- stateHuman: SecuritizeKYCFactoryStateHuman;
29
- multicallParams: SecuritizeMulticallParams;
30
- };
31
- }
32
- /** Extracts the investor data type for a specific factory type `T`. */
33
- type KYCInvestorDataFor<T extends KYCFactoryType> = KYCFactoryTypeMap[T]["investorData"];
34
- /** Extracts the open-account requirements type for a specific factory type `T`. */
35
- type KYCOpenAccountReqFor<T extends KYCFactoryType> = KYCFactoryTypeMap[T]["openAccountRequirements"];
36
- /** Extracts the multicall/openCreditAccount extra params type for a specific factory type `T`. */
37
- type KYCMulticallParamsFor<T extends KYCFactoryType> = KYCFactoryTypeMap[T]["multicallParams"];
38
- /**
39
- * Raw return type of `KYCCompressor.getKYCMarketsData`.
40
- **/
41
- export type KYCCompressorResponse = AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof iKYCCompressorAbi, "getKYCMarketsData">["outputs"]>;
42
- /**
43
- * On-chain state of a KYC underlying token.
44
- **/
45
- export type KYCUnderlyingData = Unarray<KYCCompressorResponse[0]>;
46
- /**
47
- * On-chain state of a KYC factory.
48
- **/
49
- export type KYCFactoryData = Unarray<KYCCompressorResponse[1]>;
50
- /**
51
- * Typed contract call parameters for `KYCCompressor.getKYCMarketsData`.
52
- **/
53
- export type KYCCompressorCall = ContractFunctionParameters<typeof iKYCCompressorAbi, "view", "getKYCMarketsData">;
54
- /**
55
- * Single element of the `KYCCompressor.getKYCInvestorData` return array.
56
- * Contains per-factory credit accounts and factory-specific extra details.
57
- **/
58
- export type KYCCompressorInvestorData = Unarray<AbiParametersToPrimitiveTypes<ExtractAbiFunction<typeof iKYCCompressorAbi, "getKYCInvestorData">["outputs"]>[0]>;
59
- /**
60
- * Full KYC compressor response, used as the persisted/hydrated state.
61
- **/
62
- export type KYCState = KYCCompressorResponse;
63
- /**
64
- * Investor data decoded from the KYC compressor, union of all factory types.
65
- **/
66
- export type InvestorData = KYCFactoryTypeMap[KYCFactoryType]["investorData"];
67
- /**
68
- * Human-readable KYC factory state, union of all factory types.
69
- **/
70
- export type KYCFactoryStateHuman = KYCFactoryTypeMap[KYCFactoryType]["stateHuman"];
71
- /**
72
- * Human-readable snapshot of the full KYC registry state.
73
- **/
74
- export interface KYCStateHuman {
75
- /** State of each loaded KYC factory. */
76
- factories: KYCFactoryStateHuman[];
77
- }
78
- /**
79
- * Open-account requirements for any KYC factory (union of all factory types).
80
- **/
81
- export type OpenAccountRequirements = KYCFactoryTypeMap[KYCFactoryType]["openAccountRequirements"];
82
- /**
83
- * Shared interface for all KYC factory contracts.
84
- *
85
- * Parameterised by a single factory type literal `T` which indexes into
86
- * {@link KYCFactoryTypeMap} to derive all associated data types.
87
- *
88
- * @typeParam T - factory type
89
- **/
90
- export interface IKYCFactory<T extends KYCFactoryType = KYCFactoryType> extends IBaseContract {
91
- /**
92
- * Narrowed factory type discriminant
93
- **/
94
- readonly contractType: T;
95
- /**
96
- * @internal
97
- *
98
- * Decodes factory-specific extra details from the compressor's investor data.
99
- * Each factory knows how to decode its own extra details.
100
- *
101
- * @param data - raw KYCCompressor InvestorData
102
- **/
103
- decodeInvestorData(data: KYCCompressorInvestorData): KYCInvestorDataFor<T>;
104
- /**
105
- * Returns the investor address for a credit account.
106
- * @param creditAccount - credit account address
107
- * @param fromCache - if true, use and update an in-memory cache
108
- * (creditAccount → investor). On cache miss, loads from contract and
109
- * stores the result for future calls.
110
- **/
111
- getInvestor(creditAccount: Address, fromCache?: boolean): Promise<Address>;
112
- /**
113
- * Returns address to which approval should be given on collateral token
114
- *
115
- * @param options - either `{ creditManager, creditAccount }` for an
116
- * existing account or `{ creditManager, borrower }` for a new one
117
- **/
118
- getApprovalAddress(options: {
119
- creditManager: Address;
120
- borrower: Address;
121
- } | {
122
- creditManager: Address;
123
- creditAccount: Address;
124
- }): Promise<Address>;
125
- /**
126
- * Returns the wallet address for a credit account.
127
- * Wallet is a smart contract that owns the credit account, and
128
- * it is different from the investor address (actual user).
129
- * @param creditAccount - credit account address
130
- **/
131
- getWallet(creditAccount: Address): Promise<Address>;
132
- /**
133
- * Creates a raw transaction to perform operations on a credit account.
134
- * Similar to {@link CreditFacadeV310Contract.multicall}.
135
- *
136
- * @param creditAccount - credit account address
137
- * @param calls - calls to perform
138
- * @param options - optional factory-specific parameters (e.g. tokens to
139
- * register, signatures to cache). When omitted the implementation
140
- * uses sensible defaults (typically empty arrays).
141
- **/
142
- multicall(creditAccount: Address, calls: MultiCall[], options?: KYCMulticallParamsFor<T>): RawTx;
143
- /**
144
- * Checks if the user can open a credit account with this factory.
145
- * @param investor - investor address
146
- * @returns open account requirements for the investor, or `undefined` if the
147
- * user can open a credit account without any further actions
148
- **/
149
- getOpenAccountRequirements(investor: Address): Promise<KYCOpenAccountReqFor<T> | undefined>;
150
- /**
151
- * Creates a raw transaction to open a credit account.
152
- * Similar to {@link CreditFacadeV310Contract.openCreditAccount}.
153
- *
154
- * @param creditManager - credit manager address
155
- * @param calls - initial calls to perform
156
- * @param options - optional factory-specific parameters (e.g. tokens to
157
- * register, signatures to cache). When omitted the implementation
158
- * uses sensible defaults (typically empty arrays).
159
- **/
160
- openCreditAccount(creditManager: Address, calls: MultiCall[], options?: KYCMulticallParamsFor<T>): RawTx;
161
- }
162
- /**
163
- * Narrows an {@link IKYCFactory} to a specific factory type.
164
- *
165
- * @param factory - factory instance to check
166
- * @param type - expected factory type literal
167
- * @returns `true` if `factory.factoryType === type`
168
- **/
169
- export declare function isKYCFactory<T extends KYCFactoryType>(factory: IKYCFactory, type: T): factory is IKYCFactory<T>;
170
- export {};
@@ -1,28 +0,0 @@
1
- import type { Chain, Client, ContractFunctionParameters, Transport } from "viem";
2
- import type { IPriceUpdateTx } from "../../types/index.js";
3
- /**
4
- * A contract call paired with a callback that receives its decoded result.
5
- * Used to compose batched on-chain reads that are executed together inside a
6
- * single {@link simulateWithPriceUpdates} call.
7
- **/
8
- export interface DelegatedMulticall {
9
- /** Contract call parameters (ABI, address, function name, args). */
10
- call: ContractFunctionParameters;
11
- /** Callback invoked with the decoded return value after simulation. */
12
- onResult: (resp: unknown) => void;
13
- }
14
- /**
15
- * Executes multiple contract read calls in a single
16
- * {@link simulateWithPriceUpdates} batch and dispatches each result to its
17
- * corresponding {@link DelegatedMulticall.onResult} callback.
18
- *
19
- * @param client - Viem public client.
20
- * @param multicalls - Calls to execute with their result handlers.
21
- * @param opts - Price-update transactions, target block number, and optional
22
- * gas limit forwarded to the simulation.
23
- **/
24
- export declare function executeDelegatedMulticalls(client: Client<Transport, Chain>, multicalls: DelegatedMulticall[], opts: {
25
- priceUpdates: IPriceUpdateTx[];
26
- blockNumber: bigint;
27
- gas?: bigint;
28
- }): Promise<void>;