@bze/bze-ui-kit 0.2.2 → 0.3.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.
package/dist/index.mjs CHANGED
@@ -975,6 +975,207 @@ var getPageRequestWithLimit = (limit) => {
975
975
  // src/query/burner.ts
976
976
  import { bze as bze2 } from "@bze/bzejs";
977
977
  import { PageRequest as PageRequest2 } from "@bze/bzejs/cosmos/base/query/v1beta1/pagination";
978
+
979
+ // src/constants/endpoints.ts
980
+ function getRestURL() {
981
+ return process.env.NEXT_PUBLIC_REST_URL || "";
982
+ }
983
+ function getRpcURL() {
984
+ return process.env.NEXT_PUBLIC_RPC_URL || "";
985
+ }
986
+ function getArchwayRpcURL() {
987
+ return process.env.NEXT_PUBLIC_RPC_URL_ARCHWAY || "";
988
+ }
989
+ function getOsmosisRpcUrl() {
990
+ return process.env.NEXT_PUBLIC_RPC_URL_OSMOSIS || "";
991
+ }
992
+ function getNobleRpcUrl() {
993
+ return process.env.NEXT_PUBLIC_RPC_URL_NOBLE || "";
994
+ }
995
+ function getJackalRpcUrl() {
996
+ return process.env.NEXT_PUBLIC_RPC_URL_JACKAL || "";
997
+ }
998
+ function getOmniFlixRpcUrl() {
999
+ return process.env.NEXT_PUBLIC_RPC_URL_FLIX || "";
1000
+ }
1001
+ function getAtomOneRpcUrl() {
1002
+ return process.env.NEXT_PUBLIC_RPC_URL_ATOMONE || "";
1003
+ }
1004
+ function getArchwayRestURL() {
1005
+ return process.env.NEXT_PUBLIC_REST_URL_ARCHWAY || "";
1006
+ }
1007
+ function getOsmosisRestURL() {
1008
+ return process.env.NEXT_PUBLIC_REST_URL_OSMOSIS || "";
1009
+ }
1010
+ function getNobleRestURL() {
1011
+ return process.env.NEXT_PUBLIC_REST_URL_NOBLE || "";
1012
+ }
1013
+ function getJackalRestURL() {
1014
+ return process.env.NEXT_PUBLIC_REST_URL_JACKAL || "";
1015
+ }
1016
+ function getOmniFlixRestURL() {
1017
+ return process.env.NEXT_PUBLIC_REST_URL_FLIX || "";
1018
+ }
1019
+ function getAtomOneRestURL() {
1020
+ return process.env.NEXT_PUBLIC_REST_URL_ATOMONE || "";
1021
+ }
1022
+ var getAggregatorHost = () => {
1023
+ var _a2;
1024
+ return (_a2 = process.env.NEXT_PUBLIC_AGG_API_HOST) != null ? _a2 : "https://getbze.com";
1025
+ };
1026
+
1027
+ // src/query/module.ts
1028
+ var MODULE_ADDRESS_KEY = "auth:module:address:";
1029
+ var MODULE_ADDRESS_CACHE_TTL = 60 * 60 * 48;
1030
+ function getHardcodedBurnerAddress() {
1031
+ return "bze1v7uw4xhrcv0vk7qp8jf9lu3hm5d8uu5yjp5qun";
1032
+ }
1033
+ function getHardcodedRaffleAddress() {
1034
+ return "bze18hsqalgwlzqavrrkfnxmrjmygwyjy8senx5tgs";
1035
+ }
1036
+ function getHardcodedLockAddress() {
1037
+ return "bze1pc5zjcvhx3e8l305zjl72grytfa30r5mdypmw4";
1038
+ }
1039
+ function getBurnerModuleAddress() {
1040
+ return getHardcodedBurnerAddress();
1041
+ }
1042
+ function getRaffleModuleAddress() {
1043
+ return getHardcodedRaffleAddress();
1044
+ }
1045
+ async function getModuleAddress(module) {
1046
+ var _a2;
1047
+ try {
1048
+ const cacheKey = `${MODULE_ADDRESS_KEY}${module}`;
1049
+ const localData = getFromLocalStorage(cacheKey);
1050
+ if (null !== localData) {
1051
+ return localData;
1052
+ }
1053
+ const url = getRestURL();
1054
+ const response = await fetch(`${url}/cosmos/auth/v1beta1/module_accounts/${module}`);
1055
+ if (!response.ok) {
1056
+ return "";
1057
+ }
1058
+ const parsed = await response.json();
1059
+ const addy = (_a2 = parsed.account.base_account) == null ? void 0 : _a2.address;
1060
+ if (addy === void 0) {
1061
+ return "";
1062
+ }
1063
+ setInLocalStorage(cacheKey, addy, MODULE_ADDRESS_CACHE_TTL);
1064
+ return addy;
1065
+ } catch (e) {
1066
+ console.error(e);
1067
+ return "";
1068
+ }
1069
+ }
1070
+
1071
+ // src/query/bank.ts
1072
+ async function getAddressBalances(address) {
1073
+ try {
1074
+ const client = await getRestClient();
1075
+ const response = await client.cosmos.bank.v1beta1.spendableBalances({ address });
1076
+ return response.balances;
1077
+ } catch (e) {
1078
+ console.error("failed to get balances", e);
1079
+ return [];
1080
+ }
1081
+ }
1082
+ async function getLockedBalances() {
1083
+ try {
1084
+ const lockerAddress = getLockerAddress();
1085
+ if (!lockerAddress) {
1086
+ console.warn("Locker address not configured");
1087
+ return [];
1088
+ }
1089
+ return await getAddressBalances(lockerAddress);
1090
+ } catch (e) {
1091
+ console.error("failed to get locked balances", e);
1092
+ return [];
1093
+ }
1094
+ }
1095
+
1096
+ // src/query/epoch.ts
1097
+ var EPOCH_HOUR = "hour";
1098
+ var EPOCH_DAY = "day";
1099
+ var EPOCH_WEEK = "week";
1100
+ var EPOCHS_INFO_CACHE_KEY = "epochs:info";
1101
+ var EPOCHS_INFO_CACHE_TTL = 60 * 60;
1102
+ async function getEpochsInfo() {
1103
+ try {
1104
+ const cachedData = getFromLocalStorage(EPOCHS_INFO_CACHE_KEY);
1105
+ let shouldFetchFromEndpoint = false;
1106
+ if (cachedData !== null) {
1107
+ const cached = JSON.parse(cachedData);
1108
+ const now = (/* @__PURE__ */ new Date()).getTime();
1109
+ for (const epoch of cached.epochs) {
1110
+ if (epoch.current_epoch_start_time) {
1111
+ const startTime = new Date(epoch.current_epoch_start_time).getTime();
1112
+ const duration = getEpochDurationByIdentifier(epoch.identifier);
1113
+ const epochEndTime = startTime + duration - 15 * 1e3;
1114
+ if (now >= epochEndTime) {
1115
+ shouldFetchFromEndpoint = true;
1116
+ break;
1117
+ }
1118
+ }
1119
+ }
1120
+ if (!shouldFetchFromEndpoint) {
1121
+ return cached;
1122
+ }
1123
+ }
1124
+ const client = await getRestClient();
1125
+ const response = await client.bze.epochs.epochInfos();
1126
+ setInLocalStorage(EPOCHS_INFO_CACHE_KEY, JSON.stringify(response), EPOCHS_INFO_CACHE_TTL);
1127
+ return response;
1128
+ } catch (e) {
1129
+ console.error(e);
1130
+ return { epochs: [] };
1131
+ }
1132
+ }
1133
+ async function getCurrentEpoch(identifier) {
1134
+ const all = await getEpochsInfo();
1135
+ return all.epochs.find((item) => item.identifier === identifier);
1136
+ }
1137
+ async function getHourEpochInfo() {
1138
+ return getCurrentEpoch(EPOCH_HOUR);
1139
+ }
1140
+ async function getWeekEpochInfo() {
1141
+ return getCurrentEpoch(EPOCH_WEEK);
1142
+ }
1143
+ async function getCurrentWeekEpochEndTime() {
1144
+ return getPeriodicEpochEndTime(EPOCH_WEEK);
1145
+ }
1146
+ async function getPeriodicWeekEpochEndTime(modWeek = 1) {
1147
+ return getPeriodicEpochEndTime(EPOCH_WEEK, modWeek);
1148
+ }
1149
+ async function getPeriodicEpochEndTime(identifier, mod = 1) {
1150
+ const epoch = await getCurrentEpoch(identifier);
1151
+ if (!epoch || !epoch.current_epoch_start_time) {
1152
+ return void 0;
1153
+ }
1154
+ const current = toBigNumber(epoch.current_epoch);
1155
+ let remainingEpochs = mod - current.toNumber() % mod;
1156
+ if (remainingEpochs === mod) {
1157
+ remainingEpochs = 0;
1158
+ }
1159
+ const startAt = new Date(epoch.current_epoch_start_time);
1160
+ const duration = getEpochDurationByIdentifier(identifier);
1161
+ startAt.setTime(startAt.getTime() + duration + duration * remainingEpochs);
1162
+ return startAt;
1163
+ }
1164
+ function getEpochDurationByIdentifier(identifier) {
1165
+ const hourMs = 60 * 60 * 1e3;
1166
+ switch (identifier) {
1167
+ case EPOCH_HOUR:
1168
+ return hourMs;
1169
+ case EPOCH_DAY:
1170
+ return hourMs * 24;
1171
+ case EPOCH_WEEK:
1172
+ return hourMs * 24 * 7;
1173
+ default:
1174
+ return hourMs;
1175
+ }
1176
+ }
1177
+
1178
+ // src/query/burner.ts
978
1179
  var BURNED_KEY = "burner:all_burned_coins";
979
1180
  var LOCAL_CACHE_TTL = 60 * 60 * 4;
980
1181
  var { fromPartial: QueryAllBurnedCoinsRequestFromPartial } = bze2.burner.QueryAllBurnedCoinsRequest;
@@ -1020,6 +1221,33 @@ async function getAllBurnedCoins() {
1020
1221
  };
1021
1222
  }
1022
1223
  }
1224
+ var BURN_EPOCH_COUNT = 4;
1225
+ async function getNextBurning() {
1226
+ const address = getBurnerModuleAddress();
1227
+ if (address === "") {
1228
+ return void 0;
1229
+ }
1230
+ const balances = await getAddressBalances(address);
1231
+ if (balances.length === 0) {
1232
+ return void 0;
1233
+ }
1234
+ const timeFromEpoch = await getBurningTimeFromEpoch();
1235
+ if (!timeFromEpoch) {
1236
+ return void 0;
1237
+ }
1238
+ return {
1239
+ coins: balances,
1240
+ date: timeFromEpoch
1241
+ };
1242
+ }
1243
+ async function getBurningTimeFromEpoch() {
1244
+ const params = await getBurnerParams();
1245
+ let defaultBurningMod = BURN_EPOCH_COUNT;
1246
+ if (params) {
1247
+ defaultBurningMod = toBigNumber(params.periodic_burning_weeks).toNumber();
1248
+ }
1249
+ return await getPeriodicWeekEpochEndTime(defaultBurningMod);
1250
+ }
1023
1251
 
1024
1252
  // src/utils/validation.ts
1025
1253
  function isValidUrl(urlString) {
@@ -1140,54 +1368,6 @@ var isPoolSupportedByValidator = (baseDenom, quoteDenom) => {
1140
1368
  return supportedDenoms.includes(baseDenom) || supportedDenoms.includes(quoteDenom);
1141
1369
  };
1142
1370
 
1143
- // src/constants/endpoints.ts
1144
- function getRestURL() {
1145
- return process.env.NEXT_PUBLIC_REST_URL || "";
1146
- }
1147
- function getRpcURL() {
1148
- return process.env.NEXT_PUBLIC_RPC_URL || "";
1149
- }
1150
- function getArchwayRpcURL() {
1151
- return process.env.NEXT_PUBLIC_RPC_URL_ARCHWAY || "";
1152
- }
1153
- function getOsmosisRpcUrl() {
1154
- return process.env.NEXT_PUBLIC_RPC_URL_OSMOSIS || "";
1155
- }
1156
- function getNobleRpcUrl() {
1157
- return process.env.NEXT_PUBLIC_RPC_URL_NOBLE || "";
1158
- }
1159
- function getJackalRpcUrl() {
1160
- return process.env.NEXT_PUBLIC_RPC_URL_JACKAL || "";
1161
- }
1162
- function getOmniFlixRpcUrl() {
1163
- return process.env.NEXT_PUBLIC_RPC_URL_FLIX || "";
1164
- }
1165
- function getAtomOneRpcUrl() {
1166
- return process.env.NEXT_PUBLIC_RPC_URL_ATOMONE || "";
1167
- }
1168
- function getArchwayRestURL() {
1169
- return process.env.NEXT_PUBLIC_REST_URL_ARCHWAY || "";
1170
- }
1171
- function getOsmosisRestURL() {
1172
- return process.env.NEXT_PUBLIC_REST_URL_OSMOSIS || "";
1173
- }
1174
- function getNobleRestURL() {
1175
- return process.env.NEXT_PUBLIC_REST_URL_NOBLE || "";
1176
- }
1177
- function getJackalRestURL() {
1178
- return process.env.NEXT_PUBLIC_REST_URL_JACKAL || "";
1179
- }
1180
- function getOmniFlixRestURL() {
1181
- return process.env.NEXT_PUBLIC_REST_URL_FLIX || "";
1182
- }
1183
- function getAtomOneRestURL() {
1184
- return process.env.NEXT_PUBLIC_REST_URL_ATOMONE || "";
1185
- }
1186
- var getAggregatorHost = () => {
1187
- var _a2;
1188
- return (_a2 = process.env.NEXT_PUBLIC_AGG_API_HOST) != null ? _a2 : "https://getbze.com";
1189
- };
1190
-
1191
1371
  // src/constants/market.ts
1192
1372
  var EXCLUDED_MARKETS = {
1193
1373
  "factory/bze1f0qgels0eu96ev6a67znu70q7rquy9eragn8nw/ucorey/factory/bze13gzq40che93tgfm9kzmkpjamah5nj0j73pyhqk/uvdl": true,
@@ -2001,111 +2181,125 @@ async function keplrSuggestChain(chainId) {
2001
2181
  return await ((_a2 = window.keplr) == null ? void 0 : _a2.experimentalSuggestChain(await getKeplrChainInfo(chainId)));
2002
2182
  }
2003
2183
 
2004
- // src/query/bank.ts
2005
- async function getAddressBalances(address) {
2184
+ // src/query/block.ts
2185
+ var FAILOVER_BLOCKTIMES = {
2186
+ "9334084": "2023-12-07T14:30:55.034845214Z",
2187
+ "4423602": "2023-01-18T07:51:31.391193017Z",
2188
+ "4827583": "2023-02-14T03:34:27.791387761Z",
2189
+ "5149043": "2023-03-07T11:41:10.455072975Z",
2190
+ "10855457": "2024-03-17T19:41:34.031980836Z"
2191
+ };
2192
+ var BLOCK_KEY = "tendermint:block:";
2193
+ async function getBlockDetailsByHeight(height) {
2006
2194
  try {
2195
+ const cacheKey = `${BLOCK_KEY}${height}`;
2196
+ const localData = getFromLocalStorage(cacheKey);
2197
+ if (null !== localData) {
2198
+ const parsed = JSON.parse(localData);
2199
+ if (parsed) {
2200
+ return parsed;
2201
+ }
2202
+ }
2007
2203
  const client = await getRestClient();
2008
- const response = await client.cosmos.bank.v1beta1.spendableBalances({ address });
2009
- return response.balances;
2204
+ const response = await client.cosmos.base.tendermint.v1beta1.getBlockByHeight({ height: BigInt(height.toFixed(0)) });
2205
+ setInLocalStorage(cacheKey, JSON.stringify(response), 0);
2206
+ return response;
2010
2207
  } catch (e) {
2011
- console.error("failed to get balances", e);
2012
- return [];
2208
+ console.error(e);
2209
+ return {};
2013
2210
  }
2014
2211
  }
2015
- async function getLockedBalances() {
2016
- try {
2017
- const lockerAddress = getLockerAddress();
2018
- if (!lockerAddress) {
2019
- console.warn("Locker address not configured");
2020
- return [];
2212
+ async function getBlockTimeByHeight(height) {
2213
+ var _a2, _b2;
2214
+ const details = await getBlockDetailsByHeight(height);
2215
+ if (details.block_id === void 0) {
2216
+ if (height.toFixed(0) in FAILOVER_BLOCKTIMES) {
2217
+ return new Date(FAILOVER_BLOCKTIMES[height.toFixed(0)]);
2021
2218
  }
2022
- return await getAddressBalances(lockerAddress);
2023
- } catch (e) {
2024
- console.error("failed to get locked balances", e);
2025
- return [];
2026
2219
  }
2220
+ return (_b2 = (_a2 = details.block) == null ? void 0 : _a2.header) == null ? void 0 : _b2.time;
2027
2221
  }
2028
-
2029
- // src/query/epoch.ts
2030
- var EPOCH_HOUR = "hour";
2031
- var EPOCH_DAY = "day";
2032
- var EPOCH_WEEK = "week";
2033
- var EPOCHS_INFO_CACHE_KEY = "epochs:info";
2034
- var EPOCHS_INFO_CACHE_TTL = 60 * 60;
2035
- async function getEpochsInfo() {
2222
+ async function getBlockResults(height) {
2223
+ const settings = getSettings();
2224
+ const rpcUrl = settings.endpoints.rpcEndpoint.replace("wss", "https");
2225
+ const url = `${rpcUrl}/block_results?height=${height}`;
2036
2226
  try {
2037
- const cachedData = getFromLocalStorage(EPOCHS_INFO_CACHE_KEY);
2038
- let shouldFetchFromEndpoint = false;
2039
- if (cachedData !== null) {
2040
- const cached = JSON.parse(cachedData);
2041
- const now = (/* @__PURE__ */ new Date()).getTime();
2042
- for (const epoch of cached.epochs) {
2043
- if (epoch.current_epoch_start_time) {
2044
- const startTime = new Date(epoch.current_epoch_start_time).getTime();
2045
- const duration = getEpochDurationByIdentifier(epoch.identifier);
2046
- const epochEndTime = startTime + duration - 15 * 1e3;
2047
- if (now >= epochEndTime) {
2048
- shouldFetchFromEndpoint = true;
2049
- break;
2050
- }
2051
- }
2052
- }
2053
- if (!shouldFetchFromEndpoint) {
2054
- return cached;
2227
+ const response = await fetch(url, {
2228
+ method: "GET",
2229
+ headers: {
2230
+ "Content-Type": "application/json"
2055
2231
  }
2232
+ });
2233
+ if (!response.ok) {
2234
+ console.log("not ok response from RPC: ", response);
2235
+ return void 0;
2056
2236
  }
2237
+ return await response.json();
2238
+ } catch (error) {
2239
+ console.error("Failed to fetch block results:", error);
2240
+ throw error;
2241
+ }
2242
+ }
2243
+
2244
+ // src/query/raffle.ts
2245
+ async function getRaffles() {
2246
+ try {
2057
2247
  const client = await getRestClient();
2058
- const response = await client.bze.epochs.epochInfos();
2059
- setInLocalStorage(EPOCHS_INFO_CACHE_KEY, JSON.stringify(response), EPOCHS_INFO_CACHE_TTL);
2060
- return response;
2248
+ const response = await client.bze.burner.raffles();
2249
+ return response.list;
2061
2250
  } catch (e) {
2062
2251
  console.error(e);
2063
- return { epochs: [] };
2252
+ return [];
2064
2253
  }
2065
2254
  }
2066
- async function getCurrentEpoch(identifier) {
2067
- const all = await getEpochsInfo();
2068
- return all.epochs.find((item) => item.identifier === identifier);
2069
- }
2070
- async function getHourEpochInfo() {
2071
- return getCurrentEpoch(EPOCH_HOUR);
2072
- }
2073
- async function getWeekEpochInfo() {
2074
- return getCurrentEpoch(EPOCH_WEEK);
2075
- }
2076
- async function getCurrentWeekEpochEndTime() {
2077
- return getPeriodicEpochEndTime(EPOCH_WEEK);
2078
- }
2079
- async function getPeriodicWeekEpochEndTime(modWeek = 1) {
2080
- return getPeriodicEpochEndTime(EPOCH_WEEK, modWeek);
2255
+ async function getRaffleWinners(denom) {
2256
+ try {
2257
+ const client = await getRestClient();
2258
+ const response = await client.bze.burner.raffleWinners({ denom });
2259
+ return response.list;
2260
+ } catch (e) {
2261
+ console.error(e);
2262
+ return [];
2263
+ }
2081
2264
  }
2082
- async function getPeriodicEpochEndTime(identifier, mod = 1) {
2083
- const epoch = await getCurrentEpoch(identifier);
2084
- if (!epoch || !epoch.current_epoch_start_time) {
2265
+ async function checkAddressWonRaffle(address, denom, height) {
2266
+ var _a2;
2267
+ const response = {
2268
+ hasWon: false,
2269
+ amount: "0",
2270
+ denom,
2271
+ address
2272
+ };
2273
+ if (address == "" || height <= 0) {
2085
2274
  return void 0;
2086
2275
  }
2087
- const current = toBigNumber(epoch.current_epoch);
2088
- let remainingEpochs = mod - current.toNumber() % mod;
2089
- if (remainingEpochs === mod) {
2090
- remainingEpochs = 0;
2276
+ const blockResults = await getBlockResults(height);
2277
+ if (!blockResults) {
2278
+ return void 0;
2091
2279
  }
2092
- const startAt = new Date(epoch.current_epoch_start_time);
2093
- const duration = getEpochDurationByIdentifier(identifier);
2094
- startAt.setTime(startAt.getTime() + duration + duration * remainingEpochs);
2095
- return startAt;
2096
- }
2097
- function getEpochDurationByIdentifier(identifier) {
2098
- const hourMs = 60 * 60 * 1e3;
2099
- switch (identifier) {
2100
- case EPOCH_HOUR:
2101
- return hourMs;
2102
- case EPOCH_DAY:
2103
- return hourMs * 24;
2104
- case EPOCH_WEEK:
2105
- return hourMs * 24 * 7;
2106
- default:
2107
- return hourMs;
2280
+ if (!((_a2 = blockResults.result) == null ? void 0 : _a2.finalize_block_events)) {
2281
+ return void 0;
2282
+ }
2283
+ if (blockResults.result.finalize_block_events.length === 0) {
2284
+ return void 0;
2285
+ }
2286
+ const raffleEvents = blockResults.result.finalize_block_events.filter((ev) => ev.type.includes("Raffle"));
2287
+ if (!raffleEvents || raffleEvents.length === 0) {
2288
+ return void 0;
2289
+ }
2290
+ for (let i = 0; i < raffleEvents.length; i++) {
2291
+ const ev = raffleEvents[i];
2292
+ const converted = mapEventAttributes(ev.attributes);
2293
+ if ("participant" in converted && ev.type.includes("RaffleLostEvent") && converted["participant"] === address) {
2294
+ return response;
2295
+ }
2296
+ if ("winner" in converted && ev.type.includes("RaffleWinnerEvent") && converted["winner"] === address && converted["denom"] === denom) {
2297
+ response.hasWon = true;
2298
+ response.amount = converted["amount"];
2299
+ return response;
2300
+ }
2108
2301
  }
2302
+ return response;
2109
2303
  }
2110
2304
 
2111
2305
  // src/query/factory.ts
@@ -4736,6 +4930,7 @@ export {
4736
4930
  canDepositFromIBC,
4737
4931
  canSendToIBC,
4738
4932
  cancelDebounce,
4933
+ checkAddressWonRaffle,
4739
4934
  convertToWebSocketUrl,
4740
4935
  counterpartyChainForChannel,
4741
4936
  createMarketId,
@@ -4772,6 +4967,10 @@ export {
4772
4967
  getAtomOneRestURL,
4773
4968
  getAtomOneRpcUrl,
4774
4969
  getBZEUSDPrice,
4970
+ getBlockDetailsByHeight,
4971
+ getBlockResults,
4972
+ getBlockTimeByHeight,
4973
+ getBurnerModuleAddress,
4775
4974
  getBurnerParams,
4776
4975
  getBurnerParamsWithClient,
4777
4976
  getChainAddressPrefix,
@@ -4795,6 +4994,7 @@ export {
4795
4994
  getEpochsInfo,
4796
4995
  getFactoryDenomAdminAddress,
4797
4996
  getFromLocalStorage,
4997
+ getHardcodedLockAddress,
4798
4998
  getHashIBCTrace,
4799
4999
  getHourEpochInfo,
4800
5000
  getIBCAssetList,
@@ -4817,6 +5017,8 @@ export {
4817
5017
  getMarketSellOrders,
4818
5018
  getMarkets,
4819
5019
  getMinAmount,
5020
+ getModuleAddress,
5021
+ getNextBurning,
4820
5022
  getNoOfIntervalsNeeded,
4821
5023
  getNobleRestURL,
4822
5024
  getNobleRpcUrl,
@@ -4828,6 +5030,9 @@ export {
4828
5030
  getPendingUnlockParticipants,
4829
5031
  getPeriodicEpochEndTime,
4830
5032
  getPeriodicWeekEpochEndTime,
5033
+ getRaffleModuleAddress,
5034
+ getRaffleWinners,
5035
+ getRaffles,
4831
5036
  getRestClient,
4832
5037
  getRestURL,
4833
5038
  getRpcURL,