@paxoslabs/amplify-sdk 0.5.2 → 1.0.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 (62) hide show
  1. package/dist/index.d.mts +3158 -725
  2. package/dist/index.d.ts +3158 -725
  3. package/dist/index.js +15013 -171
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +15067 -6
  6. package/dist/index.mjs.map +1 -1
  7. package/package.json +25 -86
  8. package/CHANGELOG.md +0 -320
  9. package/LICENSE +0 -28
  10. package/README.md +0 -119
  11. package/dist/chain-utils-BdJecHBA.d.mts +0 -334
  12. package/dist/chain-utils-BdJecHBA.d.ts +0 -334
  13. package/dist/chunk-5OK753GA.js +0 -1989
  14. package/dist/chunk-5OK753GA.js.map +0 -1
  15. package/dist/chunk-6CU533DM.mjs +0 -39
  16. package/dist/chunk-6CU533DM.mjs.map +0 -1
  17. package/dist/chunk-7JQQ2TH4.mjs +0 -1231
  18. package/dist/chunk-7JQQ2TH4.mjs.map +0 -1
  19. package/dist/chunk-HU5CTL4C.mjs +0 -1962
  20. package/dist/chunk-HU5CTL4C.mjs.map +0 -1
  21. package/dist/chunk-NNDY5TID.js +0 -1143
  22. package/dist/chunk-NNDY5TID.js.map +0 -1
  23. package/dist/chunk-Q5FXJU5Y.mjs +0 -1133
  24. package/dist/chunk-Q5FXJU5Y.mjs.map +0 -1
  25. package/dist/chunk-QZHI2T7O.mjs +0 -457
  26. package/dist/chunk-QZHI2T7O.mjs.map +0 -1
  27. package/dist/chunk-SWUG4PTB.js +0 -464
  28. package/dist/chunk-SWUG4PTB.js.map +0 -1
  29. package/dist/chunk-TNL23CO2.js +0 -45
  30. package/dist/chunk-TNL23CO2.js.map +0 -1
  31. package/dist/chunk-WK7EJRBB.mjs +0 -1482
  32. package/dist/chunk-WK7EJRBB.mjs.map +0 -1
  33. package/dist/chunk-WYBYBPX5.js +0 -1518
  34. package/dist/chunk-WYBYBPX5.js.map +0 -1
  35. package/dist/chunk-ZKDXRGI5.js +0 -1239
  36. package/dist/chunk-ZKDXRGI5.js.map +0 -1
  37. package/dist/core.d.mts +0 -152
  38. package/dist/core.d.ts +0 -152
  39. package/dist/core.js +0 -1220
  40. package/dist/core.js.map +0 -1
  41. package/dist/core.mjs +0 -1194
  42. package/dist/core.mjs.map +0 -1
  43. package/dist/display.d.mts +0 -263
  44. package/dist/display.d.ts +0 -263
  45. package/dist/display.js +0 -36
  46. package/dist/display.js.map +0 -1
  47. package/dist/display.mjs +0 -7
  48. package/dist/display.mjs.map +0 -1
  49. package/dist/index-DXXA8gEA.d.mts +0 -5026
  50. package/dist/index-aE5lTOUH.d.ts +0 -5026
  51. package/dist/utils.d.mts +0 -112
  52. package/dist/utils.d.ts +0 -112
  53. package/dist/utils.js +0 -67
  54. package/dist/utils.js.map +0 -1
  55. package/dist/utils.mjs +0 -25
  56. package/dist/utils.mjs.map +0 -1
  57. package/dist/vaults.d.mts +0 -4
  58. package/dist/vaults.d.ts +0 -4
  59. package/dist/vaults.js +0 -96
  60. package/dist/vaults.js.map +0 -1
  61. package/dist/vaults.mjs +0 -7
  62. package/dist/vaults.mjs.map +0 -1
package/dist/index.d.mts CHANGED
@@ -1,864 +1,3297 @@
1
- export { GetMinimumMintParams, GetMinimumWithdrawalOrderSizeParams, GetVaultAPYParams, GetVaultTVLParams, GetWithdrawalFeeParams, GetWithdrawalRequestsParams, MinimumMintResult, MinimumWithdrawalOrderSizeResult, VaultAPYResult, VaultTVLResult, WithdrawalFeeResult, WithdrawalRequest, WithdrawalRequestStatus, WithdrawalRequestsResult, getMinimumMint, getMinimumWithdrawalOrderSize, getVaultAPY, getVaultTVL, getWithdrawalFee, getWithdrawalRequests } from './display.mjs';
2
- import { Address } from 'viem';
3
- import { A as AmplifyVault, S as SupportedAsset, Y as YieldType, a as AssetFilterOptions, V as VaultFilterOptions, W as WithdrawSupportedAsset, C as ChainId } from './chain-utils-BdJecHBA.mjs';
4
- export { b as APIError, E as EnterpriseConfig, d as VaultSLA, e as VaultSupportedAsset } from './chain-utils-BdJecHBA.mjs';
5
- export { A as AlreadyApprovedAuthorizationResult, a as ApprovalAuthorizationResult, b as ApproveDepositTokenTxData, c as ApproveWithdrawOrderTxData, d as Attestation, C as CancelWithdrawOrderTxData, D as DepositAuthMethod, e as DepositAuthorizationResult, f as DepositTxData, g as DepositType, h as DepositWithPermitData, E as EIP712Domain, K as KytDepositTxData, i as KytDepositWithPermitData, P as PERMIT_TYPES, j as ParsedPermitSignature, k as PermitAuthorizationResult, l as PermitDepositResult, m as PermitSignatureData, n as PrepareCancelWithdrawOrderTxDataParams, o as PrepareDepositAuthorizationParams, p as PrepareDepositParams, q as PrepareDepositPermitSignatureParams, r as PrepareDepositResult, s as PrepareDepositWithPermitTxDataParams, t as PrepareWithdrawOrderTxDataParams, u as PrepareWithdrawalAuthorizationParams, v as PrepareWithdrawalParams, w as PrepareWithdrawalResult, S as StandardDepositResult, x as StandardDepositTxData, y as StandardDepositWithPermitData, U as UnencodedDepositWithPermitData, W as WithdrawAlreadyApprovedAuthorizationResult, z as WithdrawApprovalAuthorizationResult, B as WithdrawAuthMethod, F as WithdrawAuthorizationResult, G as WithdrawOrderTxData, H as isAlreadyApprovedAuth, I as isApprovalAuth, J as isKytDeposit, L as isPermitAuth, M as isStandardDeposit, N as isWithdrawAlreadyApprovedAuth, O as isWithdrawApprovalAuth, Q as parsePermitSignature, R as prepareApproveDepositTokenTxData, T as prepareApproveWithdrawOrderTxData, V as prepareCancelWithdrawOrderTxData, X as prepareDeposit, Y as prepareDepositAuthorization, Z as prepareDepositPermitSignature, _ as prepareDepositTxData, $ as prepareDepositWithPermitTxData, a0 as prepareWithdrawOrderTxData, a1 as prepareWithdrawal, a2 as prepareWithdrawalAuthorization, a3 as toEthSignTypedDataV4 } from './index-DXXA8gEA.mjs';
6
- import 'viem/chains';
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ declare const AmplifyEnvironment: {
5
+ readonly Production: "https://api.paxoslabs.com";
6
+ };
7
+ type AmplifyEnvironment = typeof AmplifyEnvironment.Production;
7
8
 
8
9
  /**
9
- * Vault Cache Layer
10
- *
11
- * In-memory cache for vault and asset data with TTL-based expiration.
12
- * Provides fast lookups and automatic refresh on expiry.
13
- *
14
- * @module lib/vault-cache
10
+ * The raw response from the fetch call excluding the body.
11
+ */
12
+ type RawResponse = Omit<{
13
+ [K in keyof Response as Response[K] extends Function ? never : K]: Response[K];
14
+ }, "ok" | "body" | "bodyUsed">;
15
+ /**
16
+ * Creates a `RawResponse` from a standard `Response` object.
15
17
  */
18
+ interface WithRawResponse<T> {
19
+ readonly data: T;
20
+ readonly rawResponse: RawResponse;
21
+ }
22
+
23
+ type Supplier<T> = T | Promise<T> | (() => T | Promise<T>);
24
+ declare const Supplier: {
25
+ get: <T>(supplier: Supplier<T>) => Promise<T>;
26
+ };
16
27
 
17
28
  /**
18
- * VaultCache class
19
- *
20
- * Manages in-memory cache for vault and asset data with TTL-based expiration.
21
- * Automatically refreshes expired cache on queries.
22
- *
23
- * @example
24
- * ```typescript
25
- * // Initialize cache with default 10-minute TTL
26
- * const cache = new VaultCache();
27
- *
28
- * // Initialize cache with custom TTL (5 minutes)
29
- * const customCache = new VaultCache(300000);
30
- *
31
- * // Get vaults by deposit token address
32
- * const vaults = cache.getVault("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48");
33
- *
34
- * // Get asset by token address
35
- * const asset = cache.getAsset("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48");
36
- *
37
- * // Get all cached vaults
38
- * const allVaults = cache.getAllVaults();
39
- *
40
- * // Check if cache is expired
41
- * const expired = cache.isExpired();
42
- *
43
- * // Manually refresh cache
44
- * await cache.refresh();
45
- * ```
29
+ * A promise that returns the parsed response and lets you retrieve the raw response too.
46
30
  */
47
- declare class VaultCache {
31
+ declare class HttpResponsePromise<T> extends Promise<T> {
32
+ private innerPromise;
33
+ private unwrappedPromise;
34
+ private constructor();
35
+ /**
36
+ * Creates an `HttpResponsePromise` from a function that returns a promise.
37
+ *
38
+ * @param fn - A function that returns a promise resolving to a `WithRawResponse` object.
39
+ * @param args - Arguments to pass to the function.
40
+ * @returns An `HttpResponsePromise` instance.
41
+ */
42
+ static fromFunction<F extends (...args: never[]) => Promise<WithRawResponse<T>>, T>(fn: F, ...args: Parameters<F>): HttpResponsePromise<T>;
48
43
  /**
49
- * Vaults keyed by baseTokenAddress
50
- * One key can map to multiple vaults (different chains/yield types)
44
+ * Creates a function that returns an `HttpResponsePromise` from a function that returns a promise.
45
+ *
46
+ * @param fn - A function that returns a promise resolving to a `WithRawResponse` object.
47
+ * @returns A function that returns an `HttpResponsePromise` instance.
51
48
  */
52
- private vaults;
49
+ static interceptFunction<F extends (...args: never[]) => Promise<WithRawResponse<T>>, T = Awaited<ReturnType<F>>["data"]>(fn: F): (...args: Parameters<F>) => HttpResponsePromise<T>;
53
50
  /**
54
- * Assets keyed by token address
51
+ * Creates an `HttpResponsePromise` from an existing promise.
52
+ *
53
+ * @param promise - A promise resolving to a `WithRawResponse` object.
54
+ * @returns An `HttpResponsePromise` instance.
55
55
  */
56
- private assets;
56
+ static fromPromise<T>(promise: Promise<WithRawResponse<T>>): HttpResponsePromise<T>;
57
57
  /**
58
- * Vaults keyed by boringVaultAddress (lowercase, for case-insensitive lookup)
58
+ * Creates an `HttpResponsePromise` from an executor function.
59
+ *
60
+ * @param executor - A function that takes resolve and reject callbacks to create a promise.
61
+ * @returns An `HttpResponsePromise` instance.
59
62
  */
60
- private vaultsByAddress;
63
+ static fromExecutor<T>(executor: (resolve: (value: WithRawResponse<T>) => void, reject: (reason?: unknown) => void) => void): HttpResponsePromise<T>;
61
64
  /**
62
- * Vaults keyed by vault name (lowercase, for case-insensitive lookup)
65
+ * Creates an `HttpResponsePromise` from a resolved result.
66
+ *
67
+ * @param result - A `WithRawResponse` object to resolve immediately.
68
+ * @returns An `HttpResponsePromise` instance.
63
69
  */
64
- private vaultsByName;
70
+ static fromResult<T>(result: WithRawResponse<T>): HttpResponsePromise<T>;
71
+ private unwrap;
72
+ /** @inheritdoc */
73
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
74
+ /** @inheritdoc */
75
+ catch<TResult = never>(onrejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | null): Promise<T | TResult>;
76
+ /** @inheritdoc */
77
+ finally(onfinally?: (() => void) | null): Promise<T>;
65
78
  /**
66
- * Unix timestamp (milliseconds) of last successful fetch
79
+ * Retrieves the data and raw response.
80
+ *
81
+ * @returns A promise resolving to a `WithRawResponse` object.
67
82
  */
68
- private lastFetch;
83
+ withRawResponse(): Promise<WithRawResponse<T>>;
84
+ }
85
+
86
+ type Schema<Raw = unknown, Parsed = unknown> = BaseSchema<Raw, Parsed> & SchemaUtils<Raw, Parsed>;
87
+ interface BaseSchema<Raw, Parsed> {
88
+ parse: (raw: unknown, opts?: SchemaOptions) => MaybeValid<Parsed>;
89
+ json: (parsed: unknown, opts?: SchemaOptions) => MaybeValid<Raw>;
90
+ getType: () => SchemaType | SchemaType;
91
+ }
92
+ declare const SchemaType: {
93
+ readonly BIGINT: "bigint";
94
+ readonly DATE: "date";
95
+ readonly ENUM: "enum";
96
+ readonly LIST: "list";
97
+ readonly STRING_LITERAL: "stringLiteral";
98
+ readonly BOOLEAN_LITERAL: "booleanLiteral";
99
+ readonly OBJECT: "object";
100
+ readonly ANY: "any";
101
+ readonly BOOLEAN: "boolean";
102
+ readonly NUMBER: "number";
103
+ readonly STRING: "string";
104
+ readonly UNKNOWN: "unknown";
105
+ readonly RECORD: "record";
106
+ readonly SET: "set";
107
+ readonly UNION: "union";
108
+ readonly UNDISCRIMINATED_UNION: "undiscriminatedUnion";
109
+ readonly NULLABLE: "nullable";
110
+ readonly OPTIONAL: "optional";
111
+ readonly OPTIONAL_NULLABLE: "optionalNullable";
112
+ };
113
+ type SchemaType = (typeof SchemaType)[keyof typeof SchemaType];
114
+ type MaybeValid<T> = Valid<T> | Invalid;
115
+ interface Valid<T> {
116
+ ok: true;
117
+ value: T;
118
+ }
119
+ interface Invalid {
120
+ ok: false;
121
+ errors: ValidationError[];
122
+ }
123
+ interface ValidationError {
124
+ path: string[];
125
+ message: string;
126
+ }
127
+ interface SchemaOptions {
69
128
  /**
70
- * Time-to-live in milliseconds
129
+ * how to handle unrecognized keys in objects
130
+ *
131
+ * @default "fail"
71
132
  */
72
- private readonly ttl;
133
+ unrecognizedObjectKeys?: "fail" | "passthrough" | "strip";
73
134
  /**
74
- * Current refresh promise (prevents duplicate concurrent refreshes)
75
- * When non-null, a refresh is in progress and callers should await this promise
135
+ * whether to fail when an unrecognized discriminant value is
136
+ * encountered in a union
137
+ *
138
+ * @default false
76
139
  */
77
- private refreshPromise;
140
+ allowUnrecognizedUnionMembers?: boolean;
78
141
  /**
79
- * Creates a new VaultCache instance
142
+ * whether to fail when an unrecognized enum value is encountered
80
143
  *
81
- * @param ttl - Time-to-live in milliseconds (default: 600000 = 10 minutes)
144
+ * @default false
82
145
  */
83
- constructor(ttl?: number);
146
+ allowUnrecognizedEnumValues?: boolean;
84
147
  /**
85
- * Gets vaults by deposit token address
148
+ * whether to allow data that doesn't conform to the schema.
149
+ * invalid data is passed through without transformation.
86
150
  *
87
- * Returns undefined if no vaults found for the given token address.
88
- * Does NOT automatically refresh if cache is expired; use refresh() for that.
151
+ * when this is enabled, .parse() and .json() will always
152
+ * return `ok: true`. `.parseOrThrow()` and `.jsonOrThrow()`
153
+ * will never fail.
89
154
  *
90
- * @param tokenAddress - Deposit token address (baseTokenAddress)
91
- * @returns Array of AmplifyVault objects, or undefined if not found
155
+ * @default false
92
156
  */
93
- getVault(tokenAddress: string): AmplifyVault[] | undefined;
157
+ skipValidation?: boolean;
94
158
  /**
95
- * Gets a vault by its boringVaultAddress (on-chain vault contract).
96
- * Case-insensitive lookup.
159
+ * each validation failure contains a "path" property, which is
160
+ * the breadcrumbs to the offending node in the JSON. you can supply
161
+ * a prefix that is prepended to all the errors' paths. this can be
162
+ * helpful for zurg's internal debug logging.
97
163
  */
98
- getVaultByAddress(address: string): AmplifyVault | undefined;
164
+ breadcrumbsPrefix?: string[];
99
165
  /**
100
- * Gets a vault by its human-readable name.
101
- * Case-insensitive lookup.
166
+ * whether to send 'null' for optional properties explicitly set to 'undefined'.
102
167
  */
103
- getVaultByName(name: string): AmplifyVault | undefined;
168
+ omitUndefined?: boolean;
169
+ }
170
+
171
+ type ObjectLikeSchema<Raw, Parsed> = Schema<Raw, Parsed> & BaseSchema<Raw, Parsed> & ObjectLikeUtils<Raw, Parsed>;
172
+ interface ObjectLikeUtils<Raw, Parsed> {
173
+ withParsedProperties: <T extends Record<string, any>>(properties: {
174
+ [K in keyof T]: T[K] | ((parsed: Parsed) => T[K]);
175
+ }) => ObjectLikeSchema<Raw, Parsed & T>;
176
+ }
177
+
178
+ interface SchemaUtils<Raw, Parsed> {
179
+ nullable: () => Schema<Raw | null, Parsed | null>;
180
+ optional: () => Schema<Raw | null | undefined, Parsed | undefined>;
181
+ optionalNullable: () => Schema<Raw | null | undefined, Parsed | null | undefined>;
182
+ transform: <Transformed>(transformer: SchemaTransformer<Parsed, Transformed>) => Schema<Raw, Transformed>;
183
+ parseOrThrow: (raw: unknown, opts?: SchemaOptions) => Parsed;
184
+ jsonOrThrow: (raw: unknown, opts?: SchemaOptions) => Raw;
185
+ }
186
+ interface SchemaTransformer<Parsed, Transformed> {
187
+ transform: (parsed: Parsed) => Transformed;
188
+ untransform: (transformed: any) => Parsed;
189
+ }
190
+
191
+ type ObjectSchema<Raw, Parsed> = BaseObjectSchema<Raw, Parsed> & ObjectLikeUtils<Raw, Parsed> & ObjectUtils<Raw, Parsed> & SchemaUtils<Raw, Parsed>;
192
+ interface BaseObjectSchema<Raw, Parsed> extends BaseSchema<Raw, Parsed> {
193
+ _getRawProperties: () => (keyof Raw)[];
194
+ _getParsedProperties: () => (keyof Parsed)[];
195
+ }
196
+ interface ObjectUtils<Raw, Parsed> {
197
+ extend: <RawExtension, ParsedExtension>(schemas: ObjectSchema<RawExtension, ParsedExtension>) => ObjectSchema<Raw & RawExtension, Parsed & ParsedExtension>;
198
+ passthrough: () => ObjectSchema<Raw & {
199
+ [key: string]: unknown;
200
+ }, Parsed & {
201
+ [key: string]: unknown;
202
+ }>;
203
+ }
204
+
205
+ /**
206
+ * This file was auto-generated by Fern from our API Definition.
207
+ */
208
+ type GetApysRequestOrderByTimestamp$1 = "asc" | "desc";
209
+ declare const GetApysRequestOrderByTimestamp$1: {
210
+ readonly Asc: "asc";
211
+ readonly Desc: "desc";
212
+ };
213
+
214
+ /**
215
+ * This file was auto-generated by Fern from our API Definition.
216
+ */
217
+ type GetTvlsRequestOrderByTimestamp$1 = "asc" | "desc";
218
+ declare const GetTvlsRequestOrderByTimestamp$1: {
219
+ readonly Asc: "asc";
220
+ readonly Desc: "desc";
221
+ };
222
+
223
+ /**
224
+ * This file was auto-generated by Fern from our API Definition.
225
+ */
226
+ /**
227
+ * @example
228
+ * {
229
+ * pageSize: 25,
230
+ * filter: "withdrawable=true AND chainId=1 AND assetAddress=0xabcdef1234567890abcdef1234567890abcdef12"
231
+ * }
232
+ */
233
+ interface ListAssetsRequest {
104
234
  /**
105
- * Gets asset by token address
106
- *
107
- * Returns undefined if asset not found.
108
- * Does NOT automatically refresh if cache is expired; use refresh() for that.
109
- *
110
- * @param tokenAddress - Token address
111
- * @returns SupportedAsset object, or undefined if not found
235
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
112
236
  */
113
- getAsset(tokenAddress: string): SupportedAsset | undefined;
237
+ pageSize?: number;
114
238
  /**
115
- * Gets all cached vaults
116
- *
117
- * Returns an array of all vaults across all deposit tokens.
118
- * Does NOT automatically refresh if cache is expired; use refresh() for that.
119
- *
120
- * @returns Array of all AmplifyVault objects
239
+ * Opaque token for the next page. Omit for the first page.
121
240
  */
122
- getAllVaults(): AmplifyVault[];
241
+ pageToken?: string;
123
242
  /**
124
- * Gets all cached assets
125
- *
126
- * Returns an array of all assets.
127
- * Does NOT automatically refresh if cache is expired; use refresh() for that.
128
- *
129
- * @returns Array of all SupportedAsset objects
243
+ * Filter string. Flags: withdrawable, depositable, vaultAddress, assetAddress, chainId. Optional.
130
244
  */
131
- getAllAssets(): SupportedAsset[];
245
+ filter?: string;
246
+ }
247
+
248
+ /**
249
+ * This file was auto-generated by Fern from our API Definition.
250
+ */
251
+
252
+ /**
253
+ * @example
254
+ * {
255
+ * pageSize: 25,
256
+ * startTime: "2026-01-01T00:00:00Z",
257
+ * endTime: "2026-01-21T00:00:00Z",
258
+ * interval: "86400s",
259
+ * lookback: "604800s",
260
+ * filter: "vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
261
+ * }
262
+ */
263
+ interface GetApysRequest {
132
264
  /**
133
- * Checks if cache is expired
134
- *
135
- * Cache is considered expired if current time exceeds lastFetch + ttl.
136
- *
137
- * @returns true if cache is expired, false otherwise
265
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
138
266
  */
139
- isExpired(): boolean;
267
+ pageSize?: number;
140
268
  /**
141
- * Gets the time until cache expires
142
- *
143
- * @returns Milliseconds until expiry, or 0 if already expired
269
+ * Opaque token for the next page. Omit for the first page.
144
270
  */
145
- getTimeUntilExpiry(): number;
271
+ pageToken?: string;
146
272
  /**
147
- * Checks if cache is empty (never populated)
148
- *
149
- * @returns true if cache has never been populated, false otherwise
273
+ * Start of time range (RFC 3339 UTC). Optional; used with endTime. Takes precedence over lookback if set.
150
274
  */
151
- isEmpty(): boolean;
275
+ startTime?: string;
152
276
  /**
153
- * Manually refreshes the cache
154
- *
155
- * Fetches fresh data from the API and updates both vaults and assets maps.
156
- * Updates lastFetch timestamp on success.
157
- *
158
- * If a refresh is already in progress, this method returns the existing
159
- * promise instead of starting a concurrent refresh. This is more efficient
160
- * than polling and ensures all callers wait for the same refresh operation.
161
- *
162
- * @throws {APIError} If the API request fails
277
+ * End of time range (RFC 3339 UTC). Optional; used with startTime. Clamped to now if in the future.
163
278
  */
164
- refresh(): Promise<void>;
279
+ endTime?: string;
165
280
  /**
166
- * Internal refresh implementation
167
- * Separated to allow promise reuse in refresh()
168
- *
169
- * Fetches data via GraphQL and derives both vaults and assets
170
- * from the same response.
281
+ * Duration between data points (e.g. 86400s). Default: 86400s (1 day).
171
282
  */
172
- private _doRefresh;
283
+ interval?: string;
173
284
  /**
174
- * Check if a refresh is currently in progress
175
- *
176
- * @returns true if cache is being refreshed, false otherwise
285
+ * Duration from now backward (e.g. 604800s for 7 days). Default when no startTime/endTime: 2592000s (30 days).
177
286
  */
178
- isRefreshing(): boolean;
287
+ lookback?: string;
179
288
  /**
180
- * Clears the cache
181
- *
182
- * Removes all cached data and resets lastFetch timestamp.
183
- * Does not affect TTL setting.
289
+ * Order by timestamp. Allowed: asc, desc. Default: asc.
184
290
  */
185
- clear(): void;
291
+ orderByTimestamp?: GetApysRequestOrderByTimestamp$1;
186
292
  /**
187
- * Gets cache statistics
188
- *
189
- * @returns Object with cache statistics
293
+ * Filter string. Flags: vaultAddress. Optional.
190
294
  */
191
- getStats(): {
192
- vaultCount: number;
193
- assetCount: number;
194
- tokenCount: number;
195
- lastFetch: number;
196
- ttl: number;
197
- isExpired: boolean;
198
- isEmpty: boolean;
199
- timeUntilExpiry: number;
200
- };
295
+ filter?: string;
201
296
  }
202
297
 
203
298
  /**
204
- * Amplify SDK API Client
205
- *
206
- * Provides functions to fetch vault and asset data from the Amplify SDK backend API.
207
- * Handles input validation, error handling, and response parsing.
208
- * Includes cache integration for performance optimization.
209
- *
210
- * @module client/amplify-sdk-client
299
+ * This file was auto-generated by Fern from our API Definition.
211
300
  */
212
301
 
213
302
  /**
214
- * Gets vaults with cache-first strategy
215
- *
216
- * Checks the cache first and returns cached data if fresh.
217
- * Falls back to API via cache.refresh() when cache is empty or expired.
218
- * Filters are applied client-side on the cached data.
219
- *
220
- * @param options - Optional filter options for vault queries
221
- * @returns Promise resolving to array of AmplifyVault objects
222
- * @throws {APIError} If the request fails, times out, or returns invalid data
223
- *
224
- * @example
225
- * ```typescript
226
- * // Get all vaults (cache-first)
227
- * const allVaults = await getVaults();
228
- *
229
- * // Get CORE vaults on Ethereum (cache-first)
230
- * const ethCores = await getVaults({
231
- * chainId: 1,
232
- * yieldType: "CORE"
233
- * });
234
- *
235
- * // Get vaults accepting USDC (cache-first)
236
- * const usdcVaults = await getVaults({
237
- * depositTokenAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
238
- * });
239
- * ```
240
- */
241
- declare function getVaults(options?: VaultFilterOptions): Promise<AmplifyVault[]>;
242
- /**
243
- * Gets supported assets with cache-first strategy
244
- *
245
- * Checks the cache first and returns cached data if fresh.
246
- * Falls back to API via cache.refresh() when cache is empty or expired.
247
- *
248
- * Note: When `yieldType` filter is specified, bypasses cache and calls the
249
- * API directly because SupportedAsset objects don't have a yieldType field
250
- * (server-side filtering is required).
251
- *
252
- * @param options - Optional filter options for asset queries
253
- * @returns Promise resolving to array of SupportedAsset objects
254
- * @throws {APIError} If the request fails, times out, or returns invalid data
255
- *
256
- * @example
257
- * ```typescript
258
- * // Get all supported assets (cache-first)
259
- * const allAssets = await getSupportedAssets();
260
- *
261
- * // Get assets supported on Ethereum and Base (cache-first)
262
- * const ethAssets = await getSupportedAssets({
263
- * chains: [1, 8453]
264
- * });
265
- *
266
- * // Get CORE yield type assets (API call - yieldType bypass)
267
- * const coreAssets = await getSupportedAssets({
268
- * yieldType: "CORE"
269
- * });
270
- * ```
271
- */
272
- declare function getSupportedAssets(options?: AssetFilterOptions): Promise<SupportedAsset[]>;
273
- /**
274
- * Initializes the global vault cache
275
- *
276
- * Creates a new VaultCache instance with the specified TTL.
277
- * If a cache already exists, it will be replaced with a new instance.
278
- *
279
- * @param ttl - Time-to-live in milliseconds (default: 600000 = 10 minutes)
280
- * @returns The initialized VaultCache instance
281
- *
282
303
  * @example
283
- * ```typescript
284
- * // Initialize cache with default 10-minute TTL
285
- * const cache = initializeCache();
286
- *
287
- * // Initialize cache with custom 5-minute TTL
288
- * const customCache = initializeCache(300000);
289
- * ```
290
- */
291
- declare function initializeCache(ttl?: number): VaultCache;
292
- /**
293
- * Gets the global vault cache instance
294
- *
295
- * If no cache exists, creates one with default TTL.
296
- *
297
- * @returns The global VaultCache instance
298
- */
299
- declare function getCache(): VaultCache;
300
- /**
301
- * Manually refreshes the global vault cache
302
- *
303
- * Fetches fresh data from the API and updates the cache.
304
- * This is the public SDK method for cache refresh.
305
- *
306
- * @throws {APIError} If the API request fails
307
- *
304
+ * {
305
+ * pageSize: 25,
306
+ * startTime: "2026-01-01T00:00:00Z",
307
+ * endTime: "2026-01-21T00:00:00Z",
308
+ * interval: "86400s",
309
+ * lookback: "604800s",
310
+ * includeCurrent: false,
311
+ * aggregate: false,
312
+ * filter: "chainId=1 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
313
+ * }
314
+ */
315
+ interface GetTvlsRequest {
316
+ /**
317
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
318
+ */
319
+ pageSize?: number;
320
+ /**
321
+ * Opaque token for the next page. Omit for the first page.
322
+ */
323
+ pageToken?: string;
324
+ /**
325
+ * Start of time range (RFC 3339 UTC). Optional; used with endTime. Takes precedence over lookback if set.
326
+ */
327
+ startTime?: string;
328
+ /**
329
+ * End of time range (RFC 3339 UTC). Optional; used with startTime. Clamped to now if in the future.
330
+ */
331
+ endTime?: string;
332
+ /**
333
+ * Duration between data points (e.g. 86400s). Default: 86400s (1 day).
334
+ */
335
+ interval?: string;
336
+ /**
337
+ * Duration from now backward (e.g. 604800s for 7 days). Default when no startTime/endTime: 2592000s (30 days).
338
+ */
339
+ lookback?: string;
340
+ /**
341
+ * Deprecated: current on-chain TVL is now always included. Accepted for backward compatibility but has no effect.
342
+ */
343
+ includeCurrent?: boolean;
344
+ /**
345
+ * Order by timestamp. Allowed: asc, desc. Default: asc.
346
+ */
347
+ orderByTimestamp?: GetTvlsRequestOrderByTimestamp$1;
348
+ /**
349
+ * When true, TVL is summed across all chains for each vault and returned with chainId=0. Default: false.
350
+ */
351
+ aggregate?: boolean;
352
+ /**
353
+ * Filter string. Flags: chainId, vaultAddress. Optional.
354
+ */
355
+ filter?: string;
356
+ }
357
+
358
+ /**
359
+ * This file was auto-generated by Fern from our API Definition.
360
+ */
361
+ /**
308
362
  * @example
309
- * ```typescript
310
- * // Manually refresh cache
311
- * await refreshVaultCache();
312
- * ```
313
- */
314
- declare function refreshVaultCache(): Promise<void>;
315
- /**
316
- * Gets supported assets from cache with automatic refresh on expiry
317
- *
318
- * Delegates to getSupportedAssets() which now has cache-first behavior.
319
- * Retained for backward compatibility.
320
- *
321
- * @deprecated Use getSupportedAssets instead
322
- * @param options - Optional filter options for asset queries
323
- * @returns Promise resolving to array of SupportedAsset objects
324
- * @throws {APIError} If the request fails or returns invalid data
325
- */
326
- declare function getAssetsFromCache(options?: AssetFilterOptions): Promise<SupportedAsset[]>;
327
- /**
328
- * Finds a vault by configuration criteria
329
- *
330
- * Resolves the correct vault using multi-criteria filtering based on:
331
- * - assetAddress: The asset token address (baseTokenAddress)
332
- * - yieldType: The yield strategy (CORE, TREASURY, FRONTIER)
333
- * - chainId: The blockchain network
334
- *
335
- * Automatically refreshes cache if expired.
336
- * Returns the first matching vault or null if no match found.
337
- *
338
- * @param params - Configuration parameters
339
- * @param params.assetAddress - Asset token address (viem Address)
340
- * @param params.yieldType - Yield strategy type (CORE, TREASURY, or FRONTIER)
341
- * @param params.chainId - Blockchain network ID
342
- * @returns Promise resolving to AmplifyVault or null if no match found
343
- * @throws {APIError} If parameters are invalid or API request fails
344
- *
363
+ * {
364
+ * pageSize: 25,
365
+ * filter: "chainId=1 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
366
+ * }
367
+ */
368
+ interface ListCompositionsRequest {
369
+ /**
370
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
371
+ */
372
+ pageSize?: number;
373
+ /**
374
+ * Opaque token for the next page. Omit for the first page.
375
+ */
376
+ pageToken?: string;
377
+ /**
378
+ * Filter string. Flags: chainId, vaultAddress. Optional.
379
+ */
380
+ filter?: string;
381
+ }
382
+
383
+ /**
384
+ * This file was auto-generated by Fern from our API Definition.
385
+ */
386
+ /**
345
387
  * @example
346
- * ```typescript
347
- * // Find CORE vault on Ethereum for USDC
348
- * const vault = await findVaultByConfig({
349
- * assetAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
350
- * yieldType: "CORE",
351
- * chainId: 1
352
- * });
353
- *
354
- * if (vault) {
355
- * console.log("Found vault:", vault.id);
356
- * } else {
357
- * console.log("No matching vault found");
358
- * }
359
- * ```
360
- */
361
- declare function findVaultByConfig(params: {
362
- assetAddress: Address;
363
- yieldType: string;
364
- chainId: number;
365
- }): Promise<AmplifyVault | null>;
366
- /**
367
- * Filter options for getVaultsByConfig
368
- */
369
- interface GetVaultsByConfigParams {
370
- yieldType?: YieldType;
371
- chainId?: number;
372
- depositAssetAddress?: Address;
373
- withdrawAssetAddress?: Address;
374
- settlementAssetAddress?: Address;
375
- }
376
- /**
377
- * Returns vaults matching the provided configuration filters.
378
- *
379
- * Results are automatically scoped to the organization associated with
380
- * the API key the SDK was initialized with (enterprise filtering is
381
- * handled server-side by the amplifySdkConfigs resolver).
382
- */
383
- declare function getVaultsByConfig(params?: GetVaultsByConfigParams): Promise<AmplifyVault[]>;
384
- /**
385
- * Gets supported assets grouped by token with available vaults
386
- *
387
- * Fetches and caches vault data, then transforms it into WithdrawSupportedAsset objects.
388
- * Each asset shows all vaults that support withdrawals of that token.
389
- *
390
- * Automatically populates cache on first call if empty.
391
- * Reuses cached data on subsequent calls (if not expired).
392
- *
393
- * @returns Promise resolving to array of WithdrawSupportedAsset objects
394
- * @throws {APIError} If the API request fails or returns invalid data
395
- *
388
+ * {
389
+ * pageSize: 25,
390
+ * filter: "chainId=1 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
391
+ * }
392
+ */
393
+ interface GetLiquidityShortfallsRequest {
394
+ /**
395
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
396
+ */
397
+ pageSize?: number;
398
+ /**
399
+ * Opaque token for the next page. Omit for the first page.
400
+ */
401
+ pageToken?: string;
402
+ /**
403
+ * Filter string. Flags: vaultAddress, chainId, assetAddress. Optional.
404
+ */
405
+ filter?: string;
406
+ }
407
+
408
+ /**
409
+ * This file was auto-generated by Fern from our API Definition.
410
+ */
411
+ /**
396
412
  * @example
397
- * ```typescript
398
- * // Get all supported assets with available vaults
399
- * const assets = await getWithdrawSupportedAssets();
400
- *
401
- * // Display options to user
402
- * for (const asset of assets) {
403
- * console.log(`${asset.symbol}: ${asset.vaults.length} vaults available`);
404
- * for (const vault of asset.vaults) {
405
- * console.log(` - ${vault.yieldType} on chain ${vault.chainId}`);
406
- * }
407
- * }
408
- * ```
413
+ * {
414
+ * pageSize: 25,
415
+ * filter: "chainId=1 AND inDeprecation=false"
416
+ * }
409
417
  */
410
- declare function getWithdrawSupportedAssets(): Promise<WithdrawSupportedAsset[]>;
418
+ interface ListRequest {
419
+ /**
420
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
421
+ */
422
+ pageSize?: number;
423
+ /**
424
+ * Opaque token for the next page.
425
+ */
426
+ pageToken?: string;
427
+ /**
428
+ * Filter string. Flags: chainId, inDeprecation, requiresKyt. Example: chainId=1 AND inDeprecation=false
429
+ */
430
+ filter?: string;
431
+ }
411
432
 
412
433
  /**
413
- * Telemetry Type Definitions
414
- *
415
- * Types for SDK telemetry, logging, and PostHog integration.
434
+ * This file was auto-generated by Fern from our API Definition.
416
435
  */
417
436
  /**
418
- * Log levels for controlling console output
419
- *
420
437
  * @example
421
- * ```typescript
422
- * import { LogLevel } from "@paxoslabs/amplify-sdk";
423
- *
424
- * // Only show errors (default)
425
- * await initAmplifySDK(apiKey, { logLevel: LogLevel.ERROR });
426
- *
427
- * // Show all logs including debug
428
- * await initAmplifySDK(apiKey, { logLevel: LogLevel.DEBUG });
429
- * ```
430
- */
431
- declare const LogLevel: {
432
- readonly DEBUG: 0;
433
- readonly INFO: 1;
434
- readonly WARN: 2;
435
- readonly ERROR: 3;
436
- readonly NONE: 4;
438
+ * {
439
+ * pageSize: 25,
440
+ * filter: "vaultAddress=0xbbbb000000000000000000000000000000000001 AND chainId=84532"
441
+ * }
442
+ */
443
+ interface GetSupplyCapsRequest {
444
+ /**
445
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
446
+ */
447
+ pageSize?: number;
448
+ /**
449
+ * Opaque token for the next page. Omit for the first page.
450
+ */
451
+ pageToken?: string;
452
+ /**
453
+ * Filter string. Optional flags: vaultAddress (hex), chainId (number). Example: vaultAddress=0xbbbb000000000000000000000000000000000001 AND chainId=84532
454
+ */
455
+ filter?: string;
456
+ }
457
+
458
+ type index_d$c_GetApysRequest = GetApysRequest;
459
+ type index_d$c_GetLiquidityShortfallsRequest = GetLiquidityShortfallsRequest;
460
+ type index_d$c_GetSupplyCapsRequest = GetSupplyCapsRequest;
461
+ type index_d$c_GetTvlsRequest = GetTvlsRequest;
462
+ type index_d$c_ListAssetsRequest = ListAssetsRequest;
463
+ type index_d$c_ListCompositionsRequest = ListCompositionsRequest;
464
+ type index_d$c_ListRequest = ListRequest;
465
+ declare namespace index_d$c {
466
+ export { type index_d$c_GetApysRequest as GetApysRequest, GetApysRequestOrderByTimestamp$1 as GetApysRequestOrderByTimestamp, type index_d$c_GetLiquidityShortfallsRequest as GetLiquidityShortfallsRequest, type index_d$c_GetSupplyCapsRequest as GetSupplyCapsRequest, type index_d$c_GetTvlsRequest as GetTvlsRequest, GetTvlsRequestOrderByTimestamp$1 as GetTvlsRequestOrderByTimestamp, type index_d$c_ListAssetsRequest as ListAssetsRequest, type index_d$c_ListCompositionsRequest as ListCompositionsRequest, type index_d$c_ListRequest as ListRequest };
467
+ }
468
+
469
+ /**
470
+ * This file was auto-generated by Fern from our API Definition.
471
+ */
472
+ type GetVolumesRequestOrderByTimestamp$1 = "asc" | "desc";
473
+ declare const GetVolumesRequestOrderByTimestamp$1: {
474
+ readonly Asc: "asc";
475
+ readonly Desc: "desc";
476
+ };
477
+
478
+ /**
479
+ * This file was auto-generated by Fern from our API Definition.
480
+ */
481
+ type PrepareWithdrawalRequestResponseFormat$1 = "encoded" | "full" | "structured";
482
+ declare const PrepareWithdrawalRequestResponseFormat$1: {
483
+ readonly Encoded: "encoded";
484
+ readonly Full: "full";
485
+ readonly Structured: "structured";
486
+ };
487
+
488
+ /**
489
+ * This file was auto-generated by Fern from our API Definition.
490
+ */
491
+ type CancelRequestResponseFormat$1 = "encoded" | "full" | "structured";
492
+ declare const CancelRequestResponseFormat$1: {
493
+ readonly Encoded: "encoded";
494
+ readonly Full: "full";
495
+ readonly Structured: "structured";
437
496
  };
438
- type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];
497
+
498
+ /**
499
+ * This file was auto-generated by Fern from our API Definition.
500
+ */
501
+ /**
502
+ * @example
503
+ * {
504
+ * pageSize: 25,
505
+ * filter: "status=PENDING AND chainId=1 AND wantAssetAddress=0x1234567890abcdef1234567890abcdef12345678 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678 AND userAddress=0x1234567890abcdef1234567890abcdef12345678 AND isMarkedForRefund=false"
506
+ * }
507
+ */
508
+ interface ListRequestsRequest {
509
+ /**
510
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
511
+ */
512
+ pageSize?: number;
513
+ /**
514
+ * Opaque token for the next page. Omit for the first page.
515
+ */
516
+ pageToken?: string;
517
+ /**
518
+ * Filter string. Flags: status (PENDING|COMPLETE|PENDING_REFUND|REFUNDED), chainId, wantAssetAddress, vaultAddress, userAddress, receiverAddress, refundReceiverAddress, orderIndex, isSubmittedViaSignature, isForceProcessed, isMarkedForRefund, isMarkedForRefundByUser, didOrderFailTransfer. Optional.
519
+ */
520
+ filter?: string;
521
+ }
522
+
523
+ /**
524
+ * This file was auto-generated by Fern from our API Definition.
525
+ */
526
+
439
527
  /**
440
- * Logger interface for consumer use
441
- *
442
- * Implement this interface to provide a custom logger.
443
- * All methods receive a message and optional context object.
444
- *
445
528
  * @example
446
- * ```typescript
447
- * import { setLogger, Logger } from "@paxoslabs/amplify-sdk";
448
- *
449
- * const customLogger: Logger = {
450
- * debug: (msg, ctx) => console.debug(`[MyApp] ${msg}`, ctx),
451
- * info: (msg, ctx) => console.info(`[MyApp] ${msg}`, ctx),
452
- * warn: (msg, ctx) => console.warn(`[MyApp] ${msg}`, ctx),
453
- * error: (msg, ctx) => console.error(`[MyApp] ${msg}`, ctx),
454
- * };
455
- *
456
- * setLogger(customLogger);
457
- * ```
529
+ * {
530
+ * pageSize: 25,
531
+ * startTime: "2026-01-01T00:00:00Z",
532
+ * endTime: "2026-01-21T00:00:00Z",
533
+ * vaultAddress: "0x1234567890abcdef1234567890abcdef12345678",
534
+ * interval: "86400s",
535
+ * filter: "chainId=1 AND wantAssetAddress=0xabcdef1234567890abcdef1234567890abcdef12"
536
+ * }
458
537
  */
459
- interface Logger {
538
+ interface GetVolumesRequest {
539
+ /**
540
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
541
+ */
542
+ pageSize?: number;
543
+ /**
544
+ * Opaque token for the next page. Omit for the first page.
545
+ */
546
+ pageToken?: string;
460
547
  /**
461
- * Log debug message (verbose, development only)
548
+ * Start of time range (RFC 3339 UTC). Required.
462
549
  */
463
- debug(message: string, context?: Record<string, unknown>): void;
550
+ startTime: string;
464
551
  /**
465
- * Log informational message
552
+ * End of time range (RFC 3339 UTC). Required.
466
553
  */
467
- info(message: string, context?: Record<string, unknown>): void;
554
+ endTime: string;
468
555
  /**
469
- * Log warning message
556
+ * Vault address to filter by (hex address). Required.
470
557
  */
471
- warn(message: string, context?: Record<string, unknown>): void;
558
+ vaultAddress: string;
472
559
  /**
473
- * Log error message
560
+ * Duration between data points (e.g. 86400s). Optional.
474
561
  */
475
- error(message: string, context?: Record<string, unknown>): void;
562
+ interval?: string;
563
+ /**
564
+ * Order by timestamp. Allowed: asc, desc. Default: asc.
565
+ */
566
+ orderByTimestamp?: GetVolumesRequestOrderByTimestamp$1;
567
+ /**
568
+ * Filter string. Flags: chainId, wantAssetAddress. Optional.
569
+ */
570
+ filter?: string;
476
571
  }
477
572
 
478
573
  /**
479
- * Logger Module
480
- *
481
- * Provides a consumer-facing logger interface with configurable log levels.
482
- * Default implementation logs errors only to console.
574
+ * This file was auto-generated by Fern from our API Definition.
483
575
  */
484
576
 
485
577
  /**
486
- * Set a custom logger implementation
487
- *
488
- * Replace the default console logger with a custom implementation.
489
- * Useful for integrating with existing logging infrastructure.
490
- *
491
- * @param logger - Custom logger implementing the Logger interface
492
- *
493
578
  * @example
494
- * ```typescript
495
- * import { setLogger } from "@paxoslabs/amplify-sdk";
496
- *
497
- * // Use a custom logger
498
- * setLogger({
499
- * debug: (msg, ctx) => winston.debug(msg, ctx),
500
- * info: (msg, ctx) => winston.info(msg, ctx),
501
- * warn: (msg, ctx) => winston.warn(msg, ctx),
502
- * error: (msg, ctx) => winston.error(msg, ctx),
503
- * });
504
- * ```
505
- */
506
- declare function setLogger(logger: Logger): void;
507
- /**
508
- * Get the current logger instance
509
- *
510
- * Returns the custom logger if set, otherwise the default console logger.
511
- *
512
- * @returns Current logger instance
513
- *
514
- * @example
515
- * ```typescript
516
- * import { getLogger } from "@paxoslabs/amplify-sdk";
517
- *
518
- * const logger = getLogger();
519
- * logger.info("Processing deposit", { amount: "100" });
520
- * ```
521
- */
522
- declare function getLogger(): Logger;
523
- /**
524
- * Set the log level for the default console logger
525
- *
526
- * Controls which log messages are output to the console.
527
- * Has no effect if a custom logger is set.
528
- *
529
- * @param level - Minimum log level to output
530
- *
531
- * @example
532
- * ```typescript
533
- * import { setLogLevel, LogLevel } from "@paxoslabs/amplify-sdk";
534
- *
535
- * // Show all logs including debug
536
- * setLogLevel(LogLevel.DEBUG);
537
- *
538
- * // Only show errors (default)
539
- * setLogLevel(LogLevel.ERROR);
540
- *
541
- * // Disable all logging
542
- * setLogLevel(LogLevel.NONE);
543
- * ```
579
+ * {
580
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
581
+ * wantAsset: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
582
+ * shareAmount: "1000000000000000000",
583
+ * userAddress: "0x1234567890abcdef1234567890abcdef12345678",
584
+ * intendedDepositor: "0x1234567890abcdef1234567890abcdef12345678",
585
+ * receiver: "0x1234567890abcdef1234567890abcdef12345678",
586
+ * refundReceiver: "0x1234567890abcdef1234567890abcdef12345678",
587
+ * chainId: 1
588
+ * }
589
+ */
590
+ interface PrepareWithdrawalRequest {
591
+ /**
592
+ * BoringVault contract address (0x + 40 hex chars)
593
+ */
594
+ vaultAddress: string;
595
+ /**
596
+ * ERC-20 token address to receive upon withdrawal
597
+ */
598
+ wantAsset: string;
599
+ /**
600
+ * Vault share amount to redeem, in share token base units (decimal string)
601
+ */
602
+ shareAmount: string;
603
+ /**
604
+ * User wallet address — submits the withdrawal order. Also used as the default `intendedDepositor`, `receiver`, and `refundReceiver` when those optional params are omitted.
605
+ */
606
+ userAddress: string;
607
+ /**
608
+ * Address treated as the depositor of record for the withdrawn shares (on-chain `SubmitOrderParams.intendedDepositor`). Defaults to `userAddress` when omitted.
609
+ */
610
+ intendedDepositor?: string;
611
+ /**
612
+ * Address that receives the withdrawn `wantAsset` on settlement (on-chain `SubmitOrderParams.receiver`). Defaults to `userAddress` when omitted.
613
+ */
614
+ receiver?: string;
615
+ /**
616
+ * Address that receives refunded shares if the order is cancelled (on-chain `SubmitOrderParams.refundReceiver`). Defaults to `userAddress` when omitted.
617
+ */
618
+ refundReceiver?: string;
619
+ /**
620
+ * EVM chain ID
621
+ */
622
+ chainId: number;
623
+ /**
624
+ * Controls response fields. "encoded" (default): ABI-encoded calldata only. "full": calldata + ABI fragment, function name, args. "structured": ABI fragment, function name, args only.
625
+ */
626
+ responseFormat?: PrepareWithdrawalRequestResponseFormat$1;
627
+ }
628
+
629
+ /**
630
+ * This file was auto-generated by Fern from our API Definition.
544
631
  */
545
- declare function setLogLevel(level: LogLevel): void;
546
632
 
547
633
  /**
548
- * SDK Configuration Types
549
- *
550
- * Type definitions for SDK initialization and configuration management.
634
+ * @example
635
+ * {
636
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
637
+ * orderIndex: "42",
638
+ * chainId: 1
639
+ * }
551
640
  */
641
+ interface CancelRequest {
642
+ /**
643
+ * BoringVault contract address (0x + 40 hex chars)
644
+ */
645
+ vaultAddress: string;
646
+ /**
647
+ * Index of the withdrawal order to cancel, in WithdrawQueue order-index units (decimal string). To retrieve a specific order index, call `GET /v2/amplify/withdrawalRequests` filtered by `userAddress` and `vaultAddress` — each returned item includes its `orderIndex`.
648
+ */
649
+ orderIndex: string;
650
+ /**
651
+ * EVM chain ID
652
+ */
653
+ chainId: number;
654
+ /**
655
+ * Controls response fields. "encoded" (default): ABI-encoded calldata only. "full": calldata + ABI fragment, function name, args. "structured": ABI fragment, function name, args only.
656
+ */
657
+ responseFormat?: CancelRequestResponseFormat$1;
658
+ }
552
659
 
553
660
  /**
554
- * SDK Initialization Options
555
- *
556
- * Options for configuring SDK behavior during initialization.
557
- *
661
+ * This file was auto-generated by Fern from our API Definition.
662
+ */
663
+ /**
558
664
  * @example
559
- * ```typescript
560
- * // Enable debug logging, disable telemetry
561
- * await initAmplifySDK(apiKey, {
562
- * telemetry: false,
563
- * logLevel: LogLevel.DEBUG,
564
- * });
565
- * ```
665
+ * {
666
+ * offerAmount: "1000000000000000000",
667
+ * wantAsset: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
668
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
669
+ * chainId: 1
670
+ * }
566
671
  */
567
- interface SDKInitOptions {
672
+ interface CalculateFeeRequest {
568
673
  /**
569
- * Enable or disable telemetry (PostHog error tracking)
570
- *
571
- * When enabled (default), errors are tracked to PostHog for
572
- * proactive monitoring. Disable for privacy or testing.
573
- *
574
- * @default true
674
+ * Share amount to withdraw (base units decimal string)
575
675
  */
576
- telemetry?: boolean;
676
+ offerAmount: string;
577
677
  /**
578
- * Console log level
579
- *
580
- * Controls which log messages are output to the console.
581
- * Does not affect telemetry (errors are always tracked if enabled).
582
- *
583
- * @default LogLevel.ERROR
678
+ * ERC-20 token address the user wants to receive
584
679
  */
585
- logLevel?: LogLevel;
680
+ wantAsset: string;
586
681
  /**
587
- * Custom logger implementation
588
- *
589
- * Override the default console logger with a custom implementation.
590
- * Useful for integrating with existing logging infrastructure.
682
+ * BoringVault contract address (0x + 40 hex chars)
591
683
  */
592
- logger?: Logger;
684
+ vaultAddress: string;
593
685
  /**
594
- * Custom RPC URLs per chain
595
- *
596
- * Map of chain IDs to RPC endpoint URLs. When provided, the SDK
597
- * uses these instead of default public RPCs. Chains without a
598
- * custom URL fall back to the public RPC with a warning.
599
- *
600
- * @example
601
- * ```typescript
602
- * await initAmplifySDK(apiKey, {
603
- * rpcUrls: {
604
- * 1: "https://my-eth-rpc.com",
605
- * 999: "https://my-hyperEVM-rpc.com",
606
- * },
607
- * });
608
- * ```
686
+ * EVM chain ID
609
687
  */
610
- rpcUrls?: Record<number, string>;
688
+ chainId: number;
689
+ }
690
+
691
+ type index_d$b_CalculateFeeRequest = CalculateFeeRequest;
692
+ type index_d$b_CancelRequest = CancelRequest;
693
+ type index_d$b_GetVolumesRequest = GetVolumesRequest;
694
+ type index_d$b_ListRequestsRequest = ListRequestsRequest;
695
+ type index_d$b_PrepareWithdrawalRequest = PrepareWithdrawalRequest;
696
+ declare namespace index_d$b {
697
+ export { type index_d$b_CalculateFeeRequest as CalculateFeeRequest, type index_d$b_CancelRequest as CancelRequest, CancelRequestResponseFormat$1 as CancelRequestResponseFormat, type index_d$b_GetVolumesRequest as GetVolumesRequest, GetVolumesRequestOrderByTimestamp$1 as GetVolumesRequestOrderByTimestamp, type index_d$b_ListRequestsRequest as ListRequestsRequest, type index_d$b_PrepareWithdrawalRequest as PrepareWithdrawalRequest, PrepareWithdrawalRequestResponseFormat$1 as PrepareWithdrawalRequestResponseFormat };
611
698
  }
699
+
700
+ /**
701
+ * This file was auto-generated by Fern from our API Definition.
702
+ */
703
+ type PrepareDepositRequestResponseFormat$1 = "encoded" | "full" | "structured";
704
+ declare const PrepareDepositRequestResponseFormat$1: {
705
+ readonly Encoded: "encoded";
706
+ readonly Full: "full";
707
+ readonly Structured: "structured";
708
+ };
709
+
710
+ /**
711
+ * This file was auto-generated by Fern from our API Definition.
712
+ */
713
+
612
714
  /**
613
- * SDK Configuration State
614
- *
615
- * Stores the API key and initialization status for the SDK.
616
- * This configuration is maintained at the module level in src/lib/sdk-config.ts
715
+ * @example
716
+ * {
717
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
718
+ * depositAsset: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
719
+ * depositAmount: "1000000",
720
+ * userAddress: "0x1234567890abcdef1234567890abcdef12345678",
721
+ * to: "0x1234567890abcdef1234567890abcdef12345678",
722
+ * chainId: 1,
723
+ * permitSignature: "0xabc...",
724
+ * permitDeadline: 9999999999
725
+ * }
617
726
  */
618
- interface SDKConfig {
727
+ interface PrepareDepositRequest {
619
728
  /**
620
- * API key for Paxos Labs API authentication
621
- * Set during initialization, used in all API requests
622
- * Format: pxl_<type>_<random_string>
729
+ * BoringVault contract address (0x + 40 hex chars)
623
730
  */
624
- apiKey: string | null;
731
+ vaultAddress: string;
625
732
  /**
626
- * Indicates whether SDK has been successfully initialized
627
- * Set to true after init completes, false on clear
733
+ * ERC-20 token address to deposit
628
734
  */
629
- isInitialized: boolean;
735
+ depositAsset: string;
630
736
  /**
631
- * Timestamp when SDK was initialized
632
- * Used for debugging and telemetry
737
+ * Amount to deposit in token base units (decimal string)
633
738
  */
634
- initializedAt: Date | null;
739
+ depositAmount: string;
635
740
  /**
636
- * Flag to track if initialization is currently in progress
637
- * Prevents concurrent initialization attempts
741
+ * User wallet address signs and submits the deposit transaction. Also used as the default share recipient when `to` is omitted.
638
742
  */
639
- isInitializing: boolean;
743
+ userAddress: string;
640
744
  /**
641
- * Promise for ongoing initialization
642
- * Allows concurrent calls to wait for same initialization
745
+ * Destination address that receives the vault shares. Defaults to `userAddress` when omitted. Must match the on-chain `to` argument on `DistributorCodeDepositor.deposit()`.
643
746
  */
644
- initPromise: Promise<void> | null;
747
+ to?: string;
645
748
  /**
646
- * Whether telemetry is enabled
647
- * Set during initialization based on options
749
+ * EVM chain ID
648
750
  */
649
- telemetryEnabled: boolean;
751
+ chainId: number;
650
752
  /**
651
- * Promise for background cache population
652
- * Allows waiting for cache to be ready after non-blocking init
753
+ * EIP-2612 permit signature (65-byte hex, from the authorize step). Required when permitDeadline is provided.
653
754
  */
654
- cachePopulationPromise: Promise<void> | null;
755
+ permitSignature?: string;
655
756
  /**
656
- * Whether the cache has been successfully populated
657
- * True after background population completes, used by isCacheReady()
757
+ * Permit deadline as Unix timestamp. Required when permitSignature is provided.
658
758
  */
659
- isCacheReady: boolean;
759
+ permitDeadline?: number;
660
760
  /**
661
- * Custom RPC URLs per chain
662
- * Stored during initialization, used by getClient() for transport
761
+ * Controls response fields. "encoded" (default): ABI-encoded calldata only. "full": calldata + ABI fragment, function name, args. "structured": ABI fragment, function name, args only.
663
762
  */
664
- rpcUrls: Record<number, string>;
763
+ responseFormat?: PrepareDepositRequestResponseFormat$1;
764
+ }
765
+
766
+ type index_d$a_PrepareDepositRequest = PrepareDepositRequest;
767
+ declare namespace index_d$a {
768
+ export { type index_d$a_PrepareDepositRequest as PrepareDepositRequest, PrepareDepositRequestResponseFormat$1 as PrepareDepositRequestResponseFormat };
665
769
  }
770
+
666
771
  /**
667
- * Request headers for Paxos Labs API
668
- *
669
- * Standard headers used in all API requests, including authentication.
772
+ * This file was auto-generated by Fern from our API Definition.
670
773
  */
671
- type RequestHeaders = Record<string, string>;
672
774
  /**
673
- * Initialization error codes
674
- *
675
- * Specific error codes for different initialization failure scenarios.
676
- * Use these codes for programmatic error handling.
775
+ * @example
776
+ * {
777
+ * pageSize: 25,
778
+ * userAddress: "0xdEADdE9539A00Bbd9A8494f45EB38aEe89d7C001",
779
+ * filter: "vaultAddress=0xbbbb000000000000000000000000000000000001 AND chainId=84532"
780
+ * }
677
781
  */
678
- type InitErrorCode = 'INVALID_API_KEY' | 'EMPTY_API_KEY' | 'AUTH_FAILED' | 'NETWORK_TIMEOUT' | 'CACHE_INIT_FAILED' | 'CONCURRENT_INIT' | 'UNKNOWN_ERROR';
782
+ interface GetPositionsRequest {
783
+ /**
784
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
785
+ */
786
+ pageSize?: number;
787
+ /**
788
+ * Opaque token for the next page. Omit for the first page.
789
+ */
790
+ pageToken?: string;
791
+ /**
792
+ * User wallet address (hex address). Required.
793
+ */
794
+ userAddress: string;
795
+ /**
796
+ * Filter string. Optional flags: vaultAddress (hex), chainId (number). Example: vaultAddress=0xbbbb000000000000000000000000000000000001 AND chainId=84532
797
+ */
798
+ filter?: string;
799
+ }
800
+
801
+ type index_d$9_GetPositionsRequest = GetPositionsRequest;
802
+ declare namespace index_d$9 {
803
+ export type { index_d$9_GetPositionsRequest as GetPositionsRequest };
804
+ }
679
805
 
680
806
  /**
681
- * SDK Configuration Module
682
- *
683
- * Manages SDK initialization state and API key storage.
684
- * Provides core initialization function and helper utilities.
807
+ * This file was auto-generated by Fern from our API Definition.
685
808
  */
686
-
687
809
  /**
688
- * Returns true if cache is populated and ready
689
- *
690
- * Use this for synchronous checks of cache readiness.
691
- *
692
- * @returns true if cache has been successfully populated
693
- *
694
- * @example
695
- * ```typescript
696
- * if (isCacheReady()) {
697
- * // Cache is ready, operations will be fast
698
- * } else {
699
- * // Cache still loading, operations will fetch on-demand
700
- * }
701
- * ```
702
- */
703
- declare function isCacheReady(): boolean;
704
- /**
705
- * Waits for background cache population to complete
706
- *
707
- * Resolves immediately if cache is already ready.
708
- * If background population failed, triggers on-demand refresh.
709
- *
710
- * @returns Promise that resolves when cache is ready
711
- *
712
810
  * @example
713
- * ```typescript
714
- * await initAmplifySDK(apiKey);
715
- *
716
- * // Optional: wait for cache before operations
717
- * await waitForCacheReady();
718
- *
719
- * // Now operations are guaranteed to be fast
720
- * const tx = await prepareDeposit({...});
721
- * ```
722
- */
723
- declare function waitForCacheReady(): Promise<void>;
724
- /**
725
- * Initialize Amplify SDK with API key
726
- *
727
- * Validates API key format synchronously, then returns immediately
728
- * while cache and telemetry initialize in background. API key authentication
729
- * is validated by the background cache population and telemetry config fetch.
730
- * Use `waitForCacheReady()` if you need to ensure cache is populated before operations.
731
- *
732
- * @param apiKey - API key obtained from Paxos Labs
733
- * @param options - Optional configuration options
734
- * @param options.telemetry - Enable/disable telemetry (default: true)
735
- * @param options.logLevel - Console log level (default: LogLevel.ERROR)
736
- * @param options.logger - Custom logger implementation
737
- * @param options.rpcUrls - Custom RPC URLs per chain (e.g., `{ 1: "https://my-eth-rpc.com" }`)
738
- * @throws {APIError} If API key format is invalid
739
- *
811
+ * {
812
+ * to: "0x0000000000000000000000000000000000000123",
813
+ * from: "0x0000000000000000000000000000000000000456",
814
+ * chain: "base"
815
+ * }
816
+ */
817
+ interface KytRequestDto$1 {
818
+ /** Destination address for funds */
819
+ to: string;
820
+ /** User wallet address to evaluate */
821
+ from: string;
822
+ /** Chain name */
823
+ chain: string;
824
+ }
825
+
826
+ declare namespace index_d$8 {
827
+ export type { KytRequestDto$1 as KytRequestDto };
828
+ }
829
+
830
+ /**
831
+ * This file was auto-generated by Fern from our API Definition.
832
+ */
833
+ /**
834
+ * @example
835
+ * {
836
+ * pageSize: 25,
837
+ * filter: "chainId=1 AND name=\"Treasury\""
838
+ * }
839
+ */
840
+ interface AddressBookControllerGetAddressBookEntriesV2Request {
841
+ /**
842
+ * Maximum items per page. Default: 25. Min: 1, max: 100.
843
+ */
844
+ pageSize?: number;
845
+ /**
846
+ * Opaque token for the next page. Omit for the first page.
847
+ */
848
+ pageToken?: string;
849
+ /**
850
+ * Filter string. Flags: chainId, address, name. Optional.
851
+ */
852
+ filter?: string;
853
+ }
854
+
855
+ type index_d$7_AddressBookControllerGetAddressBookEntriesV2Request = AddressBookControllerGetAddressBookEntriesV2Request;
856
+ declare namespace index_d$7 {
857
+ export type { index_d$7_AddressBookControllerGetAddressBookEntriesV2Request as AddressBookControllerGetAddressBookEntriesV2Request };
858
+ }
859
+
860
+ /**
861
+ * This file was auto-generated by Fern from our API Definition.
862
+ */
863
+ /**
740
864
  * @example
741
- * ```typescript
742
- * import { initAmplifySDK, waitForCacheReady } from "@paxoslabs/amplify-sdk";
743
- *
744
- * // Fast initialization (returns immediately, cache populates in background)
745
- * await initAmplifySDK("pxl_internal_your_api_key_here");
746
- *
747
- * // Or with custom RPC URLs for better reliability
748
- * await initAmplifySDK("pxl_internal_your_api_key_here", {
749
- * rpcUrls: {
750
- * 1: "https://my-eth-rpc.com",
751
- * 999: "https://my-hyperEVM-rpc.com",
752
- * },
753
- * });
754
- *
755
- * // Optional: wait for cache if you need guaranteed fast operations
756
- * await waitForCacheReady();
757
- *
758
- * // Now operations are fast (cache is ready)
759
- * const tx = await prepareDeposit({...});
760
- * ```
761
- */
762
- declare function initAmplifySDK(apiKey: string, options?: SDKInitOptions): Promise<void>;
763
-
764
- /**
765
- * Withdraw operation error types
766
- *
767
- * Defines all error classes and error scenarios specific to the withdraw flow.
768
- * Provides type-safe error handling with clear error messages for different failure modes.
769
- *
770
- * @module types/withdraw-errors
771
- */
772
- /**
773
- * Base class for all withdraw-related errors
774
- *
775
- * Extends Error with additional context information for better error handling
776
- * and debugging in consuming applications.
777
- */
778
- declare class WithdrawError extends Error {
779
- /**
780
- * Error code for programmatic handling
781
- * @example "VAULT_NOT_FOUND", "INVALID_ADDRESS", "INSUFFICIENT_BALANCE"
782
- */
783
- readonly code: string;
784
- /**
785
- * Additional context data for debugging
786
- */
787
- readonly context?: Record<string, unknown>;
788
- constructor(message: string, code: string, context?: Record<string, unknown>);
789
- }
790
- declare class VaultNotFoundByAddressError extends WithdrawError {
791
- constructor(message: string, context?: Record<string, unknown>);
792
- }
793
- declare class VaultNotFoundByNameError extends WithdrawError {
794
- constructor(message: string, context?: Record<string, unknown>);
795
- }
796
- declare class UnauthorizedVaultAccessError extends WithdrawError {
797
- constructor(message: string, context?: Record<string, unknown>);
798
- }
799
- declare function isVaultNotFoundByAddressError(error: unknown): error is VaultNotFoundByAddressError;
800
- declare function isVaultNotFoundByNameError(error: unknown): error is VaultNotFoundByNameError;
801
-
802
- /**
803
- * Checks whether a deposit spend has been approved for the CommunityCodeDepositor contract.
804
- *
805
- * Resolves the vault by `vaultName` + `chainId` + `depositAssetAddress`, then reads the
806
- * current ERC20 allowance and permit support via a single multicall.
807
- *
808
- * @param vaultName - Human-readable vault name
809
- * @param chainId - Chain ID where the vault is deployed
810
- * @param depositAssetAddress - Token contract address being deposited
811
- * @param recipientAddress - Wallet address that owns the tokens (permit owner / approval sender)
812
- * @returns Allowance, permit support info, and token metadata
813
- * @throws {APIError} If vault not found, chain/asset mismatch, or contract read fails
814
- */
815
- declare const isDepositSpendApproved: ({ vaultName, chainId, depositAssetAddress, recipientAddress, }: {
816
- vaultName: string;
817
- chainId: ChainId;
818
- depositAssetAddress: Address;
819
- recipientAddress: Address;
820
- }) => Promise<{
821
- isApproved: boolean;
822
- allowance: string;
823
- allowanceAsBigInt: string;
865
+ * {
866
+ * vaultAddress: "0x...",
867
+ * tokenAddress: "0x...",
868
+ * amount: "1000000000000000000",
869
+ * userAddress: "0x...",
870
+ * chainId: 1
871
+ * }
872
+ */
873
+ interface AuthorizeRequest {
874
+ /**
875
+ * BoringVault contract address (0x + 40 hex chars)
876
+ */
877
+ vaultAddress: string;
878
+ /**
879
+ * ERC-20 token address
880
+ */
881
+ tokenAddress: string;
882
+ /**
883
+ * Deposit amount in token base units (decimal string)
884
+ */
885
+ amount: string;
886
+ /**
887
+ * User wallet address
888
+ */
889
+ userAddress: string;
890
+ /**
891
+ * EVM chain ID
892
+ */
893
+ chainId: number;
894
+ }
895
+
896
+ type index_d$6_AuthorizeRequest = AuthorizeRequest;
897
+ declare namespace index_d$6 {
898
+ export type { index_d$6_AuthorizeRequest as AuthorizeRequest };
899
+ }
900
+
901
+ /**
902
+ * This file was auto-generated by Fern from our API Definition.
903
+ */
904
+ interface VaultAssetDto$1 {
905
+ /** Vault contract address */
906
+ vaultAddress: string;
907
+ /** Chain ID where the vault exists */
908
+ chainId: number;
909
+ /** Asset contract address */
910
+ assetAddress: string;
911
+ /** Whether the asset can be deposited */
912
+ depositable: boolean;
913
+ /** Whether the asset can be withdrawn */
914
+ withdrawable: boolean;
915
+ }
916
+
917
+ /**
918
+ * This file was auto-generated by Fern from our API Definition.
919
+ */
920
+
921
+ interface VaultAssetsResponseDto$1 {
922
+ /** List of vault assets */
923
+ vaultAssets: VaultAssetDto$1[];
924
+ /** Token for the next page. null when there are no more results. Always present. */
925
+ nextPageToken: string | null;
926
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
927
+ tokenMetadata: Record<string, unknown>;
928
+ }
929
+
930
+ /**
931
+ * This file was auto-generated by Fern from our API Definition.
932
+ */
933
+ interface FieldViolationDto$1 {
934
+ /** The field that caused the violation */
935
+ field: string;
936
+ /** Description of the violation */
937
+ description: string;
938
+ }
939
+
940
+ /**
941
+ * This file was auto-generated by Fern from our API Definition.
942
+ */
943
+
944
+ interface ErrorDetailDto$1 {
945
+ /** Type URL identifying the error detail schema */
946
+ type: string;
947
+ /** Field-level violations for validation errors */
948
+ fieldViolations?: FieldViolationDto$1[];
949
+ }
950
+
951
+ /**
952
+ * This file was auto-generated by Fern from our API Definition.
953
+ */
954
+ /**
955
+ * Error status enum value
956
+ */
957
+ type ErrorObjectDtoStatus$1 = "UNKNOWN" | "INVALID_ARGUMENT" | "NOT_FOUND" | "PERMISSION_DENIED" | "UNAUTHENTICATED" | "RESOURCE_EXHAUSTED" | "INTERNAL" | "METHOD_NOT_ALLOWED";
958
+ declare const ErrorObjectDtoStatus$1: {
959
+ readonly Unknown: "UNKNOWN";
960
+ readonly InvalidArgument: "INVALID_ARGUMENT";
961
+ readonly NotFound: "NOT_FOUND";
962
+ readonly PermissionDenied: "PERMISSION_DENIED";
963
+ readonly Unauthenticated: "UNAUTHENTICATED";
964
+ readonly ResourceExhausted: "RESOURCE_EXHAUSTED";
965
+ readonly Internal: "INTERNAL";
966
+ readonly MethodNotAllowed: "METHOD_NOT_ALLOWED";
967
+ };
968
+
969
+ /**
970
+ * This file was auto-generated by Fern from our API Definition.
971
+ */
972
+
973
+ interface ErrorObjectDto$1 {
974
+ /** HTTP status code */
975
+ code: number;
976
+ /** Human-readable error message */
977
+ message: string;
978
+ /** Error status enum value */
979
+ status: ErrorObjectDtoStatus$1;
980
+ /** Additional error details */
981
+ details?: ErrorDetailDto$1[];
982
+ }
983
+
984
+ /**
985
+ * This file was auto-generated by Fern from our API Definition.
986
+ */
987
+
988
+ interface ErrorResponseDto$1 {
989
+ /** Error object containing details */
990
+ error: ErrorObjectDto$1;
991
+ }
992
+
993
+ /**
994
+ * This file was auto-generated by Fern from our API Definition.
995
+ */
996
+ /**
997
+ * Current state of the withdrawal request
998
+ */
999
+ type WithdrawalRequestDtoStatus$1 = "PENDING" | "PENDING_REFUND" | "COMPLETE" | "REFUNDED";
1000
+ declare const WithdrawalRequestDtoStatus$1: {
1001
+ readonly Pending: "PENDING";
1002
+ readonly PendingRefund: "PENDING_REFUND";
1003
+ readonly Complete: "COMPLETE";
1004
+ readonly Refunded: "REFUNDED";
1005
+ };
1006
+
1007
+ /**
1008
+ * This file was auto-generated by Fern from our API Definition.
1009
+ */
1010
+
1011
+ interface WithdrawalRequestDto$1 {
1012
+ /** Unique withdrawal request identifier */
1013
+ id: string;
1014
+ /** Vault contract address */
1015
+ vaultAddress: string;
1016
+ /** Chain ID where the request was made */
1017
+ chainId: number;
1018
+ /** Desired asset address for withdrawal */
1019
+ wantAssetAddress: string;
1020
+ /** Current state of the withdrawal request */
1021
+ status: WithdrawalRequestDtoStatus$1;
1022
+ /** Timestamp when the request was created (RFC 3339 UTC) */
1023
+ createdAt: string;
1024
+ /** Transaction Hash when the request was created */
1025
+ createdTxHash: string;
1026
+ /** Transaction Hash when the request was last updated */
1027
+ updatedTxHash: string;
1028
+ /** Address of the user who made the request */
1029
+ userAddress: string;
1030
+ /** Address of the receiver of the assets */
1031
+ receiverAddress: string;
1032
+ /** Address of the receiver of the refund */
1033
+ refundReceiverAddress: string;
1034
+ /** Amount of the vault shares to withdraw */
1035
+ orderAmount: string;
1036
+ /** Index of the withdrawal request in the queue */
1037
+ orderIndex: string;
1038
+ /** Whether the request was submitted using a signature flow */
1039
+ isSubmittedViaSignature: boolean;
1040
+ /** Whether this request was force-processed during the settlement cycle */
1041
+ isForceProcessed: boolean;
1042
+ /** Whether this request is currently marked for refund */
1043
+ isMarkedForRefund: boolean;
1044
+ /** Whether the mark-for-refund action was initiated by the user when applicable */
1045
+ isMarkedForRefundByUser: boolean;
1046
+ /** Whether order transfer failed during processing and shares were refunded */
1047
+ didOrderFailTransfer: boolean;
1048
+ }
1049
+
1050
+ /**
1051
+ * This file was auto-generated by Fern from our API Definition.
1052
+ */
1053
+
1054
+ interface WithdrawalRequestsResponseDto$1 {
1055
+ /** List of withdrawal requests */
1056
+ withdrawalRequests: WithdrawalRequestDto$1[];
1057
+ /** Token for the next page. null when there are no more results. Always present. */
1058
+ nextPageToken: string | null;
1059
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
1060
+ tokenMetadata: Record<string, unknown>;
1061
+ }
1062
+
1063
+ /**
1064
+ * This file was auto-generated by Fern from our API Definition.
1065
+ */
1066
+ interface VaultApyDto$1 {
1067
+ /** Vault contract address */
1068
+ vaultAddress: string;
1069
+ /** Timestamp for this data point (RFC 3339 UTC) */
1070
+ timestamp: string;
1071
+ /** Time interval for this data point */
1072
+ interval: string;
1073
+ /** Annual percentage yield in percent (e.g. 4.25 for 4.25%) */
1074
+ apy: string;
1075
+ }
1076
+
1077
+ /**
1078
+ * This file was auto-generated by Fern from our API Definition.
1079
+ */
1080
+
1081
+ interface VaultApysResponseDto$1 {
1082
+ /** List of vault APY data points */
1083
+ vaultApys: VaultApyDto$1[];
1084
+ /** Token for the next page. null when there are no more results. Always present. */
1085
+ nextPageToken: string | null;
1086
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
1087
+ tokenMetadata: Record<string, unknown>;
1088
+ }
1089
+
1090
+ /**
1091
+ * This file was auto-generated by Fern from our API Definition.
1092
+ */
1093
+ interface VaultTvlDto$1 {
1094
+ /** Vault contract address */
1095
+ vaultAddress: string;
1096
+ /** Chain ID where the vault exists. 0 indicates an aggregated value across all chains (returned when aggregate=true). */
1097
+ chainId: number;
1098
+ /** Timestamp for this data point (RFC 3339 UTC) */
1099
+ timestamp: string;
1100
+ /** Time interval for this data point */
1101
+ interval: string;
1102
+ /** Total value locked as decimal string */
1103
+ tvl: string;
1104
+ /** Asset denomination for TVL value */
1105
+ tvlAsset: string;
1106
+ }
1107
+
1108
+ /**
1109
+ * This file was auto-generated by Fern from our API Definition.
1110
+ */
1111
+
1112
+ interface VaultTvlsResponseDto$1 {
1113
+ /** List of vault TVL data points */
1114
+ vaultTvls: VaultTvlDto$1[];
1115
+ /** Token for the next page. null when there are no more results. Always present. */
1116
+ nextPageToken: string | null;
1117
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
1118
+ tokenMetadata: Record<string, unknown>;
1119
+ }
1120
+
1121
+ /**
1122
+ * This file was auto-generated by Fern from our API Definition.
1123
+ */
1124
+ /**
1125
+ * Instrument type identity for the position reference
1126
+ */
1127
+ type VaultCompositionPositionRefDtoType$1 = "ERC20" | "NATIVE" | "ERC4626_VAULT" | "ERC721" | "ERC1155" | "UNI_V2_PAIR" | "UNI_V3_POSITION" | "CURVE_POOL" | "BALANCER_POOL" | "AAVE_V3_RESERVE" | "COMPOUND_V2_CTOKEN" | "COMPOUND_V3_MARKET" | "MORPHO_V1_MARKET" | "MORPHO_V1_VAULT" | "MORPHO_V2_MARKET" | "MORPHO_V2_VAULT";
1128
+ declare const VaultCompositionPositionRefDtoType$1: {
1129
+ readonly Erc20: "ERC20";
1130
+ readonly Native: "NATIVE";
1131
+ readonly Erc4626Vault: "ERC4626_VAULT";
1132
+ readonly Erc721: "ERC721";
1133
+ readonly Erc1155: "ERC1155";
1134
+ readonly UniV2Pair: "UNI_V2_PAIR";
1135
+ readonly UniV3Position: "UNI_V3_POSITION";
1136
+ readonly CurvePool: "CURVE_POOL";
1137
+ readonly BalancerPool: "BALANCER_POOL";
1138
+ readonly AaveV3Reserve: "AAVE_V3_RESERVE";
1139
+ readonly CompoundV2Ctoken: "COMPOUND_V2_CTOKEN";
1140
+ readonly CompoundV3Market: "COMPOUND_V3_MARKET";
1141
+ readonly MorphoV1Market: "MORPHO_V1_MARKET";
1142
+ readonly MorphoV1Vault: "MORPHO_V1_VAULT";
1143
+ readonly MorphoV2Market: "MORPHO_V2_MARKET";
1144
+ readonly MorphoV2Vault: "MORPHO_V2_VAULT";
1145
+ };
1146
+
1147
+ /**
1148
+ * This file was auto-generated by Fern from our API Definition.
1149
+ */
1150
+
1151
+ interface VaultCompositionPositionRefDto$1 {
1152
+ /** Instrument type identity for the position reference */
1153
+ type: VaultCompositionPositionRefDtoType$1;
1154
+ /** Instrument identifier (e.g., token address, market ID, pool ID, token ID) */
1155
+ id: string;
1156
+ }
1157
+
1158
+ /**
1159
+ * This file was auto-generated by Fern from our API Definition.
1160
+ */
1161
+ /**
1162
+ * Stable machine-readable exposure/leg type for the position
1163
+ */
1164
+ type VaultCompositionComponentDtoPositionKind$1 = "SPOT" | "SUPPLY" | "COLLATERAL" | "DEBT" | "STAKED" | "PENDING";
1165
+ declare const VaultCompositionComponentDtoPositionKind$1: {
1166
+ readonly Spot: "SPOT";
1167
+ readonly Supply: "SUPPLY";
1168
+ readonly Collateral: "COLLATERAL";
1169
+ readonly Debt: "DEBT";
1170
+ readonly Staked: "STAKED";
1171
+ readonly Pending: "PENDING";
1172
+ };
1173
+
1174
+ /**
1175
+ * This file was auto-generated by Fern from our API Definition.
1176
+ */
1177
+ /**
1178
+ * Stable machine-readable instrument type. Mirrors positionRef.type.
1179
+ */
1180
+ type VaultCompositionComponentDtoInstrumentType$1 = "ERC20" | "NATIVE" | "ERC4626_VAULT" | "ERC721" | "ERC1155" | "UNI_V2_PAIR" | "UNI_V3_POSITION" | "CURVE_POOL" | "BALANCER_POOL" | "AAVE_V3_RESERVE" | "COMPOUND_V2_CTOKEN" | "COMPOUND_V3_MARKET" | "MORPHO_V1_MARKET" | "MORPHO_V1_VAULT" | "MORPHO_V2_MARKET" | "MORPHO_V2_VAULT";
1181
+ declare const VaultCompositionComponentDtoInstrumentType$1: {
1182
+ readonly Erc20: "ERC20";
1183
+ readonly Native: "NATIVE";
1184
+ readonly Erc4626Vault: "ERC4626_VAULT";
1185
+ readonly Erc721: "ERC721";
1186
+ readonly Erc1155: "ERC1155";
1187
+ readonly UniV2Pair: "UNI_V2_PAIR";
1188
+ readonly UniV3Position: "UNI_V3_POSITION";
1189
+ readonly CurvePool: "CURVE_POOL";
1190
+ readonly BalancerPool: "BALANCER_POOL";
1191
+ readonly AaveV3Reserve: "AAVE_V3_RESERVE";
1192
+ readonly CompoundV2Ctoken: "COMPOUND_V2_CTOKEN";
1193
+ readonly CompoundV3Market: "COMPOUND_V3_MARKET";
1194
+ readonly MorphoV1Market: "MORPHO_V1_MARKET";
1195
+ readonly MorphoV1Vault: "MORPHO_V1_VAULT";
1196
+ readonly MorphoV2Market: "MORPHO_V2_MARKET";
1197
+ readonly MorphoV2Vault: "MORPHO_V2_VAULT";
1198
+ };
1199
+
1200
+ /**
1201
+ * This file was auto-generated by Fern from our API Definition.
1202
+ */
1203
+
1204
+ interface VaultCompositionComponentDto$1 {
1205
+ /** Asset contract address */
1206
+ assetAddress: string;
1207
+ /** Amount of the asset as decimal string */
1208
+ amount: string;
1209
+ /** Value of the asset as decimal string */
1210
+ value: string;
1211
+ /** Asset denomination for value */
1212
+ valueAsset: string;
1213
+ /** Weight of this component in the vault (0-1 decimal) */
1214
+ weight: string;
1215
+ /** Stable machine-readable exposure/leg type for the position */
1216
+ positionKind: VaultCompositionComponentDtoPositionKind$1;
1217
+ /** Stable machine-readable instrument type. Mirrors positionRef.type. */
1218
+ instrumentType: VaultCompositionComponentDtoInstrumentType$1;
1219
+ /** Stable instrument reference for this component */
1220
+ positionRef: VaultCompositionPositionRefDto$1;
1221
+ }
1222
+
1223
+ /**
1224
+ * This file was auto-generated by Fern from our API Definition.
1225
+ */
1226
+
1227
+ interface VaultCompositionDto$1 {
1228
+ /** Vault contract address */
1229
+ vaultAddress: string;
1230
+ /** Chain ID where the vault exists */
1231
+ chainId: number;
1232
+ /** Timestamp for this snapshot (RFC 3339 UTC) */
1233
+ timestamp: string;
1234
+ /** Components that make up the vault */
1235
+ components: VaultCompositionComponentDto$1[];
1236
+ }
1237
+
1238
+ /**
1239
+ * This file was auto-generated by Fern from our API Definition.
1240
+ */
1241
+
1242
+ interface VaultCompositionsResponseDto$1 {
1243
+ /** List of vault compositions */
1244
+ vaultCompositions: VaultCompositionDto$1[];
1245
+ /** Token for the next page. null when there are no more results. Always present. */
1246
+ nextPageToken: string | null;
1247
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
1248
+ tokenMetadata: Record<string, unknown>;
1249
+ }
1250
+
1251
+ /**
1252
+ * This file was auto-generated by Fern from our API Definition.
1253
+ */
1254
+ interface WithdrawalVolumeDto$1 {
1255
+ /** Vault contract address */
1256
+ vaultAddress: string;
1257
+ /** Chain ID where the vault exists */
1258
+ chainId: number;
1259
+ /** Start time for this data point (RFC 3339 UTC) */
1260
+ startTime: string;
1261
+ /** End time for this data point (RFC 3339 UTC) */
1262
+ endTime: string;
1263
+ /** Time interval for this data point */
1264
+ interval: string;
1265
+ /** Total withdrawal volume as decimal string in USD */
1266
+ volumeUsd: string;
1267
+ /** Total withdrawal volume as decimal string in withdrawal asset */
1268
+ volumeAsset: string;
1269
+ /** Address of the asset that was withdrawn */
1270
+ wantAssetAddress: string;
1271
+ }
1272
+
1273
+ /**
1274
+ * This file was auto-generated by Fern from our API Definition.
1275
+ */
1276
+
1277
+ interface WithdrawalVolumesResponseDto$1 {
1278
+ /** List of withdrawal volume data points */
1279
+ withdrawalVolumes: WithdrawalVolumeDto$1[];
1280
+ /** Token for the next page. null when there are no more results. Always present. */
1281
+ nextPageToken: string | null;
1282
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
1283
+ tokenMetadata: Record<string, unknown>;
1284
+ }
1285
+
1286
+ /**
1287
+ * This file was auto-generated by Fern from our API Definition.
1288
+ */
1289
+ interface LiquidityShortfallDto$1 {
1290
+ /** Vault contract address */
1291
+ vaultAddress: string;
1292
+ /** Chain ID where the shortfall exists */
1293
+ chainId: number;
1294
+ /** Asset contract address with the shortfall */
1295
+ assetAddress: string;
1296
+ /** Shortfall amount as decimal string */
1297
+ shortfallAmount: string;
1298
+ /** Total withdrawal demand amount as decimal string */
1299
+ withdrawDemand: string;
1300
+ /** Timestamp of when this shortfall was calculated (RFC 3339 UTC) */
1301
+ asOfTime: string;
1302
+ }
1303
+
1304
+ /**
1305
+ * This file was auto-generated by Fern from our API Definition.
1306
+ */
1307
+
1308
+ interface LiquidityShortfallsResponseDto$1 {
1309
+ /** List of liquidity shortfalls */
1310
+ liquidityShortfalls: LiquidityShortfallDto$1[];
1311
+ /** Token for the next page. null when there are no more results. Always present. */
1312
+ nextPageToken: string | null;
1313
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
1314
+ tokenMetadata: Record<string, unknown>;
1315
+ }
1316
+
1317
+ /**
1318
+ * This file was auto-generated by Fern from our API Definition.
1319
+ */
1320
+ interface TokenAmountWithCapDto$1 {
1321
+ /** Raw amount in base units (as a decimal string). */
1322
+ raw: string;
1323
+ /** Human-readable formatted amount. */
1324
+ formatted: string;
1325
+ /** Token decimals used for formatting. */
824
1326
  decimals: number;
825
- supportsPermit: boolean;
826
- nonce: bigint | null;
827
- domainSeparator: `0x${string}` | null;
828
- tokenName: string;
829
- tokenVersion: string;
830
- error: null;
831
- }>;
832
- /**
833
- * Checks whether a withdrawal spend has been approved for the WithdrawQueue contract.
834
- *
835
- * Resolves the vault by `vaultName` + `chainId` + `wantAssetAddress`, then reads the
836
- * current vault-share allowance via a multicall.
837
- *
838
- * @param vaultName - Human-readable vault name
839
- * @param chainId - Chain ID where the vault is deployed
840
- * @param wantAssetAddress - Token contract address the user wants to receive upon withdrawal
841
- * @param recipientAddress - Wallet address that owns the vault shares
842
- * @returns Allowance info
843
- * @throws {APIError} If vault not found, chain/asset mismatch, or contract read fails
844
- */
845
- declare const isWithdrawalSpendApproved: ({ vaultName, chainId, wantAssetAddress, recipientAddress, }: {
846
- vaultName: string;
847
- chainId: ChainId;
848
- wantAssetAddress: Address;
849
- recipientAddress: Address;
850
- }) => Promise<{
851
- isApproved: boolean;
852
- allowance: string;
853
- allowanceAsBigInt: string;
854
- decimals: string;
855
- error: Error | undefined;
856
- } | {
857
- isApproved: boolean;
858
- allowance: string;
859
- allowanceAsBigInt: string;
1327
+ /** Whether the vault has a finite deposit cap. False means the cap is set to maxUint256 (effectively uncapped). */
1328
+ hasCap: boolean;
1329
+ }
1330
+
1331
+ /**
1332
+ * This file was auto-generated by Fern from our API Definition.
1333
+ */
1334
+ interface TokenAmountDto$1 {
1335
+ /** Raw amount in base units (as a decimal string). */
1336
+ raw: string;
1337
+ /** Human-readable formatted amount. */
1338
+ formatted: string;
1339
+ /** Token decimals used for formatting. */
860
1340
  decimals: number;
861
- error: null;
862
- }>;
1341
+ }
1342
+
1343
+ /**
1344
+ * This file was auto-generated by Fern from our API Definition.
1345
+ */
1346
+ interface FeeDto$1 {
1347
+ /** Fee in basis points (integer). 25 = 0.25%. */
1348
+ bps: number;
1349
+ /** Human-readable percentage (4 decimals). Example: "0.2500" = 0.25%. */
1350
+ percentage: string;
1351
+ }
1352
+
1353
+ /**
1354
+ * This file was auto-generated by Fern from our API Definition.
1355
+ */
1356
+ interface WithdrawalSlAsDto$1 {
1357
+ /** Expected delay before a withdrawal is processed. */
1358
+ expectedDelay: string;
1359
+ /** Buffer window before an order expires. Must be greater than expectedDelay. */
1360
+ expiryBuffer: string;
1361
+ /** Internal SLA for the withdraw queue to process an order. */
1362
+ internalWithdrawalQueueDelaySla: string;
1363
+ /** External SLA for the withdraw queue to process an order. */
1364
+ externalWithdrawalQueueDelaySla: string;
1365
+ /** Internal SLA for the accountant rate to update. */
1366
+ internalAccountantRateUpdateDelaySla: string;
1367
+ /** External SLA for the accountant rate to update. */
1368
+ externalAccountantRateUpdateSla: string;
1369
+ }
1370
+
1371
+ /**
1372
+ * This file was auto-generated by Fern from our API Definition.
1373
+ */
1374
+
1375
+ interface VaultAssetConfigDto$1 {
1376
+ /** Asset contract address. */
1377
+ assetAddress: string;
1378
+ /** Whether the asset can be deposited. */
1379
+ depositable: boolean;
1380
+ /** Whether the asset can be withdrawn. */
1381
+ withdrawable: boolean;
1382
+ /** Deposit fee for this asset. */
1383
+ depositFees: FeeDto$1;
1384
+ /** Withdraw fee for this asset. */
1385
+ withdrawFees: FeeDto$1;
1386
+ /** Withdrawal SLAs configured for this (vault, asset) pair. */
1387
+ withdrawalSlAs?: WithdrawalSlAsDto$1 | null;
1388
+ }
1389
+
1390
+ /**
1391
+ * This file was auto-generated by Fern from our API Definition.
1392
+ */
1393
+
1394
+ interface VaultDeploymentDto$1 {
1395
+ /** Chain ID */
1396
+ chainId: number;
1397
+ /** BoringVault contract address (the ERC-20 share token). */
1398
+ boringVaultAddress: string;
1399
+ /** DistributorCodeDepositor contract address — spender for deposit approvals. */
1400
+ depositorAddress: string;
1401
+ /** WithdrawQueue contract address — spender for share approvals on withdrawal. */
1402
+ withdrawQueueAddress: string;
1403
+ /** Whether the vault requires KYT attestations on deposit. */
1404
+ requiresKyt: boolean;
1405
+ /** Base (primary deposit) asset address. Null when unset. */
1406
+ baseTokenAddress?: string | null;
1407
+ /** Accountant contract address — tracks vault share rate. */
1408
+ accountantAddress?: string | null;
1409
+ /** Teller contract address. */
1410
+ tellerAddress?: string | null;
1411
+ /** Deposit fee module contract address. */
1412
+ depositFeeAddress?: string | null;
1413
+ /** Withdraw fee module contract address. */
1414
+ withdrawFeeAddress?: string | null;
1415
+ /** Whether the vault is marked in deprecation. */
1416
+ inDeprecation: boolean;
1417
+ /** Deposit supply cap. */
1418
+ depositSupplyCap?: TokenAmountWithCapDto$1 | null;
1419
+ /** Minimum withdrawal order size, denominated in share tokens. */
1420
+ minimumWithdrawalOrderSize?: TokenAmountDto$1 | null;
1421
+ /** Per-asset configuration for this deployment: depositable/withdrawable flags, fees, and withdrawal SLAs. */
1422
+ assets: VaultAssetConfigDto$1[];
1423
+ }
1424
+
1425
+ /**
1426
+ * This file was auto-generated by Fern from our API Definition.
1427
+ */
1428
+
1429
+ interface VaultDto$1 {
1430
+ /** Human-readable vault name. */
1431
+ name: string;
1432
+ /** Chain deployments for this vault name. */
1433
+ deployments: VaultDeploymentDto$1[];
1434
+ }
1435
+
1436
+ /**
1437
+ * This file was auto-generated by Fern from our API Definition.
1438
+ */
1439
+
1440
+ interface VaultsResponseDto$1 {
1441
+ /** List of vaults, keyed by vault name. */
1442
+ vaults: VaultDto$1[];
1443
+ /** Token for the next page. null when no more results. */
1444
+ nextPageToken: string | null;
1445
+ }
1446
+
1447
+ /**
1448
+ * This file was auto-generated by Fern from our API Definition.
1449
+ */
1450
+ interface PreparedTransactionDto$1 {
1451
+ /** Contract address to call */
1452
+ to: string;
1453
+ /** ABI-encoded calldata (hex string). Present when responseFormat is "encoded" (default) or "full". */
1454
+ data?: string;
1455
+ /** ETH value to send with the transaction (decimal string). Usually "0" for ERC-20 deposits. */
1456
+ value: string;
1457
+ /** ABI fragment for the called function. Present when responseFormat is "full" or "structured". */
1458
+ abi?: string[];
1459
+ /** Solidity function name. Present when responseFormat is "full" or "structured". */
1460
+ functionName?: string;
1461
+ /** Positional arguments matching the ABI inputs. BigInt values are serialized as decimal strings. Present when responseFormat is "full" or "structured". */
1462
+ args?: string[];
1463
+ }
1464
+
1465
+ /**
1466
+ * This file was auto-generated by Fern from our API Definition.
1467
+ */
1468
+
1469
+ interface PrepareDepositResponseDto$1 {
1470
+ transaction: PreparedTransactionDto$1;
1471
+ }
1472
+
1473
+ /**
1474
+ * This file was auto-generated by Fern from our API Definition.
1475
+ */
1476
+
1477
+ interface PrepareWithdrawResponseDto$1 {
1478
+ transaction: PreparedTransactionDto$1;
1479
+ }
1480
+
1481
+ /**
1482
+ * This file was auto-generated by Fern from our API Definition.
1483
+ */
1484
+
1485
+ interface PrepareCancelWithdrawResponseDto$1 {
1486
+ transaction: PreparedTransactionDto$1;
1487
+ }
1488
+
1489
+ /**
1490
+ * This file was auto-generated by Fern from our API Definition.
1491
+ */
1492
+
1493
+ interface CalculateWithdrawalFeeResponseDto$1 {
1494
+ /** Fee amount charged for the given offer and want asset. */
1495
+ feeAmount: string;
1496
+ /** Offer fee percentage in bps. */
1497
+ offerFeePercentage: FeeDto$1;
1498
+ /** Flat fee charged on every withdrawal for the given offer and want asset. Denominated in the want asset. */
1499
+ flatFee: string;
1500
+ }
1501
+
1502
+ /**
1503
+ * This file was auto-generated by Fern from our API Definition.
1504
+ */
1505
+ interface SupplyCapEntryDto$1 {
1506
+ /** BoringVault contract address (lowercased). */
1507
+ vaultAddress: string;
1508
+ /** EVM chain ID. */
1509
+ chainId: number;
1510
+ /** Total deposited value denominated in the vault base asset (computed as totalSupply * shareToBaseRate). Comparable to `supplyCap`. */
1511
+ totalSupplyInBase: string;
1512
+ /** Deposit supply cap denominated in the vault base asset, or null when the vault is uncapped. */
1513
+ supplyCap: string | null;
1514
+ /** Percentage of supply cap currently filled, formatted with four decimals (e.g. "20.7587"). Null when the vault is uncapped. */
1515
+ percentageFilled: string | null;
1516
+ }
1517
+
1518
+ /**
1519
+ * This file was auto-generated by Fern from our API Definition.
1520
+ */
1521
+
1522
+ interface SupplyCapsResponseDto$1 {
1523
+ /** One entry per chain deployment. */
1524
+ supplyCaps: SupplyCapEntryDto$1[];
1525
+ /** Token for the next page. null when there are no more results. Always present. */
1526
+ nextPageToken: string | null;
1527
+ }
1528
+
1529
+ /**
1530
+ * This file was auto-generated by Fern from our API Definition.
1531
+ */
1532
+ interface UserPositionEntryDto$1 {
1533
+ /** BoringVault contract address (lowercased). */
1534
+ vaultAddress: string;
1535
+ /** EVM chain ID. */
1536
+ chainId: number;
1537
+ /** User share token balance (decimal string in share token units). */
1538
+ shareBalance: string;
1539
+ /** Position value in the vault base asset (decimal string in base asset units). */
1540
+ positionValueInBase: string;
1541
+ /** Vault base asset contract address (lowercased). */
1542
+ baseAssetAddress: string;
1543
+ /** Exchange rate of one share to the base asset, decimal string at the accountant-contract precision. */
1544
+ exchangeRateToBase: string;
1545
+ }
1546
+
1547
+ /**
1548
+ * This file was auto-generated by Fern from our API Definition.
1549
+ */
1550
+
1551
+ interface UserPositionsResponseDto$1 {
1552
+ /** One entry per chain deployment. */
1553
+ userPositions: UserPositionEntryDto$1[];
1554
+ /** Token for the next page. null when there are no more results. Always present. */
1555
+ nextPageToken: string | null;
1556
+ /** Address metadata map keyed by lowercase token/address. Missing metadata is represented as null. */
1557
+ tokenMetadata: Record<string, unknown>;
1558
+ }
1559
+
1560
+ /**
1561
+ * This file was auto-generated by Fern from our API Definition.
1562
+ */
1563
+ interface SmartDepositAddressRequestDto$1 {
1564
+ /** Address of end user who we are depositing funds on behalf of */
1565
+ userDestinationAddress: string;
1566
+ /** Vault contract address */
1567
+ vaultAddress: string;
1568
+ /** Underlying token address to deposit into the vault */
1569
+ inputToken: string;
1570
+ /** Chain ID where the vault exists */
1571
+ chainId: number;
1572
+ }
1573
+
1574
+ /**
1575
+ * This file was auto-generated by Fern from our API Definition.
1576
+ */
1577
+ interface SmartDepositAddressResponseDto$1 {
1578
+ /** The smart deposit address for the given user */
1579
+ smartDepositAddress: string;
1580
+ }
1581
+
1582
+ /**
1583
+ * This file was auto-generated by Fern from our API Definition.
1584
+ */
1585
+ interface KytAttestationDto$1 {
1586
+ /** Unique identifier for the attestation */
1587
+ uuid: string;
1588
+ /** Unix timestamp when the attestation expires */
1589
+ expiration: number;
1590
+ /** Address of the attester */
1591
+ attester: string;
1592
+ /** Attestation signature */
1593
+ signature: string;
1594
+ }
1595
+
1596
+ /**
1597
+ * This file was auto-generated by Fern from our API Definition.
1598
+ */
1599
+
1600
+ interface KytResponseDto$1 {
1601
+ /** KYT compliance attestation */
1602
+ attestation: KytAttestationDto$1;
1603
+ }
1604
+
1605
+ /**
1606
+ * This file was auto-generated by Fern from our API Definition.
1607
+ */
1608
+ interface AddressBookEntryDto$1 {
1609
+ /** Unique identifier for the address book entry */
1610
+ id: string;
1611
+ /** Chain ID where the address exists */
1612
+ chainId: number;
1613
+ /** Contract or wallet address */
1614
+ address: string;
1615
+ /** Human-readable name for the address */
1616
+ name: string;
1617
+ /** Timestamp when the entry was created (RFC 3339 UTC) */
1618
+ createdAt: string;
1619
+ /** Timestamp when the entry was last updated (RFC 3339 UTC) */
1620
+ updatedAt: string;
1621
+ }
1622
+
1623
+ /**
1624
+ * This file was auto-generated by Fern from our API Definition.
1625
+ */
1626
+
1627
+ interface AddressBookEntriesResponseDto$1 {
1628
+ /** List of address book entries */
1629
+ addressBookEntries: AddressBookEntryDto$1[];
1630
+ /** Token for the next page. null when there are no more results. Always present. */
1631
+ nextPageToken: Record<string, unknown> | null;
1632
+ }
1633
+
1634
+ /**
1635
+ * This file was auto-generated by Fern from our API Definition.
1636
+ */
1637
+ interface PermitDomainDto$1 {
1638
+ name: string;
1639
+ version: string;
1640
+ chainId: number;
1641
+ verifyingContract: string;
1642
+ }
1643
+
1644
+ /**
1645
+ * This file was auto-generated by Fern from our API Definition.
1646
+ */
1647
+ interface PermitValueDto$1 {
1648
+ owner: string;
1649
+ spender: string;
1650
+ value: string;
1651
+ nonce: string;
1652
+ deadline: string;
1653
+ }
1654
+
1655
+ /**
1656
+ * This file was auto-generated by Fern from our API Definition.
1657
+ */
1658
+
1659
+ interface PermitTypedDataResponseDto$1 {
1660
+ domain: PermitDomainDto$1;
1661
+ /** EIP-712 types */
1662
+ types: Record<string, unknown>;
1663
+ value: PermitValueDto$1;
1664
+ deadline: string;
1665
+ }
1666
+
1667
+ /**
1668
+ * This file was auto-generated by Fern from our API Definition.
1669
+ */
1670
+ interface ApprovalTransactionDto$1 {
1671
+ /** ABI-encoded approve() calldata */
1672
+ encoded: string;
1673
+ }
1674
+
1675
+ /**
1676
+ * This file was auto-generated by Fern from our API Definition.
1677
+ */
1678
+ type PermitResponseDtoMethod$1 = "permit" | "approval" | "already_approved";
1679
+ declare const PermitResponseDtoMethod$1: {
1680
+ readonly Permit: "permit";
1681
+ readonly Approval: "approval";
1682
+ readonly AlreadyApproved: "already_approved";
1683
+ };
1684
+
1685
+ /**
1686
+ * This file was auto-generated by Fern from our API Definition.
1687
+ */
1688
+
1689
+ interface PermitResponseDto$1 {
1690
+ method: PermitResponseDtoMethod$1;
1691
+ /** Present when method=permit */
1692
+ permitData?: PermitTypedDataResponseDto$1;
1693
+ /** Present when method=approval */
1694
+ approvalTransaction?: ApprovalTransactionDto$1;
1695
+ }
1696
+
1697
+ /**
1698
+ * This file was auto-generated by Fern from our API Definition.
1699
+ */
1700
+ interface VaultRewardDto$1 {
1701
+ /** Paxos claim id that produced this reward. */
1702
+ id: string;
1703
+ /** On-chain transaction hash of the rewards distribution to the distribution address. */
1704
+ txHash: string;
1705
+ /** Token decimals (e.g. 6 for USDG). */
1706
+ decimals: number;
1707
+ /** Timestamp of the rewards distribution snapshot. RFC 3339 UTC. */
1708
+ createdAt: string;
1709
+ /** Chain on which the reward was distributed. */
1710
+ chainId: number;
1711
+ /** Vault USDG balance at the time of the distribution, in token base units. Omitted when the snapshot balance is unavailable. */
1712
+ usdgBalanceBase?: string;
1713
+ /** Net yield in USDG for this distribution (gross yield minus fees). Decimal string. */
1714
+ realizedYield: string;
1715
+ /** Cumulative net yield in USDG up to and including this distribution. Decimal string. */
1716
+ cumulativeYield: string;
1717
+ /** Realized APY at this distribution. Percent (e.g. "4.27" = 4.27%). Decimal string. */
1718
+ realizedApy: string;
1719
+ }
1720
+
1721
+ /**
1722
+ * This file was auto-generated by Fern from our API Definition.
1723
+ */
1724
+
1725
+ interface ListVaultRewardsResponseDto$1 {
1726
+ /** Time-series list of vault rewards, net of fees. */
1727
+ vaultRewards: VaultRewardDto$1[];
1728
+ /** Opaque cursor for the next page. Omitted when there are no further results. */
1729
+ nextPageToken?: string;
1730
+ }
1731
+
1732
+ /**
1733
+ * This file was auto-generated by Fern from our API Definition.
1734
+ */
1735
+
1736
+ declare class AmplifyError extends Error {
1737
+ readonly statusCode?: number;
1738
+ readonly body?: unknown;
1739
+ readonly rawResponse?: RawResponse;
1740
+ constructor({ message, statusCode, body, rawResponse, }: {
1741
+ message?: string;
1742
+ statusCode?: number;
1743
+ body?: unknown;
1744
+ rawResponse?: RawResponse;
1745
+ });
1746
+ }
1747
+
1748
+ /**
1749
+ * This file was auto-generated by Fern from our API Definition.
1750
+ */
1751
+ declare class AmplifyTimeoutError extends Error {
1752
+ constructor(message: string);
1753
+ }
1754
+
1755
+ /**
1756
+ * This file was auto-generated by Fern from our API Definition.
1757
+ */
1758
+
1759
+ declare class BadRequestError extends AmplifyError {
1760
+ constructor(body: ErrorResponseDto$1, rawResponse?: RawResponse);
1761
+ }
1762
+
1763
+ /**
1764
+ * This file was auto-generated by Fern from our API Definition.
1765
+ */
1766
+
1767
+ declare class NotFoundError extends AmplifyError {
1768
+ constructor(body?: unknown, rawResponse?: RawResponse);
1769
+ }
1770
+
1771
+ /**
1772
+ * This file was auto-generated by Fern from our API Definition.
1773
+ */
1774
+
1775
+ declare class ServiceUnavailableError extends AmplifyError {
1776
+ constructor(body: ErrorResponseDto$1, rawResponse?: RawResponse);
1777
+ }
1778
+
1779
+ /**
1780
+ * This file was auto-generated by Fern from our API Definition.
1781
+ */
1782
+
1783
+ declare class ForbiddenError extends AmplifyError {
1784
+ constructor(body: ErrorResponseDto$1, rawResponse?: RawResponse);
1785
+ }
1786
+
1787
+ type index_d$5_AddressBookControllerGetAddressBookEntriesV2Request = AddressBookControllerGetAddressBookEntriesV2Request;
1788
+ type index_d$5_AuthorizeRequest = AuthorizeRequest;
1789
+ type index_d$5_BadRequestError = BadRequestError;
1790
+ declare const index_d$5_BadRequestError: typeof BadRequestError;
1791
+ type index_d$5_CalculateFeeRequest = CalculateFeeRequest;
1792
+ type index_d$5_CancelRequest = CancelRequest;
1793
+ type index_d$5_ForbiddenError = ForbiddenError;
1794
+ declare const index_d$5_ForbiddenError: typeof ForbiddenError;
1795
+ type index_d$5_GetApysRequest = GetApysRequest;
1796
+ type index_d$5_GetLiquidityShortfallsRequest = GetLiquidityShortfallsRequest;
1797
+ type index_d$5_GetPositionsRequest = GetPositionsRequest;
1798
+ type index_d$5_GetSupplyCapsRequest = GetSupplyCapsRequest;
1799
+ type index_d$5_GetTvlsRequest = GetTvlsRequest;
1800
+ type index_d$5_GetVolumesRequest = GetVolumesRequest;
1801
+ type index_d$5_ListAssetsRequest = ListAssetsRequest;
1802
+ type index_d$5_ListCompositionsRequest = ListCompositionsRequest;
1803
+ type index_d$5_ListRequest = ListRequest;
1804
+ type index_d$5_ListRequestsRequest = ListRequestsRequest;
1805
+ type index_d$5_NotFoundError = NotFoundError;
1806
+ declare const index_d$5_NotFoundError: typeof NotFoundError;
1807
+ type index_d$5_PrepareDepositRequest = PrepareDepositRequest;
1808
+ type index_d$5_PrepareWithdrawalRequest = PrepareWithdrawalRequest;
1809
+ type index_d$5_ServiceUnavailableError = ServiceUnavailableError;
1810
+ declare const index_d$5_ServiceUnavailableError: typeof ServiceUnavailableError;
1811
+ declare namespace index_d$5 {
1812
+ export { type index_d$5_AddressBookControllerGetAddressBookEntriesV2Request as AddressBookControllerGetAddressBookEntriesV2Request, type AddressBookEntriesResponseDto$1 as AddressBookEntriesResponseDto, type AddressBookEntryDto$1 as AddressBookEntryDto, type ApprovalTransactionDto$1 as ApprovalTransactionDto, type index_d$5_AuthorizeRequest as AuthorizeRequest, index_d$5_BadRequestError as BadRequestError, type index_d$5_CalculateFeeRequest as CalculateFeeRequest, type CalculateWithdrawalFeeResponseDto$1 as CalculateWithdrawalFeeResponseDto, type index_d$5_CancelRequest as CancelRequest, CancelRequestResponseFormat$1 as CancelRequestResponseFormat, type ErrorDetailDto$1 as ErrorDetailDto, type ErrorObjectDto$1 as ErrorObjectDto, ErrorObjectDtoStatus$1 as ErrorObjectDtoStatus, type ErrorResponseDto$1 as ErrorResponseDto, type FeeDto$1 as FeeDto, type FieldViolationDto$1 as FieldViolationDto, index_d$5_ForbiddenError as ForbiddenError, type index_d$5_GetApysRequest as GetApysRequest, GetApysRequestOrderByTimestamp$1 as GetApysRequestOrderByTimestamp, type index_d$5_GetLiquidityShortfallsRequest as GetLiquidityShortfallsRequest, type index_d$5_GetPositionsRequest as GetPositionsRequest, type index_d$5_GetSupplyCapsRequest as GetSupplyCapsRequest, type index_d$5_GetTvlsRequest as GetTvlsRequest, GetTvlsRequestOrderByTimestamp$1 as GetTvlsRequestOrderByTimestamp, type index_d$5_GetVolumesRequest as GetVolumesRequest, GetVolumesRequestOrderByTimestamp$1 as GetVolumesRequestOrderByTimestamp, type KytAttestationDto$1 as KytAttestationDto, type KytRequestDto$1 as KytRequestDto, type KytResponseDto$1 as KytResponseDto, type LiquidityShortfallDto$1 as LiquidityShortfallDto, type LiquidityShortfallsResponseDto$1 as LiquidityShortfallsResponseDto, type index_d$5_ListAssetsRequest as ListAssetsRequest, type index_d$5_ListCompositionsRequest as ListCompositionsRequest, type index_d$5_ListRequest as ListRequest, type index_d$5_ListRequestsRequest as ListRequestsRequest, type ListVaultRewardsResponseDto$1 as ListVaultRewardsResponseDto, index_d$5_NotFoundError as NotFoundError, type PermitDomainDto$1 as PermitDomainDto, type PermitResponseDto$1 as PermitResponseDto, PermitResponseDtoMethod$1 as PermitResponseDtoMethod, type PermitTypedDataResponseDto$1 as PermitTypedDataResponseDto, type PermitValueDto$1 as PermitValueDto, type PrepareCancelWithdrawResponseDto$1 as PrepareCancelWithdrawResponseDto, type index_d$5_PrepareDepositRequest as PrepareDepositRequest, PrepareDepositRequestResponseFormat$1 as PrepareDepositRequestResponseFormat, type PrepareDepositResponseDto$1 as PrepareDepositResponseDto, type PrepareWithdrawResponseDto$1 as PrepareWithdrawResponseDto, type index_d$5_PrepareWithdrawalRequest as PrepareWithdrawalRequest, PrepareWithdrawalRequestResponseFormat$1 as PrepareWithdrawalRequestResponseFormat, type PreparedTransactionDto$1 as PreparedTransactionDto, index_d$5_ServiceUnavailableError as ServiceUnavailableError, type SmartDepositAddressRequestDto$1 as SmartDepositAddressRequestDto, type SmartDepositAddressResponseDto$1 as SmartDepositAddressResponseDto, type SupplyCapEntryDto$1 as SupplyCapEntryDto, type SupplyCapsResponseDto$1 as SupplyCapsResponseDto, type TokenAmountDto$1 as TokenAmountDto, type TokenAmountWithCapDto$1 as TokenAmountWithCapDto, type UserPositionEntryDto$1 as UserPositionEntryDto, type UserPositionsResponseDto$1 as UserPositionsResponseDto, type VaultApyDto$1 as VaultApyDto, type VaultApysResponseDto$1 as VaultApysResponseDto, type VaultAssetConfigDto$1 as VaultAssetConfigDto, type VaultAssetDto$1 as VaultAssetDto, type VaultAssetsResponseDto$1 as VaultAssetsResponseDto, type VaultCompositionComponentDto$1 as VaultCompositionComponentDto, VaultCompositionComponentDtoInstrumentType$1 as VaultCompositionComponentDtoInstrumentType, VaultCompositionComponentDtoPositionKind$1 as VaultCompositionComponentDtoPositionKind, type VaultCompositionDto$1 as VaultCompositionDto, type VaultCompositionPositionRefDto$1 as VaultCompositionPositionRefDto, VaultCompositionPositionRefDtoType$1 as VaultCompositionPositionRefDtoType, type VaultCompositionsResponseDto$1 as VaultCompositionsResponseDto, type VaultDeploymentDto$1 as VaultDeploymentDto, type VaultDto$1 as VaultDto, type VaultRewardDto$1 as VaultRewardDto, type VaultTvlDto$1 as VaultTvlDto, type VaultTvlsResponseDto$1 as VaultTvlsResponseDto, type VaultsResponseDto$1 as VaultsResponseDto, type WithdrawalRequestDto$1 as WithdrawalRequestDto, WithdrawalRequestDtoStatus$1 as WithdrawalRequestDtoStatus, type WithdrawalRequestsResponseDto$1 as WithdrawalRequestsResponseDto, type WithdrawalSlAsDto$1 as WithdrawalSlAsDto, type WithdrawalVolumeDto$1 as WithdrawalVolumeDto, type WithdrawalVolumesResponseDto$1 as WithdrawalVolumesResponseDto, index_d$7 as addressBook, index_d$a as deposit, index_d$8 as kyt, index_d$6 as permit, index_d$9 as users, index_d$c as vaults, index_d$b as withdraw };
1813
+ }
1814
+
1815
+ /**
1816
+ * This file was auto-generated by Fern from our API Definition.
1817
+ */
1818
+
1819
+ declare namespace Vaults {
1820
+ interface Options {
1821
+ environment?: Supplier<AmplifyEnvironment | string>;
1822
+ /** Specify a custom URL to connect the client to. */
1823
+ baseUrl?: Supplier<string>;
1824
+ apiKey: Supplier<string>;
1825
+ }
1826
+ interface RequestOptions {
1827
+ /** The maximum time to wait for a response in seconds. */
1828
+ timeoutInSeconds?: number;
1829
+ /** The number of times to retry the request. Defaults to 2. */
1830
+ maxRetries?: number;
1831
+ /** A hook to abort the request. */
1832
+ abortSignal?: AbortSignal;
1833
+ /** Additional headers to include in the request. */
1834
+ headers?: Record<string, string>;
1835
+ }
1836
+ }
1837
+ declare class Vaults {
1838
+ protected readonly _options: Vaults.Options;
1839
+ constructor(_options: Vaults.Options);
1840
+ /**
1841
+ * Returns depositable and withdrawable assets for vaults. Filter by vault address, chain ID, or asset capabilities. Defaults: pageSize=25 (max 100); omit pageToken for the first page.
1842
+ *
1843
+ * @param {Amplify.ListAssetsRequest} request
1844
+ * @param {Vaults.RequestOptions} requestOptions - Request-specific configuration.
1845
+ *
1846
+ * @throws {@link Amplify.BadRequestError}
1847
+ *
1848
+ * @example
1849
+ * await client.vaults.listAssets({
1850
+ * pageSize: 25,
1851
+ * filter: "withdrawable=true AND chainId=1 AND assetAddress=0xabcdef1234567890abcdef1234567890abcdef12"
1852
+ * })
1853
+ */
1854
+ listAssets(request?: ListAssetsRequest, requestOptions?: Vaults.RequestOptions): HttpResponsePromise<VaultAssetsResponseDto$1>;
1855
+ private __listAssets;
1856
+ /**
1857
+ * Returns historical and current APY data for vaults. APY is returned in percent (e.g. 4.25 for 4.25%). Time range: provide startTime+endTime, or lookback from now; if all omitted, lookback defaults to 30 days (2592000s). startTime/endTime take precedence over lookback when both are set. Defaults: interval=86400s (1 day); orderByTimestamp=asc; pageSize=25 (max 100); omit pageToken for the first page.
1858
+ *
1859
+ * @param {Amplify.GetApysRequest} request
1860
+ * @param {Vaults.RequestOptions} requestOptions - Request-specific configuration.
1861
+ *
1862
+ * @throws {@link Amplify.BadRequestError}
1863
+ *
1864
+ * @example
1865
+ * await client.vaults.getApys({
1866
+ * pageSize: 25,
1867
+ * startTime: "2026-01-01T00:00:00Z",
1868
+ * endTime: "2026-01-21T00:00:00Z",
1869
+ * interval: "86400s",
1870
+ * lookback: "604800s",
1871
+ * filter: "vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
1872
+ * })
1873
+ */
1874
+ getApys(request?: GetApysRequest, requestOptions?: Vaults.RequestOptions): HttpResponsePromise<VaultApysResponseDto$1>;
1875
+ private __getApys;
1876
+ /**
1877
+ * Returns historical and current TVL data for vaults. Time range: provide startTime+endTime, or lookback from now; if all omitted, lookback defaults to 30 days (2592000s). startTime/endTime take precedence over lookback when both are set. Defaults: interval=86400s (1 day); orderByTimestamp=asc; pageSize=25 (max 100); omit pageToken for the first page.
1878
+ *
1879
+ * @param {Amplify.GetTvlsRequest} request
1880
+ * @param {Vaults.RequestOptions} requestOptions - Request-specific configuration.
1881
+ *
1882
+ * @throws {@link Amplify.BadRequestError}
1883
+ *
1884
+ * @example
1885
+ * await client.vaults.getTvls({
1886
+ * pageSize: 25,
1887
+ * startTime: "2026-01-01T00:00:00Z",
1888
+ * endTime: "2026-01-21T00:00:00Z",
1889
+ * interval: "86400s",
1890
+ * lookback: "604800s",
1891
+ * includeCurrent: false,
1892
+ * aggregate: false,
1893
+ * filter: "chainId=1 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
1894
+ * })
1895
+ */
1896
+ getTvls(request?: GetTvlsRequest, requestOptions?: Vaults.RequestOptions): HttpResponsePromise<VaultTvlsResponseDto$1>;
1897
+ private __getTvls;
1898
+ /**
1899
+ * Returns current asset composition for vaults, including component weights and values. Defaults: pageSize=25 (max 100); omit pageToken for the first page.
1900
+ *
1901
+ * @param {Amplify.ListCompositionsRequest} request
1902
+ * @param {Vaults.RequestOptions} requestOptions - Request-specific configuration.
1903
+ *
1904
+ * @throws {@link Amplify.BadRequestError}
1905
+ *
1906
+ * @example
1907
+ * await client.vaults.listCompositions({
1908
+ * pageSize: 25,
1909
+ * filter: "chainId=1 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
1910
+ * })
1911
+ */
1912
+ listCompositions(request?: ListCompositionsRequest, requestOptions?: Vaults.RequestOptions): HttpResponsePromise<VaultCompositionsResponseDto$1>;
1913
+ private __listCompositions;
1914
+ /**
1915
+ * Returns current liquidity shortfalls, indicating assets where demand exceeds available liquidity. Defaults: pageSize=25 (max 100); omit pageToken for the first page.
1916
+ *
1917
+ * @param {Amplify.GetLiquidityShortfallsRequest} request
1918
+ * @param {Vaults.RequestOptions} requestOptions - Request-specific configuration.
1919
+ *
1920
+ * @throws {@link Amplify.BadRequestError}
1921
+ *
1922
+ * @example
1923
+ * await client.vaults.getLiquidityShortfalls({
1924
+ * pageSize: 25,
1925
+ * filter: "chainId=1 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678"
1926
+ * })
1927
+ */
1928
+ getLiquidityShortfalls(request?: GetLiquidityShortfallsRequest, requestOptions?: Vaults.RequestOptions): HttpResponsePromise<LiquidityShortfallsResponseDto$1>;
1929
+ private __getLiquidityShortfalls;
1930
+ /**
1931
+ * Returns aggregated vault configuration grouped by vault name: chain deployments (contract addresses, KYT flag, deposit supply cap, minimum withdrawal order size, in-deprecation flag) with nested per-asset config (depositable/withdrawable flags, deposit/withdraw fees, withdrawal SLAs).
1932
+ *
1933
+ * @param {Amplify.ListRequest} request
1934
+ * @param {Vaults.RequestOptions} requestOptions - Request-specific configuration.
1935
+ *
1936
+ * @throws {@link Amplify.BadRequestError}
1937
+ *
1938
+ * @example
1939
+ * await client.vaults.list({
1940
+ * pageSize: 25,
1941
+ * filter: "chainId=1 AND inDeprecation=false"
1942
+ * })
1943
+ */
1944
+ list(request?: ListRequest, requestOptions?: Vaults.RequestOptions): HttpResponsePromise<VaultsResponseDto$1>;
1945
+ private __list;
1946
+ /**
1947
+ * Returns up-to-the-block totalSupplyInBase, supplyCap, and percentageFilled per chain each vault is deployed on. totalSupplyInBase and supplyCap are both denominated in the vault base asset, so they are directly comparable. The filter parameter is optional; narrow with the vaultAddress and/or chainId flags, or omit it to return every live vault deployment. Defaults: pageSize=25 (max 100); omit pageToken for the first page.
1948
+ *
1949
+ * @param {Amplify.GetSupplyCapsRequest} request
1950
+ * @param {Vaults.RequestOptions} requestOptions - Request-specific configuration.
1951
+ *
1952
+ * @throws {@link Amplify.BadRequestError}
1953
+ * @throws {@link Amplify.ServiceUnavailableError}
1954
+ *
1955
+ * @example
1956
+ * await client.vaults.getSupplyCaps({
1957
+ * pageSize: 25,
1958
+ * filter: "vaultAddress=0xbbbb000000000000000000000000000000000001 AND chainId=84532"
1959
+ * })
1960
+ */
1961
+ getSupplyCaps(request?: GetSupplyCapsRequest, requestOptions?: Vaults.RequestOptions): HttpResponsePromise<SupplyCapsResponseDto$1>;
1962
+ private __getSupplyCaps;
1963
+ protected _getCustomAuthorizationHeaders(): Promise<{
1964
+ "x-api-key": string;
1965
+ }>;
1966
+ }
1967
+
1968
+ /**
1969
+ * This file was auto-generated by Fern from our API Definition.
1970
+ */
1971
+
1972
+ declare namespace Withdraw {
1973
+ interface Options {
1974
+ environment?: Supplier<AmplifyEnvironment | string>;
1975
+ /** Specify a custom URL to connect the client to. */
1976
+ baseUrl?: Supplier<string>;
1977
+ apiKey: Supplier<string>;
1978
+ }
1979
+ interface RequestOptions {
1980
+ /** The maximum time to wait for a response in seconds. */
1981
+ timeoutInSeconds?: number;
1982
+ /** The number of times to retry the request. Defaults to 2. */
1983
+ maxRetries?: number;
1984
+ /** A hook to abort the request. */
1985
+ abortSignal?: AbortSignal;
1986
+ /** Additional headers to include in the request. */
1987
+ headers?: Record<string, string>;
1988
+ }
1989
+ }
1990
+ declare class Withdraw {
1991
+ protected readonly _options: Withdraw.Options;
1992
+ constructor(_options: Withdraw.Options);
1993
+ /**
1994
+ * Returns withdrawal requests filtered by status, chain, asset, participants, and queue-processing metadata. Defaults: pageSize=25 (max 100); omit pageToken for the first page.
1995
+ *
1996
+ * @param {Amplify.ListRequestsRequest} request
1997
+ * @param {Withdraw.RequestOptions} requestOptions - Request-specific configuration.
1998
+ *
1999
+ * @throws {@link Amplify.BadRequestError}
2000
+ *
2001
+ * @example
2002
+ * await client.withdraw.listRequests({
2003
+ * pageSize: 25,
2004
+ * filter: "status=PENDING AND chainId=1 AND wantAssetAddress=0x1234567890abcdef1234567890abcdef12345678 AND vaultAddress=0x1234567890abcdef1234567890abcdef12345678 AND userAddress=0x1234567890abcdef1234567890abcdef12345678 AND isMarkedForRefund=false"
2005
+ * })
2006
+ */
2007
+ listRequests(request?: ListRequestsRequest, requestOptions?: Withdraw.RequestOptions): HttpResponsePromise<WithdrawalRequestsResponseDto$1>;
2008
+ private __listRequests;
2009
+ /**
2010
+ * Returns historical withdrawal volume aggregated by time interval. startTime, endTime, and vaultAddress are required. Optionally filter by chainId and wantAssetAddress using the filter parameter. Defaults: orderByTimestamp=asc; pageSize=25 (max 100); omit pageToken for the first page. interval is optional.
2011
+ *
2012
+ * @param {Amplify.GetVolumesRequest} request
2013
+ * @param {Withdraw.RequestOptions} requestOptions - Request-specific configuration.
2014
+ *
2015
+ * @throws {@link Amplify.BadRequestError}
2016
+ *
2017
+ * @example
2018
+ * await client.withdraw.getVolumes({
2019
+ * pageSize: 25,
2020
+ * startTime: "2026-01-01T00:00:00Z",
2021
+ * endTime: "2026-01-21T00:00:00Z",
2022
+ * vaultAddress: "0x1234567890abcdef1234567890abcdef12345678",
2023
+ * interval: "86400s",
2024
+ * filter: "chainId=1 AND wantAssetAddress=0xabcdef1234567890abcdef1234567890abcdef12"
2025
+ * })
2026
+ */
2027
+ getVolumes(request: GetVolumesRequest, requestOptions?: Withdraw.RequestOptions): HttpResponsePromise<WithdrawalVolumesResponseDto$1>;
2028
+ private __getVolumes;
2029
+ /**
2030
+ * Returns ABI-encoded calldata for submitting a vault withdrawal order. Identify the vault by its BoringVault contract address. The caller must have pre-approved the WithdrawQueue to spend vault shares.
2031
+ *
2032
+ * @param {Amplify.PrepareWithdrawalRequest} request
2033
+ * @param {Withdraw.RequestOptions} requestOptions - Request-specific configuration.
2034
+ *
2035
+ * @throws {@link Amplify.BadRequestError}
2036
+ * @throws {@link Amplify.NotFoundError}
2037
+ *
2038
+ * @example
2039
+ * await client.withdraw.prepareWithdrawal({
2040
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
2041
+ * wantAsset: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
2042
+ * shareAmount: "1000000000000000000",
2043
+ * userAddress: "0x1234567890abcdef1234567890abcdef12345678",
2044
+ * intendedDepositor: "0x1234567890abcdef1234567890abcdef12345678",
2045
+ * receiver: "0x1234567890abcdef1234567890abcdef12345678",
2046
+ * refundReceiver: "0x1234567890abcdef1234567890abcdef12345678",
2047
+ * chainId: 1
2048
+ * })
2049
+ */
2050
+ prepareWithdrawal(request: PrepareWithdrawalRequest, requestOptions?: Withdraw.RequestOptions): HttpResponsePromise<PrepareWithdrawResponseDto$1>;
2051
+ private __prepareWithdrawal;
2052
+ /**
2053
+ * Returns ABI-encoded calldata for cancelling a pending vault withdrawal order on the WithdrawQueue contract. Identify the vault by its BoringVault contract address and the order by its index in the WithdrawQueue. Only the original order owner can successfully submit this transaction — ownership is enforced on-chain via msg.sender.
2054
+ *
2055
+ * To retrieve the required `orderIndex` parameter, call `GET /v2/amplify/withdrawalRequests` filtered by `userAddress` and `vaultAddress`; each returned item includes its `orderIndex`.
2056
+ *
2057
+ * @param {Amplify.CancelRequest} request
2058
+ * @param {Withdraw.RequestOptions} requestOptions - Request-specific configuration.
2059
+ *
2060
+ * @throws {@link Amplify.BadRequestError}
2061
+ * @throws {@link Amplify.NotFoundError}
2062
+ *
2063
+ * @example
2064
+ * await client.withdraw.cancel({
2065
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
2066
+ * orderIndex: "42",
2067
+ * chainId: 1
2068
+ * })
2069
+ */
2070
+ cancel(request: CancelRequest, requestOptions?: Withdraw.RequestOptions): HttpResponsePromise<PrepareCancelWithdrawResponseDto$1>;
2071
+ private __cancel;
2072
+ /**
2073
+ * Calculates the withdrawal fee the user would be charged for a given offer amount and want asset.
2074
+ *
2075
+ * @param {Amplify.CalculateFeeRequest} request
2076
+ * @param {Withdraw.RequestOptions} requestOptions - Request-specific configuration.
2077
+ *
2078
+ * @throws {@link Amplify.BadRequestError}
2079
+ * @throws {@link Amplify.NotFoundError}
2080
+ * @throws {@link Amplify.ServiceUnavailableError}
2081
+ *
2082
+ * @example
2083
+ * await client.withdraw.calculateFee({
2084
+ * offerAmount: "1000000000000000000",
2085
+ * wantAsset: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
2086
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
2087
+ * chainId: 1
2088
+ * })
2089
+ */
2090
+ calculateFee(request: CalculateFeeRequest, requestOptions?: Withdraw.RequestOptions): HttpResponsePromise<CalculateWithdrawalFeeResponseDto$1>;
2091
+ private __calculateFee;
2092
+ protected _getCustomAuthorizationHeaders(): Promise<{
2093
+ "x-api-key": string;
2094
+ }>;
2095
+ }
2096
+
2097
+ /**
2098
+ * This file was auto-generated by Fern from our API Definition.
2099
+ */
2100
+
2101
+ declare namespace Deposit {
2102
+ interface Options {
2103
+ environment?: Supplier<AmplifyEnvironment | string>;
2104
+ /** Specify a custom URL to connect the client to. */
2105
+ baseUrl?: Supplier<string>;
2106
+ apiKey: Supplier<string>;
2107
+ }
2108
+ interface RequestOptions {
2109
+ /** The maximum time to wait for a response in seconds. */
2110
+ timeoutInSeconds?: number;
2111
+ /** The number of times to retry the request. Defaults to 2. */
2112
+ maxRetries?: number;
2113
+ /** A hook to abort the request. */
2114
+ abortSignal?: AbortSignal;
2115
+ /** Additional headers to include in the request. */
2116
+ headers?: Record<string, string>;
2117
+ }
2118
+ }
2119
+ declare class Deposit {
2120
+ protected readonly _options: Deposit.Options;
2121
+ constructor(_options: Deposit.Options);
2122
+ /**
2123
+ * Returns ABI-encoded calldata for a vault deposit. Identify the vault by its BoringVault contract address. Provide a permit signature from the authorize step (GET /v2/core/permit) to use the gas-free permit path; omit to use a standard approve+deposit flow. Note: permit signatures are bound to a specific spender, amount, nonce, and deadline, so replay is bounded — but because they are passed as query params they may appear in access logs, browser history, and proxy/CDN caches. Callers should use short `permitDeadline` values to minimize the exposure window.
2124
+ *
2125
+ * @param {Amplify.PrepareDepositRequest} request
2126
+ * @param {Deposit.RequestOptions} requestOptions - Request-specific configuration.
2127
+ *
2128
+ * @throws {@link Amplify.BadRequestError}
2129
+ * @throws {@link Amplify.NotFoundError}
2130
+ * @throws {@link Amplify.ServiceUnavailableError}
2131
+ *
2132
+ * @example
2133
+ * await client.deposit.prepareDeposit({
2134
+ * vaultAddress: "0xbbbb000000000000000000000000000000000001",
2135
+ * depositAsset: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
2136
+ * depositAmount: "1000000",
2137
+ * userAddress: "0x1234567890abcdef1234567890abcdef12345678",
2138
+ * to: "0x1234567890abcdef1234567890abcdef12345678",
2139
+ * chainId: 1,
2140
+ * permitSignature: "0xabc...",
2141
+ * permitDeadline: 9999999999
2142
+ * })
2143
+ */
2144
+ prepareDeposit(request: PrepareDepositRequest, requestOptions?: Deposit.RequestOptions): HttpResponsePromise<PrepareDepositResponseDto$1>;
2145
+ private __prepareDeposit;
2146
+ protected _getCustomAuthorizationHeaders(): Promise<{
2147
+ "x-api-key": string;
2148
+ }>;
2149
+ }
2150
+
2151
+ /**
2152
+ * This file was auto-generated by Fern from our API Definition.
2153
+ */
2154
+
2155
+ declare namespace Users {
2156
+ interface Options {
2157
+ environment?: Supplier<AmplifyEnvironment | string>;
2158
+ /** Specify a custom URL to connect the client to. */
2159
+ baseUrl?: Supplier<string>;
2160
+ apiKey: Supplier<string>;
2161
+ }
2162
+ interface RequestOptions {
2163
+ /** The maximum time to wait for a response in seconds. */
2164
+ timeoutInSeconds?: number;
2165
+ /** The number of times to retry the request. Defaults to 2. */
2166
+ maxRetries?: number;
2167
+ /** A hook to abort the request. */
2168
+ abortSignal?: AbortSignal;
2169
+ /** Additional headers to include in the request. */
2170
+ headers?: Record<string, string>;
2171
+ }
2172
+ }
2173
+ declare class Users {
2174
+ protected readonly _options: Users.Options;
2175
+ constructor(_options: Users.Options);
2176
+ /**
2177
+ * Returns a user's share balance and current position value (in the vault base asset) per chain each vault is deployed on. userAddress is required as a top-level query param. filter is optional; narrow with the vaultAddress and/or chainId flags, or omit it to return the user's position in every live vault deployment. Defaults: pageSize=25 (max 100); omit pageToken for the first page.
2178
+ *
2179
+ * @param {Amplify.GetPositionsRequest} request
2180
+ * @param {Users.RequestOptions} requestOptions - Request-specific configuration.
2181
+ *
2182
+ * @throws {@link Amplify.BadRequestError}
2183
+ * @throws {@link Amplify.ServiceUnavailableError}
2184
+ *
2185
+ * @example
2186
+ * await client.users.getPositions({
2187
+ * pageSize: 25,
2188
+ * userAddress: "0xdEADdE9539A00Bbd9A8494f45EB38aEe89d7C001",
2189
+ * filter: "vaultAddress=0xbbbb000000000000000000000000000000000001 AND chainId=84532"
2190
+ * })
2191
+ */
2192
+ getPositions(request: GetPositionsRequest, requestOptions?: Users.RequestOptions): HttpResponsePromise<UserPositionsResponseDto$1>;
2193
+ private __getPositions;
2194
+ protected _getCustomAuthorizationHeaders(): Promise<{
2195
+ "x-api-key": string;
2196
+ }>;
2197
+ }
2198
+
2199
+ /**
2200
+ * This file was auto-generated by Fern from our API Definition.
2201
+ */
2202
+
2203
+ declare namespace Kyt {
2204
+ interface Options {
2205
+ environment?: Supplier<AmplifyEnvironment | string>;
2206
+ /** Specify a custom URL to connect the client to. */
2207
+ baseUrl?: Supplier<string>;
2208
+ apiKey: Supplier<string>;
2209
+ }
2210
+ interface RequestOptions {
2211
+ /** The maximum time to wait for a response in seconds. */
2212
+ timeoutInSeconds?: number;
2213
+ /** The number of times to retry the request. Defaults to 2. */
2214
+ maxRetries?: number;
2215
+ /** A hook to abort the request. */
2216
+ abortSignal?: AbortSignal;
2217
+ /** Additional headers to include in the request. */
2218
+ headers?: Record<string, string>;
2219
+ }
2220
+ }
2221
+ declare class Kyt {
2222
+ protected readonly _options: Kyt.Options;
2223
+ constructor(_options: Kyt.Options);
2224
+ /**
2225
+ * Returns KYT compliance attestation for the given transaction details.
2226
+ *
2227
+ * @param {Amplify.KytRequestDto} request
2228
+ * @param {Kyt.RequestOptions} requestOptions - Request-specific configuration.
2229
+ *
2230
+ * @throws {@link Amplify.ForbiddenError}
2231
+ *
2232
+ * @example
2233
+ * await client.kyt.kytControllerGetKytAttestationV2({
2234
+ * to: "0x0000000000000000000000000000000000000123",
2235
+ * from: "0x0000000000000000000000000000000000000456",
2236
+ * chain: "base"
2237
+ * })
2238
+ */
2239
+ kytControllerGetKytAttestationV2(request: KytRequestDto$1, requestOptions?: Kyt.RequestOptions): HttpResponsePromise<KytResponseDto$1>;
2240
+ private __kytControllerGetKytAttestationV2;
2241
+ protected _getCustomAuthorizationHeaders(): Promise<{
2242
+ "x-api-key": string;
2243
+ }>;
2244
+ }
2245
+
2246
+ /**
2247
+ * This file was auto-generated by Fern from our API Definition.
2248
+ */
2249
+
2250
+ declare namespace AddressBook {
2251
+ interface Options {
2252
+ environment?: Supplier<AmplifyEnvironment | string>;
2253
+ /** Specify a custom URL to connect the client to. */
2254
+ baseUrl?: Supplier<string>;
2255
+ apiKey: Supplier<string>;
2256
+ }
2257
+ interface RequestOptions {
2258
+ /** The maximum time to wait for a response in seconds. */
2259
+ timeoutInSeconds?: number;
2260
+ /** The number of times to retry the request. Defaults to 2. */
2261
+ maxRetries?: number;
2262
+ /** A hook to abort the request. */
2263
+ abortSignal?: AbortSignal;
2264
+ /** Additional headers to include in the request. */
2265
+ headers?: Record<string, string>;
2266
+ }
2267
+ }
2268
+ declare class AddressBook {
2269
+ protected readonly _options: AddressBook.Options;
2270
+ constructor(_options: AddressBook.Options);
2271
+ /**
2272
+ * Returns address book entries for known addresses. Filter by chain ID, address, or name. Defaults: pageSize=25 (max 100); omit pageToken for the first page.
2273
+ *
2274
+ * @param {Amplify.AddressBookControllerGetAddressBookEntriesV2Request} request
2275
+ * @param {AddressBook.RequestOptions} requestOptions - Request-specific configuration.
2276
+ *
2277
+ * @throws {@link Amplify.BadRequestError}
2278
+ *
2279
+ * @example
2280
+ * await client.addressBook.addressBookControllerGetAddressBookEntriesV2({
2281
+ * pageSize: 25,
2282
+ * filter: "chainId=1 AND name=\"Treasury\""
2283
+ * })
2284
+ */
2285
+ addressBookControllerGetAddressBookEntriesV2(request?: AddressBookControllerGetAddressBookEntriesV2Request, requestOptions?: AddressBook.RequestOptions): HttpResponsePromise<AddressBookEntriesResponseDto$1>;
2286
+ private __addressBookControllerGetAddressBookEntriesV2;
2287
+ protected _getCustomAuthorizationHeaders(): Promise<{
2288
+ "x-api-key": string;
2289
+ }>;
2290
+ }
2291
+
2292
+ /**
2293
+ * This file was auto-generated by Fern from our API Definition.
2294
+ */
2295
+
2296
+ declare namespace Permit {
2297
+ interface Options {
2298
+ environment?: Supplier<AmplifyEnvironment | string>;
2299
+ /** Specify a custom URL to connect the client to. */
2300
+ baseUrl?: Supplier<string>;
2301
+ apiKey: Supplier<string>;
2302
+ }
2303
+ interface RequestOptions {
2304
+ /** The maximum time to wait for a response in seconds. */
2305
+ timeoutInSeconds?: number;
2306
+ /** The number of times to retry the request. Defaults to 2. */
2307
+ maxRetries?: number;
2308
+ /** A hook to abort the request. */
2309
+ abortSignal?: AbortSignal;
2310
+ /** Additional headers to include in the request. */
2311
+ headers?: Record<string, string>;
2312
+ }
2313
+ }
2314
+ declare class Permit {
2315
+ protected readonly _options: Permit.Options;
2316
+ constructor(_options: Permit.Options);
2317
+ /**
2318
+ * @param {Amplify.AuthorizeRequest} request
2319
+ * @param {Permit.RequestOptions} requestOptions - Request-specific configuration.
2320
+ *
2321
+ * @throws {@link Amplify.BadRequestError}
2322
+ * @throws {@link Amplify.NotFoundError}
2323
+ * @throws {@link Amplify.ServiceUnavailableError}
2324
+ *
2325
+ * @example
2326
+ * await client.permit.authorize({
2327
+ * vaultAddress: "0x...",
2328
+ * tokenAddress: "0x...",
2329
+ * amount: "1000000000000000000",
2330
+ * userAddress: "0x...",
2331
+ * chainId: 1
2332
+ * })
2333
+ */
2334
+ authorize(request: AuthorizeRequest, requestOptions?: Permit.RequestOptions): HttpResponsePromise<PermitResponseDto$1>;
2335
+ private __authorize;
2336
+ protected _getCustomAuthorizationHeaders(): Promise<{
2337
+ "x-api-key": string;
2338
+ }>;
2339
+ }
2340
+
2341
+ /**
2342
+ * This file was auto-generated by Fern from our API Definition.
2343
+ */
2344
+
2345
+ declare namespace AmplifyClient {
2346
+ interface Options {
2347
+ environment?: Supplier<AmplifyEnvironment | string>;
2348
+ /** Specify a custom URL to connect the client to. */
2349
+ baseUrl?: Supplier<string>;
2350
+ apiKey: Supplier<string>;
2351
+ }
2352
+ interface RequestOptions {
2353
+ /** The maximum time to wait for a response in seconds. */
2354
+ timeoutInSeconds?: number;
2355
+ /** The number of times to retry the request. Defaults to 2. */
2356
+ maxRetries?: number;
2357
+ /** A hook to abort the request. */
2358
+ abortSignal?: AbortSignal;
2359
+ /** Additional headers to include in the request. */
2360
+ headers?: Record<string, string>;
2361
+ }
2362
+ }
2363
+ declare class AmplifyClient {
2364
+ protected readonly _options: AmplifyClient.Options;
2365
+ protected _vaults: Vaults | undefined;
2366
+ protected _withdraw: Withdraw | undefined;
2367
+ protected _deposit: Deposit | undefined;
2368
+ protected _users: Users | undefined;
2369
+ protected _kyt: Kyt | undefined;
2370
+ protected _addressBook: AddressBook | undefined;
2371
+ protected _permit: Permit | undefined;
2372
+ constructor(_options: AmplifyClient.Options);
2373
+ get vaults(): Vaults;
2374
+ get withdraw(): Withdraw;
2375
+ get deposit(): Deposit;
2376
+ get users(): Users;
2377
+ get kyt(): Kyt;
2378
+ get addressBook(): AddressBook;
2379
+ get permit(): Permit;
2380
+ }
2381
+
2382
+ /**
2383
+ * This file was auto-generated by Fern from our API Definition.
2384
+ */
2385
+
2386
+ declare const GetApysRequestOrderByTimestamp: Schema<GetApysRequestOrderByTimestamp.Raw, GetApysRequestOrderByTimestamp$1>;
2387
+ declare namespace GetApysRequestOrderByTimestamp {
2388
+ type Raw = "asc" | "desc";
2389
+ }
2390
+
2391
+ /**
2392
+ * This file was auto-generated by Fern from our API Definition.
2393
+ */
2394
+
2395
+ declare const GetTvlsRequestOrderByTimestamp: Schema<GetTvlsRequestOrderByTimestamp.Raw, GetTvlsRequestOrderByTimestamp$1>;
2396
+ declare namespace GetTvlsRequestOrderByTimestamp {
2397
+ type Raw = "asc" | "desc";
2398
+ }
2399
+
2400
+ declare const index_d$4_GetApysRequestOrderByTimestamp: typeof GetApysRequestOrderByTimestamp;
2401
+ declare const index_d$4_GetTvlsRequestOrderByTimestamp: typeof GetTvlsRequestOrderByTimestamp;
2402
+ declare namespace index_d$4 {
2403
+ export { index_d$4_GetApysRequestOrderByTimestamp as GetApysRequestOrderByTimestamp, index_d$4_GetTvlsRequestOrderByTimestamp as GetTvlsRequestOrderByTimestamp };
2404
+ }
2405
+
2406
+ /**
2407
+ * This file was auto-generated by Fern from our API Definition.
2408
+ */
2409
+
2410
+ declare const GetVolumesRequestOrderByTimestamp: Schema<GetVolumesRequestOrderByTimestamp.Raw, GetVolumesRequestOrderByTimestamp$1>;
2411
+ declare namespace GetVolumesRequestOrderByTimestamp {
2412
+ type Raw = "asc" | "desc";
2413
+ }
2414
+
2415
+ /**
2416
+ * This file was auto-generated by Fern from our API Definition.
2417
+ */
2418
+
2419
+ declare const PrepareWithdrawalRequestResponseFormat: Schema<PrepareWithdrawalRequestResponseFormat.Raw, PrepareWithdrawalRequestResponseFormat$1>;
2420
+ declare namespace PrepareWithdrawalRequestResponseFormat {
2421
+ type Raw = "encoded" | "full" | "structured";
2422
+ }
2423
+
2424
+ /**
2425
+ * This file was auto-generated by Fern from our API Definition.
2426
+ */
2427
+
2428
+ declare const CancelRequestResponseFormat: Schema<CancelRequestResponseFormat.Raw, CancelRequestResponseFormat$1>;
2429
+ declare namespace CancelRequestResponseFormat {
2430
+ type Raw = "encoded" | "full" | "structured";
2431
+ }
2432
+
2433
+ declare const index_d$3_CancelRequestResponseFormat: typeof CancelRequestResponseFormat;
2434
+ declare const index_d$3_GetVolumesRequestOrderByTimestamp: typeof GetVolumesRequestOrderByTimestamp;
2435
+ declare const index_d$3_PrepareWithdrawalRequestResponseFormat: typeof PrepareWithdrawalRequestResponseFormat;
2436
+ declare namespace index_d$3 {
2437
+ export { index_d$3_CancelRequestResponseFormat as CancelRequestResponseFormat, index_d$3_GetVolumesRequestOrderByTimestamp as GetVolumesRequestOrderByTimestamp, index_d$3_PrepareWithdrawalRequestResponseFormat as PrepareWithdrawalRequestResponseFormat };
2438
+ }
2439
+
2440
+ /**
2441
+ * This file was auto-generated by Fern from our API Definition.
2442
+ */
2443
+
2444
+ declare const PrepareDepositRequestResponseFormat: Schema<PrepareDepositRequestResponseFormat.Raw, PrepareDepositRequestResponseFormat$1>;
2445
+ declare namespace PrepareDepositRequestResponseFormat {
2446
+ type Raw = "encoded" | "full" | "structured";
2447
+ }
2448
+
2449
+ declare const index_d$2_PrepareDepositRequestResponseFormat: typeof PrepareDepositRequestResponseFormat;
2450
+ declare namespace index_d$2 {
2451
+ export { index_d$2_PrepareDepositRequestResponseFormat as PrepareDepositRequestResponseFormat };
2452
+ }
2453
+
2454
+ /**
2455
+ * This file was auto-generated by Fern from our API Definition.
2456
+ */
2457
+
2458
+ declare const KytRequestDto: Schema<KytRequestDto.Raw, KytRequestDto$1>;
2459
+ declare namespace KytRequestDto {
2460
+ interface Raw {
2461
+ to: string;
2462
+ from: string;
2463
+ chain: string;
2464
+ }
2465
+ }
2466
+
2467
+ declare const index_d$1_KytRequestDto: typeof KytRequestDto;
2468
+ declare namespace index_d$1 {
2469
+ export { index_d$1_KytRequestDto as KytRequestDto };
2470
+ }
2471
+
2472
+ /**
2473
+ * This file was auto-generated by Fern from our API Definition.
2474
+ */
2475
+
2476
+ declare const VaultAssetDto: ObjectSchema<VaultAssetDto.Raw, VaultAssetDto$1>;
2477
+ declare namespace VaultAssetDto {
2478
+ interface Raw {
2479
+ vaultAddress: string;
2480
+ chainId: number;
2481
+ assetAddress: string;
2482
+ depositable: boolean;
2483
+ withdrawable: boolean;
2484
+ }
2485
+ }
2486
+
2487
+ /**
2488
+ * This file was auto-generated by Fern from our API Definition.
2489
+ */
2490
+
2491
+ declare const VaultAssetsResponseDto: ObjectSchema<VaultAssetsResponseDto.Raw, VaultAssetsResponseDto$1>;
2492
+ declare namespace VaultAssetsResponseDto {
2493
+ interface Raw {
2494
+ vaultAssets: VaultAssetDto.Raw[];
2495
+ nextPageToken: string | null;
2496
+ tokenMetadata: Record<string, unknown>;
2497
+ }
2498
+ }
2499
+
2500
+ /**
2501
+ * This file was auto-generated by Fern from our API Definition.
2502
+ */
2503
+
2504
+ declare const FieldViolationDto: ObjectSchema<FieldViolationDto.Raw, FieldViolationDto$1>;
2505
+ declare namespace FieldViolationDto {
2506
+ interface Raw {
2507
+ field: string;
2508
+ description: string;
2509
+ }
2510
+ }
2511
+
2512
+ /**
2513
+ * This file was auto-generated by Fern from our API Definition.
2514
+ */
2515
+
2516
+ declare const ErrorDetailDto: ObjectSchema<ErrorDetailDto.Raw, ErrorDetailDto$1>;
2517
+ declare namespace ErrorDetailDto {
2518
+ interface Raw {
2519
+ "@type": string;
2520
+ fieldViolations?: FieldViolationDto.Raw[] | null;
2521
+ }
2522
+ }
2523
+
2524
+ /**
2525
+ * This file was auto-generated by Fern from our API Definition.
2526
+ */
2527
+
2528
+ declare const ErrorObjectDtoStatus: Schema<ErrorObjectDtoStatus.Raw, ErrorObjectDtoStatus$1>;
2529
+ declare namespace ErrorObjectDtoStatus {
2530
+ type Raw = "UNKNOWN" | "INVALID_ARGUMENT" | "NOT_FOUND" | "PERMISSION_DENIED" | "UNAUTHENTICATED" | "RESOURCE_EXHAUSTED" | "INTERNAL" | "METHOD_NOT_ALLOWED";
2531
+ }
2532
+
2533
+ /**
2534
+ * This file was auto-generated by Fern from our API Definition.
2535
+ */
2536
+
2537
+ declare const ErrorObjectDto: ObjectSchema<ErrorObjectDto.Raw, ErrorObjectDto$1>;
2538
+ declare namespace ErrorObjectDto {
2539
+ interface Raw {
2540
+ code: number;
2541
+ message: string;
2542
+ status: ErrorObjectDtoStatus.Raw;
2543
+ details?: ErrorDetailDto.Raw[] | null;
2544
+ }
2545
+ }
2546
+
2547
+ /**
2548
+ * This file was auto-generated by Fern from our API Definition.
2549
+ */
2550
+
2551
+ declare const ErrorResponseDto: ObjectSchema<ErrorResponseDto.Raw, ErrorResponseDto$1>;
2552
+ declare namespace ErrorResponseDto {
2553
+ interface Raw {
2554
+ error: ErrorObjectDto.Raw;
2555
+ }
2556
+ }
2557
+
2558
+ /**
2559
+ * This file was auto-generated by Fern from our API Definition.
2560
+ */
2561
+
2562
+ declare const WithdrawalRequestDtoStatus: Schema<WithdrawalRequestDtoStatus.Raw, WithdrawalRequestDtoStatus$1>;
2563
+ declare namespace WithdrawalRequestDtoStatus {
2564
+ type Raw = "PENDING" | "PENDING_REFUND" | "COMPLETE" | "REFUNDED";
2565
+ }
2566
+
2567
+ /**
2568
+ * This file was auto-generated by Fern from our API Definition.
2569
+ */
2570
+
2571
+ declare const WithdrawalRequestDto: ObjectSchema<WithdrawalRequestDto.Raw, WithdrawalRequestDto$1>;
2572
+ declare namespace WithdrawalRequestDto {
2573
+ interface Raw {
2574
+ id: string;
2575
+ vaultAddress: string;
2576
+ chainId: number;
2577
+ wantAssetAddress: string;
2578
+ status: WithdrawalRequestDtoStatus.Raw;
2579
+ createdAt: string;
2580
+ createdTxHash: string;
2581
+ updatedTxHash: string;
2582
+ userAddress: string;
2583
+ receiverAddress: string;
2584
+ refundReceiverAddress: string;
2585
+ orderAmount: string;
2586
+ orderIndex: string;
2587
+ isSubmittedViaSignature: boolean;
2588
+ isForceProcessed: boolean;
2589
+ isMarkedForRefund: boolean;
2590
+ isMarkedForRefundByUser: boolean;
2591
+ didOrderFailTransfer: boolean;
2592
+ }
2593
+ }
2594
+
2595
+ /**
2596
+ * This file was auto-generated by Fern from our API Definition.
2597
+ */
2598
+
2599
+ declare const WithdrawalRequestsResponseDto: ObjectSchema<WithdrawalRequestsResponseDto.Raw, WithdrawalRequestsResponseDto$1>;
2600
+ declare namespace WithdrawalRequestsResponseDto {
2601
+ interface Raw {
2602
+ withdrawalRequests: WithdrawalRequestDto.Raw[];
2603
+ nextPageToken: string | null;
2604
+ tokenMetadata: Record<string, unknown>;
2605
+ }
2606
+ }
2607
+
2608
+ /**
2609
+ * This file was auto-generated by Fern from our API Definition.
2610
+ */
2611
+
2612
+ declare const VaultApyDto: ObjectSchema<VaultApyDto.Raw, VaultApyDto$1>;
2613
+ declare namespace VaultApyDto {
2614
+ interface Raw {
2615
+ vaultAddress: string;
2616
+ timestamp: string;
2617
+ interval: string;
2618
+ apy: string;
2619
+ }
2620
+ }
2621
+
2622
+ /**
2623
+ * This file was auto-generated by Fern from our API Definition.
2624
+ */
2625
+
2626
+ declare const VaultApysResponseDto: ObjectSchema<VaultApysResponseDto.Raw, VaultApysResponseDto$1>;
2627
+ declare namespace VaultApysResponseDto {
2628
+ interface Raw {
2629
+ vaultApys: VaultApyDto.Raw[];
2630
+ nextPageToken: string | null;
2631
+ tokenMetadata: Record<string, unknown>;
2632
+ }
2633
+ }
2634
+
2635
+ /**
2636
+ * This file was auto-generated by Fern from our API Definition.
2637
+ */
2638
+
2639
+ declare const VaultTvlDto: ObjectSchema<VaultTvlDto.Raw, VaultTvlDto$1>;
2640
+ declare namespace VaultTvlDto {
2641
+ interface Raw {
2642
+ vaultAddress: string;
2643
+ chainId: number;
2644
+ timestamp: string;
2645
+ interval: string;
2646
+ tvl: string;
2647
+ tvlAsset: string;
2648
+ }
2649
+ }
2650
+
2651
+ /**
2652
+ * This file was auto-generated by Fern from our API Definition.
2653
+ */
2654
+
2655
+ declare const VaultTvlsResponseDto: ObjectSchema<VaultTvlsResponseDto.Raw, VaultTvlsResponseDto$1>;
2656
+ declare namespace VaultTvlsResponseDto {
2657
+ interface Raw {
2658
+ vaultTvls: VaultTvlDto.Raw[];
2659
+ nextPageToken: string | null;
2660
+ tokenMetadata: Record<string, unknown>;
2661
+ }
2662
+ }
2663
+
2664
+ /**
2665
+ * This file was auto-generated by Fern from our API Definition.
2666
+ */
2667
+
2668
+ declare const VaultCompositionPositionRefDtoType: Schema<VaultCompositionPositionRefDtoType.Raw, VaultCompositionPositionRefDtoType$1>;
2669
+ declare namespace VaultCompositionPositionRefDtoType {
2670
+ type Raw = "ERC20" | "NATIVE" | "ERC4626_VAULT" | "ERC721" | "ERC1155" | "UNI_V2_PAIR" | "UNI_V3_POSITION" | "CURVE_POOL" | "BALANCER_POOL" | "AAVE_V3_RESERVE" | "COMPOUND_V2_CTOKEN" | "COMPOUND_V3_MARKET" | "MORPHO_V1_MARKET" | "MORPHO_V1_VAULT" | "MORPHO_V2_MARKET" | "MORPHO_V2_VAULT";
2671
+ }
2672
+
2673
+ /**
2674
+ * This file was auto-generated by Fern from our API Definition.
2675
+ */
2676
+
2677
+ declare const VaultCompositionPositionRefDto: ObjectSchema<VaultCompositionPositionRefDto.Raw, VaultCompositionPositionRefDto$1>;
2678
+ declare namespace VaultCompositionPositionRefDto {
2679
+ interface Raw {
2680
+ type: VaultCompositionPositionRefDtoType.Raw;
2681
+ id: string;
2682
+ }
2683
+ }
2684
+
2685
+ /**
2686
+ * This file was auto-generated by Fern from our API Definition.
2687
+ */
2688
+
2689
+ declare const VaultCompositionComponentDtoPositionKind: Schema<VaultCompositionComponentDtoPositionKind.Raw, VaultCompositionComponentDtoPositionKind$1>;
2690
+ declare namespace VaultCompositionComponentDtoPositionKind {
2691
+ type Raw = "SPOT" | "SUPPLY" | "COLLATERAL" | "DEBT" | "STAKED" | "PENDING";
2692
+ }
2693
+
2694
+ /**
2695
+ * This file was auto-generated by Fern from our API Definition.
2696
+ */
2697
+
2698
+ declare const VaultCompositionComponentDtoInstrumentType: Schema<VaultCompositionComponentDtoInstrumentType.Raw, VaultCompositionComponentDtoInstrumentType$1>;
2699
+ declare namespace VaultCompositionComponentDtoInstrumentType {
2700
+ type Raw = "ERC20" | "NATIVE" | "ERC4626_VAULT" | "ERC721" | "ERC1155" | "UNI_V2_PAIR" | "UNI_V3_POSITION" | "CURVE_POOL" | "BALANCER_POOL" | "AAVE_V3_RESERVE" | "COMPOUND_V2_CTOKEN" | "COMPOUND_V3_MARKET" | "MORPHO_V1_MARKET" | "MORPHO_V1_VAULT" | "MORPHO_V2_MARKET" | "MORPHO_V2_VAULT";
2701
+ }
2702
+
2703
+ /**
2704
+ * This file was auto-generated by Fern from our API Definition.
2705
+ */
2706
+
2707
+ declare const VaultCompositionComponentDto: ObjectSchema<VaultCompositionComponentDto.Raw, VaultCompositionComponentDto$1>;
2708
+ declare namespace VaultCompositionComponentDto {
2709
+ interface Raw {
2710
+ assetAddress: string;
2711
+ amount: string;
2712
+ value: string;
2713
+ valueAsset: string;
2714
+ weight: string;
2715
+ positionKind: VaultCompositionComponentDtoPositionKind.Raw;
2716
+ instrumentType: VaultCompositionComponentDtoInstrumentType.Raw;
2717
+ positionRef: VaultCompositionPositionRefDto.Raw;
2718
+ }
2719
+ }
2720
+
2721
+ /**
2722
+ * This file was auto-generated by Fern from our API Definition.
2723
+ */
2724
+
2725
+ declare const VaultCompositionDto: ObjectSchema<VaultCompositionDto.Raw, VaultCompositionDto$1>;
2726
+ declare namespace VaultCompositionDto {
2727
+ interface Raw {
2728
+ vaultAddress: string;
2729
+ chainId: number;
2730
+ timestamp: string;
2731
+ components: VaultCompositionComponentDto.Raw[];
2732
+ }
2733
+ }
2734
+
2735
+ /**
2736
+ * This file was auto-generated by Fern from our API Definition.
2737
+ */
2738
+
2739
+ declare const VaultCompositionsResponseDto: ObjectSchema<VaultCompositionsResponseDto.Raw, VaultCompositionsResponseDto$1>;
2740
+ declare namespace VaultCompositionsResponseDto {
2741
+ interface Raw {
2742
+ vaultCompositions: VaultCompositionDto.Raw[];
2743
+ nextPageToken: string | null;
2744
+ tokenMetadata: Record<string, unknown>;
2745
+ }
2746
+ }
2747
+
2748
+ /**
2749
+ * This file was auto-generated by Fern from our API Definition.
2750
+ */
2751
+
2752
+ declare const WithdrawalVolumeDto: ObjectSchema<WithdrawalVolumeDto.Raw, WithdrawalVolumeDto$1>;
2753
+ declare namespace WithdrawalVolumeDto {
2754
+ interface Raw {
2755
+ vaultAddress: string;
2756
+ chainId: number;
2757
+ startTime: string;
2758
+ endTime: string;
2759
+ interval: string;
2760
+ volumeUsd: string;
2761
+ volumeAsset: string;
2762
+ wantAssetAddress: string;
2763
+ }
2764
+ }
2765
+
2766
+ /**
2767
+ * This file was auto-generated by Fern from our API Definition.
2768
+ */
2769
+
2770
+ declare const WithdrawalVolumesResponseDto: ObjectSchema<WithdrawalVolumesResponseDto.Raw, WithdrawalVolumesResponseDto$1>;
2771
+ declare namespace WithdrawalVolumesResponseDto {
2772
+ interface Raw {
2773
+ withdrawalVolumes: WithdrawalVolumeDto.Raw[];
2774
+ nextPageToken: string | null;
2775
+ tokenMetadata: Record<string, unknown>;
2776
+ }
2777
+ }
2778
+
2779
+ /**
2780
+ * This file was auto-generated by Fern from our API Definition.
2781
+ */
2782
+
2783
+ declare const LiquidityShortfallDto: ObjectSchema<LiquidityShortfallDto.Raw, LiquidityShortfallDto$1>;
2784
+ declare namespace LiquidityShortfallDto {
2785
+ interface Raw {
2786
+ vaultAddress: string;
2787
+ chainId: number;
2788
+ assetAddress: string;
2789
+ shortfallAmount: string;
2790
+ withdrawDemand: string;
2791
+ asOfTime: string;
2792
+ }
2793
+ }
2794
+
2795
+ /**
2796
+ * This file was auto-generated by Fern from our API Definition.
2797
+ */
2798
+
2799
+ declare const LiquidityShortfallsResponseDto: ObjectSchema<LiquidityShortfallsResponseDto.Raw, LiquidityShortfallsResponseDto$1>;
2800
+ declare namespace LiquidityShortfallsResponseDto {
2801
+ interface Raw {
2802
+ liquidityShortfalls: LiquidityShortfallDto.Raw[];
2803
+ nextPageToken: string | null;
2804
+ tokenMetadata: Record<string, unknown>;
2805
+ }
2806
+ }
2807
+
2808
+ /**
2809
+ * This file was auto-generated by Fern from our API Definition.
2810
+ */
2811
+
2812
+ declare const TokenAmountWithCapDto: ObjectSchema<TokenAmountWithCapDto.Raw, TokenAmountWithCapDto$1>;
2813
+ declare namespace TokenAmountWithCapDto {
2814
+ interface Raw {
2815
+ raw: string;
2816
+ formatted: string;
2817
+ decimals: number;
2818
+ hasCap: boolean;
2819
+ }
2820
+ }
2821
+
2822
+ /**
2823
+ * This file was auto-generated by Fern from our API Definition.
2824
+ */
2825
+
2826
+ declare const TokenAmountDto: ObjectSchema<TokenAmountDto.Raw, TokenAmountDto$1>;
2827
+ declare namespace TokenAmountDto {
2828
+ interface Raw {
2829
+ raw: string;
2830
+ formatted: string;
2831
+ decimals: number;
2832
+ }
2833
+ }
2834
+
2835
+ /**
2836
+ * This file was auto-generated by Fern from our API Definition.
2837
+ */
2838
+
2839
+ declare const FeeDto: ObjectSchema<FeeDto.Raw, FeeDto$1>;
2840
+ declare namespace FeeDto {
2841
+ interface Raw {
2842
+ bps: number;
2843
+ percentage: string;
2844
+ }
2845
+ }
2846
+
2847
+ /**
2848
+ * This file was auto-generated by Fern from our API Definition.
2849
+ */
2850
+
2851
+ declare const WithdrawalSlAsDto: ObjectSchema<WithdrawalSlAsDto.Raw, WithdrawalSlAsDto$1>;
2852
+ declare namespace WithdrawalSlAsDto {
2853
+ interface Raw {
2854
+ expectedDelay: string;
2855
+ expiryBuffer: string;
2856
+ internalWithdrawalQueueDelaySLA: string;
2857
+ externalWithdrawalQueueDelaySLA: string;
2858
+ internalAccountantRateUpdateDelaySLA: string;
2859
+ externalAccountantRateUpdateSLA: string;
2860
+ }
2861
+ }
2862
+
2863
+ /**
2864
+ * This file was auto-generated by Fern from our API Definition.
2865
+ */
2866
+
2867
+ declare const VaultAssetConfigDto: ObjectSchema<VaultAssetConfigDto.Raw, VaultAssetConfigDto$1>;
2868
+ declare namespace VaultAssetConfigDto {
2869
+ interface Raw {
2870
+ assetAddress: string;
2871
+ depositable: boolean;
2872
+ withdrawable: boolean;
2873
+ depositFees: FeeDto.Raw;
2874
+ withdrawFees: FeeDto.Raw;
2875
+ withdrawalSLAs?: (WithdrawalSlAsDto.Raw | null) | null;
2876
+ }
2877
+ }
2878
+
2879
+ /**
2880
+ * This file was auto-generated by Fern from our API Definition.
2881
+ */
2882
+
2883
+ declare const VaultDeploymentDto: ObjectSchema<VaultDeploymentDto.Raw, VaultDeploymentDto$1>;
2884
+ declare namespace VaultDeploymentDto {
2885
+ interface Raw {
2886
+ chainId: number;
2887
+ boringVaultAddress: string;
2888
+ depositorAddress: string;
2889
+ withdrawQueueAddress: string;
2890
+ requiresKyt: boolean;
2891
+ baseTokenAddress?: (string | null) | null;
2892
+ accountantAddress?: (string | null) | null;
2893
+ tellerAddress?: (string | null) | null;
2894
+ depositFeeAddress?: (string | null) | null;
2895
+ withdrawFeeAddress?: (string | null) | null;
2896
+ inDeprecation: boolean;
2897
+ depositSupplyCap?: (TokenAmountWithCapDto.Raw | null) | null;
2898
+ minimumWithdrawalOrderSize?: (TokenAmountDto.Raw | null) | null;
2899
+ assets: VaultAssetConfigDto.Raw[];
2900
+ }
2901
+ }
2902
+
2903
+ /**
2904
+ * This file was auto-generated by Fern from our API Definition.
2905
+ */
2906
+
2907
+ declare const VaultDto: ObjectSchema<VaultDto.Raw, VaultDto$1>;
2908
+ declare namespace VaultDto {
2909
+ interface Raw {
2910
+ name: string;
2911
+ deployments: VaultDeploymentDto.Raw[];
2912
+ }
2913
+ }
2914
+
2915
+ /**
2916
+ * This file was auto-generated by Fern from our API Definition.
2917
+ */
2918
+
2919
+ declare const VaultsResponseDto: ObjectSchema<VaultsResponseDto.Raw, VaultsResponseDto$1>;
2920
+ declare namespace VaultsResponseDto {
2921
+ interface Raw {
2922
+ vaults: VaultDto.Raw[];
2923
+ nextPageToken: string | null;
2924
+ }
2925
+ }
2926
+
2927
+ /**
2928
+ * This file was auto-generated by Fern from our API Definition.
2929
+ */
2930
+
2931
+ declare const PreparedTransactionDto: ObjectSchema<PreparedTransactionDto.Raw, PreparedTransactionDto$1>;
2932
+ declare namespace PreparedTransactionDto {
2933
+ interface Raw {
2934
+ to: string;
2935
+ data?: string | null;
2936
+ value: string;
2937
+ abi?: string[] | null;
2938
+ functionName?: string | null;
2939
+ args?: string[] | null;
2940
+ }
2941
+ }
2942
+
2943
+ /**
2944
+ * This file was auto-generated by Fern from our API Definition.
2945
+ */
2946
+
2947
+ declare const PrepareDepositResponseDto: ObjectSchema<PrepareDepositResponseDto.Raw, PrepareDepositResponseDto$1>;
2948
+ declare namespace PrepareDepositResponseDto {
2949
+ interface Raw {
2950
+ transaction: PreparedTransactionDto.Raw;
2951
+ }
2952
+ }
2953
+
2954
+ /**
2955
+ * This file was auto-generated by Fern from our API Definition.
2956
+ */
2957
+
2958
+ declare const PrepareWithdrawResponseDto: ObjectSchema<PrepareWithdrawResponseDto.Raw, PrepareWithdrawResponseDto$1>;
2959
+ declare namespace PrepareWithdrawResponseDto {
2960
+ interface Raw {
2961
+ transaction: PreparedTransactionDto.Raw;
2962
+ }
2963
+ }
2964
+
2965
+ /**
2966
+ * This file was auto-generated by Fern from our API Definition.
2967
+ */
2968
+
2969
+ declare const PrepareCancelWithdrawResponseDto: ObjectSchema<PrepareCancelWithdrawResponseDto.Raw, PrepareCancelWithdrawResponseDto$1>;
2970
+ declare namespace PrepareCancelWithdrawResponseDto {
2971
+ interface Raw {
2972
+ transaction: PreparedTransactionDto.Raw;
2973
+ }
2974
+ }
2975
+
2976
+ /**
2977
+ * This file was auto-generated by Fern from our API Definition.
2978
+ */
2979
+
2980
+ declare const CalculateWithdrawalFeeResponseDto: ObjectSchema<CalculateWithdrawalFeeResponseDto.Raw, CalculateWithdrawalFeeResponseDto$1>;
2981
+ declare namespace CalculateWithdrawalFeeResponseDto {
2982
+ interface Raw {
2983
+ feeAmount: string;
2984
+ offerFeePercentage: FeeDto.Raw;
2985
+ flatFee: string;
2986
+ }
2987
+ }
2988
+
2989
+ /**
2990
+ * This file was auto-generated by Fern from our API Definition.
2991
+ */
2992
+
2993
+ declare const SupplyCapEntryDto: ObjectSchema<SupplyCapEntryDto.Raw, SupplyCapEntryDto$1>;
2994
+ declare namespace SupplyCapEntryDto {
2995
+ interface Raw {
2996
+ vaultAddress: string;
2997
+ chainId: number;
2998
+ totalSupplyInBase: string;
2999
+ supplyCap: string | null;
3000
+ percentageFilled: string | null;
3001
+ }
3002
+ }
3003
+
3004
+ /**
3005
+ * This file was auto-generated by Fern from our API Definition.
3006
+ */
3007
+
3008
+ declare const SupplyCapsResponseDto: ObjectSchema<SupplyCapsResponseDto.Raw, SupplyCapsResponseDto$1>;
3009
+ declare namespace SupplyCapsResponseDto {
3010
+ interface Raw {
3011
+ supplyCaps: SupplyCapEntryDto.Raw[];
3012
+ nextPageToken: string | null;
3013
+ }
3014
+ }
3015
+
3016
+ /**
3017
+ * This file was auto-generated by Fern from our API Definition.
3018
+ */
3019
+
3020
+ declare const UserPositionEntryDto: ObjectSchema<UserPositionEntryDto.Raw, UserPositionEntryDto$1>;
3021
+ declare namespace UserPositionEntryDto {
3022
+ interface Raw {
3023
+ vaultAddress: string;
3024
+ chainId: number;
3025
+ shareBalance: string;
3026
+ positionValueInBase: string;
3027
+ baseAssetAddress: string;
3028
+ exchangeRateToBase: string;
3029
+ }
3030
+ }
3031
+
3032
+ /**
3033
+ * This file was auto-generated by Fern from our API Definition.
3034
+ */
3035
+
3036
+ declare const UserPositionsResponseDto: ObjectSchema<UserPositionsResponseDto.Raw, UserPositionsResponseDto$1>;
3037
+ declare namespace UserPositionsResponseDto {
3038
+ interface Raw {
3039
+ userPositions: UserPositionEntryDto.Raw[];
3040
+ nextPageToken: string | null;
3041
+ tokenMetadata: Record<string, unknown>;
3042
+ }
3043
+ }
3044
+
3045
+ /**
3046
+ * This file was auto-generated by Fern from our API Definition.
3047
+ */
3048
+
3049
+ declare const SmartDepositAddressRequestDto: ObjectSchema<SmartDepositAddressRequestDto.Raw, SmartDepositAddressRequestDto$1>;
3050
+ declare namespace SmartDepositAddressRequestDto {
3051
+ interface Raw {
3052
+ userDestinationAddress: string;
3053
+ vaultAddress: string;
3054
+ inputToken: string;
3055
+ chainId: number;
3056
+ }
3057
+ }
3058
+
3059
+ /**
3060
+ * This file was auto-generated by Fern from our API Definition.
3061
+ */
3062
+
3063
+ declare const SmartDepositAddressResponseDto: ObjectSchema<SmartDepositAddressResponseDto.Raw, SmartDepositAddressResponseDto$1>;
3064
+ declare namespace SmartDepositAddressResponseDto {
3065
+ interface Raw {
3066
+ smartDepositAddress: string;
3067
+ }
3068
+ }
3069
+
3070
+ /**
3071
+ * This file was auto-generated by Fern from our API Definition.
3072
+ */
3073
+
3074
+ declare const KytAttestationDto: ObjectSchema<KytAttestationDto.Raw, KytAttestationDto$1>;
3075
+ declare namespace KytAttestationDto {
3076
+ interface Raw {
3077
+ uuid: string;
3078
+ expiration: number;
3079
+ attester: string;
3080
+ signature: string;
3081
+ }
3082
+ }
3083
+
3084
+ /**
3085
+ * This file was auto-generated by Fern from our API Definition.
3086
+ */
3087
+
3088
+ declare const KytResponseDto: ObjectSchema<KytResponseDto.Raw, KytResponseDto$1>;
3089
+ declare namespace KytResponseDto {
3090
+ interface Raw {
3091
+ attestation: KytAttestationDto.Raw;
3092
+ }
3093
+ }
3094
+
3095
+ /**
3096
+ * This file was auto-generated by Fern from our API Definition.
3097
+ */
3098
+
3099
+ declare const AddressBookEntryDto: ObjectSchema<AddressBookEntryDto.Raw, AddressBookEntryDto$1>;
3100
+ declare namespace AddressBookEntryDto {
3101
+ interface Raw {
3102
+ id: string;
3103
+ chainId: number;
3104
+ address: string;
3105
+ name: string;
3106
+ createdAt: string;
3107
+ updatedAt: string;
3108
+ }
3109
+ }
3110
+
3111
+ /**
3112
+ * This file was auto-generated by Fern from our API Definition.
3113
+ */
3114
+
3115
+ declare const AddressBookEntriesResponseDto: ObjectSchema<AddressBookEntriesResponseDto.Raw, AddressBookEntriesResponseDto$1>;
3116
+ declare namespace AddressBookEntriesResponseDto {
3117
+ interface Raw {
3118
+ addressBookEntries: AddressBookEntryDto.Raw[];
3119
+ nextPageToken: Record<string, unknown> | null;
3120
+ }
3121
+ }
3122
+
3123
+ /**
3124
+ * This file was auto-generated by Fern from our API Definition.
3125
+ */
3126
+
3127
+ declare const PermitDomainDto: ObjectSchema<PermitDomainDto.Raw, PermitDomainDto$1>;
3128
+ declare namespace PermitDomainDto {
3129
+ interface Raw {
3130
+ name: string;
3131
+ version: string;
3132
+ chainId: number;
3133
+ verifyingContract: string;
3134
+ }
3135
+ }
3136
+
3137
+ /**
3138
+ * This file was auto-generated by Fern from our API Definition.
3139
+ */
3140
+
3141
+ declare const PermitValueDto: ObjectSchema<PermitValueDto.Raw, PermitValueDto$1>;
3142
+ declare namespace PermitValueDto {
3143
+ interface Raw {
3144
+ owner: string;
3145
+ spender: string;
3146
+ value: string;
3147
+ nonce: string;
3148
+ deadline: string;
3149
+ }
3150
+ }
3151
+
3152
+ /**
3153
+ * This file was auto-generated by Fern from our API Definition.
3154
+ */
3155
+
3156
+ declare const PermitTypedDataResponseDto: ObjectSchema<PermitTypedDataResponseDto.Raw, PermitTypedDataResponseDto$1>;
3157
+ declare namespace PermitTypedDataResponseDto {
3158
+ interface Raw {
3159
+ domain: PermitDomainDto.Raw;
3160
+ types: Record<string, unknown>;
3161
+ value: PermitValueDto.Raw;
3162
+ deadline: string;
3163
+ }
3164
+ }
3165
+
3166
+ /**
3167
+ * This file was auto-generated by Fern from our API Definition.
3168
+ */
3169
+
3170
+ declare const ApprovalTransactionDto: ObjectSchema<ApprovalTransactionDto.Raw, ApprovalTransactionDto$1>;
3171
+ declare namespace ApprovalTransactionDto {
3172
+ interface Raw {
3173
+ encoded: string;
3174
+ }
3175
+ }
3176
+
3177
+ /**
3178
+ * This file was auto-generated by Fern from our API Definition.
3179
+ */
3180
+
3181
+ declare const PermitResponseDtoMethod: Schema<PermitResponseDtoMethod.Raw, PermitResponseDtoMethod$1>;
3182
+ declare namespace PermitResponseDtoMethod {
3183
+ type Raw = "permit" | "approval" | "already_approved";
3184
+ }
3185
+
3186
+ /**
3187
+ * This file was auto-generated by Fern from our API Definition.
3188
+ */
3189
+
3190
+ declare const PermitResponseDto: ObjectSchema<PermitResponseDto.Raw, PermitResponseDto$1>;
3191
+ declare namespace PermitResponseDto {
3192
+ interface Raw {
3193
+ method: PermitResponseDtoMethod.Raw;
3194
+ permitData?: PermitTypedDataResponseDto.Raw | null;
3195
+ approvalTransaction?: ApprovalTransactionDto.Raw | null;
3196
+ }
3197
+ }
3198
+
3199
+ /**
3200
+ * This file was auto-generated by Fern from our API Definition.
3201
+ */
3202
+
3203
+ declare const VaultRewardDto: ObjectSchema<VaultRewardDto.Raw, VaultRewardDto$1>;
3204
+ declare namespace VaultRewardDto {
3205
+ interface Raw {
3206
+ id: string;
3207
+ txHash: string;
3208
+ decimals: number;
3209
+ createdAt: string;
3210
+ chainId: number;
3211
+ usdgBalanceBase?: string | null;
3212
+ realizedYield: string;
3213
+ cumulativeYield: string;
3214
+ realizedApy: string;
3215
+ }
3216
+ }
3217
+
3218
+ /**
3219
+ * This file was auto-generated by Fern from our API Definition.
3220
+ */
3221
+
3222
+ declare const ListVaultRewardsResponseDto: ObjectSchema<ListVaultRewardsResponseDto.Raw, ListVaultRewardsResponseDto$1>;
3223
+ declare namespace ListVaultRewardsResponseDto {
3224
+ interface Raw {
3225
+ vaultRewards: VaultRewardDto.Raw[];
3226
+ nextPageToken?: string | null;
3227
+ }
3228
+ }
3229
+
3230
+ declare const index_d_AddressBookEntriesResponseDto: typeof AddressBookEntriesResponseDto;
3231
+ declare const index_d_AddressBookEntryDto: typeof AddressBookEntryDto;
3232
+ declare const index_d_ApprovalTransactionDto: typeof ApprovalTransactionDto;
3233
+ declare const index_d_CalculateWithdrawalFeeResponseDto: typeof CalculateWithdrawalFeeResponseDto;
3234
+ declare const index_d_CancelRequestResponseFormat: typeof CancelRequestResponseFormat;
3235
+ declare const index_d_ErrorDetailDto: typeof ErrorDetailDto;
3236
+ declare const index_d_ErrorObjectDto: typeof ErrorObjectDto;
3237
+ declare const index_d_ErrorObjectDtoStatus: typeof ErrorObjectDtoStatus;
3238
+ declare const index_d_ErrorResponseDto: typeof ErrorResponseDto;
3239
+ declare const index_d_FeeDto: typeof FeeDto;
3240
+ declare const index_d_FieldViolationDto: typeof FieldViolationDto;
3241
+ declare const index_d_GetApysRequestOrderByTimestamp: typeof GetApysRequestOrderByTimestamp;
3242
+ declare const index_d_GetTvlsRequestOrderByTimestamp: typeof GetTvlsRequestOrderByTimestamp;
3243
+ declare const index_d_GetVolumesRequestOrderByTimestamp: typeof GetVolumesRequestOrderByTimestamp;
3244
+ declare const index_d_KytAttestationDto: typeof KytAttestationDto;
3245
+ declare const index_d_KytRequestDto: typeof KytRequestDto;
3246
+ declare const index_d_KytResponseDto: typeof KytResponseDto;
3247
+ declare const index_d_LiquidityShortfallDto: typeof LiquidityShortfallDto;
3248
+ declare const index_d_LiquidityShortfallsResponseDto: typeof LiquidityShortfallsResponseDto;
3249
+ declare const index_d_ListVaultRewardsResponseDto: typeof ListVaultRewardsResponseDto;
3250
+ declare const index_d_PermitDomainDto: typeof PermitDomainDto;
3251
+ declare const index_d_PermitResponseDto: typeof PermitResponseDto;
3252
+ declare const index_d_PermitResponseDtoMethod: typeof PermitResponseDtoMethod;
3253
+ declare const index_d_PermitTypedDataResponseDto: typeof PermitTypedDataResponseDto;
3254
+ declare const index_d_PermitValueDto: typeof PermitValueDto;
3255
+ declare const index_d_PrepareCancelWithdrawResponseDto: typeof PrepareCancelWithdrawResponseDto;
3256
+ declare const index_d_PrepareDepositRequestResponseFormat: typeof PrepareDepositRequestResponseFormat;
3257
+ declare const index_d_PrepareDepositResponseDto: typeof PrepareDepositResponseDto;
3258
+ declare const index_d_PrepareWithdrawResponseDto: typeof PrepareWithdrawResponseDto;
3259
+ declare const index_d_PrepareWithdrawalRequestResponseFormat: typeof PrepareWithdrawalRequestResponseFormat;
3260
+ declare const index_d_PreparedTransactionDto: typeof PreparedTransactionDto;
3261
+ declare const index_d_SmartDepositAddressRequestDto: typeof SmartDepositAddressRequestDto;
3262
+ declare const index_d_SmartDepositAddressResponseDto: typeof SmartDepositAddressResponseDto;
3263
+ declare const index_d_SupplyCapEntryDto: typeof SupplyCapEntryDto;
3264
+ declare const index_d_SupplyCapsResponseDto: typeof SupplyCapsResponseDto;
3265
+ declare const index_d_TokenAmountDto: typeof TokenAmountDto;
3266
+ declare const index_d_TokenAmountWithCapDto: typeof TokenAmountWithCapDto;
3267
+ declare const index_d_UserPositionEntryDto: typeof UserPositionEntryDto;
3268
+ declare const index_d_UserPositionsResponseDto: typeof UserPositionsResponseDto;
3269
+ declare const index_d_VaultApyDto: typeof VaultApyDto;
3270
+ declare const index_d_VaultApysResponseDto: typeof VaultApysResponseDto;
3271
+ declare const index_d_VaultAssetConfigDto: typeof VaultAssetConfigDto;
3272
+ declare const index_d_VaultAssetDto: typeof VaultAssetDto;
3273
+ declare const index_d_VaultAssetsResponseDto: typeof VaultAssetsResponseDto;
3274
+ declare const index_d_VaultCompositionComponentDto: typeof VaultCompositionComponentDto;
3275
+ declare const index_d_VaultCompositionComponentDtoInstrumentType: typeof VaultCompositionComponentDtoInstrumentType;
3276
+ declare const index_d_VaultCompositionComponentDtoPositionKind: typeof VaultCompositionComponentDtoPositionKind;
3277
+ declare const index_d_VaultCompositionDto: typeof VaultCompositionDto;
3278
+ declare const index_d_VaultCompositionPositionRefDto: typeof VaultCompositionPositionRefDto;
3279
+ declare const index_d_VaultCompositionPositionRefDtoType: typeof VaultCompositionPositionRefDtoType;
3280
+ declare const index_d_VaultCompositionsResponseDto: typeof VaultCompositionsResponseDto;
3281
+ declare const index_d_VaultDeploymentDto: typeof VaultDeploymentDto;
3282
+ declare const index_d_VaultDto: typeof VaultDto;
3283
+ declare const index_d_VaultRewardDto: typeof VaultRewardDto;
3284
+ declare const index_d_VaultTvlDto: typeof VaultTvlDto;
3285
+ declare const index_d_VaultTvlsResponseDto: typeof VaultTvlsResponseDto;
3286
+ declare const index_d_VaultsResponseDto: typeof VaultsResponseDto;
3287
+ declare const index_d_WithdrawalRequestDto: typeof WithdrawalRequestDto;
3288
+ declare const index_d_WithdrawalRequestDtoStatus: typeof WithdrawalRequestDtoStatus;
3289
+ declare const index_d_WithdrawalRequestsResponseDto: typeof WithdrawalRequestsResponseDto;
3290
+ declare const index_d_WithdrawalSlAsDto: typeof WithdrawalSlAsDto;
3291
+ declare const index_d_WithdrawalVolumeDto: typeof WithdrawalVolumeDto;
3292
+ declare const index_d_WithdrawalVolumesResponseDto: typeof WithdrawalVolumesResponseDto;
3293
+ declare namespace index_d {
3294
+ export { index_d_AddressBookEntriesResponseDto as AddressBookEntriesResponseDto, index_d_AddressBookEntryDto as AddressBookEntryDto, index_d_ApprovalTransactionDto as ApprovalTransactionDto, index_d_CalculateWithdrawalFeeResponseDto as CalculateWithdrawalFeeResponseDto, index_d_CancelRequestResponseFormat as CancelRequestResponseFormat, index_d_ErrorDetailDto as ErrorDetailDto, index_d_ErrorObjectDto as ErrorObjectDto, index_d_ErrorObjectDtoStatus as ErrorObjectDtoStatus, index_d_ErrorResponseDto as ErrorResponseDto, index_d_FeeDto as FeeDto, index_d_FieldViolationDto as FieldViolationDto, index_d_GetApysRequestOrderByTimestamp as GetApysRequestOrderByTimestamp, index_d_GetTvlsRequestOrderByTimestamp as GetTvlsRequestOrderByTimestamp, index_d_GetVolumesRequestOrderByTimestamp as GetVolumesRequestOrderByTimestamp, index_d_KytAttestationDto as KytAttestationDto, index_d_KytRequestDto as KytRequestDto, index_d_KytResponseDto as KytResponseDto, index_d_LiquidityShortfallDto as LiquidityShortfallDto, index_d_LiquidityShortfallsResponseDto as LiquidityShortfallsResponseDto, index_d_ListVaultRewardsResponseDto as ListVaultRewardsResponseDto, index_d_PermitDomainDto as PermitDomainDto, index_d_PermitResponseDto as PermitResponseDto, index_d_PermitResponseDtoMethod as PermitResponseDtoMethod, index_d_PermitTypedDataResponseDto as PermitTypedDataResponseDto, index_d_PermitValueDto as PermitValueDto, index_d_PrepareCancelWithdrawResponseDto as PrepareCancelWithdrawResponseDto, index_d_PrepareDepositRequestResponseFormat as PrepareDepositRequestResponseFormat, index_d_PrepareDepositResponseDto as PrepareDepositResponseDto, index_d_PrepareWithdrawResponseDto as PrepareWithdrawResponseDto, index_d_PrepareWithdrawalRequestResponseFormat as PrepareWithdrawalRequestResponseFormat, index_d_PreparedTransactionDto as PreparedTransactionDto, index_d_SmartDepositAddressRequestDto as SmartDepositAddressRequestDto, index_d_SmartDepositAddressResponseDto as SmartDepositAddressResponseDto, index_d_SupplyCapEntryDto as SupplyCapEntryDto, index_d_SupplyCapsResponseDto as SupplyCapsResponseDto, index_d_TokenAmountDto as TokenAmountDto, index_d_TokenAmountWithCapDto as TokenAmountWithCapDto, index_d_UserPositionEntryDto as UserPositionEntryDto, index_d_UserPositionsResponseDto as UserPositionsResponseDto, index_d_VaultApyDto as VaultApyDto, index_d_VaultApysResponseDto as VaultApysResponseDto, index_d_VaultAssetConfigDto as VaultAssetConfigDto, index_d_VaultAssetDto as VaultAssetDto, index_d_VaultAssetsResponseDto as VaultAssetsResponseDto, index_d_VaultCompositionComponentDto as VaultCompositionComponentDto, index_d_VaultCompositionComponentDtoInstrumentType as VaultCompositionComponentDtoInstrumentType, index_d_VaultCompositionComponentDtoPositionKind as VaultCompositionComponentDtoPositionKind, index_d_VaultCompositionDto as VaultCompositionDto, index_d_VaultCompositionPositionRefDto as VaultCompositionPositionRefDto, index_d_VaultCompositionPositionRefDtoType as VaultCompositionPositionRefDtoType, index_d_VaultCompositionsResponseDto as VaultCompositionsResponseDto, index_d_VaultDeploymentDto as VaultDeploymentDto, index_d_VaultDto as VaultDto, index_d_VaultRewardDto as VaultRewardDto, index_d_VaultTvlDto as VaultTvlDto, index_d_VaultTvlsResponseDto as VaultTvlsResponseDto, index_d_VaultsResponseDto as VaultsResponseDto, index_d_WithdrawalRequestDto as WithdrawalRequestDto, index_d_WithdrawalRequestDtoStatus as WithdrawalRequestDtoStatus, index_d_WithdrawalRequestsResponseDto as WithdrawalRequestsResponseDto, index_d_WithdrawalSlAsDto as WithdrawalSlAsDto, index_d_WithdrawalVolumeDto as WithdrawalVolumeDto, index_d_WithdrawalVolumesResponseDto as WithdrawalVolumesResponseDto, index_d$2 as deposit, index_d$1 as kyt, index_d$4 as vaults, index_d$3 as withdraw };
3295
+ }
863
3296
 
864
- export { AmplifyVault, AssetFilterOptions, type GetVaultsByConfigParams, type InitErrorCode, LogLevel, type Logger, type RequestHeaders, type SDKConfig, type SDKInitOptions, SupportedAsset, UnauthorizedVaultAccessError, VaultFilterOptions, VaultNotFoundByAddressError, VaultNotFoundByNameError, WithdrawSupportedAsset, YieldType, findVaultByConfig, getAssetsFromCache, getCache, getLogger, getSupportedAssets, getVaults, getVaultsByConfig, getWithdrawSupportedAssets, initAmplifySDK, initializeCache, isCacheReady, isDepositSpendApproved, isVaultNotFoundByAddressError, isVaultNotFoundByNameError, isWithdrawalSpendApproved, refreshVaultCache, setLogLevel, setLogger, waitForCacheReady };
3297
+ export { index_d$5 as Amplify, AmplifyClient, AmplifyError, AmplifyTimeoutError, index_d as serialization };