@katanaperps/katana-perps-sdk 1.0.0-beta.5 → 1.0.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bridge/config.d.ts +6 -5
- package/dist/bridge/config.d.ts.map +1 -1
- package/dist/bridge/config.js +5 -4
- package/dist/bridge/deposit.d.ts +2 -9
- package/dist/bridge/deposit.d.ts.map +1 -1
- package/dist/bridge/deposit.js +4 -60
- package/dist/bridge/utils.d.ts +4 -4
- package/dist/bridge/utils.d.ts.map +1 -1
- package/dist/bridge/utils.js +6 -17
- package/dist/client/rest/authenticated.d.ts +2 -16
- package/dist/client/rest/authenticated.d.ts.map +1 -1
- package/dist/client/rest/authenticated.js +5 -17
- package/dist/typechain-types/FixedIncomeVaultProviderStateAggregator_v1.d.ts +13 -13
- package/dist/typechain-types/FixedIncomeVaultProviderStateAggregator_v1.d.ts.map +1 -1
- package/dist/typechain-types/FixedIncomeVaultProvider_v1.d.ts +78 -50
- package/dist/typechain-types/FixedIncomeVaultProvider_v1.d.ts.map +1 -1
- package/dist/typechain-types/factories/FixedIncomeVaultProviderStateAggregator_v1__factory.d.ts +15 -15
- package/dist/typechain-types/factories/FixedIncomeVaultProviderStateAggregator_v1__factory.js +20 -20
- package/dist/typechain-types/factories/FixedIncomeVaultProvider_v1__factory.d.ts +96 -61
- package/dist/typechain-types/factories/FixedIncomeVaultProvider_v1__factory.d.ts.map +1 -1
- package/dist/typechain-types/factories/FixedIncomeVaultProvider_v1__factory.js +117 -72
- package/dist/typechain-types/factories/index.d.ts +0 -3
- package/dist/typechain-types/factories/index.d.ts.map +1 -1
- package/dist/typechain-types/factories/index.js +1 -7
- package/dist/typechain-types/index.d.ts +0 -6
- package/dist/typechain-types/index.d.ts.map +1 -1
- package/dist/typechain-types/index.js +1 -7
- package/dist/types/rest/endpoints/GetExchange.d.ts +0 -44
- package/dist/types/rest/endpoints/GetExchange.d.ts.map +1 -1
- package/dist/types/rest/endpoints/internal.d.ts +0 -8
- package/dist/types/rest/endpoints/internal.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/abis/ExchangeLocalDepositAdapter_v1.json +0 -318
- package/dist/abis/FixedIncomeVaultProviderStateAggregator_v1.json +0 -229
- package/dist/abis/FixedIncomeVaultProvider_v1.json +0 -2640
- package/dist/typechain-types/ExchangeLocalDepositAdapter_v1.d.ts +0 -210
- package/dist/typechain-types/ExchangeLocalDepositAdapter_v1.d.ts.map +0 -1
- package/dist/typechain-types/ExchangeLocalDepositAdapter_v1.js +0 -2
- package/dist/typechain-types/factories/ExchangeLocalDepositAdapter_v1__factory.d.ts +0 -255
- package/dist/typechain-types/factories/ExchangeLocalDepositAdapter_v1__factory.d.ts.map +0 -1
- package/dist/typechain-types/factories/ExchangeLocalDepositAdapter_v1__factory.js +0 -335
package/dist/bridge/config.d.ts
CHANGED
|
@@ -69,7 +69,7 @@ export declare const BridgeConfig: {
|
|
|
69
69
|
readonly evmChainId: 1;
|
|
70
70
|
readonly layerZeroEndpointId: 30101;
|
|
71
71
|
readonly layerzeroOFTAddress: "0xb5bADA33542a05395d504a25885e02503A957Bb3";
|
|
72
|
-
readonly layerZeroVaultComposerSyncAddress: "
|
|
72
|
+
readonly layerZeroVaultComposerSyncAddress: "0x75B4cA53d62cd4274ACBce30487A74de87f0D661";
|
|
73
73
|
readonly tokenDecimals: 6;
|
|
74
74
|
readonly usdcAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48";
|
|
75
75
|
};
|
|
@@ -109,9 +109,10 @@ export declare const BridgeConfig: {
|
|
|
109
109
|
readonly testnet: {
|
|
110
110
|
readonly "katana.katana": {
|
|
111
111
|
readonly target: "katana.katana";
|
|
112
|
+
readonly isSupported: true;
|
|
112
113
|
readonly evmChainId: 737373;
|
|
113
|
-
readonly layerZeroEndpointId:
|
|
114
|
-
readonly layerzeroOFTAddress: "
|
|
114
|
+
readonly layerZeroEndpointId: -1;
|
|
115
|
+
readonly layerzeroOFTAddress: "0x0000000000000000000000000000000000000000";
|
|
115
116
|
readonly tokenDecimals: 6;
|
|
116
117
|
readonly usdcAddress: "0xc2a4C310F2512A17Ac0047cf871aCAed3E62bB4B";
|
|
117
118
|
};
|
|
@@ -181,7 +182,7 @@ export declare const BridgeConfigByLayerZeroEndpointId: {
|
|
|
181
182
|
readonly evmChainId: 1;
|
|
182
183
|
readonly layerZeroEndpointId: 30101;
|
|
183
184
|
readonly layerzeroOFTAddress: "0xb5bADA33542a05395d504a25885e02503A957Bb3";
|
|
184
|
-
readonly layerZeroVaultComposerSyncAddress: "
|
|
185
|
+
readonly layerZeroVaultComposerSyncAddress: "0x75B4cA53d62cd4274ACBce30487A74de87f0D661";
|
|
185
186
|
readonly tokenDecimals: 6;
|
|
186
187
|
readonly usdcAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48";
|
|
187
188
|
};
|
|
@@ -232,7 +233,7 @@ export declare const BridgeConfigByLayerZeroEndpointId: {
|
|
|
232
233
|
readonly evmChainId: 1;
|
|
233
234
|
readonly layerZeroEndpointId: 30101;
|
|
234
235
|
readonly layerzeroOFTAddress: "0xb5bADA33542a05395d504a25885e02503A957Bb3";
|
|
235
|
-
readonly layerZeroVaultComposerSyncAddress: "
|
|
236
|
+
readonly layerZeroVaultComposerSyncAddress: "0x75B4cA53d62cd4274ACBce30487A74de87f0D661";
|
|
236
237
|
readonly tokenDecimals: 6;
|
|
237
238
|
readonly usdcAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48";
|
|
238
239
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/bridge/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,eAAO,MAAM,kBAAkB,oOAA8B,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/bridge/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,eAAO,MAAM,kBAAkB,oOAA8B,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwKf,CAAC;AAEX,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B7C,CAAC;AAEF;;;;;;;GAOG;AAEH,wBAAgB,mBAAmB,CAEjC,KAAK,EAAE,GAAG,GACT,KAAK,IAAI,YAAY,CAEvB"}
|
package/dist/bridge/config.js
CHANGED
|
@@ -92,7 +92,7 @@ exports.BridgeConfig = {
|
|
|
92
92
|
layerZeroEndpointId: 30101,
|
|
93
93
|
// vbUSDC OFTAdapter https://github.com/agglayer/vault-bridge/tree/main/broadcast#mainnet
|
|
94
94
|
layerzeroOFTAddress: '0xb5bADA33542a05395d504a25885e02503A957Bb3',
|
|
95
|
-
layerZeroVaultComposerSyncAddress: '
|
|
95
|
+
layerZeroVaultComposerSyncAddress: '0x75B4cA53d62cd4274ACBce30487A74de87f0D661',
|
|
96
96
|
// https://stargateprotocol.gitbook.io/stargate/v2-developer-docs/technical-reference/v2-supported-networks-and-assets#ethereum
|
|
97
97
|
tokenDecimals: 6,
|
|
98
98
|
usdcAddress: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
|
@@ -145,11 +145,12 @@ exports.BridgeConfig = {
|
|
|
145
145
|
testnet: {
|
|
146
146
|
[request_1.BridgeTarget.KATANA_KATANA]: {
|
|
147
147
|
target: request_1.BridgeTarget.KATANA_KATANA,
|
|
148
|
+
isSupported: true,
|
|
148
149
|
evmChainId: 737373,
|
|
149
|
-
//
|
|
150
|
-
layerZeroEndpointId:
|
|
150
|
+
// No LZ connection yet on Bokuto testnet
|
|
151
|
+
layerZeroEndpointId: -1,
|
|
151
152
|
// No OFT currently supported on Bokuto testnet
|
|
152
|
-
layerzeroOFTAddress: '
|
|
153
|
+
layerzeroOFTAddress: '0x0000000000000000000000000000000000000000',
|
|
153
154
|
tokenDecimals: 6,
|
|
154
155
|
// vbUSDC
|
|
155
156
|
usdcAddress: '0xc2a4C310F2512A17Ac0047cf871aCAed3E62bB4B',
|
package/dist/bridge/deposit.d.ts
CHANGED
|
@@ -22,8 +22,7 @@ export type DepositToWalletBridgePayloadParameters = {
|
|
|
22
22
|
};
|
|
23
23
|
export type DepositBaseParameters = {
|
|
24
24
|
exchangeLayerZeroAdapterAddress?: string;
|
|
25
|
-
|
|
26
|
-
minimumForwardQuantityMultiplierInPips?: bigint;
|
|
25
|
+
minimumForwardQuantityMultiplierInPips: bigint;
|
|
27
26
|
quantityInAssetUnits: bigint;
|
|
28
27
|
sourceBridgeTarget: BridgeTarget;
|
|
29
28
|
stargateBridgeForwarderContractAddress?: string;
|
|
@@ -112,13 +111,7 @@ export declare function depositViaForwarder(parameters: AddManagedAccountParamet
|
|
|
112
111
|
}, sourceSigner: ethers.Signer, sandbox: boolean, extraRequestParams?: Pick<TransactionRequest, 'nonce'>,
|
|
113
112
|
/** Let software wallet show estimate to the user. Even on expected TX failure. */
|
|
114
113
|
ignoreEstimateError?: boolean): Promise<string>;
|
|
115
|
-
|
|
116
|
-
* Deposit funds locally on Katana
|
|
117
|
-
*/
|
|
118
|
-
export declare function depositLocally(parameters: AddManagedAccountParameters | DepositToManagedAccountParameters | DepositToWalletParameters, signer: ethers.Signer, sandbox: boolean, extraRequestParams?: Pick<TransactionRequest, 'nonce'>,
|
|
119
|
-
/** Let software wallet show estimate to the user. Even on expected TX failure. */
|
|
120
|
-
ignoreEstimateError?: boolean): Promise<string>;
|
|
121
|
-
export declare function encodeDepositBridgeAdapterPayload(sourceConfig: ReturnType<typeof getBridgeTargetConfig>, parameters: Pick<AddManagedAccountParameters, 'bridgePayloadType' | 'fixedIncomeVaultProviderAddress' | 'managerWallet' | 'addManagedAccountPayload'> | Pick<DepositToManagedAccountParameters, 'bridgePayloadType' | 'depositorWallet' | 'fixedIncomeVaultProviderAddress' | 'managerWallet'> | Pick<DepositToWalletParameters, 'bridgePayloadType' | 'depositorWallet'>): EncodedDepositBridgeAdapterPayload;
|
|
114
|
+
export declare function encodeDepositBridgeAdapterPayload(sourceConfig: ReturnType<typeof getBridgeTargetConfig>, parameters: AddManagedAccountParameters | DepositToManagedAccountParameters | DepositToWalletParameters): EncodedDepositBridgeAdapterPayload;
|
|
122
115
|
export declare function encodeFixedIncomeVaultConfigurationFields(configurationFields: FixedIncomeVaultConfigurationFields): string;
|
|
123
116
|
/**
|
|
124
117
|
* Estimate native gas fee needed to deposit USDC cross-chain into the Exchange
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../src/bridge/deposit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,KAAK,kBAAkB,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"deposit.d.ts","sourceRoot":"","sources":["../../src/bridge/deposit.ts"],"names":[],"mappings":"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"}
|
package/dist/bridge/deposit.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDestinationWallet = exports.estimateDepositFees = exports.encodeFixedIncomeVaultConfigurationFields = exports.encodeDepositBridgeAdapterPayload = exports.
|
|
3
|
+
exports.getDestinationWallet = exports.estimateDepositFees = exports.encodeFixedIncomeVaultConfigurationFields = exports.encodeDepositBridgeAdapterPayload = exports.depositViaForwarder = exports.depositViaVaultComposerSync = exports.depositViaBridge = exports.decodeDepositBridgeAdapterPayload = exports.decodeDepositBridgeAdapterPayloadType = exports.depositBridgeAdapterPayloadLengths = exports.fixedIncomeVaultConfigurationFieldsLength = exports.DepositBridgeAdapterPayloadType = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const bignumber_js_1 = tslib_1.__importDefault(require("bignumber.js"));
|
|
6
6
|
const ethers_1 = require("ethers");
|
|
@@ -120,10 +120,9 @@ ignoreEstimateError) {
|
|
|
120
120
|
}
|
|
121
121
|
const response = await vaultComposerSync.depositAndSend.send(parameters.quantityInAssetUnits, sendParam, sourceWallet, // Refund address - extra gas (if any) is returned to this address
|
|
122
122
|
{
|
|
123
|
-
...extraRequestParams,
|
|
124
123
|
from: sourceWallet,
|
|
125
124
|
gasLimit,
|
|
126
|
-
value: gasFee,
|
|
125
|
+
value: gasFee,
|
|
127
126
|
});
|
|
128
127
|
return response.hash;
|
|
129
128
|
}
|
|
@@ -146,7 +145,8 @@ ignoreEstimateError) {
|
|
|
146
145
|
const estimatedGasLimit = await oft.send.estimateGas(sendParam, { nativeFee: gasFee, lzTokenFee: 0 }, sourceWallet, // Refund address - extra gas (if any) is returned to this address
|
|
147
146
|
{
|
|
148
147
|
...extraRequestParams,
|
|
149
|
-
from: sourceWallet,
|
|
148
|
+
from: sourceWallet,
|
|
149
|
+
// Native gas to pay for the cross chain message fee
|
|
150
150
|
value: gasFee,
|
|
151
151
|
});
|
|
152
152
|
// Add 20% buffer for safety
|
|
@@ -175,7 +175,6 @@ ignoreEstimateError) {
|
|
|
175
175
|
}
|
|
176
176
|
const response = await oft.send(sendParam, { nativeFee: gasFee, lzTokenFee: 0 }, sourceWallet, // Refund address - extra gas (if any) is returned to this address
|
|
177
177
|
{
|
|
178
|
-
...extraRequestParams,
|
|
179
178
|
from: sourceWallet,
|
|
180
179
|
gasLimit,
|
|
181
180
|
value: gasFee,
|
|
@@ -183,55 +182,6 @@ ignoreEstimateError) {
|
|
|
183
182
|
return response.hash;
|
|
184
183
|
}
|
|
185
184
|
exports.depositViaForwarder = depositViaForwarder;
|
|
186
|
-
/**
|
|
187
|
-
* Deposit funds locally on Katana
|
|
188
|
-
*/
|
|
189
|
-
async function depositLocally(parameters, signer, sandbox, extraRequestParams,
|
|
190
|
-
/** Let software wallet show estimate to the user. Even on expected TX failure. */
|
|
191
|
-
ignoreEstimateError) {
|
|
192
|
-
const sourceConfig = (0, utils_1.getBridgeTargetConfig)(request_1.BridgeTarget.KATANA_KATANA, sandbox);
|
|
193
|
-
const exchangeLocalDepositAdapterAddress = await (0, utils_1.loadExchangeLocalDepositAddressFromApiIfNeeded)(parameters.exchangeLocalDepositAdapterAddress);
|
|
194
|
-
let gasLimit = config_1.BridgeConfig.settings.depositSourceChainGasLimit;
|
|
195
|
-
const localDepositAdapter = index_1.ExchangeLocalDepositAdapter_v1__factory.connect(exchangeLocalDepositAdapterAddress, signer);
|
|
196
|
-
const wallet = await signer.getAddress();
|
|
197
|
-
try {
|
|
198
|
-
// Estimate gas
|
|
199
|
-
const estimatedGasLimit = await localDepositAdapter.deposit.estimateGas(parameters.quantityInAssetUnits, encodeDepositBridgeAdapterPayload(sourceConfig, parameters), {
|
|
200
|
-
...extraRequestParams,
|
|
201
|
-
from: wallet,
|
|
202
|
-
});
|
|
203
|
-
// Add 20% buffer for safety
|
|
204
|
-
gasLimit = Number(new bignumber_js_1.default(estimatedGasLimit.toString())
|
|
205
|
-
.times(new bignumber_js_1.default(1.2))
|
|
206
|
-
.toFixed(0));
|
|
207
|
-
}
|
|
208
|
-
catch (error) {
|
|
209
|
-
// ethers.js will perform the estimation at the block gas limit, which is much higher than the
|
|
210
|
-
// gas actually needed by the tx. If the wallet does not have the funds to cover the tx at this
|
|
211
|
-
// high gas limit then the RPC will throw an INSUFFICIENT_FUNDS error; however the wallet may
|
|
212
|
-
// still have enough funds to successfully bridge at the actual gas limit. In this case simply
|
|
213
|
-
// fall through and use the configured default gas limit. The wallet software in use should
|
|
214
|
-
// still show if that limit is insufficient, which is only an issue for blockchains with
|
|
215
|
-
// variable gas costs such as Arbitrum One
|
|
216
|
-
if (error?.code === 'INSUFFICIENT_FUNDS') {
|
|
217
|
-
console.log('[depositViaForwarder] Insufficient funds - continue with default gas');
|
|
218
|
-
}
|
|
219
|
-
else if (ignoreEstimateError) {
|
|
220
|
-
// TODO: In latest contract it throws 'CALL_EXCEPTION' instead of 'INSUFFICIENT_FUNDS'
|
|
221
|
-
console.log('[depositViaForwarder] Estimate failed - continue with default gas', error);
|
|
222
|
-
}
|
|
223
|
-
else {
|
|
224
|
-
throw error;
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
const response = await localDepositAdapter.deposit(parameters.quantityInAssetUnits, encodeDepositBridgeAdapterPayload(sourceConfig, parameters), {
|
|
228
|
-
...extraRequestParams,
|
|
229
|
-
gasLimit,
|
|
230
|
-
from: wallet,
|
|
231
|
-
});
|
|
232
|
-
return response.hash;
|
|
233
|
-
}
|
|
234
|
-
exports.depositLocally = depositLocally;
|
|
235
185
|
function encodeDepositBridgeAdapterPayload(sourceConfig, parameters) {
|
|
236
186
|
if (parameters.bridgePayloadType ===
|
|
237
187
|
DepositBridgeAdapterPayloadType.addManagedAccount) {
|
|
@@ -345,9 +295,6 @@ async function estimateDepositViaForwarderFees(parameters, providers, sandbox) {
|
|
|
345
295
|
};
|
|
346
296
|
}
|
|
347
297
|
async function getDepositFromEthereumSendParamAndSourceConfig(parameters, sandbox) {
|
|
348
|
-
if (!parameters.minimumForwardQuantityMultiplierInPips) {
|
|
349
|
-
throw new Error('minimumForwardQuantityMultiplierInPips is required for deposit via forwarder');
|
|
350
|
-
}
|
|
351
298
|
const { sourceConfig, destinationConfig } = getSourceAndDestinationConfigs(request_1.BridgeTarget.STARGATE_ETHEREUM, request_1.BridgeTarget.KATANA_KATANA, sandbox);
|
|
352
299
|
const exchangeLayerZeroAdapterAddress = await (0, utils_1.loadExchangeLayerZeroAddressFromApiIfNeeded)(parameters.exchangeLayerZeroAdapterAddress);
|
|
353
300
|
const { Options } = await import('@layerzerolabs/lz-v2-utilities');
|
|
@@ -372,9 +319,6 @@ async function getDepositFromEthereumSendParamAndSourceConfig(parameters, sandbo
|
|
|
372
319
|
};
|
|
373
320
|
}
|
|
374
321
|
async function getDepositViaForwarderSendParamAndSourceConfig(parameters, providers, sandbox) {
|
|
375
|
-
if (!parameters.minimumForwardQuantityMultiplierInPips) {
|
|
376
|
-
throw new Error('minimumForwardQuantityMultiplierInPips is required for deposit via forwarder');
|
|
377
|
-
}
|
|
378
322
|
const { sourceConfig, destinationConfig: ethereumConfig } = getSourceAndDestinationConfigs(parameters.sourceBridgeTarget, request_1.BridgeTarget.STARGATE_ETHEREUM, sandbox);
|
|
379
323
|
const { gasFee: ethereumGasFee } = await estimateDepositFromEthereumFees(parameters, providers, sandbox);
|
|
380
324
|
// Add 20% buffer for safety
|
package/dist/bridge/utils.d.ts
CHANGED
|
@@ -16,9 +16,10 @@ export declare function isBridgeTestnetLayerZeroEndpointId(layerZeroEndpointId:
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function getBridgeTargetConfig<T extends BridgeTarget, S extends true | false>(bridgeTarget: T, sandbox: S): {
|
|
18
18
|
readonly target: "katana.katana";
|
|
19
|
+
readonly isSupported: true;
|
|
19
20
|
readonly evmChainId: 737373;
|
|
20
|
-
readonly layerZeroEndpointId:
|
|
21
|
-
readonly layerzeroOFTAddress: "
|
|
21
|
+
readonly layerZeroEndpointId: -1;
|
|
22
|
+
readonly layerzeroOFTAddress: "0x0000000000000000000000000000000000000000";
|
|
22
23
|
readonly tokenDecimals: 6;
|
|
23
24
|
readonly usdcAddress: "0xc2a4C310F2512A17Ac0047cf871aCAed3E62bB4B";
|
|
24
25
|
} | {
|
|
@@ -90,7 +91,7 @@ export declare function getBridgeTargetConfig<T extends BridgeTarget, S extends
|
|
|
90
91
|
readonly evmChainId: 1;
|
|
91
92
|
readonly layerZeroEndpointId: 30101;
|
|
92
93
|
readonly layerzeroOFTAddress: "0xb5bADA33542a05395d504a25885e02503A957Bb3";
|
|
93
|
-
readonly layerZeroVaultComposerSyncAddress: "
|
|
94
|
+
readonly layerZeroVaultComposerSyncAddress: "0x75B4cA53d62cd4274ACBce30487A74de87f0D661";
|
|
94
95
|
readonly tokenDecimals: 6;
|
|
95
96
|
readonly usdcAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48";
|
|
96
97
|
};
|
|
@@ -129,6 +130,5 @@ export declare function getBridgeTargetConfig<T extends BridgeTarget, S extends
|
|
|
129
130
|
}[T];
|
|
130
131
|
export declare function bridgeTargetForLayerZeroEndpointId(layerZeroEndpointId: number, sandbox: boolean): "stargate.arbitrum" | "stargate.aurora" | "stargate.avalanche" | "stargate.base" | "stargate.berachain" | "stargate.ethereum" | "stargate.optimism" | "stargate.rari" | "stargate.scroll" | "stargate.taiko" | null;
|
|
131
132
|
export declare function loadExchangeLayerZeroAddressFromApiIfNeeded(exchangeLayerZeroAdapterAddress?: string): Promise<string>;
|
|
132
|
-
export declare function loadExchangeLocalDepositAddressFromApiIfNeeded(exchangeLocalDepositAdapterAddress?: string): Promise<string>;
|
|
133
133
|
export declare function loadStargateBridgeForwarderContractAddressFromApiIfNeeded(stargateBridgeForwarderContractAddress?: string): Promise<string>;
|
|
134
134
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/bridge/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/bridge/utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,eAAO,MAAM,iCAAiC,mFAI5C,CAAC;AAEH,MAAM,MAAM,iCAAiC,GAC3C,CAAC,OAAO,iCAAiC,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,wBAAgB,kCAAkC,CAChD,mBAAmB,EAAE,MAAM,GAC1B,mBAAmB,IAAI,iCAAiC,CAI1D;AAED,eAAO,MAAM,iCAAiC,mBAI5C,CAAC;AAEH,MAAM,MAAM,iCAAiC,GAC3C,CAAC,OAAO,iCAAiC,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,wBAAgB,kCAAkC,CAChD,mBAAmB,EAAE,MAAM,GAC1B,mBAAmB,IAAI,iCAAiC,CAI1D;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,CAAC,SAAS,YAAY,EACtB,CAAC,SAAS,IAAI,GAAG,KAAK,EACtB,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAY5B;AAED,wBAAgB,kCAAkC,CAChD,mBAAmB,EAAE,MAAM,EAC3B,OAAO,EAAE,OAAO,uNAYjB;AAED,wBAAsB,2CAA2C,CAC/D,+BAA+B,CAAC,EAAE,MAAM,GACvC,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,wBAAsB,yDAAyD,CAC7E,sCAAsC,CAAC,EAAE,MAAM,GAC9C,OAAO,CAAC,MAAM,CAAC,CAOjB"}
|
package/dist/bridge/utils.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loadStargateBridgeForwarderContractAddressFromApiIfNeeded = exports.
|
|
3
|
+
exports.loadStargateBridgeForwarderContractAddressFromApiIfNeeded = exports.loadExchangeLayerZeroAddressFromApiIfNeeded = exports.bridgeTargetForLayerZeroEndpointId = exports.getBridgeTargetConfig = exports.isBridgeTestnetLayerZeroEndpointId = exports.BridgeTestnetLayerZeroEndpointIds = exports.isBridgeMainnetLayerZeroEndpointId = exports.BridgeMainnetLayerZeroEndpointIds = void 0;
|
|
4
|
+
const ethers_1 = require("ethers");
|
|
4
5
|
const config_1 = require("#bridge/config");
|
|
5
|
-
const public_1 = require("#client/rest/public");
|
|
6
6
|
exports.BridgeMainnetLayerZeroEndpointIds = Object.values(config_1.BridgeConfigByLayerZeroEndpointId.mainnet).map((value) => {
|
|
7
7
|
return value.layerZeroEndpointId;
|
|
8
8
|
});
|
|
@@ -52,26 +52,15 @@ async function loadExchangeLayerZeroAddressFromApiIfNeeded(exchangeLayerZeroAdap
|
|
|
52
52
|
if (exchangeLayerZeroAdapterAddress) {
|
|
53
53
|
return exchangeLayerZeroAdapterAddress;
|
|
54
54
|
}
|
|
55
|
-
|
|
56
|
-
return
|
|
57
|
-
.stargateBridgeAdapterV1KatanaContractAddress;
|
|
55
|
+
// No bridge adapters currently supported
|
|
56
|
+
return ethers_1.ethers.ZeroAddress;
|
|
58
57
|
}
|
|
59
58
|
exports.loadExchangeLayerZeroAddressFromApiIfNeeded = loadExchangeLayerZeroAddressFromApiIfNeeded;
|
|
60
|
-
async function loadExchangeLocalDepositAddressFromApiIfNeeded(exchangeLocalDepositAdapterAddress) {
|
|
61
|
-
if (exchangeLocalDepositAdapterAddress) {
|
|
62
|
-
return exchangeLocalDepositAdapterAddress;
|
|
63
|
-
}
|
|
64
|
-
const [exchangeResponse] = await (0, public_1.loadExchangeResponseFromApiIfNeeded)();
|
|
65
|
-
return exchangeResponse.bridgeAdapters
|
|
66
|
-
.localDepositAdapterV1KatanaContractAddress;
|
|
67
|
-
}
|
|
68
|
-
exports.loadExchangeLocalDepositAddressFromApiIfNeeded = loadExchangeLocalDepositAddressFromApiIfNeeded;
|
|
69
59
|
async function loadStargateBridgeForwarderContractAddressFromApiIfNeeded(stargateBridgeForwarderContractAddress) {
|
|
70
60
|
if (stargateBridgeForwarderContractAddress) {
|
|
71
61
|
return stargateBridgeForwarderContractAddress;
|
|
72
62
|
}
|
|
73
|
-
|
|
74
|
-
return
|
|
75
|
-
.stargateBridgeForwarderV1EthereumContractAddress;
|
|
63
|
+
// No bridge adapters currently supported
|
|
64
|
+
return ethers_1.ethers.ZeroAddress;
|
|
76
65
|
}
|
|
77
66
|
exports.loadStargateBridgeForwarderContractAddressFromApiIfNeeded = loadStargateBridgeForwarderContractAddressFromApiIfNeeded;
|
|
@@ -84,9 +84,9 @@ export interface RestAuthenticatedClientOptions {
|
|
|
84
84
|
*/
|
|
85
85
|
chainId?: number;
|
|
86
86
|
/**
|
|
87
|
-
* Optionally provide the `
|
|
87
|
+
* Optionally provide the `bridgeAdapterContractAddress` as returned by the public clients
|
|
88
88
|
* {@link RestPublicClient.getExchange getExchange} response's
|
|
89
|
-
* {@link katanaperps.KatanaPerpsExchange.
|
|
89
|
+
* {@link katanaperps.KatanaPerpsExchange.bridgeAdapterContractAddress bridgeAdapterContractAddress}
|
|
90
90
|
* property.
|
|
91
91
|
*
|
|
92
92
|
* - If not provided, this will be fetched and cached automatically from the public client before
|
|
@@ -95,18 +95,6 @@ export interface RestAuthenticatedClientOptions {
|
|
|
95
95
|
* @internal
|
|
96
96
|
*/
|
|
97
97
|
bridgeAdapterContractAddress?: string;
|
|
98
|
-
/**
|
|
99
|
-
* Optionally provide the `localDepositAdapterV1KatanaContractAddress` as returned by the public clients
|
|
100
|
-
* {@link RestPublicClient.getExchange getExchange} response's
|
|
101
|
-
* {@link katanaperps.KatanaPerpsExchange.bridgeAdapters.localDepositAdapterV1KatanaContractAddress localDepositAdapterV1KatanaContractAddress}
|
|
102
|
-
* property.
|
|
103
|
-
*
|
|
104
|
-
* - If not provided, this will be fetched and cached automatically from the public client before
|
|
105
|
-
* making the first request which requires it.
|
|
106
|
-
*
|
|
107
|
-
* @internal
|
|
108
|
-
*/
|
|
109
|
-
localDepositAdapterContractAddress?: string;
|
|
110
98
|
/**
|
|
111
99
|
* - Changing this value will likely result in a broken client, internal use only.
|
|
112
100
|
*
|
|
@@ -227,7 +215,6 @@ export declare class RestAuthenticatedClient {
|
|
|
227
215
|
exchangeContractAddress?: string | undefined;
|
|
228
216
|
chainId?: number | undefined;
|
|
229
217
|
bridgeAdapterContractAddress?: string | undefined;
|
|
230
|
-
localDepositAdapterContractAddress?: string | undefined;
|
|
231
218
|
}>;
|
|
232
219
|
/**
|
|
233
220
|
* The {@link RestAuthenticatedClient} is used to make authenticated requests to the Katana Perps API. It includes
|
|
@@ -1159,7 +1146,6 @@ export declare class RestAuthenticatedClient {
|
|
|
1159
1146
|
chainId: number;
|
|
1160
1147
|
exchangeContractAddress: string;
|
|
1161
1148
|
bridgeAdapterContractAddress: string;
|
|
1162
|
-
localDepositAdapterContractAddress: string;
|
|
1163
1149
|
}>;
|
|
1164
1150
|
/**
|
|
1165
1151
|
* - Internal Use and may change or break without notice
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authenticated.d.ts","sourceRoot":"","sources":["../../../src/client/rest/authenticated.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAkB1B,OAAO,EAIL,eAAe,EAEhB,MAAM,QAAQ,CAAC;AAMhB,OAAO,KAAK,KAAK,WAAW,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAa,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,OAAO,CAAC;AAEf;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAIlB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;OASG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;OAUG;IACH,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC
|
|
1
|
+
{"version":3,"file":"authenticated.d.ts","sourceRoot":"","sources":["../../../src/client/rest/authenticated.ts"],"names":[],"mappings":"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"}
|
|
@@ -159,7 +159,7 @@ class RestAuthenticatedClient {
|
|
|
159
159
|
* @category Constructor
|
|
160
160
|
*/
|
|
161
161
|
constructor(options) {
|
|
162
|
-
const { sandbox = false, exchangeContractAddress, chainId, bridgeAdapterContractAddress,
|
|
162
|
+
const { sandbox = false, exchangeContractAddress, chainId, bridgeAdapterContractAddress, autoCreateHmacHeader = true, } = options;
|
|
163
163
|
const baseURL = (0, _utils_1.deriveBaseURL)({
|
|
164
164
|
sandbox,
|
|
165
165
|
api: 'rest',
|
|
@@ -172,7 +172,6 @@ class RestAuthenticatedClient {
|
|
|
172
172
|
baseURL,
|
|
173
173
|
sandbox,
|
|
174
174
|
bridgeAdapterContractAddress,
|
|
175
|
-
localDepositAdapterContractAddress,
|
|
176
175
|
exchangeContractAddress,
|
|
177
176
|
chainId,
|
|
178
177
|
autoCreateHmacHeader,
|
|
@@ -1180,11 +1179,8 @@ class RestAuthenticatedClient {
|
|
|
1180
1179
|
});
|
|
1181
1180
|
// Internal methods exposed for advanced usage
|
|
1182
1181
|
async getContractAndChainId() {
|
|
1183
|
-
let { chainId, exchangeContractAddress, bridgeAdapterContractAddress
|
|
1184
|
-
if (!chainId ||
|
|
1185
|
-
!exchangeContractAddress ||
|
|
1186
|
-
!bridgeAdapterContractAddress ||
|
|
1187
|
-
!localDepositAdapterContractAddress) {
|
|
1182
|
+
let { chainId, exchangeContractAddress, bridgeAdapterContractAddress } = this.#config;
|
|
1183
|
+
if (!chainId || !exchangeContractAddress || !bridgeAdapterContractAddress) {
|
|
1188
1184
|
if (!this.#exchange) {
|
|
1189
1185
|
this.#exchange = await this.public.getExchange();
|
|
1190
1186
|
}
|
|
@@ -1199,22 +1195,14 @@ class RestAuthenticatedClient {
|
|
|
1199
1195
|
this.#exchange.bridgeAdapters.stargateBridgeAdapterV1KatanaContractAddress;
|
|
1200
1196
|
bridgeAdapterContractAddress ??=
|
|
1201
1197
|
this.#config.bridgeAdapterContractAddress;
|
|
1202
|
-
this.#config.localDepositAdapterContractAddress ??=
|
|
1203
|
-
this.#exchange.bridgeAdapters.localDepositAdapterV1KatanaContractAddress;
|
|
1204
|
-
localDepositAdapterContractAddress ??=
|
|
1205
|
-
this.#config.localDepositAdapterContractAddress;
|
|
1206
1198
|
}
|
|
1207
|
-
if (!chainId ||
|
|
1208
|
-
|
|
1209
|
-
!bridgeAdapterContractAddress ||
|
|
1210
|
-
!localDepositAdapterContractAddress) {
|
|
1211
|
-
throw new Error(`Could not determine chainId (${typeof chainId}) or exchangeContractAddress (${typeof exchangeContractAddress}) or bridgeAdapterContractAddress (${typeof bridgeAdapterContractAddress} or localDepositAdapterContractAddress (${typeof localDepositAdapterContractAddress})`);
|
|
1199
|
+
if (!chainId || !exchangeContractAddress || !bridgeAdapterContractAddress) {
|
|
1200
|
+
throw new Error(`Could not determine chainId (${typeof chainId}) or exchangeContractAddress (${typeof exchangeContractAddress}) or bridgeAdapterContractAddress (${typeof bridgeAdapterContractAddress})`);
|
|
1212
1201
|
}
|
|
1213
1202
|
return {
|
|
1214
1203
|
chainId,
|
|
1215
1204
|
exchangeContractAddress,
|
|
1216
1205
|
bridgeAdapterContractAddress,
|
|
1217
|
-
localDepositAdapterContractAddress,
|
|
1218
1206
|
};
|
|
1219
1207
|
}
|
|
1220
1208
|
/**
|
|
@@ -14,12 +14,12 @@ export type LoadVaultDepositorsResultStructOutput = [
|
|
|
14
14
|
initialDepositTimestampInS: bigint;
|
|
15
15
|
owedQuantity: bigint;
|
|
16
16
|
};
|
|
17
|
-
export type
|
|
17
|
+
export type LoadVaultWithdrawalQueueResultStruct = {
|
|
18
18
|
nonce: BigNumberish;
|
|
19
19
|
depositorWallet: AddressLike;
|
|
20
20
|
grossQuantity: BigNumberish;
|
|
21
21
|
};
|
|
22
|
-
export type
|
|
22
|
+
export type LoadVaultWithdrawalQueueResultStructOutput = [
|
|
23
23
|
nonce: bigint,
|
|
24
24
|
depositorWallet: string,
|
|
25
25
|
grossQuantity: bigint
|
|
@@ -63,18 +63,18 @@ export declare namespace FixedIncomeVaultProvider_v1 {
|
|
|
63
63
|
};
|
|
64
64
|
}
|
|
65
65
|
export interface FixedIncomeVaultProviderStateAggregator_v1Interface extends Interface {
|
|
66
|
-
getFunction(nameOrSignature: 'fixedIncomeVaultProvider' | '
|
|
66
|
+
getFunction(nameOrSignature: 'fixedIncomeVaultProvider' | 'loadVaultConfigurations' | 'loadVaultDepositorsByDepositorWallet' | 'loadVaultDepositorsByManagerWallet' | 'loadVaultDeposits' | 'loadVaultWithdrawalQueue'): FunctionFragment;
|
|
67
67
|
encodeFunctionData(functionFragment: 'fixedIncomeVaultProvider', values?: undefined): string;
|
|
68
|
-
encodeFunctionData(functionFragment: 'loadTotalQuantitiesOwedByVaults', values: [AddressLike[]]): string;
|
|
69
68
|
encodeFunctionData(functionFragment: 'loadVaultConfigurations', values: [AddressLike]): string;
|
|
70
69
|
encodeFunctionData(functionFragment: 'loadVaultDepositorsByDepositorWallet', values: [AddressLike[], AddressLike]): string;
|
|
71
70
|
encodeFunctionData(functionFragment: 'loadVaultDepositorsByManagerWallet', values: [AddressLike, AddressLike[]]): string;
|
|
71
|
+
encodeFunctionData(functionFragment: 'loadVaultDeposits', values: [AddressLike[]]): string;
|
|
72
72
|
encodeFunctionData(functionFragment: 'loadVaultWithdrawalQueue', values: [AddressLike]): string;
|
|
73
73
|
decodeFunctionResult(functionFragment: 'fixedIncomeVaultProvider', data: BytesLike): Result;
|
|
74
|
-
decodeFunctionResult(functionFragment: 'loadTotalQuantitiesOwedByVaults', data: BytesLike): Result;
|
|
75
74
|
decodeFunctionResult(functionFragment: 'loadVaultConfigurations', data: BytesLike): Result;
|
|
76
75
|
decodeFunctionResult(functionFragment: 'loadVaultDepositorsByDepositorWallet', data: BytesLike): Result;
|
|
77
76
|
decodeFunctionResult(functionFragment: 'loadVaultDepositorsByManagerWallet', data: BytesLike): Result;
|
|
77
|
+
decodeFunctionResult(functionFragment: 'loadVaultDeposits', data: BytesLike): Result;
|
|
78
78
|
decodeFunctionResult(functionFragment: 'loadVaultWithdrawalQueue', data: BytesLike): Result;
|
|
79
79
|
}
|
|
80
80
|
export interface FixedIncomeVaultProviderStateAggregator_v1 extends BaseContract {
|
|
@@ -91,11 +91,6 @@ export interface FixedIncomeVaultProviderStateAggregator_v1 extends BaseContract
|
|
|
91
91
|
listeners(eventName?: string): Promise<Array<Listener>>;
|
|
92
92
|
removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
|
|
93
93
|
fixedIncomeVaultProvider: TypedContractMethod<[], [string], 'view'>;
|
|
94
|
-
loadTotalQuantitiesOwedByVaults: TypedContractMethod<[
|
|
95
|
-
managerWallets: AddressLike[]
|
|
96
|
-
], [
|
|
97
|
-
bigint[]
|
|
98
|
-
], 'view'>;
|
|
99
94
|
loadVaultConfigurations: TypedContractMethod<[
|
|
100
95
|
managerWallet: AddressLike
|
|
101
96
|
], [
|
|
@@ -113,14 +108,18 @@ export interface FixedIncomeVaultProviderStateAggregator_v1 extends BaseContract
|
|
|
113
108
|
], [
|
|
114
109
|
LoadVaultDepositorsResultStructOutput[]
|
|
115
110
|
], 'view'>;
|
|
111
|
+
loadVaultDeposits: TypedContractMethod<[
|
|
112
|
+
managerWallets: AddressLike[]
|
|
113
|
+
], [
|
|
114
|
+
bigint[]
|
|
115
|
+
], 'view'>;
|
|
116
116
|
loadVaultWithdrawalQueue: TypedContractMethod<[
|
|
117
117
|
managerWallet: AddressLike
|
|
118
118
|
], [
|
|
119
|
-
|
|
119
|
+
LoadVaultWithdrawalQueueResultStructOutput[]
|
|
120
120
|
], 'view'>;
|
|
121
121
|
getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
|
|
122
122
|
getFunction(nameOrSignature: 'fixedIncomeVaultProvider'): TypedContractMethod<[], [string], 'view'>;
|
|
123
|
-
getFunction(nameOrSignature: 'loadTotalQuantitiesOwedByVaults'): TypedContractMethod<[managerWallets: AddressLike[]], [bigint[]], 'view'>;
|
|
124
123
|
getFunction(nameOrSignature: 'loadVaultConfigurations'): TypedContractMethod<[
|
|
125
124
|
managerWallet: AddressLike
|
|
126
125
|
], [
|
|
@@ -138,10 +137,11 @@ export interface FixedIncomeVaultProviderStateAggregator_v1 extends BaseContract
|
|
|
138
137
|
], [
|
|
139
138
|
LoadVaultDepositorsResultStructOutput[]
|
|
140
139
|
], 'view'>;
|
|
140
|
+
getFunction(nameOrSignature: 'loadVaultDeposits'): TypedContractMethod<[managerWallets: AddressLike[]], [bigint[]], 'view'>;
|
|
141
141
|
getFunction(nameOrSignature: 'loadVaultWithdrawalQueue'): TypedContractMethod<[
|
|
142
142
|
managerWallet: AddressLike
|
|
143
143
|
], [
|
|
144
|
-
|
|
144
|
+
LoadVaultWithdrawalQueueResultStructOutput[]
|
|
145
145
|
], 'view'>;
|
|
146
146
|
filters: {};
|
|
147
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FixedIncomeVaultProviderStateAggregator_v1.d.ts","sourceRoot":"","sources":["../../src/typechain-types/FixedIncomeVaultProviderStateAggregator_v1.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,QAAQ,EACT,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,+BAA+B,GAAG;IAC5C,SAAS,EAAE,YAAY,CAAC;IACxB,0BAA0B,EAAE,YAAY,CAAC;IACzC,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG;IAClD,SAAS,EAAE,MAAM;IACjB,0BAA0B,EAAE,MAAM;IAClC,YAAY,EAAE,MAAM;CACrB,GAAG;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B,EAAE,MAAM,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"FixedIncomeVaultProviderStateAggregator_v1.d.ts","sourceRoot":"","sources":["../../src/typechain-types/FixedIncomeVaultProviderStateAggregator_v1.ts"],"names":[],"mappings":"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"}
|