@gearbox-protocol/sdk 16.3.0-next.1 → 16.3.0-next.2

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 (77) hide show
  1. package/dist/cjs/abi/rwa/iMidasAccessControl.js +23 -0
  2. package/dist/cjs/abi/rwa/iMidasDegenNFT.js +92 -0
  3. package/dist/cjs/model/index.js +6 -1
  4. package/dist/cjs/model/opportunities.schema.js +3 -1
  5. package/dist/cjs/model/rwa.js +13 -0
  6. package/dist/cjs/model/rwa.schema.js +20 -0
  7. package/dist/cjs/offchain/opportunities/OffchainOpportunities.js +1 -1
  8. package/dist/cjs/onchain/accounts/liquidations/LiquidationsService.js +2 -2
  9. package/dist/cjs/onchain/index.js +8 -2
  10. package/dist/cjs/onchain/market/MarketSuite.js +3 -3
  11. package/dist/cjs/onchain/market/credit/CreditSuite.js +30 -0
  12. package/dist/cjs/onchain/market/index.js +8 -2
  13. package/dist/cjs/onchain/market/rwa/createDegenNFT.js +53 -0
  14. package/dist/cjs/onchain/market/rwa/index.js +7 -1
  15. package/dist/cjs/onchain/market/rwa/midas/MidasDegenNFT.js +56 -0
  16. package/dist/cjs/onchain/market/rwa/midas/constants.js +2 -0
  17. package/dist/cjs/onchain/market/rwa/midas/index.js +3 -0
  18. package/dist/cjs/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +22 -3
  19. package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +2 -2
  20. package/dist/cjs/onchain/market/rwa/securitize/constants.js +2 -0
  21. package/dist/cjs/onchain/market/rwa/securitize/index.js +3 -0
  22. package/dist/cjs/onchain/opportunities/MultichainOpportunitiesService.js +2 -2
  23. package/dist/cjs/onchain/opportunities/OpportunitiesService.js +11 -3
  24. package/dist/cjs/sdk/opportunities/OpportunitiesNamespace.js +19 -4
  25. package/dist/esm/abi/rwa/iMidasAccessControl.js +22 -0
  26. package/dist/esm/abi/rwa/iMidasDegenNFT.js +91 -0
  27. package/dist/esm/model/index.js +3 -2
  28. package/dist/esm/model/opportunities.schema.js +3 -1
  29. package/dist/esm/model/rwa.js +12 -1
  30. package/dist/esm/model/rwa.schema.js +18 -0
  31. package/dist/esm/offchain/opportunities/OffchainOpportunities.js +1 -1
  32. package/dist/esm/onchain/accounts/liquidations/LiquidationsService.js +2 -2
  33. package/dist/esm/onchain/index.js +5 -3
  34. package/dist/esm/onchain/market/MarketSuite.js +3 -3
  35. package/dist/esm/onchain/market/credit/CreditSuite.js +30 -0
  36. package/dist/esm/onchain/market/index.js +5 -3
  37. package/dist/esm/onchain/market/rwa/createDegenNFT.js +52 -0
  38. package/dist/esm/onchain/market/rwa/index.js +5 -3
  39. package/dist/esm/onchain/market/rwa/midas/MidasDegenNFT.js +55 -0
  40. package/dist/esm/onchain/market/rwa/midas/constants.js +2 -1
  41. package/dist/esm/onchain/market/rwa/midas/index.js +3 -2
  42. package/dist/esm/onchain/market/rwa/securitize/SecuritizeDegenNFT.js +20 -2
  43. package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +2 -2
  44. package/dist/esm/onchain/market/rwa/securitize/constants.js +2 -1
  45. package/dist/esm/onchain/market/rwa/securitize/index.js +3 -2
  46. package/dist/esm/onchain/opportunities/MultichainOpportunitiesService.js +2 -2
  47. package/dist/esm/onchain/opportunities/OpportunitiesService.js +11 -3
  48. package/dist/esm/sdk/opportunities/OpportunitiesNamespace.js +19 -4
  49. package/dist/types/abi/rwa/iMidasAccessControl.d.ts +22 -0
  50. package/dist/types/abi/rwa/iMidasDegenNFT.d.ts +82 -0
  51. package/dist/types/model/index.d.ts +3 -2
  52. package/dist/types/model/opportunities.d.ts +9 -0
  53. package/dist/types/model/opportunities.schema.d.ts +30 -0
  54. package/dist/types/model/rwa.d.ts +25 -1
  55. package/dist/types/model/rwa.schema.d.ts +29 -0
  56. package/dist/types/offchain/opportunities/OffchainOpportunities.d.ts +2 -1
  57. package/dist/types/offchain/opportunities/types.d.ts +4 -1
  58. package/dist/types/onchain/index.d.ts +8 -6
  59. package/dist/types/onchain/market/credit/CreditSuite.d.ts +12 -2
  60. package/dist/types/onchain/market/index.d.ts +8 -6
  61. package/dist/types/onchain/market/rwa/RWARegistry.d.ts +1 -1
  62. package/dist/types/onchain/market/rwa/createDegenNFT.d.ts +12 -0
  63. package/dist/types/onchain/market/rwa/index.d.ts +9 -7
  64. package/dist/types/onchain/market/rwa/midas/MidasDegenNFT.d.ts +98 -0
  65. package/dist/types/onchain/market/rwa/midas/constants.d.ts +2 -1
  66. package/dist/types/onchain/market/rwa/midas/index.d.ts +3 -2
  67. package/dist/types/onchain/market/rwa/securitize/SecuritizeDegenNFT.d.ts +8 -2
  68. package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +2 -2
  69. package/dist/types/onchain/market/rwa/securitize/constants.d.ts +2 -1
  70. package/dist/types/onchain/market/rwa/securitize/index.d.ts +4 -3
  71. package/dist/types/onchain/market/rwa/types.d.ts +20 -2
  72. package/dist/types/onchain/opportunities/MultichainOpportunitiesService.d.ts +2 -1
  73. package/dist/types/onchain/opportunities/OpportunitiesService.d.ts +5 -1
  74. package/dist/types/onchain/opportunities/types.d.ts +3 -2
  75. package/dist/types/sdk/opportunities/OpportunitiesNamespace.d.ts +2 -1
  76. package/dist/types/sdk/opportunities/types.d.ts +8 -2
  77. package/package.json +1 -1
@@ -0,0 +1,23 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/abi/rwa/iMidasAccessControl.ts
3
+ const iMidasAccessControlAbi = [{
4
+ type: "function",
5
+ name: "hasRole",
6
+ inputs: [{
7
+ name: "role",
8
+ type: "bytes32",
9
+ internalType: "bytes32"
10
+ }, {
11
+ name: "account",
12
+ type: "address",
13
+ internalType: "address"
14
+ }],
15
+ outputs: [{
16
+ name: "",
17
+ type: "bool",
18
+ internalType: "bool"
19
+ }],
20
+ stateMutability: "view"
21
+ }];
22
+ //#endregion
23
+ exports.iMidasAccessControlAbi = iMidasAccessControlAbi;
@@ -0,0 +1,92 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ //#region src/abi/rwa/iMidasDegenNFT.ts
3
+ const iMidasDegenNFTAbi = [
4
+ {
5
+ type: "function",
6
+ name: "accessControl",
7
+ inputs: [],
8
+ outputs: [{
9
+ name: "",
10
+ type: "address",
11
+ internalType: "address"
12
+ }],
13
+ stateMutability: "view"
14
+ },
15
+ {
16
+ type: "function",
17
+ name: "burn",
18
+ inputs: [{
19
+ name: "from",
20
+ type: "address",
21
+ internalType: "address"
22
+ }, {
23
+ name: "",
24
+ type: "uint256",
25
+ internalType: "uint256"
26
+ }],
27
+ outputs: [],
28
+ stateMutability: "view"
29
+ },
30
+ {
31
+ type: "function",
32
+ name: "contractType",
33
+ inputs: [],
34
+ outputs: [{
35
+ name: "",
36
+ type: "bytes32",
37
+ internalType: "bytes32"
38
+ }],
39
+ stateMutability: "view"
40
+ },
41
+ {
42
+ type: "function",
43
+ name: "gateway",
44
+ inputs: [],
45
+ outputs: [{
46
+ name: "",
47
+ type: "address",
48
+ internalType: "address"
49
+ }],
50
+ stateMutability: "view"
51
+ },
52
+ {
53
+ type: "function",
54
+ name: "greenlistedRole",
55
+ inputs: [],
56
+ outputs: [{
57
+ name: "",
58
+ type: "bytes32",
59
+ internalType: "bytes32"
60
+ }],
61
+ stateMutability: "view"
62
+ },
63
+ {
64
+ type: "function",
65
+ name: "serialize",
66
+ inputs: [],
67
+ outputs: [{
68
+ name: "",
69
+ type: "bytes",
70
+ internalType: "bytes"
71
+ }],
72
+ stateMutability: "view"
73
+ },
74
+ {
75
+ type: "function",
76
+ name: "version",
77
+ inputs: [],
78
+ outputs: [{
79
+ name: "",
80
+ type: "uint256",
81
+ internalType: "uint256"
82
+ }],
83
+ stateMutability: "view"
84
+ },
85
+ {
86
+ type: "error",
87
+ name: "NotGreenlistedException",
88
+ inputs: []
89
+ }
90
+ ];
91
+ //#endregion
92
+ exports.iMidasDegenNFTAbi = iMidasDegenNFTAbi;
@@ -8,6 +8,8 @@ const require_model_filters = require("./filters.js");
8
8
  const require_model_filters_schema = require("./filters.schema.js");
9
9
  const require_model_curators_schema = require("./curators.schema.js");
10
10
  const require_model_liquidations_schema = require("./liquidations.schema.js");
11
+ const require_model_rwa = require("./rwa.js");
12
+ const require_model_rwa_schema = require("./rwa.schema.js");
11
13
  const require_model_opportunities_schema = require("./opportunities.schema.js");
12
14
  const require_model_positions_schema = require("./positions.schema.js");
13
15
  const require_model_analytics_schema = require("./analytics.schema.js");
@@ -29,7 +31,6 @@ require("./primitives.js");
29
31
  require("./response.js");
30
32
  const require_model_response_schema = require("./response.schema.js");
31
33
  const require_model_result = require("./result.js");
32
- const require_model_rwa = require("./rwa.js");
33
34
  require("./withdrawals.js");
34
35
  const require_model_withdrawals_schema = require("./withdrawals.schema.js");
35
36
  exports.ANALYTICS_POSITIONS_DEFAULT_LIMIT = require_model_analytics_schema.ANALYTICS_POSITIONS_DEFAULT_LIMIT;
@@ -38,6 +39,8 @@ exports.CHART_METRIC_UNITS = require_model_charts.CHART_METRIC_UNITS;
38
39
  exports.CHART_RANGES = require_model_charts.CHART_RANGES;
39
40
  exports.CHART_UNAVAILABLE_CODES = require_model_charts.CHART_UNAVAILABLE_CODES;
40
41
  exports.FILTER_ALL = require_model_filters.FILTER_ALL;
42
+ exports.KYC_PROTOCOLS = require_model_rwa.KYC_PROTOCOLS;
43
+ exports.KYC_REGISTRATION_LINKS = require_model_rwa.KYC_REGISTRATION_LINKS;
41
44
  exports.POOL_OPPORTUNITY_CHART_METRICS = require_model_charts.POOL_OPPORTUNITY_CHART_METRICS;
42
45
  exports.POOL_POSITION_CHART_METRICS = require_model_charts.POOL_POSITION_CHART_METRICS;
43
46
  exports.PROTOCOL_CHART_METRICS = require_model_charts.PROTOCOL_CHART_METRICS;
@@ -100,6 +103,8 @@ exports.insufficientBalance = require_model_errors_operation_errors.insufficient
100
103
  exports.insufficientCollateral = require_model_errors_operation_errors.insufficientCollateral;
101
104
  exports.insufficientPoolLiquidity = require_model_errors_operation_errors.insufficientPoolLiquidity;
102
105
  exports.isFilterSet = require_model_filters.isFilterSet;
106
+ exports.kycProtocolSchema = require_model_rwa_schema.kycProtocolSchema;
107
+ exports.kycRequirementSchema = require_model_rwa_schema.kycRequirementSchema;
103
108
  exports.leverageOutOfRange = require_model_errors_operation_errors.leverageOutOfRange;
104
109
  exports.leverageSchema = require_model_primitives_schema.leverageSchema;
105
110
  exports.liquidatableAccountFilterSchema = require_model_liquidations_schema.liquidatableAccountFilterSchema;
@@ -5,6 +5,7 @@ const require_model_primitives_schema = require("./primitives.schema.js");
5
5
  const require_model_filters = require("./filters.js");
6
6
  const require_model_filters_schema = require("./filters.schema.js");
7
7
  const require_model_curators_schema = require("./curators.schema.js");
8
+ const require_model_rwa_schema = require("./rwa.schema.js");
8
9
  let zod_v4 = require("zod/v4");
9
10
  //#region src/model/opportunities.schema.ts
10
11
  /**
@@ -215,7 +216,8 @@ const poolOpportunityDetailSchema = zod_v4.z.object({
215
216
  const strategyOpportunityDetailSchema = zod_v4.z.object({
216
217
  ...strategyOpportunitySchema.shape,
217
218
  rateCurve: rateCurveSchema,
218
- priceFeeds: priceFeedSummarySchema
219
+ priceFeeds: priceFeedSummarySchema,
220
+ kyc: require_model_rwa_schema.kycRequirementSchema.nullable().optional()
219
221
  });
220
222
  /**
221
223
  * {@link OpportunityDetail}
@@ -34,7 +34,20 @@ const SECURITIZE_REGISTER_VAULT_TYPES = { RegisterVault: [
34
34
  type: "uint256"
35
35
  }
36
36
  ] };
37
+ /**
38
+ * KYC providers a strategy may be gated by
39
+ **/
40
+ const KYC_PROTOCOLS = ["securitize", "midas"];
41
+ /**
42
+ * Hardcoded registration URLs for each {@link KycProtocol}.
43
+ **/
44
+ const KYC_REGISTRATION_LINKS = {
45
+ securitize: "https://securitize.io/",
46
+ midas: "https://form.typeform.com/to/DqZaw6kr"
47
+ };
37
48
  //#endregion
49
+ exports.KYC_PROTOCOLS = KYC_PROTOCOLS;
50
+ exports.KYC_REGISTRATION_LINKS = KYC_REGISTRATION_LINKS;
38
51
  exports.RWA_FACTORY_SECURITIZE = RWA_FACTORY_SECURITIZE;
39
52
  exports.RWA_FACTORY_TYPES = RWA_FACTORY_TYPES;
40
53
  exports.SECURITIZE_REGISTER_VAULT_TYPES = SECURITIZE_REGISTER_VAULT_TYPES;
@@ -0,0 +1,20 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_model_primitives_schema = require("./primitives.schema.js");
3
+ const require_model_rwa = require("./rwa.js");
4
+ let zod_v4 = require("zod/v4");
5
+ //#region src/model/rwa.schema.ts
6
+ /**
7
+ * {@link ./rwa.js#KycProtocol}
8
+ **/
9
+ const kycProtocolSchema = zod_v4.z.enum(require_model_rwa.KYC_PROTOCOLS);
10
+ /**
11
+ * {@link ./rwa.js#KycRequirement}
12
+ **/
13
+ const kycRequirementSchema = zod_v4.z.object({
14
+ protocol: kycProtocolSchema,
15
+ token: require_model_primitives_schema.tokenSchema.optional(),
16
+ registrationLink: zod_v4.z.string()
17
+ });
18
+ //#endregion
19
+ exports.kycProtocolSchema = kycProtocolSchema;
20
+ exports.kycRequirementSchema = kycRequirementSchema;
@@ -36,7 +36,7 @@ var OffchainOpportunities = class extends require_offchain_AbstractOffchainNames
36
36
  /**
37
37
  * {@inheritDoc IOffchainOpportunities.getStrategy}
38
38
  **/
39
- async getStrategy(key) {
39
+ async getStrategy(key, _wallet) {
40
40
  return this.get({
41
41
  path: this.#strategyPath(key),
42
42
  schema: require_model_opportunities_schema.strategyOpportunityDetailSchema
@@ -10,13 +10,13 @@ require("../../utils/index.js");
10
10
  const require_onchain_base_SDKConstruct = require("../../base/SDKConstruct.js");
11
11
  require("../../base/index.js");
12
12
  const require_onchain_market_math = require("../../market/math.js");
13
- const require_onchain_market_credit_collateralUtils = require("../../market/credit/collateralUtils.js");
14
13
  const require_model_liquidations = require("../../../model/liquidations.js");
15
14
  require("../../../model/index.js");
16
15
  const require_onchain_market_rwa_midas_constants = require("../../market/rwa/midas/constants.js");
16
+ const require_onchain_market_rwa_securitize_constants = require("../../market/rwa/securitize/constants.js");
17
+ const require_onchain_market_credit_collateralUtils = require("../../market/credit/collateralUtils.js");
17
18
  const require_onchain_market_rwa_midas_MidasLiquidatorContract = require("../../market/rwa/midas/MidasLiquidatorContract.js");
18
19
  require("../../market/rwa/midas/index.js");
19
- const require_onchain_market_rwa_securitize_constants = require("../../market/rwa/securitize/constants.js");
20
20
  const require_onchain_market_rwa_securitize_SecuritizeLiquidatorContract = require("../../market/rwa/securitize/SecuritizeLiquidatorContract.js");
21
21
  require("../../market/rwa/securitize/index.js");
22
22
  require("../../market/index.js");
@@ -136,6 +136,9 @@ const require_onchain_market_credit_CreditFacadeV310BaseContract = require("./ma
136
136
  const require_onchain_market_credit_CreditFacadeV310Contract = require("./market/credit/CreditFacadeV310Contract.js");
137
137
  const require_onchain_market_math = require("./market/math.js");
138
138
  const require_onchain_market_credit_CreditManagerV310Contract = require("./market/credit/CreditManagerV310Contract.js");
139
+ const require_onchain_market_rwa_midas_constants = require("./market/rwa/midas/constants.js");
140
+ const require_onchain_market_rwa_midas_MidasDegenNFT = require("./market/rwa/midas/MidasDegenNFT.js");
141
+ const require_onchain_market_rwa_securitize_constants = require("./market/rwa/securitize/constants.js");
139
142
  const require_onchain_market_strategyName = require("./market/strategyName.js");
140
143
  const require_onchain_market_credit_collateralUtils = require("./market/credit/collateralUtils.js");
141
144
  const require_onchain_market_credit_CreditSuite = require("./market/credit/CreditSuite.js");
@@ -182,9 +185,8 @@ const require_onchain_market_zapper_IERC20ZapperContract = require("./market/zap
182
185
  const require_onchain_market_zapper_IETHZapperContract = require("./market/zapper/IETHZapperContract.js");
183
186
  const require_onchain_market_zapper_createZapper = require("./market/zapper/createZapper.js");
184
187
  const require_onchain_market_MarketRegister = require("./market/MarketRegister.js");
185
- const require_onchain_market_rwa_midas_constants = require("./market/rwa/midas/constants.js");
186
188
  const require_onchain_market_rwa_midas_MidasLiquidatorContract = require("./market/rwa/midas/MidasLiquidatorContract.js");
187
- const require_onchain_market_rwa_securitize_constants = require("./market/rwa/securitize/constants.js");
189
+ const require_onchain_market_rwa_securitize_SecuritizeDegenNFT = require("./market/rwa/securitize/SecuritizeDegenNFT.js");
188
190
  const require_onchain_market_rwa_securitize_SecuritizeLiquidatorContract = require("./market/rwa/securitize/SecuritizeLiquidatorContract.js");
189
191
  const require_onchain_market_rwa_securitize_SecuritizeRWAFactory = require("./market/rwa/securitize/SecuritizeRWAFactory.js");
190
192
  const require_onchain_market_rwa_RWARegistry = require("./market/rwa/RWARegistry.js");
@@ -382,6 +384,8 @@ exports.CurveUSDPriceFeedContract = require_onchain_market_pricefeeds_CurveUSDPr
382
384
  exports.CurveV1AdapterStETHContract = require_onchain_market_adapters_contracts_CurveV1AdapterStETHContract.CurveV1AdapterStETHContract;
383
385
  exports.CurveV1StableNGAdapterContract = require_onchain_market_adapters_contracts_CurveV1StableNGAdapterContract.CurveV1StableNGAdapterContract;
384
386
  exports.DEFAULT_QUOTA_BUFFER_BPS = require_onchain_market_math.DEFAULT_QUOTA_BUFFER_BPS;
387
+ exports.DEGEN_NFT_MIDAS = require_onchain_market_rwa_midas_constants.DEGEN_NFT_MIDAS;
388
+ exports.DEGEN_NFT_SECURITIZE = require_onchain_market_rwa_securitize_constants.DEGEN_NFT_SECURITIZE;
385
389
  exports.DELAYED_INTENT_TYPES = require_onchain_accounts_withdrawal_compressor_intent_codec.DELAYED_INTENT_TYPES;
386
390
  exports.DELAYED_INTENT_VERSION = require_onchain_accounts_withdrawal_compressor_intent_codec.DELAYED_INTENT_VERSION;
387
391
  exports.DUST_THRESHOLD = require_onchain_constants_math.DUST_THRESHOLD;
@@ -422,6 +426,7 @@ exports.MellowDVVAdapterContract = require_onchain_market_adapters_contracts_Mel
422
426
  exports.MellowERC4626VaultAdapterContract = require_onchain_market_adapters_contracts_MellowERC4626VaultAdapterContract.MellowERC4626VaultAdapterContract;
423
427
  exports.MellowLRTPriceFeedContract = require_onchain_market_pricefeeds_MellowLRTPriceFeed.MellowLRTPriceFeedContract;
424
428
  exports.MellowWrapperAdapterContract = require_onchain_market_adapters_contracts_MellowWrapperAdapterContract.MellowWrapperAdapterContract;
429
+ exports.MidasDegenNFT = require_onchain_market_rwa_midas_MidasDegenNFT.MidasDegenNFT;
425
430
  exports.MidasGatewayAdapterContract = require_onchain_market_adapters_contracts_MidasGatewayAdapterContract.MidasGatewayAdapterContract;
426
431
  exports.MidasIssuanceVaultAdapterContract = require_onchain_market_adapters_contracts_MidasIssuanceVaultAdapterContract.MidasIssuanceVaultAdapterContract;
427
432
  exports.MidasLiquidatorContract = require_onchain_market_rwa_midas_MidasLiquidatorContract.MidasLiquidatorContract;
@@ -488,6 +493,7 @@ exports.SdkNotAttachedError = require_onchain_core_errors.SdkNotAttachedError;
488
493
  exports.SdkRWADataNotLoadedError = require_onchain_core_errors.SdkRWADataNotLoadedError;
489
494
  exports.SdkStateVersionMismatchError = require_onchain_core_errors.SdkStateVersionMismatchError;
490
495
  exports.SdkSyncFailedError = require_onchain_core_errors.SdkSyncFailedError;
496
+ exports.SecuritizeDegenNFT = require_onchain_market_rwa_securitize_SecuritizeDegenNFT.SecuritizeDegenNFT;
491
497
  exports.SecuritizeLiquidatorContract = require_onchain_market_rwa_securitize_SecuritizeLiquidatorContract.SecuritizeLiquidatorContract;
492
498
  exports.SecuritizeOnRampAdapterContract = require_onchain_market_adapters_contracts_SecuritizeOnRampAdapterContract.SecuritizeOnRampAdapterContract;
493
499
  exports.SecuritizeRWAFactory = require_onchain_market_rwa_securitize_SecuritizeRWAFactory.SecuritizeRWAFactory;
@@ -5,12 +5,12 @@ require("../utils/index.js");
5
5
  const require_onchain_base_SDKConstruct = require("../base/SDKConstruct.js");
6
6
  require("../base/index.js");
7
7
  const require_onchain_market_math = require("./math.js");
8
- const require_onchain_market_credit_CreditSuite = require("./credit/CreditSuite.js");
9
- require("./credit/index.js");
10
- const require_onchain_market_MarketConfiguratorContract = require("./MarketConfiguratorContract.js");
11
8
  const require_model_filters = require("../../model/filters.js");
12
9
  const require_model_opportunities = require("../../model/opportunities.js");
13
10
  require("../../model/index.js");
11
+ const require_onchain_market_credit_CreditSuite = require("./credit/CreditSuite.js");
12
+ require("./credit/index.js");
13
+ const require_onchain_market_MarketConfiguratorContract = require("./MarketConfiguratorContract.js");
14
14
  const require_onchain_market_loss_policy_createLossPolicy = require("./loss-policy/createLossPolicy.js");
15
15
  require("./loss-policy/index.js");
16
16
  const require_onchain_market_oracle_createPriceOracle = require("./oracle/createPriceOracle.js");
@@ -1,12 +1,16 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_onchain_utils_AddressMap = require("../../utils/AddressMap.js");
3
3
  const require_onchain_chain_chains = require("../../chain/chains.js");
4
+ require("../../constants/addresses.js");
4
5
  const require_onchain_constants_math = require("../../constants/math.js");
5
6
  require("../../constants/index.js");
6
7
  require("../../utils/index.js");
7
8
  const require_onchain_base_SDKConstruct = require("../../base/SDKConstruct.js");
8
9
  require("../../base/index.js");
9
10
  const require_onchain_market_math = require("../math.js");
11
+ const require_model_rwa = require("../../../model/rwa.js");
12
+ require("../../../model/index.js");
13
+ const require_onchain_market_rwa_createDegenNFT = require("../rwa/createDegenNFT.js");
10
14
  const require_onchain_market_strategyName = require("../strategyName.js");
11
15
  const require_onchain_market_credit_collateralUtils = require("./collateralUtils.js");
12
16
  const require_onchain_market_credit_createCreditConfigurator = require("./createCreditConfigurator.js");
@@ -56,6 +60,7 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
56
60
  * parameters, collateral tokens, adapter permissions, and facade settings.
57
61
  */
58
62
  creditConfigurator;
63
+ #degenNFT;
59
64
  /**
60
65
  * Original compressor contract snapshot for this credit suite.
61
66
  */
@@ -115,6 +120,31 @@ var CreditSuite = class extends require_onchain_base_SDKConstruct.SDKConstruct {
115
120
  return this.market.rwaFactory;
116
121
  }
117
122
  /**
123
+ * KYC-gated degen NFT on this suite's facade, loaded on first use.
124
+ * `undefined` when the facade has none, or when the NFT is not a KYC gate.
125
+ */
126
+ degenNFT() {
127
+ const address = this.creditFacade.degenNFT;
128
+ if ((0, viem.isAddressEqual)(address, "0x0000000000000000000000000000000000000000")) return Promise.resolve(void 0);
129
+ if (!this.#degenNFT) this.#degenNFT = require_onchain_market_rwa_createDegenNFT.createDegenNFT(this.sdk, address);
130
+ return this.#degenNFT;
131
+ }
132
+ /**
133
+ * What `wallet` still has to do before the facade lets it open an account;
134
+ * `null` when nothing (no degen NFT, not a KYC gate, or already eligible).
135
+ */
136
+ async kycRequirement(wallet, targetCollateral) {
137
+ const nft = await this.degenNFT();
138
+ if (!nft) return null;
139
+ const { eligible, token } = await nft.checkKyc(wallet, targetCollateral);
140
+ if (eligible) return null;
141
+ return {
142
+ protocol: nft.protocol,
143
+ token: this.tokensMeta.getToken(token),
144
+ registrationLink: require_model_rwa.KYC_REGISTRATION_LINKS[nft.protocol]
145
+ };
146
+ }
147
+ /**
118
148
  * Builds a transaction that executes a multicall on one of this suite's
119
149
  * credit accounts.
120
150
  *
@@ -90,6 +90,9 @@ const require_onchain_market_credit_CreditFacadeV310BaseContract = require("./cr
90
90
  const require_onchain_market_credit_CreditFacadeV310Contract = require("./credit/CreditFacadeV310Contract.js");
91
91
  const require_onchain_market_math = require("./math.js");
92
92
  const require_onchain_market_credit_CreditManagerV310Contract = require("./credit/CreditManagerV310Contract.js");
93
+ const require_onchain_market_rwa_midas_constants = require("./rwa/midas/constants.js");
94
+ const require_onchain_market_rwa_midas_MidasDegenNFT = require("./rwa/midas/MidasDegenNFT.js");
95
+ const require_onchain_market_rwa_securitize_constants = require("./rwa/securitize/constants.js");
93
96
  const require_onchain_market_strategyName = require("./strategyName.js");
94
97
  const require_onchain_market_credit_collateralUtils = require("./credit/collateralUtils.js");
95
98
  const require_onchain_market_credit_CreditSuite = require("./credit/CreditSuite.js");
@@ -135,9 +138,8 @@ const require_onchain_market_zapper_IETHZapperContract = require("./zapper/IETHZ
135
138
  const require_onchain_market_zapper_createZapper = require("./zapper/createZapper.js");
136
139
  require("./zapper/index.js");
137
140
  const require_onchain_market_MarketRegister = require("./MarketRegister.js");
138
- const require_onchain_market_rwa_midas_constants = require("./rwa/midas/constants.js");
139
141
  const require_onchain_market_rwa_midas_MidasLiquidatorContract = require("./rwa/midas/MidasLiquidatorContract.js");
140
- const require_onchain_market_rwa_securitize_constants = require("./rwa/securitize/constants.js");
142
+ const require_onchain_market_rwa_securitize_SecuritizeDegenNFT = require("./rwa/securitize/SecuritizeDegenNFT.js");
141
143
  const require_onchain_market_rwa_securitize_SecuritizeLiquidatorContract = require("./rwa/securitize/SecuritizeLiquidatorContract.js");
142
144
  const require_onchain_market_rwa_securitize_SecuritizeRWAFactory = require("./rwa/securitize/SecuritizeRWAFactory.js");
143
145
  const require_onchain_market_rwa_RWARegistry = require("./rwa/RWARegistry.js");
@@ -173,6 +175,8 @@ exports.CurveUSDPriceFeedContract = require_onchain_market_pricefeeds_CurveUSDPr
173
175
  exports.CurveV1AdapterStETHContract = require_onchain_market_adapters_contracts_CurveV1AdapterStETHContract.CurveV1AdapterStETHContract;
174
176
  exports.CurveV1StableNGAdapterContract = require_onchain_market_adapters_contracts_CurveV1StableNGAdapterContract.CurveV1StableNGAdapterContract;
175
177
  exports.DEFAULT_QUOTA_BUFFER_BPS = require_onchain_market_math.DEFAULT_QUOTA_BUFFER_BPS;
178
+ exports.DEGEN_NFT_MIDAS = require_onchain_market_rwa_midas_constants.DEGEN_NFT_MIDAS;
179
+ exports.DEGEN_NFT_SECURITIZE = require_onchain_market_rwa_securitize_constants.DEGEN_NFT_SECURITIZE;
176
180
  exports.DaiUsdsAdapterContract = require_onchain_market_adapters_contracts_DaiUsdsAdapterContract.DaiUsdsAdapterContract;
177
181
  exports.ERC4626AdapterContract = require_onchain_market_adapters_contracts_ERC4626AdapterContract.ERC4626AdapterContract;
178
182
  exports.ERC4626ReferralAdapterContract = require_onchain_market_adapters_contracts_ERC4626ReferralAdapterContract.ERC4626ReferralAdapterContract;
@@ -196,6 +200,7 @@ exports.MellowDVVAdapterContract = require_onchain_market_adapters_contracts_Mel
196
200
  exports.MellowERC4626VaultAdapterContract = require_onchain_market_adapters_contracts_MellowERC4626VaultAdapterContract.MellowERC4626VaultAdapterContract;
197
201
  exports.MellowLRTPriceFeedContract = require_onchain_market_pricefeeds_MellowLRTPriceFeed.MellowLRTPriceFeedContract;
198
202
  exports.MellowWrapperAdapterContract = require_onchain_market_adapters_contracts_MellowWrapperAdapterContract.MellowWrapperAdapterContract;
203
+ exports.MidasDegenNFT = require_onchain_market_rwa_midas_MidasDegenNFT.MidasDegenNFT;
199
204
  exports.MidasGatewayAdapterContract = require_onchain_market_adapters_contracts_MidasGatewayAdapterContract.MidasGatewayAdapterContract;
200
205
  exports.MidasIssuanceVaultAdapterContract = require_onchain_market_adapters_contracts_MidasIssuanceVaultAdapterContract.MidasIssuanceVaultAdapterContract;
201
206
  exports.MidasLiquidatorContract = require_onchain_market_rwa_midas_MidasLiquidatorContract.MidasLiquidatorContract;
@@ -218,6 +223,7 @@ exports.RWARegistry = require_onchain_market_rwa_RWARegistry.RWARegistry;
218
223
  exports.RWA_LIQUIDATOR_MIDAS = require_onchain_market_rwa_midas_constants.RWA_LIQUIDATOR_MIDAS;
219
224
  exports.RWA_LIQUIDATOR_SECURITIZE = require_onchain_market_rwa_securitize_constants.RWA_LIQUIDATOR_SECURITIZE;
220
225
  exports.RedstonePriceFeedContract = require_onchain_market_pricefeeds_RedstonePriceFeed.RedstonePriceFeedContract;
226
+ exports.SecuritizeDegenNFT = require_onchain_market_rwa_securitize_SecuritizeDegenNFT.SecuritizeDegenNFT;
221
227
  exports.SecuritizeLiquidatorContract = require_onchain_market_rwa_securitize_SecuritizeLiquidatorContract.SecuritizeLiquidatorContract;
222
228
  exports.SecuritizeOnRampAdapterContract = require_onchain_market_adapters_contracts_SecuritizeOnRampAdapterContract.SecuritizeOnRampAdapterContract;
223
229
  exports.SecuritizeRWAFactory = require_onchain_market_rwa_securitize_SecuritizeRWAFactory.SecuritizeRWAFactory;
@@ -0,0 +1,53 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_abi_iVersion = require("../../../abi/iVersion.js");
3
+ const require_onchain_utils_bytes32ToString = require("../../utils/bytes32ToString.js");
4
+ require("../../utils/index.js");
5
+ const require_abi_rwa_iMidasDegenNFT = require("../../../abi/rwa/iMidasDegenNFT.js");
6
+ const require_onchain_market_rwa_midas_constants = require("./midas/constants.js");
7
+ const require_onchain_market_rwa_midas_MidasDegenNFT = require("./midas/MidasDegenNFT.js");
8
+ const require_onchain_market_rwa_securitize_constants = require("./securitize/constants.js");
9
+ let viem = require("viem");
10
+ //#region src/onchain/market/rwa/createDegenNFT.ts
11
+ /**
12
+ * Determines the KYC provider behind a degen NFT.
13
+ * Returns `undefined` for an allowlist, a legacy degen NFT, or a Securitize
14
+ * factory that is not loaded on this SDK.
15
+ */
16
+ async function createDegenNFT(sdk, address) {
17
+ const [contractType, version, serialized] = await sdk.client.multicall({
18
+ allowFailure: true,
19
+ contracts: [
20
+ {
21
+ abi: require_abi_iVersion.iVersionAbi,
22
+ address,
23
+ functionName: "contractType"
24
+ },
25
+ {
26
+ abi: require_abi_iVersion.iVersionAbi,
27
+ address,
28
+ functionName: "version"
29
+ },
30
+ {
31
+ abi: require_abi_rwa_iMidasDegenNFT.iMidasDegenNFTAbi,
32
+ address,
33
+ functionName: "serialize"
34
+ }
35
+ ]
36
+ });
37
+ if (contractType.status !== "success" || version.status !== "success" || serialized.status !== "success") return;
38
+ switch (require_onchain_utils_bytes32ToString.bytes32ToString(contractType.result)) {
39
+ case require_onchain_market_rwa_midas_constants.DEGEN_NFT_MIDAS: return new require_onchain_market_rwa_midas_MidasDegenNFT.MidasDegenNFT(sdk, {
40
+ addr: address,
41
+ version: version.result,
42
+ contractType: contractType.result,
43
+ serializedParams: serialized.result
44
+ });
45
+ case require_onchain_market_rwa_securitize_constants.DEGEN_NFT_SECURITIZE: {
46
+ const [factoryAddress] = (0, viem.decodeAbiParameters)([{ type: "address" }], serialized.result);
47
+ return sdk.rwa.factories.find((f) => (0, viem.isAddressEqual)(f.address, factoryAddress))?.degenNFT;
48
+ }
49
+ default: return;
50
+ }
51
+ }
52
+ //#endregion
53
+ exports.createDegenNFT = createDegenNFT;
@@ -1,19 +1,25 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_onchain_market_rwa_midas_constants = require("./midas/constants.js");
3
+ const require_onchain_market_rwa_midas_MidasDegenNFT = require("./midas/MidasDegenNFT.js");
4
+ const require_onchain_market_rwa_securitize_constants = require("./securitize/constants.js");
3
5
  const require_onchain_market_rwa_midas_MidasLiquidatorContract = require("./midas/MidasLiquidatorContract.js");
4
6
  require("./midas/index.js");
5
- const require_onchain_market_rwa_securitize_constants = require("./securitize/constants.js");
7
+ const require_onchain_market_rwa_securitize_SecuritizeDegenNFT = require("./securitize/SecuritizeDegenNFT.js");
6
8
  const require_onchain_market_rwa_securitize_SecuritizeLiquidatorContract = require("./securitize/SecuritizeLiquidatorContract.js");
7
9
  const require_onchain_market_rwa_securitize_SecuritizeRWAFactory = require("./securitize/SecuritizeRWAFactory.js");
8
10
  require("./securitize/index.js");
9
11
  const require_onchain_market_rwa_RWARegistry = require("./RWARegistry.js");
10
12
  const require_onchain_market_rwa_types = require("./types.js");
13
+ exports.DEGEN_NFT_MIDAS = require_onchain_market_rwa_midas_constants.DEGEN_NFT_MIDAS;
14
+ exports.DEGEN_NFT_SECURITIZE = require_onchain_market_rwa_securitize_constants.DEGEN_NFT_SECURITIZE;
15
+ exports.MidasDegenNFT = require_onchain_market_rwa_midas_MidasDegenNFT.MidasDegenNFT;
11
16
  exports.MidasLiquidatorContract = require_onchain_market_rwa_midas_MidasLiquidatorContract.MidasLiquidatorContract;
12
17
  exports.PHANTOM_TOKEN_MIDAS_REDEMPTION = require_onchain_market_rwa_midas_constants.PHANTOM_TOKEN_MIDAS_REDEMPTION;
13
18
  exports.PHANTOM_TOKEN_SECURITIZE_REDEMPTION = require_onchain_market_rwa_securitize_constants.PHANTOM_TOKEN_SECURITIZE_REDEMPTION;
14
19
  exports.RWARegistry = require_onchain_market_rwa_RWARegistry.RWARegistry;
15
20
  exports.RWA_LIQUIDATOR_MIDAS = require_onchain_market_rwa_midas_constants.RWA_LIQUIDATOR_MIDAS;
16
21
  exports.RWA_LIQUIDATOR_SECURITIZE = require_onchain_market_rwa_securitize_constants.RWA_LIQUIDATOR_SECURITIZE;
22
+ exports.SecuritizeDegenNFT = require_onchain_market_rwa_securitize_SecuritizeDegenNFT.SecuritizeDegenNFT;
17
23
  exports.SecuritizeLiquidatorContract = require_onchain_market_rwa_securitize_SecuritizeLiquidatorContract.SecuritizeLiquidatorContract;
18
24
  exports.SecuritizeRWAFactory = require_onchain_market_rwa_securitize_SecuritizeRWAFactory.SecuritizeRWAFactory;
19
25
  exports.isRWAFactory = require_onchain_market_rwa_types.isRWAFactory;
@@ -0,0 +1,56 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_onchain_base_BaseContract = require("../../../base/BaseContract.js");
3
+ require("../../../base/index.js");
4
+ const require_onchain_market_adapters_abi_midas_iMidasGatewayV311 = require("../../adapters/abi/midas/iMidasGatewayV311.js");
5
+ require("../../adapters/abi/index.js");
6
+ const require_abi_rwa_iMidasDegenNFT = require("../../../../abi/rwa/iMidasDegenNFT.js");
7
+ require("./constants.js");
8
+ const require_abi_rwa_iMidasAccessControl = require("../../../../abi/rwa/iMidasAccessControl.js");
9
+ let viem = require("viem");
10
+ //#region src/onchain/market/rwa/midas/MidasDegenNFT.ts
11
+ const abi = require_abi_rwa_iMidasDegenNFT.iMidasDegenNFTAbi;
12
+ var MidasDegenNFT = class extends require_onchain_base_BaseContract.BaseContract {
13
+ protocol = "midas";
14
+ gateway;
15
+ accessControl;
16
+ greenlistedRole;
17
+ constructor(sdk, baseParams) {
18
+ super(sdk, {
19
+ ...baseParams,
20
+ contractType: baseParams.contractType || "DEGEN_NFT::MIDAS",
21
+ name: "MidasDegenNFT",
22
+ abi
23
+ });
24
+ if (!baseParams.serializedParams) throw new Error(`MidasDegenNFT at ${baseParams.addr} is missing serializedParams`);
25
+ const [gateway, accessControl, greenlistedRole] = (0, viem.decodeAbiParameters)([
26
+ { type: "address" },
27
+ { type: "address" },
28
+ { type: "bytes32" }
29
+ ], baseParams.serializedParams);
30
+ this.gateway = gateway;
31
+ this.accessControl = accessControl;
32
+ this.greenlistedRole = greenlistedRole;
33
+ }
34
+ /** Same predicate `MidasDegenNFT.burn` reverts on; the mToken rides along in the batch. */
35
+ async checkKyc(wallet, _targetCollateral) {
36
+ const [eligible, token] = await this.client.multicall({
37
+ allowFailure: false,
38
+ contracts: [{
39
+ abi: require_abi_rwa_iMidasAccessControl.iMidasAccessControlAbi,
40
+ address: this.accessControl,
41
+ functionName: "hasRole",
42
+ args: [this.greenlistedRole, wallet]
43
+ }, {
44
+ abi: require_onchain_market_adapters_abi_midas_iMidasGatewayV311.iMidasGatewayV311Abi,
45
+ address: this.gateway,
46
+ functionName: "mToken"
47
+ }]
48
+ });
49
+ return {
50
+ eligible,
51
+ token
52
+ };
53
+ }
54
+ };
55
+ //#endregion
56
+ exports.MidasDegenNFT = MidasDegenNFT;
@@ -2,6 +2,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  //#region src/onchain/market/rwa/midas/constants.ts
3
3
  const RWA_LIQUIDATOR_MIDAS = "RWA_LIQUIDATOR::MIDAS";
4
4
  const PHANTOM_TOKEN_MIDAS_REDEMPTION = "PHANTOM_TOKEN::MIDAS_REDEMPTION";
5
+ const DEGEN_NFT_MIDAS = "DEGEN_NFT::MIDAS";
5
6
  //#endregion
7
+ exports.DEGEN_NFT_MIDAS = DEGEN_NFT_MIDAS;
6
8
  exports.PHANTOM_TOKEN_MIDAS_REDEMPTION = PHANTOM_TOKEN_MIDAS_REDEMPTION;
7
9
  exports.RWA_LIQUIDATOR_MIDAS = RWA_LIQUIDATOR_MIDAS;
@@ -1,6 +1,9 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_onchain_market_rwa_midas_constants = require("./constants.js");
3
+ const require_onchain_market_rwa_midas_MidasDegenNFT = require("./MidasDegenNFT.js");
3
4
  const require_onchain_market_rwa_midas_MidasLiquidatorContract = require("./MidasLiquidatorContract.js");
5
+ exports.DEGEN_NFT_MIDAS = require_onchain_market_rwa_midas_constants.DEGEN_NFT_MIDAS;
6
+ exports.MidasDegenNFT = require_onchain_market_rwa_midas_MidasDegenNFT.MidasDegenNFT;
4
7
  exports.MidasLiquidatorContract = require_onchain_market_rwa_midas_MidasLiquidatorContract.MidasLiquidatorContract;
5
8
  exports.PHANTOM_TOKEN_MIDAS_REDEMPTION = require_onchain_market_rwa_midas_constants.PHANTOM_TOKEN_MIDAS_REDEMPTION;
6
9
  exports.RWA_LIQUIDATOR_MIDAS = require_onchain_market_rwa_midas_constants.RWA_LIQUIDATOR_MIDAS;
@@ -1,17 +1,36 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_onchain_base_BaseContract = require("../../../base/BaseContract.js");
3
3
  require("../../../base/index.js");
4
+ const require_onchain_market_rwa_securitize_constants = require("./constants.js");
5
+ const require_abi_rwa_iSecuritizeDegenNFT = require("../../../../abi/rwa/iSecuritizeDegenNFT.js");
6
+ let viem = require("viem");
4
7
  //#region src/onchain/market/rwa/securitize/SecuritizeDegenNFT.ts
5
- const abi = require("../../../../abi/rwa/iSecuritizeDegenNFT.js").iSecuritizeDegenNFTAbi;
8
+ const abi = require_abi_rwa_iSecuritizeDegenNFT.iSecuritizeDegenNFTAbi;
6
9
  var SecuritizeDegenNFT = class extends require_onchain_base_BaseContract.BaseContract {
7
- constructor(sdk, address) {
10
+ protocol = "securitize";
11
+ factory;
12
+ constructor(sdk, address, factory) {
8
13
  super(sdk, {
9
14
  addr: address,
10
- contractType: "DEGEN_NFT::SECURITIZE",
15
+ contractType: require_onchain_market_rwa_securitize_constants.DEGEN_NFT_SECURITIZE,
11
16
  version: 310,
12
17
  name: "SecuritizeDegenNFT",
13
18
  abi
14
19
  });
20
+ this.factory = factory;
21
+ }
22
+ /** Registration on Securitize is the only KYC step; pending EIP-712 signatures are not. */
23
+ async checkKyc(wallet, targetCollateral) {
24
+ const { factory } = this;
25
+ if (!factory.getTokens().some((t) => (0, viem.isAddressEqual)(t, targetCollateral))) return {
26
+ eligible: true,
27
+ token: targetCollateral
28
+ };
29
+ const req = await factory.getOpenAccountRequirements(wallet, { tokenOutAddress: targetCollateral });
30
+ return {
31
+ eligible: !req || req.securitizeTokensToRegister.length === 0,
32
+ token: req?.securitizeTokensToRegister[0] ?? targetCollateral
33
+ };
15
34
  }
16
35
  };
17
36
  //#endregion
@@ -6,8 +6,8 @@ const require_onchain_base_BaseContract = require("../../../base/BaseContract.js
6
6
  require("../../../base/index.js");
7
7
  const require_model_rwa = require("../../../../model/rwa.js");
8
8
  require("../../../../model/index.js");
9
- const require_abi_rwa_iSecuritizeRWAFactory = require("../../../../abi/rwa/iSecuritizeRWAFactory.js");
10
9
  const require_onchain_market_rwa_securitize_SecuritizeDegenNFT = require("./SecuritizeDegenNFT.js");
10
+ const require_abi_rwa_iSecuritizeRWAFactory = require("../../../../abi/rwa/iSecuritizeRWAFactory.js");
11
11
  let viem = require("viem");
12
12
  //#region src/onchain/market/rwa/securitize/SecuritizeRWAFactory.ts
13
13
  const abi = require_abi_rwa_iSecuritizeRWAFactory.iSecuritizeRWAFactoryAbi;
@@ -54,7 +54,7 @@ var SecuritizeRWAFactory = class extends require_onchain_base_BaseContract.BaseC
54
54
  }
55
55
  ], data.baseParams.serializedParams);
56
56
  this.owner = decoded[0];
57
- this.degenNFT = new require_onchain_market_rwa_securitize_SecuritizeDegenNFT.SecuritizeDegenNFT(sdk, decoded[1]);
57
+ this.degenNFT = new require_onchain_market_rwa_securitize_SecuritizeDegenNFT.SecuritizeDegenNFT(sdk, decoded[1], this);
58
58
  for (const t of data.tokens) this.tokensMeta.upsert(t.addr, t);
59
59
  this.dsTokens = decoded[2].map((t) => ({
60
60
  address: t.token,
@@ -2,6 +2,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  //#region src/onchain/market/rwa/securitize/constants.ts
3
3
  const RWA_LIQUIDATOR_SECURITIZE = "RWA_LIQUIDATOR::SECURITIZE";
4
4
  const PHANTOM_TOKEN_SECURITIZE_REDEMPTION = "PHANTOM_TOKEN::SECURITIZE_RD";
5
+ const DEGEN_NFT_SECURITIZE = "DEGEN_NFT::SECURITIZE";
5
6
  //#endregion
7
+ exports.DEGEN_NFT_SECURITIZE = DEGEN_NFT_SECURITIZE;
6
8
  exports.PHANTOM_TOKEN_SECURITIZE_REDEMPTION = PHANTOM_TOKEN_SECURITIZE_REDEMPTION;
7
9
  exports.RWA_LIQUIDATOR_SECURITIZE = RWA_LIQUIDATOR_SECURITIZE;