@kasarlabs/opus-mcp 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +36 -0
  3. package/bin/opus-mcp.js +14 -0
  4. package/build/index.d.ts +2 -0
  5. package/build/index.js +106 -0
  6. package/build/index.js.map +1 -0
  7. package/build/interfaces/index.d.ts +49 -0
  8. package/build/interfaces/index.js +2 -0
  9. package/build/interfaces/index.js.map +1 -0
  10. package/build/lib/abis/abbotAbi.d.ts +283 -0
  11. package/build/lib/abis/abbotAbi.js +384 -0
  12. package/build/lib/abis/abbotAbi.js.map +1 -0
  13. package/build/lib/abis/erc20Abi.d.ts +197 -0
  14. package/build/lib/abis/erc20Abi.js +273 -0
  15. package/build/lib/abis/erc20Abi.js.map +1 -0
  16. package/build/lib/abis/sentinelAbi.d.ts +476 -0
  17. package/build/lib/abis/sentinelAbi.js +651 -0
  18. package/build/lib/abis/sentinelAbi.js.map +1 -0
  19. package/build/lib/abis/shrineAbi.d.ts +1426 -0
  20. package/build/lib/abis/shrineAbi.js +1937 -0
  21. package/build/lib/abis/shrineAbi.js.map +1 -0
  22. package/build/lib/constant/erc20.d.ts +3 -0
  23. package/build/lib/constant/erc20.js +34 -0
  24. package/build/lib/constant/erc20.js.map +1 -0
  25. package/build/lib/constant/index.d.ts +83 -0
  26. package/build/lib/constant/index.js +38 -0
  27. package/build/lib/constant/index.js.map +1 -0
  28. package/build/lib/dependances/types.d.ts +85 -0
  29. package/build/lib/dependances/types.js +51 -0
  30. package/build/lib/dependances/types.js.map +1 -0
  31. package/build/lib/types/index.d.ts +14 -0
  32. package/build/lib/types/index.js +2 -0
  33. package/build/lib/types/index.js.map +1 -0
  34. package/build/lib/utils/contracts.d.ts +2383 -0
  35. package/build/lib/utils/contracts.js +26 -0
  36. package/build/lib/utils/contracts.js.map +1 -0
  37. package/build/lib/utils/format.d.ts +5 -0
  38. package/build/lib/utils/format.js +11 -0
  39. package/build/lib/utils/format.js.map +1 -0
  40. package/build/lib/utils/troveManager.d.ts +27 -0
  41. package/build/lib/utils/troveManager.js +386 -0
  42. package/build/lib/utils/troveManager.js.map +1 -0
  43. package/build/schemas/index.d.ts +332 -0
  44. package/build/schemas/index.js +73 -0
  45. package/build/schemas/index.js.map +1 -0
  46. package/build/tools/borrowTrove.d.ts +11 -0
  47. package/build/tools/borrowTrove.js +19 -0
  48. package/build/tools/borrowTrove.js.map +1 -0
  49. package/build/tools/depositTrove.d.ts +11 -0
  50. package/build/tools/depositTrove.js +19 -0
  51. package/build/tools/depositTrove.js.map +1 -0
  52. package/build/tools/getters.d.ts +29 -0
  53. package/build/tools/getters.js +53 -0
  54. package/build/tools/getters.js.map +1 -0
  55. package/build/tools/openTrove.d.ts +11 -0
  56. package/build/tools/openTrove.js +19 -0
  57. package/build/tools/openTrove.js.map +1 -0
  58. package/build/tools/repayTrove.d.ts +11 -0
  59. package/build/tools/repayTrove.js +19 -0
  60. package/build/tools/repayTrove.js.map +1 -0
  61. package/build/tools/withdrawTrove.d.ts +11 -0
  62. package/build/tools/withdrawTrove.js +19 -0
  63. package/build/tools/withdrawTrove.js.map +1 -0
  64. package/package.json +44 -0
@@ -0,0 +1,332 @@
1
+ import { z } from 'zod';
2
+ export declare const valSchema: z.ZodEffects<z.ZodObject<{
3
+ val: z.ZodBigInt;
4
+ }, "strip", z.ZodTypeAny, {
5
+ val: bigint;
6
+ }, {
7
+ val: bigint;
8
+ }>, bigint, {
9
+ val: bigint;
10
+ }>;
11
+ export declare function transformVal(val: {
12
+ val: bigint;
13
+ }): bigint;
14
+ export declare const wadSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
15
+ val: z.ZodBigInt;
16
+ }, "strip", z.ZodTypeAny, {
17
+ val: bigint;
18
+ }, {
19
+ val: bigint;
20
+ }>, bigint, {
21
+ val: bigint;
22
+ }>, {
23
+ value: bigint;
24
+ formatted: string;
25
+ }, {
26
+ val: bigint;
27
+ }>;
28
+ export type Wad = z.infer<typeof wadSchema>;
29
+ export declare const raySchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
30
+ val: z.ZodBigInt;
31
+ }, "strip", z.ZodTypeAny, {
32
+ val: bigint;
33
+ }, {
34
+ val: bigint;
35
+ }>, bigint, {
36
+ val: bigint;
37
+ }>, {
38
+ value: bigint;
39
+ formatted: string;
40
+ }, {
41
+ val: bigint;
42
+ }>;
43
+ export type Ray = z.infer<typeof raySchema>;
44
+ export declare const assetBalanceInputSchema: z.ZodObject<{
45
+ symbol: z.ZodString;
46
+ amount: z.ZodString;
47
+ }, "strip", z.ZodTypeAny, {
48
+ symbol: string;
49
+ amount: string;
50
+ }, {
51
+ symbol: string;
52
+ amount: string;
53
+ }>;
54
+ export declare const assetBalancesInputSchema: z.ZodArray<z.ZodObject<{
55
+ symbol: z.ZodString;
56
+ amount: z.ZodString;
57
+ }, "strip", z.ZodTypeAny, {
58
+ symbol: string;
59
+ amount: string;
60
+ }, {
61
+ symbol: string;
62
+ amount: string;
63
+ }>, "many">;
64
+ export type AssetBalanceInput = z.infer<typeof assetBalanceInputSchema>;
65
+ export type AssetBalancesInput = z.infer<typeof assetBalancesInputSchema>;
66
+ export declare const assetBalanceSchema: z.ZodObject<{
67
+ address: z.ZodString;
68
+ amount: z.ZodBigInt;
69
+ }, "strip", z.ZodTypeAny, {
70
+ amount: bigint;
71
+ address: string;
72
+ }, {
73
+ amount: bigint;
74
+ address: string;
75
+ }>;
76
+ export declare const assetBalancesSchema: z.ZodArray<z.ZodObject<{
77
+ address: z.ZodString;
78
+ amount: z.ZodBigInt;
79
+ }, "strip", z.ZodTypeAny, {
80
+ amount: bigint;
81
+ address: string;
82
+ }, {
83
+ amount: bigint;
84
+ address: string;
85
+ }>, "many">;
86
+ export type AssetBalance = z.infer<typeof assetBalanceSchema>;
87
+ export type AssetBalances = z.infer<typeof assetBalancesSchema>;
88
+ export declare const healthSchema: z.ZodObject<{
89
+ debt: z.ZodEffects<z.ZodEffects<z.ZodObject<{
90
+ val: z.ZodBigInt;
91
+ }, "strip", z.ZodTypeAny, {
92
+ val: bigint;
93
+ }, {
94
+ val: bigint;
95
+ }>, bigint, {
96
+ val: bigint;
97
+ }>, {
98
+ value: bigint;
99
+ formatted: string;
100
+ }, {
101
+ val: bigint;
102
+ }>;
103
+ value: z.ZodEffects<z.ZodEffects<z.ZodObject<{
104
+ val: z.ZodBigInt;
105
+ }, "strip", z.ZodTypeAny, {
106
+ val: bigint;
107
+ }, {
108
+ val: bigint;
109
+ }>, bigint, {
110
+ val: bigint;
111
+ }>, {
112
+ value: bigint;
113
+ formatted: string;
114
+ }, {
115
+ val: bigint;
116
+ }>;
117
+ ltv: z.ZodEffects<z.ZodEffects<z.ZodObject<{
118
+ val: z.ZodBigInt;
119
+ }, "strip", z.ZodTypeAny, {
120
+ val: bigint;
121
+ }, {
122
+ val: bigint;
123
+ }>, bigint, {
124
+ val: bigint;
125
+ }>, {
126
+ value: bigint;
127
+ formatted: string;
128
+ }, {
129
+ val: bigint;
130
+ }>;
131
+ threshold: z.ZodEffects<z.ZodEffects<z.ZodObject<{
132
+ val: z.ZodBigInt;
133
+ }, "strip", z.ZodTypeAny, {
134
+ val: bigint;
135
+ }, {
136
+ val: bigint;
137
+ }>, bigint, {
138
+ val: bigint;
139
+ }>, {
140
+ value: bigint;
141
+ formatted: string;
142
+ }, {
143
+ val: bigint;
144
+ }>;
145
+ }, "strip", z.ZodTypeAny, {
146
+ value: {
147
+ value: bigint;
148
+ formatted: string;
149
+ };
150
+ threshold: {
151
+ value: bigint;
152
+ formatted: string;
153
+ };
154
+ ltv: {
155
+ value: bigint;
156
+ formatted: string;
157
+ };
158
+ debt: {
159
+ value: bigint;
160
+ formatted: string;
161
+ };
162
+ }, {
163
+ value: {
164
+ val: bigint;
165
+ };
166
+ threshold: {
167
+ val: bigint;
168
+ };
169
+ ltv: {
170
+ val: bigint;
171
+ };
172
+ debt: {
173
+ val: bigint;
174
+ };
175
+ }>;
176
+ export type Health = z.infer<typeof healthSchema>;
177
+ export declare const getUserTrovesSchema: z.ZodObject<{
178
+ user: z.ZodString;
179
+ }, "strip", z.ZodTypeAny, {
180
+ user: string;
181
+ }, {
182
+ user: string;
183
+ }>;
184
+ export type GetUserTrovesParams = z.infer<typeof getUserTrovesSchema>;
185
+ export declare const getTroveHealthSchema: z.ZodObject<{
186
+ troveId: z.ZodNumber;
187
+ }, "strip", z.ZodTypeAny, {
188
+ troveId: number;
189
+ }, {
190
+ troveId: number;
191
+ }>;
192
+ export type GetTroveHealthParams = z.infer<typeof getTroveHealthSchema>;
193
+ export declare const openTroveSchema: z.ZodObject<{
194
+ collaterals: z.ZodArray<z.ZodObject<{
195
+ symbol: z.ZodString;
196
+ amount: z.ZodString;
197
+ }, "strip", z.ZodTypeAny, {
198
+ symbol: string;
199
+ amount: string;
200
+ }, {
201
+ symbol: string;
202
+ amount: string;
203
+ }>, "many">;
204
+ borrowAmount: z.ZodString;
205
+ maxBorrowFeePct: z.ZodString;
206
+ }, "strip", z.ZodTypeAny, {
207
+ maxBorrowFeePct: string;
208
+ collaterals: {
209
+ symbol: string;
210
+ amount: string;
211
+ }[];
212
+ borrowAmount: string;
213
+ }, {
214
+ maxBorrowFeePct: string;
215
+ collaterals: {
216
+ symbol: string;
217
+ amount: string;
218
+ }[];
219
+ borrowAmount: string;
220
+ }>;
221
+ export type OpenTroveParams = z.infer<typeof openTroveSchema>;
222
+ export declare const collateralActionSchema: z.ZodObject<{
223
+ troveId: z.ZodNumber;
224
+ collateral: z.ZodObject<{
225
+ symbol: z.ZodString;
226
+ amount: z.ZodString;
227
+ }, "strip", z.ZodTypeAny, {
228
+ symbol: string;
229
+ amount: string;
230
+ }, {
231
+ symbol: string;
232
+ amount: string;
233
+ }>;
234
+ }, "strip", z.ZodTypeAny, {
235
+ troveId: number;
236
+ collateral: {
237
+ symbol: string;
238
+ amount: string;
239
+ };
240
+ }, {
241
+ troveId: number;
242
+ collateral: {
243
+ symbol: string;
244
+ amount: string;
245
+ };
246
+ }>;
247
+ export type DepositTroveParams = z.infer<typeof collateralActionSchema>;
248
+ export type WithdrawTroveParams = z.infer<typeof collateralActionSchema>;
249
+ export declare const borrowTroveSchema: z.ZodObject<{
250
+ troveId: z.ZodNumber;
251
+ amount: z.ZodString;
252
+ maxBorrowFeePct: z.ZodString;
253
+ }, "strip", z.ZodTypeAny, {
254
+ troveId: number;
255
+ amount: string;
256
+ maxBorrowFeePct: string;
257
+ }, {
258
+ troveId: number;
259
+ amount: string;
260
+ maxBorrowFeePct: string;
261
+ }>;
262
+ export type BorrowTroveParams = z.infer<typeof borrowTroveSchema>;
263
+ export declare const repayTroveSchema: z.ZodObject<{
264
+ troveId: z.ZodNumber;
265
+ amount: z.ZodString;
266
+ }, "strip", z.ZodTypeAny, {
267
+ troveId: number;
268
+ amount: string;
269
+ }, {
270
+ troveId: number;
271
+ amount: string;
272
+ }>;
273
+ export type RepayTroveParams = z.infer<typeof repayTroveSchema>;
274
+ export declare const troveOpenedEventSchema: z.ZodObject<{
275
+ user: z.ZodBigInt;
276
+ trove_id: z.ZodBigInt;
277
+ }, "strip", z.ZodTypeAny, {
278
+ user: bigint;
279
+ trove_id: bigint;
280
+ }, {
281
+ user: bigint;
282
+ trove_id: bigint;
283
+ }>;
284
+ export declare const forgeFeePaidEventSchema: z.ZodObject<{
285
+ trove_id: z.ZodBigInt;
286
+ fee: z.ZodEffects<z.ZodEffects<z.ZodObject<{
287
+ val: z.ZodBigInt;
288
+ }, "strip", z.ZodTypeAny, {
289
+ val: bigint;
290
+ }, {
291
+ val: bigint;
292
+ }>, bigint, {
293
+ val: bigint;
294
+ }>, {
295
+ value: bigint;
296
+ formatted: string;
297
+ }, {
298
+ val: bigint;
299
+ }>;
300
+ fee_pct: z.ZodEffects<z.ZodEffects<z.ZodObject<{
301
+ val: z.ZodBigInt;
302
+ }, "strip", z.ZodTypeAny, {
303
+ val: bigint;
304
+ }, {
305
+ val: bigint;
306
+ }>, bigint, {
307
+ val: bigint;
308
+ }>, {
309
+ value: bigint;
310
+ formatted: string;
311
+ }, {
312
+ val: bigint;
313
+ }>;
314
+ }, "strip", z.ZodTypeAny, {
315
+ trove_id: bigint;
316
+ fee: {
317
+ value: bigint;
318
+ formatted: string;
319
+ };
320
+ fee_pct: {
321
+ value: bigint;
322
+ formatted: string;
323
+ };
324
+ }, {
325
+ trove_id: bigint;
326
+ fee: {
327
+ val: bigint;
328
+ };
329
+ fee_pct: {
330
+ val: bigint;
331
+ };
332
+ }>;
@@ -0,0 +1,73 @@
1
+ import { z } from 'zod';
2
+ import { formatValue } from '../lib/utils/format.js';
3
+ export const valSchema = z.object({ val: z.bigint() }).transform(transformVal);
4
+ export function transformVal(val) {
5
+ return val.val;
6
+ }
7
+ export const wadSchema = valSchema.transform((val) => {
8
+ return {
9
+ value: val,
10
+ formatted: formatValue(val, 'wad'),
11
+ };
12
+ });
13
+ export const raySchema = valSchema.transform((val) => {
14
+ return {
15
+ value: val,
16
+ formatted: formatValue(val, 'ray'),
17
+ };
18
+ });
19
+ export const assetBalanceInputSchema = z.object({
20
+ symbol: z.string().describe('Symbol of asset'),
21
+ amount: z.string().describe('Amount of asset'),
22
+ });
23
+ export const assetBalancesInputSchema = z.array(assetBalanceInputSchema);
24
+ export const assetBalanceSchema = z.object({
25
+ address: z.string().describe('Address of asset'),
26
+ amount: z.bigint().describe('Amount of asset'),
27
+ });
28
+ export const assetBalancesSchema = z.array(assetBalanceSchema);
29
+ export const healthSchema = z.object({
30
+ debt: wadSchema.describe('Debt of trove'),
31
+ value: wadSchema.describe('Value of trove'),
32
+ ltv: raySchema.describe('LTV of trove'),
33
+ threshold: raySchema.describe('Threshold of trove'),
34
+ });
35
+ export const getUserTrovesSchema = z.object({
36
+ user: z.string().describe('Address of user'),
37
+ });
38
+ export const getTroveHealthSchema = z.object({
39
+ troveId: z.number().describe('Trove ID'),
40
+ });
41
+ export const openTroveSchema = z.object({
42
+ collaterals: assetBalancesInputSchema.describe('Collateral assets to deposit'),
43
+ borrowAmount: z.string().describe('Amount of CASH to borrow'),
44
+ maxBorrowFeePct: z
45
+ .string()
46
+ .regex(/.*%$/, 'Must end with %')
47
+ .describe('Maximum borrow fee as a % of borrow amount'),
48
+ });
49
+ export const collateralActionSchema = z.object({
50
+ troveId: z.number().describe('Trove ID'),
51
+ collateral: assetBalanceInputSchema.describe('Collateral to deposit'),
52
+ });
53
+ export const borrowTroveSchema = z.object({
54
+ troveId: z.number().describe('Trove ID'),
55
+ amount: z.string().describe('Amount of CASH to repay'),
56
+ maxBorrowFeePct: z
57
+ .string()
58
+ .describe('Maximum borrow fee as a % of borrow amount'),
59
+ });
60
+ export const repayTroveSchema = z.object({
61
+ troveId: z.number().describe('Trove ID'),
62
+ amount: z.string().describe('Amount to repay'),
63
+ });
64
+ export const troveOpenedEventSchema = z.object({
65
+ user: z.bigint(),
66
+ trove_id: z.bigint(),
67
+ });
68
+ export const forgeFeePaidEventSchema = z.object({
69
+ trove_id: z.bigint(),
70
+ fee: wadSchema,
71
+ fee_pct: wadSchema,
72
+ });
73
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { BorrowTroveParams } from '../schemas/index.js';
2
+ import { onchainWrite } from '@kasarlabs/ask-starknet-core';
3
+ export declare const borrowTrove: (env: onchainWrite, params: BorrowTroveParams) => Promise<{
4
+ status: string;
5
+ data: import("../interfaces/index.js").BorrowTroveResult;
6
+ error?: undefined;
7
+ } | {
8
+ status: string;
9
+ error: string;
10
+ data?: undefined;
11
+ }>;
@@ -0,0 +1,19 @@
1
+ import { createTroveManager } from '../lib/utils/troveManager.js';
2
+ export const borrowTrove = async (env, params) => {
3
+ const accountAddress = env.account?.address;
4
+ try {
5
+ const troveManager = createTroveManager(env, accountAddress);
6
+ const result = await troveManager.borrowTransaction(params, env);
7
+ return {
8
+ status: 'success',
9
+ data: result,
10
+ };
11
+ }
12
+ catch (error) {
13
+ return {
14
+ status: 'error',
15
+ error: error instanceof Error ? error.message : 'Unknown error',
16
+ };
17
+ }
18
+ };
19
+ //# sourceMappingURL=borrowTrove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"borrowTrove.js","sourceRoot":"","sources":["../../src/tools/borrowTrove.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGlE,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAiB,EACjB,MAAyB,EACzB,EAAE;IACF,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjE,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { DepositTroveParams } from '../schemas/index.js';
2
+ import { onchainWrite } from '@kasarlabs/ask-starknet-core';
3
+ export declare const depositTrove: (env: onchainWrite, params: DepositTroveParams) => Promise<{
4
+ status: string;
5
+ data: import("../interfaces/index.js").DepositTroveResult;
6
+ error?: undefined;
7
+ } | {
8
+ status: string;
9
+ error: string;
10
+ data?: undefined;
11
+ }>;
@@ -0,0 +1,19 @@
1
+ import { createTroveManager } from '../lib/utils/troveManager.js';
2
+ export const depositTrove = async (env, params) => {
3
+ const accountAddress = env.account?.address;
4
+ try {
5
+ const troveManager = createTroveManager(env, accountAddress);
6
+ const result = await troveManager.depositTransaction(params, env);
7
+ return {
8
+ status: 'success',
9
+ data: result,
10
+ };
11
+ }
12
+ catch (error) {
13
+ return {
14
+ status: 'error',
15
+ error: error instanceof Error ? error.message : 'Unknown error',
16
+ };
17
+ }
18
+ };
19
+ //# sourceMappingURL=depositTrove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depositTrove.js","sourceRoot":"","sources":["../../src/tools/depositTrove.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGlE,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,GAAiB,EACjB,MAA0B,EAC1B,EAAE;IACF,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAClE,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { GetTroveHealthParams, GetUserTrovesParams } from '../schemas/index.js';
2
+ import { onchainWrite } from '@kasarlabs/ask-starknet-core';
3
+ export declare const getUserTroves: (env: onchainWrite, params: GetUserTrovesParams) => Promise<{
4
+ status: string;
5
+ data: import("../interfaces/index.js").GetUserTrovesResult;
6
+ error?: undefined;
7
+ } | {
8
+ status: string;
9
+ error: string;
10
+ data?: undefined;
11
+ }>;
12
+ export declare const getTroveHealth: (env: onchainWrite, params: GetTroveHealthParams) => Promise<{
13
+ status: string;
14
+ data: import("../interfaces/index.js").GetTroveHealthResult;
15
+ error?: undefined;
16
+ } | {
17
+ status: string;
18
+ error: string;
19
+ data?: undefined;
20
+ }>;
21
+ export declare const getBorrowFee: (env: onchainWrite) => Promise<{
22
+ status: string;
23
+ data: import("../interfaces/index.js").GetBorrowFeeResult;
24
+ error?: undefined;
25
+ } | {
26
+ status: string;
27
+ error: string;
28
+ data?: undefined;
29
+ }>;
@@ -0,0 +1,53 @@
1
+ import { createTroveManager } from '../lib/utils/troveManager.js';
2
+ export const getUserTroves = async (env, params) => {
3
+ const accountAddress = env.account?.address;
4
+ try {
5
+ const TroveManager = createTroveManager(env, accountAddress);
6
+ const result = await TroveManager.getUserTroves(params);
7
+ return {
8
+ status: 'success',
9
+ data: result,
10
+ };
11
+ }
12
+ catch (error) {
13
+ return {
14
+ status: 'error',
15
+ error: error instanceof Error ? error.message : 'Unknown error',
16
+ };
17
+ }
18
+ };
19
+ export const getTroveHealth = async (env, params) => {
20
+ const accountAddress = env.account?.address;
21
+ try {
22
+ const troveManager = createTroveManager(env, accountAddress);
23
+ const result = await troveManager.getTroveHealth(params);
24
+ return {
25
+ status: 'success',
26
+ data: result,
27
+ };
28
+ }
29
+ catch (error) {
30
+ return {
31
+ status: 'error',
32
+ error: error instanceof Error ? error.message : 'Unknown error',
33
+ };
34
+ }
35
+ };
36
+ export const getBorrowFee = async (env) => {
37
+ const accountAddress = env.account?.address;
38
+ try {
39
+ const TroveManager = createTroveManager(env, accountAddress);
40
+ const result = await TroveManager.getBorrowFee();
41
+ return {
42
+ status: 'success',
43
+ data: result,
44
+ };
45
+ }
46
+ catch (error) {
47
+ return {
48
+ status: 'error',
49
+ error: error instanceof Error ? error.message : 'Unknown error',
50
+ };
51
+ }
52
+ };
53
+ //# sourceMappingURL=getters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getters.js","sourceRoot":"","sources":["../../src/tools/getters.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGlE,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,GAAiB,EACjB,MAA2B,EAC3B,EAAE;IACF,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACxD,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,GAAiB,EACjB,MAA4B,EAC5B,EAAE;IACF,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACzD,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,GAAiB,EAAE,EAAE;IACtD,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,CAAC;QACjD,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { OpenTroveParams } from '../schemas/index.js';
2
+ import { onchainWrite } from '@kasarlabs/ask-starknet-core';
3
+ export declare const openTrove: (env: onchainWrite, params: OpenTroveParams) => Promise<{
4
+ status: string;
5
+ data: import("../interfaces/index.js").OpenTroveResult;
6
+ error?: undefined;
7
+ } | {
8
+ status: string;
9
+ error: string;
10
+ data?: undefined;
11
+ }>;
@@ -0,0 +1,19 @@
1
+ import { createTroveManager } from '../lib/utils/troveManager.js';
2
+ export const openTrove = async (env, params) => {
3
+ const accountAddress = env.account?.address;
4
+ try {
5
+ const troveManager = createTroveManager(env, accountAddress);
6
+ const result = await troveManager.openTroveTransaction(params, env);
7
+ return {
8
+ status: 'success',
9
+ data: result,
10
+ };
11
+ }
12
+ catch (error) {
13
+ return {
14
+ status: 'error',
15
+ error: error instanceof Error ? error.message : 'Unknown error',
16
+ };
17
+ }
18
+ };
19
+ //# sourceMappingURL=openTrove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openTrove.js","sourceRoot":"","sources":["../../src/tools/openTrove.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGlE,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,GAAiB,EAAE,MAAuB,EAAE,EAAE;IAC5E,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACpE,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { RepayTroveParams } from '../schemas/index.js';
2
+ import { onchainWrite } from '@kasarlabs/ask-starknet-core';
3
+ export declare const repayTrove: (env: onchainWrite, params: RepayTroveParams) => Promise<{
4
+ status: string;
5
+ data: import("../interfaces/index.js").RepayTroveResult;
6
+ error?: undefined;
7
+ } | {
8
+ status: string;
9
+ error: string;
10
+ data?: undefined;
11
+ }>;
@@ -0,0 +1,19 @@
1
+ import { createTroveManager } from '../lib/utils/troveManager.js';
2
+ export const repayTrove = async (env, params) => {
3
+ const accountAddress = env.account?.address;
4
+ try {
5
+ const troveManager = createTroveManager(env, accountAddress);
6
+ const result = await troveManager.repayTransaction(params, env);
7
+ return {
8
+ status: 'success',
9
+ data: result,
10
+ };
11
+ }
12
+ catch (error) {
13
+ return {
14
+ status: 'error',
15
+ error: error instanceof Error ? error.message : 'Unknown error',
16
+ };
17
+ }
18
+ };
19
+ //# sourceMappingURL=repayTrove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repayTrove.js","sourceRoot":"","sources":["../../src/tools/repayTrove.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGlE,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,GAAiB,EACjB,MAAwB,EACxB,EAAE;IACF,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChE,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM;SACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { WithdrawTroveParams } from '../schemas/index.js';
2
+ import { onchainWrite } from '@kasarlabs/ask-starknet-core';
3
+ export declare const withdrawTrove: (env: onchainWrite, params: WithdrawTroveParams) => Promise<{
4
+ status: string;
5
+ data: import("../interfaces/index.js").WithdrawTroveResult;
6
+ error?: undefined;
7
+ } | {
8
+ status: string;
9
+ error: string;
10
+ data?: undefined;
11
+ }>;
@@ -0,0 +1,19 @@
1
+ import { createTroveManager } from '../lib/utils/troveManager.js';
2
+ export const withdrawTrove = async (env, params) => {
3
+ const accountAddress = env.account?.address;
4
+ try {
5
+ const troveManager = createTroveManager(env, accountAddress);
6
+ const result = await troveManager.withdrawTransaction(params, env);
7
+ return {
8
+ status: 'success',
9
+ data: result,
10
+ };
11
+ }
12
+ catch (error) {
13
+ return {
14
+ status: 'error',
15
+ error: error instanceof Error ? error.message : 'Unknown error',
16
+ };
17
+ }
18
+ };
19
+ //# sourceMappingURL=withdrawTrove.js.map