@lombard.finance/sdk-agent 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.
@@ -0,0 +1,311 @@
1
+ import type { z } from "zod";
2
+ import { type ValidationFailure } from "./validation";
3
+ export interface ToolDefinition<TParams = Record<string, unknown>, TResult = unknown> {
4
+ name: string;
5
+ description: string;
6
+ parameters: Record<string, unknown>;
7
+ schema: z.ZodType<TParams>;
8
+ execute: (params: TParams) => Promise<TResult>;
9
+ }
10
+ /**
11
+ * Shape returned by prepare_* tools on success. The frontend executes the
12
+ * transaction by dispatching on `method`. `valid: true` tags this as the
13
+ * happy path so the LLM can branch cleanly on it vs ValidationFailure.
14
+ */
15
+ export interface PreparedTx {
16
+ valid: true;
17
+ action: string;
18
+ method: string;
19
+ params: Record<string, unknown>;
20
+ description: string;
21
+ }
22
+ type AnyToolDefinition = ToolDefinition<any, any>;
23
+ export declare const getLbtcBalance: ToolDefinition<{
24
+ address: string;
25
+ chainId: number;
26
+ }, {
27
+ balance: string;
28
+ token: string;
29
+ chain: string;
30
+ address: string;
31
+ error?: string;
32
+ }>;
33
+ export declare const getBtcbBalance: ToolDefinition<{
34
+ address: string;
35
+ chainId: number;
36
+ }, {
37
+ balance: string;
38
+ token: string;
39
+ chain: string;
40
+ address: string;
41
+ error?: string;
42
+ }>;
43
+ export declare const getExchangeRate: ToolDefinition<{
44
+ chainId?: number;
45
+ }, {
46
+ lbtcToBtc: string;
47
+ btcToLbtc: string;
48
+ minStakeAmountBtc: string;
49
+ description: string;
50
+ error?: string;
51
+ }>;
52
+ export declare const getDepositStatusTool: ToolDefinition<{
53
+ address: string;
54
+ chainId: number;
55
+ }>;
56
+ export declare const getUnstakeStatusTool: ToolDefinition<{
57
+ address: string;
58
+ chainId: number;
59
+ }>;
60
+ export declare const getBalance: ToolDefinition<{
61
+ address: string;
62
+ chainId: number;
63
+ }, {
64
+ lbtc: string;
65
+ btcb: string;
66
+ chain: string;
67
+ address: string;
68
+ error?: string;
69
+ }>;
70
+ /**
71
+ * Schema for get_token_info. The tool accepts either a free-text symbol/name
72
+ * (LBTC, BTCe, "Bitcoin Earn vault share") OR a contract address scoped to
73
+ * a chain. At least one must be provided.
74
+ */
75
+ export declare const getTokenInfo: ToolDefinition<{
76
+ query?: string;
77
+ address?: string;
78
+ chainId?: number;
79
+ }, {
80
+ found: boolean;
81
+ asset?: {
82
+ symbol: string;
83
+ name: string;
84
+ description: string;
85
+ decimals: number;
86
+ isLombardIssued: boolean;
87
+ isYieldBearing: boolean;
88
+ addresses: Record<string, string>;
89
+ notes?: string;
90
+ };
91
+ suggestions?: string[];
92
+ note: string;
93
+ }>;
94
+ export declare const getTokenBalance: ToolDefinition<{
95
+ tokenAddress: string;
96
+ address: string;
97
+ chainId: number;
98
+ }, {
99
+ balance: string;
100
+ symbol: string;
101
+ tokenAddress: string;
102
+ chain: string;
103
+ error?: string;
104
+ }>;
105
+ export declare const getStrategies: ToolDefinition<{
106
+ chainId?: number;
107
+ }, {
108
+ strategies: Array<{
109
+ vault: string;
110
+ chain: string;
111
+ apy: string;
112
+ tvlBtc: string;
113
+ }>;
114
+ error?: string;
115
+ }>;
116
+ export declare const getOpportunities: ToolDefinition<{
117
+ category?: string;
118
+ chain?: string;
119
+ protocol?: string;
120
+ }, {
121
+ opportunities: Array<{
122
+ id: string;
123
+ name: string;
124
+ category: string;
125
+ protocol: string;
126
+ chain: string;
127
+ tokens: Record<string, string | undefined>;
128
+ metrics: Record<string, number | undefined>;
129
+ luxMultiplier?: string;
130
+ description?: string;
131
+ url?: string;
132
+ }>;
133
+ error?: string;
134
+ }>;
135
+ export declare const getDepositBtcAddress: ToolDefinition<{
136
+ address: string;
137
+ chainId: number;
138
+ }, {
139
+ btcAddress: string | null;
140
+ chain: string;
141
+ note: string;
142
+ action?: string;
143
+ }>;
144
+ export declare const checkFeeAuthorization: ToolDefinition<{
145
+ address: string;
146
+ chainId: number;
147
+ }, {
148
+ chain: string;
149
+ requiresFeeAuth: boolean;
150
+ hasValidSignature: boolean;
151
+ expirationDate: string | null;
152
+ note: string;
153
+ }>;
154
+ export declare const prepareBtcDeposit: ToolDefinition<{
155
+ address: string;
156
+ chainId: number;
157
+ }, {
158
+ action: string;
159
+ method: string;
160
+ params: {
161
+ address: string;
162
+ chainId: number;
163
+ };
164
+ description: string;
165
+ }>;
166
+ export declare const prepareBtcToBtcbDeposit: ToolDefinition<{
167
+ address: string;
168
+ chainId: number;
169
+ }, {
170
+ action: string;
171
+ method: string;
172
+ params: {
173
+ address: string;
174
+ chainId: number;
175
+ };
176
+ description: string;
177
+ }>;
178
+ export declare const prepareStake: ToolDefinition<{
179
+ amount: string;
180
+ chainId: number;
181
+ }, PreparedTx | ValidationFailure>;
182
+ export declare const prepareUnstake: ToolDefinition<{
183
+ amount: string;
184
+ outputAsset: string;
185
+ recipient?: string;
186
+ chainId: number;
187
+ }, PreparedTx | ValidationFailure>;
188
+ export declare const prepareRedeemBtcb: ToolDefinition<{
189
+ amount: string;
190
+ recipient: string;
191
+ chainId: number;
192
+ }, PreparedTx | ValidationFailure>;
193
+ export declare const prepareDeployToVault: ToolDefinition<{
194
+ amount: string;
195
+ chainId: number;
196
+ }, PreparedTx | ValidationFailure>;
197
+ export declare const prepareVaultWithdrawal: ToolDefinition<{
198
+ amount: string;
199
+ address: string;
200
+ chainId: number;
201
+ }, PreparedTx | ValidationFailure>;
202
+ export declare const getLbtcApy: ToolDefinition<Record<string, never>, {
203
+ baseApy: string;
204
+ effectiveApy: string;
205
+ description: string;
206
+ error?: string;
207
+ }>;
208
+ export declare const getVaultPositions: ToolDefinition<{
209
+ address: string;
210
+ chainId: number;
211
+ }, {
212
+ shares: string;
213
+ shareValue: string;
214
+ estimatedLbtcValue: string;
215
+ vault: string;
216
+ chain: string;
217
+ error?: string;
218
+ }>;
219
+ export declare const prepareClaimDeposit: ToolDefinition<{
220
+ depositTxHash: string;
221
+ address: string;
222
+ chainId: number;
223
+ }, {
224
+ action: string;
225
+ method: string;
226
+ params: {
227
+ depositTxHash: string;
228
+ rawPayload: string;
229
+ proofSignature: string;
230
+ chainId: number;
231
+ };
232
+ description: string;
233
+ error?: string;
234
+ }>;
235
+ export declare const prepareCancelWithdrawal: ToolDefinition<{
236
+ address: string;
237
+ chainId: number;
238
+ }, PreparedTx | ValidationFailure>;
239
+ export declare const getVaultWithdrawalsTool: ToolDefinition<{
240
+ address: string;
241
+ chainId: number;
242
+ }, {
243
+ withdrawals: {
244
+ open: Array<{
245
+ txHash: string;
246
+ shareAmount: string;
247
+ deadline: number;
248
+ timestamp: number;
249
+ }>;
250
+ fulfilled: Array<{
251
+ txHash: string;
252
+ shareAmount: string;
253
+ amount: string;
254
+ fulfilledTxHash: string | null;
255
+ }>;
256
+ cancelled: Array<{
257
+ txHash: string;
258
+ shareAmount: string;
259
+ timestamp: number;
260
+ }>;
261
+ expired: Array<{
262
+ txHash: string;
263
+ shareAmount: string;
264
+ timestamp: number;
265
+ }>;
266
+ };
267
+ chain: string;
268
+ error?: string;
269
+ }>;
270
+ export declare const getLuxPoints: ToolDefinition<{
271
+ address: string;
272
+ }, {
273
+ points: {
274
+ totalPoints: number;
275
+ holdingPoints: number;
276
+ protocolPoints: number;
277
+ referralPoints: number;
278
+ badgesPoints: number;
279
+ protocolPointsBreakdown: Record<string, number>;
280
+ };
281
+ season: number;
282
+ error?: string;
283
+ }>;
284
+ export declare const getPositionsSummaryTool: ToolDefinition<{
285
+ address: string;
286
+ }, {
287
+ btcPriceUsd: string;
288
+ btcValue: string;
289
+ btcPnl: string;
290
+ positions: Array<{
291
+ token: string | undefined;
292
+ type: string;
293
+ balance: string;
294
+ pnl: string;
295
+ rate: string;
296
+ }>;
297
+ lastUpdated: string;
298
+ inProgress: boolean;
299
+ error?: string;
300
+ }>;
301
+ import { getMorphoLbtcMarkets, getMorphoPosition, prepareMorphoBorrow, prepareMorphoRepay, prepareMorphoSupplyCollateral } from "./morpho";
302
+ export { getMorphoLbtcMarkets, getMorphoPosition, prepareMorphoBorrow, prepareMorphoRepay, prepareMorphoSupplyCollateral, };
303
+ /**
304
+ * All Lombard tools as an array.
305
+ */
306
+ export declare const allTools: AnyToolDefinition[];
307
+ /**
308
+ * All Lombard tools as a name-keyed record.
309
+ */
310
+ export declare const toolsByName: Record<string, AnyToolDefinition>;
311
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}