@argent/x-shared 1.39.1 → 1.41.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.cjs +1 -1
- package/dist/index.js +342 -337
- package/dist/src/tokens/service/implementation.cjs +1 -1
- package/dist/src/tokens/service/implementation.d.ts +101 -3
- package/dist/src/tokens/service/implementation.js +19 -19
- package/dist/src/tokens/service/interface.d.ts +1 -1
- package/dist/src/tokens/service/types/backend.model.cjs +1 -1
- package/dist/src/tokens/service/types/backend.model.d.ts +4252 -61
- package/dist/src/tokens/service/types/backend.model.js +59 -41
- package/dist/src/tokens/service/types/defiPosition.model.cjs +1 -1
- package/dist/src/tokens/service/types/defiPosition.model.d.ts +142 -4
- package/dist/src/tokens/service/types/defiPosition.model.js +35 -30
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("async-retry"),c=require("url-join"),o=require("./types/backend.model.cjs"),d=require("../../utils/schemas.cjs");class u{constructor(s,e){this.apiBase=s,this.httpService=e,this.TOKENS_INFO_URL="/tokens/info"}async fetchTokensInfoFromBackend(s){const e=c(this.apiBase,this.TOKENS_INFO_URL,s??"","?chain=starknet"),t=await this.httpService.get(e),n=o.apiTokensInfoResponseSchema.safeParse(t);if(n.success)return n.data.tokens;const r=o.apiTokenInfoResponseSchema.safeParse(t);if(r.success)return[r.data]}async fetchAddressTokenBalancesFromBackend(s,e,t){const n=c(this.apiBase,"activity","starknet",e,"account",s,"balance");return(await h(async a=>{let p;try{p=await this.httpService.get(n)}catch{return a(new Error("Error fetching")),[]}const i=o.apiAccountTokenBalancesSchema.safeParse(p);if(!i.success)return a(new Error("Error parsing response")),[];if(i.data.status!=="initialised")throw new Error("Not initialised yet");return i.data.balances},{retries:5,minTimeout:5e3,...t})).map(a=>({address:a.tokenAddress,balance:a.tokenBalance,networkId:e}))}async fetchDefiDecomposition(s,e){const t=c(this.apiBase,"tokens/defi",s,"investments","?chain=starknet",`&application=${e}`),n=await this.httpService.get(t);return d.safeParseAndWarn(o.apiDefiPositionsSchema,n).success||console.error("Backend schema has changed. Make the changes to the models to prevent unknown/unhandled errors."),n.dapps}}exports.TokenServiceWeb=u;
|
|
@@ -12,7 +12,6 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
12
12
|
protected readonly apiBase: string;
|
|
13
13
|
protected readonly httpService: IHttpService;
|
|
14
14
|
private readonly TOKENS_INFO_URL;
|
|
15
|
-
private readonly TOKENS_DEFI_DECOMPOSITION_URL;
|
|
16
15
|
constructor(apiBase: string, httpService: IHttpService);
|
|
17
16
|
/**
|
|
18
17
|
* Fetch tokens info from backend
|
|
@@ -26,7 +25,7 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
26
25
|
* @returns {Promise<WebBaseTokenWithBalance[]>} - The fetched balances for the account address.
|
|
27
26
|
*/
|
|
28
27
|
fetchAddressTokenBalancesFromBackend(address: string, network: ArgentBackendNetworkId, opts?: retry.Options): Promise<WebBaseTokenWithBalance[]>;
|
|
29
|
-
fetchDefiDecomposition(address: Address): Promise<{
|
|
28
|
+
fetchDefiDecomposition(address: Address, application: "mobile" | "webwallet" | "argentx"): Promise<{
|
|
30
29
|
dappId: string;
|
|
31
30
|
products: import('zod').objectOutputType<{
|
|
32
31
|
name: import('zod').ZodString;
|
|
@@ -42,7 +41,8 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
42
41
|
name?: string | undefined;
|
|
43
42
|
healthRatio?: string | undefined;
|
|
44
43
|
}>>>;
|
|
45
|
-
positions: import('zod').ZodArray<import('zod').ZodUnion<[import('zod').ZodUnion<[import('zod').ZodUnion<[import('zod').ZodObject<import("zod").objectUtil.extendShape<{
|
|
44
|
+
positions: import('zod').ZodArray<import('zod').ZodUnion<[import('zod').ZodUnion<[import('zod').ZodUnion<[import('zod').ZodUnion<[import('zod').ZodObject<import("zod").objectUtil.extendShape<{
|
|
45
|
+
id: import('zod').ZodString;
|
|
46
46
|
tokenAddress: import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodPipeline<import('zod').ZodString, import('zod').ZodEffects<import('zod').ZodString, string, string>>, `0x${string}`, string>>;
|
|
47
47
|
totalBalances: import('zod').ZodRecord<import('zod').ZodString, import('zod').ZodString>;
|
|
48
48
|
}, {
|
|
@@ -154,6 +154,7 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
154
154
|
};
|
|
155
155
|
tickSpacingPercentage?: string | undefined;
|
|
156
156
|
};
|
|
157
|
+
id: string;
|
|
157
158
|
totalBalances: Record<string, string>;
|
|
158
159
|
tokenId: string;
|
|
159
160
|
tokenAddress?: `0x${string}` | undefined;
|
|
@@ -178,10 +179,12 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
178
179
|
};
|
|
179
180
|
tickSpacingPercentage?: string | undefined;
|
|
180
181
|
};
|
|
182
|
+
id: string;
|
|
181
183
|
totalBalances: Record<string, string>;
|
|
182
184
|
tokenId: string;
|
|
183
185
|
tokenAddress?: string | undefined;
|
|
184
186
|
}>, import('zod').ZodObject<import("zod").objectUtil.extendShape<{
|
|
187
|
+
id: import('zod').ZodString;
|
|
185
188
|
tokenAddress: import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodPipeline<import('zod').ZodString, import('zod').ZodEffects<import('zod').ZodString, string, string>>, `0x${string}`, string>>;
|
|
186
189
|
totalBalances: import('zod').ZodRecord<import('zod').ZodString, import('zod').ZodString>;
|
|
187
190
|
}, {
|
|
@@ -212,6 +215,7 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
212
215
|
apy?: string | undefined;
|
|
213
216
|
group?: number | undefined;
|
|
214
217
|
};
|
|
218
|
+
id: string;
|
|
215
219
|
totalBalances: Record<string, string>;
|
|
216
220
|
tokenAddress?: `0x${string}` | undefined;
|
|
217
221
|
}, {
|
|
@@ -222,6 +226,7 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
222
226
|
apy?: string | undefined;
|
|
223
227
|
group?: number | undefined;
|
|
224
228
|
};
|
|
229
|
+
id: string;
|
|
225
230
|
totalBalances: Record<string, string>;
|
|
226
231
|
tokenAddress?: string | undefined;
|
|
227
232
|
}>]>, import('zod').ZodObject<{
|
|
@@ -244,6 +249,7 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
244
249
|
};
|
|
245
250
|
totalBalances: Record<string, string>;
|
|
246
251
|
}>]>, import('zod').ZodObject<import("zod").objectUtil.extendShape<{
|
|
252
|
+
id: import('zod').ZodString;
|
|
247
253
|
tokenAddress: import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodPipeline<import('zod').ZodString, import('zod').ZodEffects<import('zod').ZodString, string, string>>, `0x${string}`, string>>;
|
|
248
254
|
totalBalances: import('zod').ZodRecord<import('zod').ZodString, import('zod').ZodString>;
|
|
249
255
|
}, {
|
|
@@ -259,6 +265,7 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
259
265
|
data: {
|
|
260
266
|
apy: string;
|
|
261
267
|
};
|
|
268
|
+
id: string;
|
|
262
269
|
totalBalances: Record<string, string>;
|
|
263
270
|
tokenAddress?: `0x${string}` | undefined;
|
|
264
271
|
investmentId?: string | undefined;
|
|
@@ -266,9 +273,100 @@ export declare class TokenServiceWeb implements ITokenServiceWeb {
|
|
|
266
273
|
data: {
|
|
267
274
|
apy: string;
|
|
268
275
|
};
|
|
276
|
+
id: string;
|
|
269
277
|
totalBalances: Record<string, string>;
|
|
270
278
|
tokenAddress?: string | undefined;
|
|
271
279
|
investmentId?: string | undefined;
|
|
280
|
+
}>]>, import('zod').ZodObject<import("zod").objectUtil.extendShape<{
|
|
281
|
+
id: import('zod').ZodString;
|
|
282
|
+
tokenAddress: import('zod').ZodOptional<import('zod').ZodEffects<import('zod').ZodPipeline<import('zod').ZodString, import('zod').ZodEffects<import('zod').ZodString, string, string>>, `0x${string}`, string>>;
|
|
283
|
+
totalBalances: import('zod').ZodRecord<import('zod').ZodString, import('zod').ZodString>;
|
|
284
|
+
}, {
|
|
285
|
+
data: import('zod').ZodObject<{
|
|
286
|
+
stakerInfo: import('zod').ZodObject<{
|
|
287
|
+
name: import('zod').ZodOptional<import('zod').ZodString>;
|
|
288
|
+
iconUrl: import('zod').ZodOptional<import('zod').ZodString>;
|
|
289
|
+
address: import('zod').ZodEffects<import('zod').ZodPipeline<import('zod').ZodString, import('zod').ZodEffects<import('zod').ZodString, string, string>>, `0x${string}`, string>;
|
|
290
|
+
}, "strip", import('zod').ZodTypeAny, {
|
|
291
|
+
address: `0x${string}`;
|
|
292
|
+
name?: string | undefined;
|
|
293
|
+
iconUrl?: string | undefined;
|
|
294
|
+
}, {
|
|
295
|
+
address: string;
|
|
296
|
+
name?: string | undefined;
|
|
297
|
+
iconUrl?: string | undefined;
|
|
298
|
+
}>;
|
|
299
|
+
accruedReward: import('zod').ZodString;
|
|
300
|
+
pendingWithdrawal: import('zod').ZodOptional<import('zod').ZodObject<{
|
|
301
|
+
amount: import('zod').ZodString;
|
|
302
|
+
withdrawableAfter: import('zod').ZodNumber;
|
|
303
|
+
}, "strip", import('zod').ZodTypeAny, {
|
|
304
|
+
amount: string;
|
|
305
|
+
withdrawableAfter: number;
|
|
306
|
+
}, {
|
|
307
|
+
amount: string;
|
|
308
|
+
withdrawableAfter: number;
|
|
309
|
+
}>>;
|
|
310
|
+
apy: import('zod').ZodOptional<import('zod').ZodString>;
|
|
311
|
+
}, "strip", import('zod').ZodTypeAny, {
|
|
312
|
+
stakerInfo: {
|
|
313
|
+
address: `0x${string}`;
|
|
314
|
+
name?: string | undefined;
|
|
315
|
+
iconUrl?: string | undefined;
|
|
316
|
+
};
|
|
317
|
+
accruedReward: string;
|
|
318
|
+
apy?: string | undefined;
|
|
319
|
+
pendingWithdrawal?: {
|
|
320
|
+
amount: string;
|
|
321
|
+
withdrawableAfter: number;
|
|
322
|
+
} | undefined;
|
|
323
|
+
}, {
|
|
324
|
+
stakerInfo: {
|
|
325
|
+
address: string;
|
|
326
|
+
name?: string | undefined;
|
|
327
|
+
iconUrl?: string | undefined;
|
|
328
|
+
};
|
|
329
|
+
accruedReward: string;
|
|
330
|
+
apy?: string | undefined;
|
|
331
|
+
pendingWithdrawal?: {
|
|
332
|
+
amount: string;
|
|
333
|
+
withdrawableAfter: number;
|
|
334
|
+
} | undefined;
|
|
335
|
+
}>;
|
|
336
|
+
}>, "strip", import('zod').ZodTypeAny, {
|
|
337
|
+
data: {
|
|
338
|
+
stakerInfo: {
|
|
339
|
+
address: `0x${string}`;
|
|
340
|
+
name?: string | undefined;
|
|
341
|
+
iconUrl?: string | undefined;
|
|
342
|
+
};
|
|
343
|
+
accruedReward: string;
|
|
344
|
+
apy?: string | undefined;
|
|
345
|
+
pendingWithdrawal?: {
|
|
346
|
+
amount: string;
|
|
347
|
+
withdrawableAfter: number;
|
|
348
|
+
} | undefined;
|
|
349
|
+
};
|
|
350
|
+
id: string;
|
|
351
|
+
totalBalances: Record<string, string>;
|
|
352
|
+
tokenAddress?: `0x${string}` | undefined;
|
|
353
|
+
}, {
|
|
354
|
+
data: {
|
|
355
|
+
stakerInfo: {
|
|
356
|
+
address: string;
|
|
357
|
+
name?: string | undefined;
|
|
358
|
+
iconUrl?: string | undefined;
|
|
359
|
+
};
|
|
360
|
+
accruedReward: string;
|
|
361
|
+
apy?: string | undefined;
|
|
362
|
+
pendingWithdrawal?: {
|
|
363
|
+
amount: string;
|
|
364
|
+
withdrawableAfter: number;
|
|
365
|
+
} | undefined;
|
|
366
|
+
};
|
|
367
|
+
id: string;
|
|
368
|
+
totalBalances: Record<string, string>;
|
|
369
|
+
tokenAddress?: string | undefined;
|
|
272
370
|
}>]>, "many">;
|
|
273
371
|
}, import('zod').ZodTypeAny, "passthrough">[];
|
|
274
372
|
}[]>;
|
|
@@ -2,9 +2,9 @@ import p from "async-retry";
|
|
|
2
2
|
import i from "url-join";
|
|
3
3
|
import { apiTokensInfoResponseSchema as h, apiTokenInfoResponseSchema as d, apiAccountTokenBalancesSchema as u, apiDefiPositionsSchema as f } from "./types/backend.model.js";
|
|
4
4
|
import { safeParseAndWarn as k } from "../../utils/schemas.js";
|
|
5
|
-
class
|
|
5
|
+
class R {
|
|
6
6
|
constructor(s, e) {
|
|
7
|
-
this.apiBase = s, this.httpService = e, this.TOKENS_INFO_URL = "/tokens/info"
|
|
7
|
+
this.apiBase = s, this.httpService = e, this.TOKENS_INFO_URL = "/tokens/info";
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
10
|
* Fetch tokens info from backend
|
|
@@ -12,41 +12,41 @@ class O {
|
|
|
12
12
|
* @returns {Promise<ApiTokenInfo[]>} - The fetched tokens or undefined if there was an error or not default network
|
|
13
13
|
*/
|
|
14
14
|
async fetchTokensInfoFromBackend(s) {
|
|
15
|
-
const e = i(this.apiBase, this.TOKENS_INFO_URL, s ?? "", "?chain=starknet"),
|
|
16
|
-
if (
|
|
17
|
-
return
|
|
18
|
-
const
|
|
19
|
-
if (
|
|
20
|
-
return [
|
|
15
|
+
const e = i(this.apiBase, this.TOKENS_INFO_URL, s ?? "", "?chain=starknet"), n = await this.httpService.get(e), t = h.safeParse(n);
|
|
16
|
+
if (t.success)
|
|
17
|
+
return t.data.tokens;
|
|
18
|
+
const r = d.safeParse(n);
|
|
19
|
+
if (r.success)
|
|
20
|
+
return [r.data];
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
23
|
* Fetch list of tokens and balances for given account from backend
|
|
24
24
|
* @param {Address} address - The account address.
|
|
25
25
|
* @returns {Promise<WebBaseTokenWithBalance[]>} - The fetched balances for the account address.
|
|
26
26
|
*/
|
|
27
|
-
async fetchAddressTokenBalancesFromBackend(s, e,
|
|
28
|
-
const
|
|
27
|
+
async fetchAddressTokenBalancesFromBackend(s, e, n) {
|
|
28
|
+
const t = i(this.apiBase, "activity", "starknet", e, "account", s, "balance");
|
|
29
29
|
return (await p(
|
|
30
30
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
31
31
|
async (a) => {
|
|
32
32
|
let c;
|
|
33
33
|
try {
|
|
34
|
-
c = await this.httpService.get(
|
|
34
|
+
c = await this.httpService.get(t);
|
|
35
35
|
} catch {
|
|
36
36
|
return a(new Error("Error fetching")), [];
|
|
37
37
|
}
|
|
38
|
-
const
|
|
39
|
-
if (!
|
|
38
|
+
const o = u.safeParse(c);
|
|
39
|
+
if (!o.success)
|
|
40
40
|
return a(new Error("Error parsing response")), [];
|
|
41
|
-
if (
|
|
41
|
+
if (o.data.status !== "initialised")
|
|
42
42
|
throw new Error("Not initialised yet");
|
|
43
|
-
return
|
|
43
|
+
return o.data.balances;
|
|
44
44
|
},
|
|
45
45
|
{
|
|
46
46
|
/** seems to take 5-10 sec for initialised state */
|
|
47
47
|
retries: 5,
|
|
48
48
|
minTimeout: 5e3,
|
|
49
|
-
...
|
|
49
|
+
...n
|
|
50
50
|
}
|
|
51
51
|
)).map((a) => ({
|
|
52
52
|
address: a.tokenAddress,
|
|
@@ -54,11 +54,11 @@ class O {
|
|
|
54
54
|
networkId: e
|
|
55
55
|
}));
|
|
56
56
|
}
|
|
57
|
-
async fetchDefiDecomposition(s) {
|
|
58
|
-
const
|
|
57
|
+
async fetchDefiDecomposition(s, e) {
|
|
58
|
+
const n = i(this.apiBase, "tokens/defi", s, "investments", "?chain=starknet", `&application=${e}`), t = await this.httpService.get(n);
|
|
59
59
|
return k(f, t).success || console.error("Backend schema has changed. Make the changes to the models to prevent unknown/unhandled errors."), t.dapps;
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
export {
|
|
63
|
-
|
|
63
|
+
R as TokenServiceWeb
|
|
64
64
|
};
|
|
@@ -5,7 +5,7 @@ import { ApiDefiDecompositionSchema, ApiTokenInfo } from './types/backend.model'
|
|
|
5
5
|
import { WebBaseTokenWithBalance } from './types/webToken.model';
|
|
6
6
|
export type SelectorFn<T> = (value: T) => boolean;
|
|
7
7
|
export interface ITokenServiceDefiDecomposition {
|
|
8
|
-
fetchDefiDecomposition: (address: Address) => Promise<ApiDefiDecompositionSchema[]>;
|
|
8
|
+
fetchDefiDecomposition: (address: Address, application: "mobile" | "webwallet" | "argentx") => Promise<ApiDefiDecompositionSchema[]>;
|
|
9
9
|
}
|
|
10
10
|
/**
|
|
11
11
|
* ITokenService interface provides methods for managing tokens, including storage methods, fetch methods, and get methods.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("zod"),a=require("../../../chains/starknet/address.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("zod"),a=require("../../../chains/starknet/address.cjs"),h=require("./defiPositionType.model.cjs"),b=require("../../../utils/schemas.cjs"),u=e.z.object({status:e.z.literal("initialising")}).or(e.z.object({status:e.z.literal("initialised"),balances:e.z.array(e.z.object({tokenAddress:a.addressSchemaArgentBackend,tokenBalance:e.z.string()}))})),t=e.z.object({id:e.z.number(),address:a.addressSchema,brandColor:e.z.string().optional(),name:e.z.string(),symbol:e.z.string(),decimals:e.z.number(),iconUrl:e.z.string().optional(),sendable:e.z.boolean(),popular:e.z.boolean(),refundable:e.z.boolean(),listed:e.z.boolean(),tradable:e.z.boolean(),category:e.z.union([e.z.literal("tokens"),e.z.literal("currencies"),e.z.literal("savings")]),pricingId:e.z.number().optional(),dappId:e.z.string().optional(),marketData:e.z.object({marketCap:e.z.number(),marketCap24hChange:e.z.number(),dailyVolume:e.z.number(),rank:e.z.number()}).optional(),tags:e.z.array(e.z.string()).optional()}),k=e.z.object({tokens:e.z.array(t)}),D=t,d=e.z.object({pricingId:e.z.number(),ethValue:e.z.string(),ccyValue:e.z.string(),ethDayChange:e.z.string(),ccyDayChange:e.z.string()}),y=e.z.object({prices:e.z.array(d)}),o=e.z.object({tokenAddress:a.addressSchemaArgentBackend,principal:e.z.string(),accruedFees:e.z.string(),minPrice:e.z.string(),maxPrice:e.z.string(),currentPrice:e.z.string()}),i=e.z.object({id:e.z.string(),tokenAddress:a.addressSchema.optional(),totalBalances:e.z.record(e.z.string())}),n=i.extend({tokenId:e.z.string(),data:e.z.object({poolFeePercentage:e.z.string(),tickSpacingPercentage:e.z.string().optional(),token0:o,token1:o})}),P=e.z.array(n),s=i.extend({data:e.z.object({apy:e.z.string()}),investmentId:e.z.string().optional()}),f=e.z.array(s),r=i.extend({data:e.z.object({apy:e.z.string().optional(),group:e.z.number().optional(),collateral:e.z.boolean(),debt:e.z.boolean(),lending:e.z.boolean()})}),j=e.z.array(r),c=e.z.object({data:e.z.object({delegatingTo:a.addressSchema}),totalBalances:e.z.record(e.z.string())}),T=e.z.array(c),p=i.extend({data:e.z.object({stakerInfo:e.z.object({name:e.z.string().optional(),iconUrl:e.z.string().optional(),address:a.addressSchema}),accruedReward:e.z.string(),pendingWithdrawal:e.z.object({amount:e.z.string(),withdrawableAfter:e.z.number()}).optional(),apy:e.z.string().optional()})}),A=e.z.array(p),z=n.or(r).or(c).or(s).or(p),l=e.z.array(z),m=b.createSchemaWithWarnings({name:e.z.string(),manageUrl:e.z.string(),type:h.defiPositionTypeSchema,groups:e.z.record(e.z.object({name:e.z.string().optional(),healthRatio:e.z.string().optional()})).optional(),positions:l}),g=e.z.object({dappId:e.z.string(),products:e.z.array(m)}),C=e.z.object({dapps:e.z.array(g)}),S=e.z.object({name:e.z.string().optional(),tokenAddress:a.addressSchema,amount:e.z.string().optional(),claimUrl:e.z.string().optional(),claimStart:e.z.number(),claimEnd:e.z.number().optional()}),I=e.z.object({accountAddress:a.addressSchema,chain:e.z.string(),airdrops:e.z.array(S)});exports.apiAccountTokenBalancesSchema=u;exports.apiAirdropSchema=S;exports.apiCollateralizedDebtPositionSchema=r;exports.apiCollateralizedDebtPositionsSchema=j;exports.apiConcentratedLiquidityPositionSchema=n;exports.apiConcentratedLiquidityPositionsSchema=P;exports.apiDefiDecompositionProduct=m;exports.apiDefiDecompositionProducts=l;exports.apiDefiDecompositionSchema=g;exports.apiDefiDecompositionToken=o;exports.apiDefiPositionSchema=z;exports.apiDefiPositionsSchema=C;exports.apiDelegatedTokensArraySchema=T;exports.apiDelegatedTokensSchema=c;exports.apiPriceDataResponseSchema=y;exports.apiPriceDetailsSchema=d;exports.apiStakingPositionSchema=s;exports.apiStakingPositionsSchema=f;exports.apiStrkDelegatedStakingPositionsSchema=A;exports.apiStrkDelegatedStakingSchema=p;exports.apiTokenInfoResponseSchema=D;exports.apiTokenInfoSchema=t;exports.apiTokensInfoResponseSchema=k;exports.apiUnclaimedRewardsSchema=I;
|