@babylonlabs-io/ts-sdk 0.14.0 → 0.15.1

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 (33) hide show
  1. package/dist/{errors-D19BQSaj.js → errors-2TV9gKO6.js} +151 -141
  2. package/dist/errors-2TV9gKO6.js.map +1 -0
  3. package/dist/errors-ryNiW8NM.cjs +2 -0
  4. package/dist/errors-ryNiW8NM.cjs.map +1 -0
  5. package/dist/index.cjs +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/tbv/core/index.cjs +1 -1
  8. package/dist/tbv/core/index.js +1 -1
  9. package/dist/tbv/core/managers/PeginManager.d.ts.map +1 -1
  10. package/dist/tbv/index.cjs +1 -1
  11. package/dist/tbv/index.js +1 -1
  12. package/dist/tbv/integrations/aave/index.cjs +1 -1
  13. package/dist/tbv/integrations/aave/index.cjs.map +1 -1
  14. package/dist/tbv/integrations/aave/index.d.ts +4 -4
  15. package/dist/tbv/integrations/aave/index.d.ts.map +1 -1
  16. package/dist/tbv/integrations/aave/index.js +312 -154
  17. package/dist/tbv/integrations/aave/index.js.map +1 -1
  18. package/dist/tbv/integrations/aave/utils/__tests__/cascadeSimulation.test.d.ts +2 -0
  19. package/dist/tbv/integrations/aave/utils/__tests__/cascadeSimulation.test.d.ts.map +1 -0
  20. package/dist/tbv/integrations/aave/utils/__tests__/optimalOrder.test.d.ts +2 -0
  21. package/dist/tbv/integrations/aave/utils/__tests__/optimalOrder.test.d.ts.map +1 -0
  22. package/dist/tbv/integrations/aave/utils/cascadeSimulation.d.ts +42 -0
  23. package/dist/tbv/integrations/aave/utils/cascadeSimulation.d.ts.map +1 -0
  24. package/dist/tbv/integrations/aave/utils/index.d.ts +4 -1
  25. package/dist/tbv/integrations/aave/utils/index.d.ts.map +1 -1
  26. package/dist/tbv/integrations/aave/utils/optimalOrder.d.ts +12 -0
  27. package/dist/tbv/integrations/aave/utils/optimalOrder.d.ts.map +1 -0
  28. package/dist/tbv/integrations/aave/utils/vaultSplit.d.ts +18 -1
  29. package/dist/tbv/integrations/aave/utils/vaultSplit.d.ts.map +1 -1
  30. package/package.json +3 -3
  31. package/dist/errors-D19BQSaj.js.map +0 -1
  32. package/dist/errors-vxNv_NdZ.cjs +0 -2
  33. package/dist/errors-vxNv_NdZ.cjs.map +0 -1
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./shared/index.cjs"),e=require("./challengeAssert-BpzES0KW.cjs"),r=require("@babylonlabs-io/babylon-tbv-rust-wasm"),t=require("./errors-vxNv_NdZ.cjs");exports.BitcoinNetworks=i.BitcoinNetworks;exports.BTC_DUST_SAT=e.BTC_DUST_SAT;exports.DUST_THRESHOLD=e.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=e.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=e.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=e.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=e.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=e.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=e.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=e.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=e.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.buildChallengeAssertPsbt=e.buildChallengeAssertPsbt;exports.buildDepositorPayoutPsbt=e.buildDepositorPayoutPsbt;exports.buildNoPayoutPsbt=e.buildNoPayoutPsbt;exports.buildPayoutPsbt=e.buildPayoutPsbt;exports.buildPeginInputPsbt=e.buildPeginInputPsbt;exports.buildPeginTxFromFundedPrePegin=e.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=e.buildPrePeginPsbt;exports.buildRefundPsbt=e.buildRefundPsbt;exports.computeNumLocalChallengers=e.computeNumLocalChallengers;exports.createPayoutScript=e.createPayoutScript;exports.deriveNativeSegwitAddress=e.deriveNativeSegwitAddress;exports.deriveTaprootAddress=e.deriveTaprootAddress;exports.ensureHexPrefix=e.ensureHexPrefix;exports.extractPayoutSignature=e.extractPayoutSignature;exports.extractPeginInputSignature=e.extractPeginInputSignature;exports.finalizePeginInputPsbt=e.finalizePeginInputPsbt;exports.fundPeginTransaction=e.fundPeginTransaction;exports.getNetwork=e.getNetwork;exports.hexToUint8Array=e.hexToUint8Array;exports.isAddressFromPublicKey=e.isAddressFromPublicKey;exports.isValidHex=e.isValidHex;exports.parseUnfundedWasmTransaction=e.parseUnfundedWasmTransaction;exports.peginOutputCount=e.peginOutputCount;exports.processPublicKeyToXOnly=e.processPublicKeyToXOnly;exports.rateBasedTxBufferFee=e.rateBasedTxBufferFee;exports.stripHexPrefix=e.stripHexPrefix;exports.toXOnly=e.toXOnly;exports.uint8ArrayToHex=e.uint8ArrayToHex;exports.validateWalletPubkey=e.validateWalletPubkey;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>r.computeMinClaimValue});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>r.deriveVaultId});exports.BTCVaultRegistryABI=t.BTCVaultRegistryABI;exports.BitcoinScriptType=t.BitcoinScriptType;exports.CONTRACT_ERRORS=t.CONTRACT_ERRORS;exports.MEMPOOL_API_URLS=t.MEMPOOL_API_URLS;exports.PayoutManager=t.PayoutManager;exports.PeginManager=t.PeginManager;exports.calculateBtcTxHash=t.calculateBtcTxHash;exports.computeWotsPkHash=t.computeWotsPkHash;exports.createSplitTransaction=t.createSplitTransaction;exports.createSplitTransactionPsbt=t.createSplitTransactionPsbt;exports.createTaprootScriptPathSignOptions=t.createTaprootScriptPathSignOptions;exports.deriveWotsKeypair=t.deriveWotsKeypair;exports.deriveWotsPkHash=t.deriveWotsPkHash;exports.extractErrorData=t.extractErrorData;exports.getAddressTxs=t.getAddressTxs;exports.getAddressUtxos=t.getAddressUtxos;exports.getContractErrorMessage=t.getContractErrorMessage;exports.getDustThreshold=t.getDustThreshold;exports.getMempoolApiUrl=t.getMempoolApiUrl;exports.getNetworkFees=t.getNetworkFees;exports.getPsbtInputFields=t.getPsbtInputFields;exports.getScriptType=t.getScriptType;exports.getTxHex=t.getTxHex;exports.getTxInfo=t.getTxInfo;exports.getUtxoInfo=t.getUtxoInfo;exports.handleContractError=t.handleContractError;exports.isKnownContractError=t.isKnownContractError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.keypairToPublicKey=t.keypairToPublicKey;exports.mnemonicToWotsSeed=t.mnemonicToWotsSeed;exports.pushTx=t.pushTx;exports.selectUtxosForPegin=t.selectUtxosForPegin;exports.shouldAddChangeOutput=t.shouldAddChangeOutput;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./shared/index.cjs"),e=require("./challengeAssert-BpzES0KW.cjs"),r=require("@babylonlabs-io/babylon-tbv-rust-wasm"),t=require("./errors-ryNiW8NM.cjs");exports.BitcoinNetworks=i.BitcoinNetworks;exports.BTC_DUST_SAT=e.BTC_DUST_SAT;exports.DUST_THRESHOLD=e.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=e.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=e.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=e.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=e.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=e.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=e.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=e.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=e.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.buildChallengeAssertPsbt=e.buildChallengeAssertPsbt;exports.buildDepositorPayoutPsbt=e.buildDepositorPayoutPsbt;exports.buildNoPayoutPsbt=e.buildNoPayoutPsbt;exports.buildPayoutPsbt=e.buildPayoutPsbt;exports.buildPeginInputPsbt=e.buildPeginInputPsbt;exports.buildPeginTxFromFundedPrePegin=e.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=e.buildPrePeginPsbt;exports.buildRefundPsbt=e.buildRefundPsbt;exports.computeNumLocalChallengers=e.computeNumLocalChallengers;exports.createPayoutScript=e.createPayoutScript;exports.deriveNativeSegwitAddress=e.deriveNativeSegwitAddress;exports.deriveTaprootAddress=e.deriveTaprootAddress;exports.ensureHexPrefix=e.ensureHexPrefix;exports.extractPayoutSignature=e.extractPayoutSignature;exports.extractPeginInputSignature=e.extractPeginInputSignature;exports.finalizePeginInputPsbt=e.finalizePeginInputPsbt;exports.fundPeginTransaction=e.fundPeginTransaction;exports.getNetwork=e.getNetwork;exports.hexToUint8Array=e.hexToUint8Array;exports.isAddressFromPublicKey=e.isAddressFromPublicKey;exports.isValidHex=e.isValidHex;exports.parseUnfundedWasmTransaction=e.parseUnfundedWasmTransaction;exports.peginOutputCount=e.peginOutputCount;exports.processPublicKeyToXOnly=e.processPublicKeyToXOnly;exports.rateBasedTxBufferFee=e.rateBasedTxBufferFee;exports.stripHexPrefix=e.stripHexPrefix;exports.toXOnly=e.toXOnly;exports.uint8ArrayToHex=e.uint8ArrayToHex;exports.validateWalletPubkey=e.validateWalletPubkey;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>r.computeMinClaimValue});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>r.deriveVaultId});exports.BTCVaultRegistryABI=t.BTCVaultRegistryABI;exports.BitcoinScriptType=t.BitcoinScriptType;exports.CONTRACT_ERRORS=t.CONTRACT_ERRORS;exports.MEMPOOL_API_URLS=t.MEMPOOL_API_URLS;exports.PayoutManager=t.PayoutManager;exports.PeginManager=t.PeginManager;exports.calculateBtcTxHash=t.calculateBtcTxHash;exports.computeWotsPkHash=t.computeWotsPkHash;exports.createSplitTransaction=t.createSplitTransaction;exports.createSplitTransactionPsbt=t.createSplitTransactionPsbt;exports.createTaprootScriptPathSignOptions=t.createTaprootScriptPathSignOptions;exports.deriveWotsKeypair=t.deriveWotsKeypair;exports.deriveWotsPkHash=t.deriveWotsPkHash;exports.extractErrorData=t.extractErrorData;exports.getAddressTxs=t.getAddressTxs;exports.getAddressUtxos=t.getAddressUtxos;exports.getContractErrorMessage=t.getContractErrorMessage;exports.getDustThreshold=t.getDustThreshold;exports.getMempoolApiUrl=t.getMempoolApiUrl;exports.getNetworkFees=t.getNetworkFees;exports.getPsbtInputFields=t.getPsbtInputFields;exports.getScriptType=t.getScriptType;exports.getTxHex=t.getTxHex;exports.getTxInfo=t.getTxInfo;exports.getUtxoInfo=t.getUtxoInfo;exports.handleContractError=t.handleContractError;exports.isKnownContractError=t.isKnownContractError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.keypairToPublicKey=t.keypairToPublicKey;exports.mnemonicToWotsSeed=t.mnemonicToWotsSeed;exports.pushTx=t.pushTx;exports.selectUtxosForPegin=t.selectUtxosForPegin;exports.shouldAddChangeOutput=t.shouldAddChangeOutput;
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { BitcoinNetworks as e } from "./shared/index.js";
2
2
  import { B as r, D as o, F as i, L as n, M as u, P as T, z as P, S as d, T as l, W as c, l as p, j as g, k as E, h as _, d as A, a as x, b as S, g as b, c as y, m as I, n as R, o as m, s as C, i as F, e as U, f as O, E as f, G as h, p as L, q as M, r as H, C as N, A as B, t as D, y as W, u as k, v, w, x as X } from "./challengeAssert-CenzzhZU.js";
3
3
  import { computeMinClaimValue as V, deriveVaultId as Y } from "@babylonlabs-io/babylon-tbv-rust-wasm";
4
- import { r as z, B as Z, C as j, M as q, i as J, P as Q, c as $, A as aa, b as sa, d as ea, h as ta, y as ra, D as oa, t as ia, j as na, k as ua, u as Ta, g as Pa, l as da, m as la, f as ca, e as pa, n as ga, o as Ea, p as _a, w as Aa, v as xa, E as Sa, z as ba, x as ya, q as Ia, s as Ra, a as ma } from "./errors-D19BQSaj.js";
4
+ import { r as z, B as Z, C as j, M as q, i as J, P as Q, c as $, A as aa, b as sa, d as ea, h as ta, y as ra, D as oa, t as ia, j as na, k as ua, u as Ta, g as Pa, l as da, m as la, f as ca, e as pa, n as ga, o as Ea, p as _a, w as Aa, v as xa, E as Sa, z as ba, x as ya, q as Ia, s as Ra, a as ma } from "./errors-2TV9gKO6.js";
5
5
  export {
6
6
  z as BTCVaultRegistryABI,
7
7
  r as BTC_DUST_SAT,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../challengeAssert-BpzES0KW.cjs"),r=require("@babylonlabs-io/babylon-tbv-rust-wasm"),t=require("../../errors-vxNv_NdZ.cjs");exports.BTC_DUST_SAT=e.BTC_DUST_SAT;exports.DUST_THRESHOLD=e.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=e.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=e.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=e.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=e.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=e.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=e.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=e.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=e.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.buildChallengeAssertPsbt=e.buildChallengeAssertPsbt;exports.buildDepositorPayoutPsbt=e.buildDepositorPayoutPsbt;exports.buildNoPayoutPsbt=e.buildNoPayoutPsbt;exports.buildPayoutPsbt=e.buildPayoutPsbt;exports.buildPeginInputPsbt=e.buildPeginInputPsbt;exports.buildPeginTxFromFundedPrePegin=e.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=e.buildPrePeginPsbt;exports.buildRefundPsbt=e.buildRefundPsbt;exports.computeNumLocalChallengers=e.computeNumLocalChallengers;exports.createPayoutScript=e.createPayoutScript;exports.deriveNativeSegwitAddress=e.deriveNativeSegwitAddress;exports.deriveTaprootAddress=e.deriveTaprootAddress;exports.ensureHexPrefix=e.ensureHexPrefix;exports.extractPayoutSignature=e.extractPayoutSignature;exports.extractPeginInputSignature=e.extractPeginInputSignature;exports.finalizePeginInputPsbt=e.finalizePeginInputPsbt;exports.fundPeginTransaction=e.fundPeginTransaction;exports.getNetwork=e.getNetwork;exports.hexToUint8Array=e.hexToUint8Array;exports.isAddressFromPublicKey=e.isAddressFromPublicKey;exports.isValidHex=e.isValidHex;exports.parseUnfundedWasmTransaction=e.parseUnfundedWasmTransaction;exports.peginOutputCount=e.peginOutputCount;exports.processPublicKeyToXOnly=e.processPublicKeyToXOnly;exports.rateBasedTxBufferFee=e.rateBasedTxBufferFee;exports.stripHexPrefix=e.stripHexPrefix;exports.toXOnly=e.toXOnly;exports.uint8ArrayToHex=e.uint8ArrayToHex;exports.validateWalletPubkey=e.validateWalletPubkey;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>r.computeMinClaimValue});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>r.deriveVaultId});exports.BTCVaultRegistryABI=t.BTCVaultRegistryABI;exports.BitcoinScriptType=t.BitcoinScriptType;exports.CONTRACT_ERRORS=t.CONTRACT_ERRORS;exports.MEMPOOL_API_URLS=t.MEMPOOL_API_URLS;exports.PayoutManager=t.PayoutManager;exports.PeginManager=t.PeginManager;exports.calculateBtcTxHash=t.calculateBtcTxHash;exports.computeWotsPkHash=t.computeWotsPkHash;exports.createSplitTransaction=t.createSplitTransaction;exports.createSplitTransactionPsbt=t.createSplitTransactionPsbt;exports.createTaprootScriptPathSignOptions=t.createTaprootScriptPathSignOptions;exports.deriveWotsKeypair=t.deriveWotsKeypair;exports.deriveWotsPkHash=t.deriveWotsPkHash;exports.extractErrorData=t.extractErrorData;exports.getAddressTxs=t.getAddressTxs;exports.getAddressUtxos=t.getAddressUtxos;exports.getContractErrorMessage=t.getContractErrorMessage;exports.getDustThreshold=t.getDustThreshold;exports.getMempoolApiUrl=t.getMempoolApiUrl;exports.getNetworkFees=t.getNetworkFees;exports.getPsbtInputFields=t.getPsbtInputFields;exports.getScriptType=t.getScriptType;exports.getTxHex=t.getTxHex;exports.getTxInfo=t.getTxInfo;exports.getUtxoInfo=t.getUtxoInfo;exports.handleContractError=t.handleContractError;exports.isKnownContractError=t.isKnownContractError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.keypairToPublicKey=t.keypairToPublicKey;exports.mnemonicToWotsSeed=t.mnemonicToWotsSeed;exports.pushTx=t.pushTx;exports.selectUtxosForPegin=t.selectUtxosForPegin;exports.shouldAddChangeOutput=t.shouldAddChangeOutput;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../challengeAssert-BpzES0KW.cjs"),r=require("@babylonlabs-io/babylon-tbv-rust-wasm"),t=require("../../errors-ryNiW8NM.cjs");exports.BTC_DUST_SAT=e.BTC_DUST_SAT;exports.DUST_THRESHOLD=e.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=e.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=e.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=e.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=e.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=e.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=e.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=e.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=e.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.buildChallengeAssertPsbt=e.buildChallengeAssertPsbt;exports.buildDepositorPayoutPsbt=e.buildDepositorPayoutPsbt;exports.buildNoPayoutPsbt=e.buildNoPayoutPsbt;exports.buildPayoutPsbt=e.buildPayoutPsbt;exports.buildPeginInputPsbt=e.buildPeginInputPsbt;exports.buildPeginTxFromFundedPrePegin=e.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=e.buildPrePeginPsbt;exports.buildRefundPsbt=e.buildRefundPsbt;exports.computeNumLocalChallengers=e.computeNumLocalChallengers;exports.createPayoutScript=e.createPayoutScript;exports.deriveNativeSegwitAddress=e.deriveNativeSegwitAddress;exports.deriveTaprootAddress=e.deriveTaprootAddress;exports.ensureHexPrefix=e.ensureHexPrefix;exports.extractPayoutSignature=e.extractPayoutSignature;exports.extractPeginInputSignature=e.extractPeginInputSignature;exports.finalizePeginInputPsbt=e.finalizePeginInputPsbt;exports.fundPeginTransaction=e.fundPeginTransaction;exports.getNetwork=e.getNetwork;exports.hexToUint8Array=e.hexToUint8Array;exports.isAddressFromPublicKey=e.isAddressFromPublicKey;exports.isValidHex=e.isValidHex;exports.parseUnfundedWasmTransaction=e.parseUnfundedWasmTransaction;exports.peginOutputCount=e.peginOutputCount;exports.processPublicKeyToXOnly=e.processPublicKeyToXOnly;exports.rateBasedTxBufferFee=e.rateBasedTxBufferFee;exports.stripHexPrefix=e.stripHexPrefix;exports.toXOnly=e.toXOnly;exports.uint8ArrayToHex=e.uint8ArrayToHex;exports.validateWalletPubkey=e.validateWalletPubkey;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>r.computeMinClaimValue});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>r.deriveVaultId});exports.BTCVaultRegistryABI=t.BTCVaultRegistryABI;exports.BitcoinScriptType=t.BitcoinScriptType;exports.CONTRACT_ERRORS=t.CONTRACT_ERRORS;exports.MEMPOOL_API_URLS=t.MEMPOOL_API_URLS;exports.PayoutManager=t.PayoutManager;exports.PeginManager=t.PeginManager;exports.calculateBtcTxHash=t.calculateBtcTxHash;exports.computeWotsPkHash=t.computeWotsPkHash;exports.createSplitTransaction=t.createSplitTransaction;exports.createSplitTransactionPsbt=t.createSplitTransactionPsbt;exports.createTaprootScriptPathSignOptions=t.createTaprootScriptPathSignOptions;exports.deriveWotsKeypair=t.deriveWotsKeypair;exports.deriveWotsPkHash=t.deriveWotsPkHash;exports.extractErrorData=t.extractErrorData;exports.getAddressTxs=t.getAddressTxs;exports.getAddressUtxos=t.getAddressUtxos;exports.getContractErrorMessage=t.getContractErrorMessage;exports.getDustThreshold=t.getDustThreshold;exports.getMempoolApiUrl=t.getMempoolApiUrl;exports.getNetworkFees=t.getNetworkFees;exports.getPsbtInputFields=t.getPsbtInputFields;exports.getScriptType=t.getScriptType;exports.getTxHex=t.getTxHex;exports.getTxInfo=t.getTxInfo;exports.getUtxoInfo=t.getUtxoInfo;exports.handleContractError=t.handleContractError;exports.isKnownContractError=t.isKnownContractError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.keypairToPublicKey=t.keypairToPublicKey;exports.mnemonicToWotsSeed=t.mnemonicToWotsSeed;exports.pushTx=t.pushTx;exports.selectUtxosForPegin=t.selectUtxosForPegin;exports.shouldAddChangeOutput=t.shouldAddChangeOutput;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,6 +1,6 @@
1
1
  import { B as e, D as t, F as r, L as i, M as o, P as n, z as u, S as T, T as P, W as d, l, j as c, k as g, h as p, d as E, a as _, b as A, g as S, c as x, m as b, n as y, o as I, s as R, i as C, e as F, f as U, E as m, G as O, p as h, q as f, r as L, C as M, A as H, t as N, y as B, u as D, v as W, w as v, x as k } from "../../challengeAssert-CenzzhZU.js";
2
2
  import { computeMinClaimValue as X, deriveVaultId as K } from "@babylonlabs-io/babylon-tbv-rust-wasm";
3
- import { r as Y, B as G, C as z, M as Z, i as j, P as q, c as J, A as Q, b as $, d as aa, h as sa, y as ea, D as ta, t as ra, j as ia, k as oa, u as na, g as ua, l as Ta, m as Pa, f as da, e as la, n as ca, o as ga, p as pa, w as Ea, v as _a, E as Aa, z as Sa, x as xa, q as ba, s as ya, a as Ia } from "../../errors-D19BQSaj.js";
3
+ import { r as Y, B as G, C as z, M as Z, i as j, P as q, c as J, A as Q, b as $, d as aa, h as sa, y as ea, D as ta, t as ra, j as ia, k as oa, u as na, g as ua, l as Ta, m as Pa, f as da, e as la, n as ca, o as ga, p as pa, w as Ea, v as _a, E as Aa, z as Sa, x as xa, q as ba, s as ya, a as Ia } from "../../errors-2TV9gKO6.js";
4
4
  export {
5
5
  Y as BTCVaultRegistryABI,
6
6
  e as BTC_DUST_SAT,
@@ -1 +1 @@
1
- {"version":3,"file":"PeginManager.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/managers/PeginManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PeginManager.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/managers/PeginManager.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../challengeAssert-BpzES0KW.cjs"),r=require("@babylonlabs-io/babylon-tbv-rust-wasm"),t=require("../errors-vxNv_NdZ.cjs");exports.BTC_DUST_SAT=e.BTC_DUST_SAT;exports.DUST_THRESHOLD=e.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=e.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=e.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=e.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=e.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=e.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=e.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=e.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=e.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.buildChallengeAssertPsbt=e.buildChallengeAssertPsbt;exports.buildDepositorPayoutPsbt=e.buildDepositorPayoutPsbt;exports.buildNoPayoutPsbt=e.buildNoPayoutPsbt;exports.buildPayoutPsbt=e.buildPayoutPsbt;exports.buildPeginInputPsbt=e.buildPeginInputPsbt;exports.buildPeginTxFromFundedPrePegin=e.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=e.buildPrePeginPsbt;exports.buildRefundPsbt=e.buildRefundPsbt;exports.computeNumLocalChallengers=e.computeNumLocalChallengers;exports.createPayoutScript=e.createPayoutScript;exports.deriveNativeSegwitAddress=e.deriveNativeSegwitAddress;exports.deriveTaprootAddress=e.deriveTaprootAddress;exports.ensureHexPrefix=e.ensureHexPrefix;exports.extractPayoutSignature=e.extractPayoutSignature;exports.extractPeginInputSignature=e.extractPeginInputSignature;exports.finalizePeginInputPsbt=e.finalizePeginInputPsbt;exports.fundPeginTransaction=e.fundPeginTransaction;exports.getNetwork=e.getNetwork;exports.hexToUint8Array=e.hexToUint8Array;exports.isAddressFromPublicKey=e.isAddressFromPublicKey;exports.isValidHex=e.isValidHex;exports.parseUnfundedWasmTransaction=e.parseUnfundedWasmTransaction;exports.peginOutputCount=e.peginOutputCount;exports.processPublicKeyToXOnly=e.processPublicKeyToXOnly;exports.rateBasedTxBufferFee=e.rateBasedTxBufferFee;exports.stripHexPrefix=e.stripHexPrefix;exports.toXOnly=e.toXOnly;exports.uint8ArrayToHex=e.uint8ArrayToHex;exports.validateWalletPubkey=e.validateWalletPubkey;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>r.computeMinClaimValue});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>r.deriveVaultId});exports.BTCVaultRegistryABI=t.BTCVaultRegistryABI;exports.BitcoinScriptType=t.BitcoinScriptType;exports.CONTRACT_ERRORS=t.CONTRACT_ERRORS;exports.MEMPOOL_API_URLS=t.MEMPOOL_API_URLS;exports.PayoutManager=t.PayoutManager;exports.PeginManager=t.PeginManager;exports.calculateBtcTxHash=t.calculateBtcTxHash;exports.computeWotsPkHash=t.computeWotsPkHash;exports.createSplitTransaction=t.createSplitTransaction;exports.createSplitTransactionPsbt=t.createSplitTransactionPsbt;exports.createTaprootScriptPathSignOptions=t.createTaprootScriptPathSignOptions;exports.deriveWotsKeypair=t.deriveWotsKeypair;exports.deriveWotsPkHash=t.deriveWotsPkHash;exports.extractErrorData=t.extractErrorData;exports.getAddressTxs=t.getAddressTxs;exports.getAddressUtxos=t.getAddressUtxos;exports.getContractErrorMessage=t.getContractErrorMessage;exports.getDustThreshold=t.getDustThreshold;exports.getMempoolApiUrl=t.getMempoolApiUrl;exports.getNetworkFees=t.getNetworkFees;exports.getPsbtInputFields=t.getPsbtInputFields;exports.getScriptType=t.getScriptType;exports.getTxHex=t.getTxHex;exports.getTxInfo=t.getTxInfo;exports.getUtxoInfo=t.getUtxoInfo;exports.handleContractError=t.handleContractError;exports.isKnownContractError=t.isKnownContractError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.keypairToPublicKey=t.keypairToPublicKey;exports.mnemonicToWotsSeed=t.mnemonicToWotsSeed;exports.pushTx=t.pushTx;exports.selectUtxosForPegin=t.selectUtxosForPegin;exports.shouldAddChangeOutput=t.shouldAddChangeOutput;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../challengeAssert-BpzES0KW.cjs"),r=require("@babylonlabs-io/babylon-tbv-rust-wasm"),t=require("../errors-ryNiW8NM.cjs");exports.BTC_DUST_SAT=e.BTC_DUST_SAT;exports.DUST_THRESHOLD=e.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=e.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=e.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=e.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=e.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=e.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=e.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=e.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=e.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.buildChallengeAssertPsbt=e.buildChallengeAssertPsbt;exports.buildDepositorPayoutPsbt=e.buildDepositorPayoutPsbt;exports.buildNoPayoutPsbt=e.buildNoPayoutPsbt;exports.buildPayoutPsbt=e.buildPayoutPsbt;exports.buildPeginInputPsbt=e.buildPeginInputPsbt;exports.buildPeginTxFromFundedPrePegin=e.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=e.buildPrePeginPsbt;exports.buildRefundPsbt=e.buildRefundPsbt;exports.computeNumLocalChallengers=e.computeNumLocalChallengers;exports.createPayoutScript=e.createPayoutScript;exports.deriveNativeSegwitAddress=e.deriveNativeSegwitAddress;exports.deriveTaprootAddress=e.deriveTaprootAddress;exports.ensureHexPrefix=e.ensureHexPrefix;exports.extractPayoutSignature=e.extractPayoutSignature;exports.extractPeginInputSignature=e.extractPeginInputSignature;exports.finalizePeginInputPsbt=e.finalizePeginInputPsbt;exports.fundPeginTransaction=e.fundPeginTransaction;exports.getNetwork=e.getNetwork;exports.hexToUint8Array=e.hexToUint8Array;exports.isAddressFromPublicKey=e.isAddressFromPublicKey;exports.isValidHex=e.isValidHex;exports.parseUnfundedWasmTransaction=e.parseUnfundedWasmTransaction;exports.peginOutputCount=e.peginOutputCount;exports.processPublicKeyToXOnly=e.processPublicKeyToXOnly;exports.rateBasedTxBufferFee=e.rateBasedTxBufferFee;exports.stripHexPrefix=e.stripHexPrefix;exports.toXOnly=e.toXOnly;exports.uint8ArrayToHex=e.uint8ArrayToHex;exports.validateWalletPubkey=e.validateWalletPubkey;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>r.computeMinClaimValue});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>r.deriveVaultId});exports.BTCVaultRegistryABI=t.BTCVaultRegistryABI;exports.BitcoinScriptType=t.BitcoinScriptType;exports.CONTRACT_ERRORS=t.CONTRACT_ERRORS;exports.MEMPOOL_API_URLS=t.MEMPOOL_API_URLS;exports.PayoutManager=t.PayoutManager;exports.PeginManager=t.PeginManager;exports.calculateBtcTxHash=t.calculateBtcTxHash;exports.computeWotsPkHash=t.computeWotsPkHash;exports.createSplitTransaction=t.createSplitTransaction;exports.createSplitTransactionPsbt=t.createSplitTransactionPsbt;exports.createTaprootScriptPathSignOptions=t.createTaprootScriptPathSignOptions;exports.deriveWotsKeypair=t.deriveWotsKeypair;exports.deriveWotsPkHash=t.deriveWotsPkHash;exports.extractErrorData=t.extractErrorData;exports.getAddressTxs=t.getAddressTxs;exports.getAddressUtxos=t.getAddressUtxos;exports.getContractErrorMessage=t.getContractErrorMessage;exports.getDustThreshold=t.getDustThreshold;exports.getMempoolApiUrl=t.getMempoolApiUrl;exports.getNetworkFees=t.getNetworkFees;exports.getPsbtInputFields=t.getPsbtInputFields;exports.getScriptType=t.getScriptType;exports.getTxHex=t.getTxHex;exports.getTxInfo=t.getTxInfo;exports.getUtxoInfo=t.getUtxoInfo;exports.handleContractError=t.handleContractError;exports.isKnownContractError=t.isKnownContractError;exports.isWotsMismatchError=t.isWotsMismatchError;exports.keypairToPublicKey=t.keypairToPublicKey;exports.mnemonicToWotsSeed=t.mnemonicToWotsSeed;exports.pushTx=t.pushTx;exports.selectUtxosForPegin=t.selectUtxosForPegin;exports.shouldAddChangeOutput=t.shouldAddChangeOutput;
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/tbv/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { B as e, D as t, F as r, L as i, M as o, P as n, z as u, S as T, T as P, W as d, l, j as c, k as g, h as p, d as E, a as _, b as A, g as S, c as x, m as b, n as y, o as I, s as R, i as C, e as F, f as U, E as m, G as O, p as h, q as f, r as L, C as M, A as H, t as N, y as B, u as D, v as W, w as v, x as k } from "../challengeAssert-CenzzhZU.js";
2
2
  import { computeMinClaimValue as X, deriveVaultId as K } from "@babylonlabs-io/babylon-tbv-rust-wasm";
3
- import { r as Y, B as G, C as z, M as Z, i as j, P as q, c as J, A as Q, b as $, d as aa, h as sa, y as ea, D as ta, t as ra, j as ia, k as oa, u as na, g as ua, l as Ta, m as Pa, f as da, e as la, n as ca, o as ga, p as pa, w as Ea, v as _a, E as Aa, z as Sa, x as xa, q as ba, s as ya, a as Ia } from "../errors-D19BQSaj.js";
3
+ import { r as Y, B as G, C as z, M as Z, i as j, P as q, c as J, A as Q, b as $, d as aa, h as sa, y as ea, D as ta, t as ra, j as ia, k as oa, u as na, g as ua, l as Ta, m as Pa, f as da, e as la, n as ca, o as ga, p as pa, w as Ea, v as _a, E as Aa, z as Sa, x as xa, q as ba, s as ya, a as Ia } from "../errors-2TV9gKO6.js";
4
4
  export {
5
5
  Y as BTCVaultRegistryABI,
6
6
  e as BTC_DUST_SAT,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("viem"),T={WITHDRAW_COLLATERALS:"withdrawCollaterals",BORROW:"borrowFromCorePosition",REPAY:"repayToCorePosition",REORDER_VAULTS:"reorderVaults"},x=8,h=6,V=100,g=1e4,C=26,I=18,M=1.5,E=1.2,L=10000n,S=1100000000000000000n,P=7500n,_=1050000000000000000n,o=JSON.parse('[{"type":"constructor","inputs":[{"name":"vaultBTC_","type":"address","internalType":"address"},{"name":"coreSpoke_","type":"address","internalType":"address"},{"name":"btcVaultRegistry_","type":"address","internalType":"address"},{"name":"applicationRegistry_","type":"address","internalType":"address"},{"name":"proxyManager_","type":"address","internalType":"address"},{"name":"coreVaultBtcReserveId_","type":"uint256","internalType":"uint256"},{"name":"coreWbtcReserveId_","type":"uint256","internalType":"uint256"},{"name":"protocolParams_","type":"address","internalType":"address"},{"name":"llpRegistry_","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"APP_REGISTRY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IApplicationRegistry"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_CORE_SPOKE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ITBVAaveSpoke"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_CORE_VAULT_BTC_RESERVE_ID","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_CORE_WBTC_RESERVE_ID","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_REGISTRY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IBTCVaultRegistry"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"TIMELOCK_UPGRADER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"UPGRADE_INTERFACE_VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"VAULT_BTC","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IVaultBTC"}],"stateMutability":"view"},{"type":"function","name":"activateVault","inputs":[{"name":"vaultId","type":"bytes32","internalType":"bytes32"},{"name":"vault","type":"tuple","internalType":"struct IBTCVaultRegistry.BTCVault","components":[{"name":"depositor","type":"address","internalType":"address"},{"name":"depositorBtcPubKey","type":"bytes32","internalType":"bytes32"},{"name":"depositorSignedPeginTx","type":"bytes","internalType":"bytes"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"vaultProvider","type":"address","internalType":"address"},{"name":"status","type":"uint8","internalType":"enum IBTCVaultRegistry.BTCVaultStatus"},{"name":"applicationEntryPoint","type":"address","internalType":"address"},{"name":"universalChallengersVersion","type":"uint16","internalType":"uint16"},{"name":"appVaultKeepersVersion","type":"uint16","internalType":"uint16"},{"name":"offchainParamsVersion","type":"uint16","internalType":"uint16"},{"name":"createdAt","type":"uint256","internalType":"uint256"},{"name":"verifiedAt","type":"uint256","internalType":"uint256"},{"name":"depositorWotsPkHash","type":"bytes32","internalType":"bytes32"},{"name":"hashlock","type":"bytes32","internalType":"bytes32"},{"name":"htlcVout","type":"uint8","internalType":"uint8"},{"name":"depositorPopSignature","type":"bytes","internalType":"bytes"},{"name":"prePeginTxHash","type":"bytes32","internalType":"bytes32"}]},{"name":"activationMetadata","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applicationRecipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"borrowFromCorePosition","inputs":[{"name":"debtReserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"receiver","type":"address","internalType":"address"}],"outputs":[{"name":"borrowedShares","type":"uint256","internalType":"uint256"},{"name":"borrowedAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"freeze","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fullPause","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getFairnessPaymentTokenConfig","inputs":[],"outputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"token","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getInterestFeeIndex","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"interestFeeIndex","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPosition","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"position","type":"tuple","internalType":"struct IAaveIntegrationAdapter.MarketPosition","components":[{"name":"vaultIds","type":"bytes32[]","internalType":"bytes32[]"},{"name":"totalCollateralBTC","type":"uint256","internalType":"uint256"},{"name":"proxyContract","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getPositionSizeParams","inputs":[],"outputs":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"maxVaultsPerPosition","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getVaultUsageStatus","inputs":[{"name":"vaultId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"status","type":"uint8","internalType":"enum AaveVaultHandler.VaultUsageStatus"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"initialTBVAdmin","type":"address","internalType":"address"},{"name":"_applicationRecipient","type":"address","internalType":"address"},{"name":"_liquidationRedemptionFeeBps","type":"uint256","internalType":"uint256"},{"name":"_initialInterestFeeBps","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"interestFeeBps","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"isValidPositionResolver","inputs":[{"name":"resolver","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"liquidate","inputs":[{"name":"borrower","type":"address","internalType":"address"},{"name":"directBtcRedeemKey","type":"bytes32","internalType":"bytes32"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"},{"name":"priorityOrder","type":"uint256[]","internalType":"uint256[]"}],"outputs":[{"name":"vaultIds","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"liquidateWithLLP","inputs":[{"name":"borrower","type":"address","internalType":"address"},{"name":"llp","type":"address","internalType":"address"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"},{"name":"priorityOrder","type":"uint256[]","internalType":"uint256[]"},{"name":"requestedTokens","type":"tuple[]","internalType":"struct TokenAmountLib.TokenAmount[]","components":[{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"vaultIds","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"liquidationRedemptionFeeBps","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pauseState","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ITBVPausable.PauseState"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"redeemVaultFromLLP","inputs":[{"name":"vaultId","type":"bytes32","internalType":"bytes32"},{"name":"btcRedeemKey","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerResolver","inputs":[{"name":"resolver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeResolver","inputs":[{"name":"resolver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"reorderVaults","inputs":[{"name":"permuted","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"repayToCorePosition","inputs":[{"name":"borrower","type":"address","internalType":"address"},{"name":"debtReserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"repaidFee","type":"uint256","internalType":"uint256"},{"name":"repaidShares","type":"uint256","internalType":"uint256"},{"name":"repaidAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setApplicationRecipient","inputs":[{"name":"_applicationRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setInterestFeeBps","inputs":[{"name":"feeBps","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setLiquidationRedemptionFeeBps","inputs":[{"name":"feeBps","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPositionSizeParams","inputs":[{"name":"params","type":"tuple","internalType":"struct IAaveIntegrationAdapter.PositionSizeParams","components":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"maxVaultsPerPosition","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"unfreeze","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unpause","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"vaultOwner","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"withdrawCollaterals","inputs":[{"name":"vaultsToWithdraw","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"amountWithdrawn","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"event","name":"AdapterApplicationRecipientUpdated","inputs":[{"name":"applicationFeeRecipient","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AdapterLiquidationRedemptionFeeUpdated","inputs":[{"name":"liquidationRedemptionFeeBps","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"AdapterPositionResolverAdded","inputs":[{"name":"positionResolver","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AdapterPositionResolverRemoved","inputs":[{"name":"positionResolver","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BTCVaultCoreSpokeLiquidated","inputs":[{"name":"depositor","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"amountCollateralSeized","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"valueCollateralSeized","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"valueDebtRepaid","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BorrowedFromPosition","inputs":[{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"debtReserveId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"receiver","type":"address","indexed":true,"internalType":"address"},{"name":"borrowAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CollateralAdded","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"CollateralWithdrawn","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"FairnessPaymentFailed","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"protocolRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"FairnessPaymentPaid","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InterestFeeUpdated","inputs":[{"name":"newInterestFeeBps","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"LiquidationSettledViaLLP","inputs":[{"name":"llp","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"vaultIds","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"payouts","type":"tuple[]","indexed":false,"internalType":"struct TokenAmountLib.TokenAmount[]","components":[{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"PausedWith","inputs":[{"name":"state","type":"uint8","indexed":true,"internalType":"enum ITBVPausable.PauseState"},{"name":"pauser","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PositionSizeParamsUpdated","inputs":[{"name":"newParams","type":"tuple","indexed":false,"internalType":"struct IAaveIntegrationAdapter.PositionSizeParams","components":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"maxVaultsPerPosition","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"RepaidFromPosition","inputs":[{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"debtReserveId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"repayAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Unfrozen","inputs":[{"name":"pauser","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Unpaused","inputs":[{"name":"pauser","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UserProxyCreated","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"proxy","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"VaultLiquidated","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"liquidator","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"VaultMarkedCollateralized","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"VaultMarkedLLPOwned","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"VaultMarkedRedeemed","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"VaultOwnershipChanged","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"VaultsReordered","inputs":[{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"newVaults","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"type":"error","name":"AddressEmptyCode","inputs":[{"name":"target","type":"address","internalType":"address"}]},{"type":"error","name":"ERC1967InvalidImplementation","inputs":[{"name":"implementation","type":"address","internalType":"address"}]},{"type":"error","name":"ERC1967NonPayable","inputs":[]},{"type":"error","name":"EmptyArray","inputs":[]},{"type":"error","name":"FailedCall","inputs":[]},{"type":"error","name":"FairnessDebtRepaymentTargetNotMet","inputs":[{"name":"target","type":"uint256","internalType":"uint256"},{"name":"actual","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"IncompleteWithdrawal","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"actual","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidActivationMetadataVersion","inputs":[]},{"type":"error","name":"InvalidAmount","inputs":[]},{"type":"error","name":"InvalidAmountsLength","inputs":[{"name":"amountsLength","type":"uint256","internalType":"uint256"},{"name":"reserveCount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidInterestFeeBps","inputs":[]},{"type":"error","name":"InvalidOraclePrice","inputs":[]},{"type":"error","name":"InvalidPositionResolver","inputs":[]},{"type":"error","name":"InvalidPriorityOrderLength","inputs":[{"name":"priorityOrderLength","type":"uint256","internalType":"uint256"},{"name":"amountsLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidProxyContract","inputs":[]},{"type":"error","name":"InvalidReserveId","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidVaultStatus","inputs":[]},{"type":"error","name":"InvalidVaultsPermutation","inputs":[]},{"type":"error","name":"InvalidVaultsToRemove","inputs":[]},{"type":"error","name":"LLPDisabled","inputs":[{"name":"llp","type":"address","internalType":"address"}]},{"type":"error","name":"MaxPositionBelowVaultMin","inputs":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"minimumPegInAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NoDebtToLiquidate","inputs":[]},{"type":"error","name":"OnlyApplicationEntryPoint","inputs":[]},{"type":"error","name":"PositionAboveMaximum","inputs":[{"name":"actual","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PositionMaxBelowVaultMax","inputs":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"vaultMaximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PositionNotLiquidatable","inputs":[]},{"type":"error","name":"PrefixLengthExceedsArray","inputs":[]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]},{"type":"error","name":"TBV_AlreadyFrozen","inputs":[]},{"type":"error","name":"TBV_AlreadyPaused","inputs":[]},{"type":"error","name":"TBV_Frozen","inputs":[]},{"type":"error","name":"TBV_NotFrozen","inputs":[]},{"type":"error","name":"TBV_NotPaused","inputs":[]},{"type":"error","name":"TBV_Paused","inputs":[]},{"type":"error","name":"TBV_Unauthorized","inputs":[]},{"type":"error","name":"UUPSUnauthorizedCallContext","inputs":[]},{"type":"error","name":"UUPSUnsupportedProxiableUUID","inputs":[{"name":"slot","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"Unauthorized","inputs":[]},{"type":"error","name":"VaultCountExceedsMaximum","inputs":[{"name":"actual","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ZeroAddress","inputs":[]},{"type":"error","name":"ZeroAmount","inputs":[]},{"type":"error","name":"ZeroBorrowAmount","inputs":[]},{"type":"error","name":"ZeroBtcKey","inputs":[]}]');async function O(e,t,n){const a=await e.readContract({address:t,abi:o,functionName:"getPosition",args:[n]});return a.proxyContract===c.zeroAddress?null:{proxyContract:a.proxyContract,vaultIds:a.vaultIds}}async function D(e,t,n){return await e.readContract({address:t,abi:o,functionName:"getPositionCollateral",args:[n]})}function B(e){return e.drawnShares>0n||e.premiumShares>0n||e.realizedPremiumRay>0n}const b=JSON.parse('[{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"ORACLE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SET_USER_POSITION_MANAGER_TYPEHASH","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"addDynamicReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"dynamicConfig","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"outputs":[{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"}],"stateMutability":"nonpayable"},{"type":"function","name":"addReserve","inputs":[{"name":"hub","type":"address","internalType":"address"},{"name":"assetId","type":"uint256","internalType":"uint256"},{"name":"priceSource","type":"address","internalType":"address"},{"name":"config","type":"tuple","internalType":"struct ITBVAaveSpoke.ReserveConfig","components":[{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]},{"name":"dynamicConfig","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"borrow","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getDynamicReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"stateMutability":"view"},{"type":"function","name":"getLiquidationBonus","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"},{"name":"healthFactor","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getLiquidationConfig","inputs":[],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.LiquidationConfig","components":[{"name":"targetHealthFactor","type":"uint128","internalType":"uint128"},{"name":"healthFactorForMaxBonus","type":"uint64","internalType":"uint64"},{"name":"liquidationBonusFactor","type":"uint16","internalType":"uint16"}]}],"stateMutability":"view"},{"type":"function","name":"getLiquidationLogic","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"getReserve","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.Reserve","components":[{"name":"underlying","type":"address","internalType":"address"},{"name":"hub","type":"address","internalType":"address"},{"name":"assetId","type":"uint16","internalType":"uint16"},{"name":"decimals","type":"uint8","internalType":"uint8"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"},{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"getReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.ReserveConfig","components":[{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"getReserveCount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveSuppliedAssets","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveSuppliedShares","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveTotalDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserAccountData","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.UserAccountData","components":[{"name":"riskPremium","type":"uint256","internalType":"uint256"},{"name":"avgCollateralFactor","type":"uint256","internalType":"uint256"},{"name":"healthFactor","type":"uint256","internalType":"uint256"},{"name":"totalCollateralValue","type":"uint256","internalType":"uint256"},{"name":"totalDebtValue","type":"uint256","internalType":"uint256"},{"name":"activeCollateralCount","type":"uint256","internalType":"uint256"},{"name":"borrowedCount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"getUserDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserPosition","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.UserPosition","components":[{"name":"drawnShares","type":"uint120","internalType":"uint120"},{"name":"premiumShares","type":"uint120","internalType":"uint120"},{"name":"realizedPremiumRay","type":"uint200","internalType":"uint200"},{"name":"premiumOffsetRay","type":"uint200","internalType":"uint200"},{"name":"suppliedShares","type":"uint120","internalType":"uint120"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"getUserPremiumDebtRay","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserReserveStatus","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"},{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getUserSuppliedAssets","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserSuppliedShares","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserTotalDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"isPositionManager","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"positionManager","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isPositionManagerActive","inputs":[{"name":"positionManager","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"liquidationCall","inputs":[{"name":"collateralReserveId","type":"uint256","internalType":"uint256"},{"name":"debtReserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"},{"name":"debtToCover","type":"uint256","internalType":"uint256"},{"name":"receiveShares","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"permitReserve","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"permitV","type":"uint8","internalType":"uint8"},{"name":"permitR","type":"bytes32","internalType":"bytes32"},{"name":"permitS","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renouncePositionManagerRole","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"repay","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"setUserPositionManager","inputs":[{"name":"positionManager","type":"address","internalType":"address"},{"name":"approve","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setUserPositionManagerWithSig","inputs":[{"name":"positionManager","type":"address","internalType":"address"},{"name":"user","type":"address","internalType":"address"},{"name":"approve","type":"bool","internalType":"bool"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setUsingAsCollateral","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"usingAsCollateral","type":"bool","internalType":"bool"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supply","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"updateDynamicReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"},{"name":"dynamicConfig","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateLiquidationConfig","inputs":[{"name":"config","type":"tuple","internalType":"struct ITBVAaveSpoke.LiquidationConfig","components":[{"name":"targetHealthFactor","type":"uint128","internalType":"uint128"},{"name":"healthFactorForMaxBonus","type":"uint64","internalType":"uint64"},{"name":"liquidationBonusFactor","type":"uint16","internalType":"uint16"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updatePositionManager","inputs":[{"name":"positionManager","type":"address","internalType":"address"},{"name":"active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"params","type":"tuple","internalType":"struct ITBVAaveSpoke.ReserveConfig","components":[{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateReservePriceSource","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"priceSource","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateUserDynamicConfig","inputs":[{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateUserRiskPremium","inputs":[{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdraw","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"}]');function U(e){return{drawnShares:e.drawnShares,premiumShares:e.premiumShares,realizedPremiumRay:e.realizedPremiumRay,premiumOffsetRay:e.premiumOffsetRay,suppliedShares:e.suppliedShares,dynamicConfigKey:e.dynamicConfigKey}}async function N(e,t,n){const a=await e.readContract({address:t,abi:b,functionName:"getUserAccountData",args:[n]});return{riskPremium:a.riskPremium,avgCollateralFactor:a.avgCollateralFactor,healthFactor:a.healthFactor,totalCollateralValue:a.totalCollateralValue,totalDebtValue:a.totalDebtValue,activeCollateralCount:a.activeCollateralCount,borrowedCount:a.borrowedCount}}async function A(e,t,n,i){const a=await e.readContract({address:t,abi:b,functionName:"getUserPosition",args:[n,i]});return U(a)}async function k(e,t,n,i){const a=await A(e,t,n,i);return B(a)}async function z(e,t,n,i){return(await A(e,t,n,i)).suppliedShares>0n}async function H(e,t,n,i){return await e.readContract({address:t,abi:b,functionName:"getUserTotalDebt",args:[n,i]})}async function q(e,t){return S}async function W(e,t){return P}async function K(e,t){return _}function G(e,t){const n=c.encodeFunctionData({abi:o,functionName:T.REORDER_VAULTS,args:[t]});return{to:e,data:n}}function Y(e,t){const n=c.encodeFunctionData({abi:o,functionName:T.WITHDRAW_COLLATERALS,args:[t]});return{to:e,data:n}}function Z(e,t,n,i){const a=c.encodeFunctionData({abi:o,functionName:T.BORROW,args:[t,n,i]});return{to:e,data:a}}function X(e,t,n,i){const a=c.encodeFunctionData({abi:o,functionName:T.REPAY,args:[t,n,i]});return{to:e,data:a}}function $(e){return Number(e)/10**C}function J(e){return Number(e)/10**I}function Q(e,t){return t<=0?"0%":`${(e/t*100).toFixed(1)}%`}const m={GREEN:"#00E676",AMBER:"#FFC400",RED:"#FF1744",GRAY:"#5A5A5A"};function F(e,t){return t?e===null?"safe":e<1?"danger":e<M?"warning":"safe":"no_debt"}function j(e){switch(e){case"safe":return m.GREEN;case"warning":return m.AMBER;case"danger":return m.RED;case"no_debt":return m.GRAY}}function ee(e){return e===null?"-":e.toFixed(2)}function te(e){return e===null?!0:e>=1}function ne(e){const t=isFinite(e),n=isFinite(e)?e:null;return F(n,t)}function ae(e,t,n){return t<=0?1/0:e*(n/g)/t}function ie(e,t){if(t<=0)return{vaultIds:[],actualAmount:0};const n=[...e].sort((r,p)=>p.amount-r.amount),i=[];let a=0;for(const r of n){if(a>=t)break;i.push(r.id),a+=r.amount}return{vaultIds:i,actualAmount:a}}function re(e){return e.reduce((t,n)=>t+n.amount,0)}const se=BigInt(Number.MAX_SAFE_INTEGER);function f(e,t){if(e>se)throw new RangeError(`${t} (${e}) exceeds Number.MAX_SAFE_INTEGER; precision would be lost`)}function v(e,t,n,i){if(i<=0)return 1;const a=t*e;if(n<=a)return 1;const r=e*(n-i)/(n-a)*(t/i);return Math.max(0,Math.min(1,r))}function pe(e){const{totalBtc:t,CF:n,LB:i,THF:a,expectedHF:r,safetyMargin:p}=e;if(t<=0n)return{sacrificialVault:0n,protectedVault:0n,seizedFraction:0,targetSeizureBtc:0n};f(t,"totalBtc");const s=v(n,i,a,r),y=Number(t),u=BigInt(Math.ceil(y*s)),l=BigInt(Math.ceil(y*s*p)),d=l>t?t:l,R=t-d;return{sacrificialVault:d,protectedVault:R,seizedFraction:s,targetSeizureBtc:u}}function ue(e){const{minPegin:t,seizedFraction:n,safetyMargin:i}=e;f(t,"minPegin");const a=n*i;if(a>=1||a<=0)return 0n;const r=1-a,p=Math.ceil(Number(t)/r),s=Math.ceil(Number(t)/a);return BigInt(Math.max(p,s))}function oe(e){const{vaultAmounts:t,CF:n,LB:i,THF:a,expectedHF:r,safetyMargin:p}=e;if(t.length===0)return{needsRebalance:!1,deficit:0n,currentCoverage:0n,targetCoverage:0n};const s=t.reduce((R,w)=>R+w,0n);f(s,"totalBtc");const y=v(n,i,a,r),u=BigInt(Math.ceil(Number(s)*y*p)),l=t[0],d=u>l?u-l:0n;return{needsRebalance:d>0n,deficit:d,currentCoverage:l,targetCoverage:u}}function ye(e){const{totalCollateralSats:t,CF:n,LB:i,THF:a,expectedHF:r}=e;if(t<=0n)return 0n;f(t,"totalCollateralSats");const p=v(n,i,a,r);return BigInt(Math.ceil(Number(t)*p))}function le(e){const{orderedVaults:t,targetSeizureSats:n}=e;if(t.length===0)throw new Error("orderedVaults must not be empty");if(n<=0n)throw new Error("targetSeizureSats must be positive; use computeTargetSeizureSats to derive it");let i=0n,a=t.length;for(let u=0;u<t.length;u++)if(i+=t[u].amountSats,i>=n){a=u+1;break}const r=t.slice(0,a),p=t.slice(a),s=i,y=s>n?s-n:0n;return{seizedVaults:r,protectedVaults:p,overSeizureSats:y,cutoffIndex:a,totalSeizedSats:s}}exports.AAVE_BASE_CURRENCY_DECIMALS=C;exports.AAVE_FUNCTION_NAMES=T;exports.AaveIntegrationAdapterABI=o;exports.AaveSpokeABI=b;exports.BPS_SCALE=g;exports.BPS_TO_PERCENT_DIVISOR=V;exports.BTC_DECIMALS=x;exports.FULL_REPAY_BUFFER_DIVISOR=L;exports.HEALTH_FACTOR_COLORS=m;exports.HEALTH_FACTOR_WARNING_THRESHOLD=M;exports.MIN_HEALTH_FACTOR_FOR_BORROW=E;exports.MOCK_COLLATERAL_FACTOR_BPS=P;exports.MOCK_LIQUIDATION_BONUS_WAD=_;exports.MOCK_TARGET_HEALTH_FACTOR_WAD=S;exports.USDC_DECIMALS=h;exports.WAD_DECIMALS=I;exports.aaveValueToUsd=$;exports.buildBorrowTx=Z;exports.buildReorderVaultsTx=G;exports.buildRepayTx=X;exports.buildWithdrawCollateralsTx=Y;exports.calculateBorrowRatio=Q;exports.calculateHealthFactor=ae;exports.calculateTotalVaultAmount=re;exports.checkRebalanceNeeded=oe;exports.computeMinDepositForSplit=ue;exports.computeOptimalSplit=pe;exports.computeSeizedFraction=v;exports.computeTargetSeizureSats=ye;exports.formatHealthFactor=ee;exports.getCollateralFactor=W;exports.getHealthFactorColor=j;exports.getHealthFactorStatus=F;exports.getHealthFactorStatusFromValue=ne;exports.getLiquidationBonus=K;exports.getPosition=O;exports.getPositionCollateral=D;exports.getTargetHealthFactor=q;exports.getUserAccountData=N;exports.getUserPosition=A;exports.getUserTotalDebt=H;exports.hasCollateral=z;exports.hasDebt=k;exports.hasDebtFromPosition=B;exports.isHealthFactorHealthy=te;exports.selectVaultsForAmount=ie;exports.simulatePrefixSeizure=le;exports.wadToNumber=J;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("viem"),M={WITHDRAW_COLLATERALS:"withdrawCollaterals",BORROW:"borrowFromCorePosition",REPAY:"repayToCorePosition",REORDER_VAULTS:"reorderVaults"},Y=8,X=6,Z=100,O=1e4,L=26,D=18,U=1.5,$=1.2,J=10000n,N=1100000000000000000n,k=7500n,z=1050000000000000000n,A=JSON.parse('[{"type":"constructor","inputs":[{"name":"vaultBTC_","type":"address","internalType":"address"},{"name":"coreSpoke_","type":"address","internalType":"address"},{"name":"btcVaultRegistry_","type":"address","internalType":"address"},{"name":"applicationRegistry_","type":"address","internalType":"address"},{"name":"proxyManager_","type":"address","internalType":"address"},{"name":"coreVaultBtcReserveId_","type":"uint256","internalType":"uint256"},{"name":"coreWbtcReserveId_","type":"uint256","internalType":"uint256"},{"name":"protocolParams_","type":"address","internalType":"address"},{"name":"llpRegistry_","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"APP_REGISTRY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IApplicationRegistry"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_CORE_SPOKE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ITBVAaveSpoke"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_CORE_VAULT_BTC_RESERVE_ID","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_CORE_WBTC_RESERVE_ID","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"BTC_VAULT_REGISTRY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IBTCVaultRegistry"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"TIMELOCK_UPGRADER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"UPGRADE_INTERFACE_VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"VAULT_BTC","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IVaultBTC"}],"stateMutability":"view"},{"type":"function","name":"activateVault","inputs":[{"name":"vaultId","type":"bytes32","internalType":"bytes32"},{"name":"vault","type":"tuple","internalType":"struct IBTCVaultRegistry.BTCVault","components":[{"name":"depositor","type":"address","internalType":"address"},{"name":"depositorBtcPubKey","type":"bytes32","internalType":"bytes32"},{"name":"depositorSignedPeginTx","type":"bytes","internalType":"bytes"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"vaultProvider","type":"address","internalType":"address"},{"name":"status","type":"uint8","internalType":"enum IBTCVaultRegistry.BTCVaultStatus"},{"name":"applicationEntryPoint","type":"address","internalType":"address"},{"name":"universalChallengersVersion","type":"uint16","internalType":"uint16"},{"name":"appVaultKeepersVersion","type":"uint16","internalType":"uint16"},{"name":"offchainParamsVersion","type":"uint16","internalType":"uint16"},{"name":"createdAt","type":"uint256","internalType":"uint256"},{"name":"verifiedAt","type":"uint256","internalType":"uint256"},{"name":"depositorWotsPkHash","type":"bytes32","internalType":"bytes32"},{"name":"hashlock","type":"bytes32","internalType":"bytes32"},{"name":"htlcVout","type":"uint8","internalType":"uint8"},{"name":"depositorPopSignature","type":"bytes","internalType":"bytes"},{"name":"prePeginTxHash","type":"bytes32","internalType":"bytes32"}]},{"name":"activationMetadata","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"applicationRecipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"borrowFromCorePosition","inputs":[{"name":"debtReserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"receiver","type":"address","internalType":"address"}],"outputs":[{"name":"borrowedShares","type":"uint256","internalType":"uint256"},{"name":"borrowedAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"freeze","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fullPause","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getFairnessPaymentTokenConfig","inputs":[],"outputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"token","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getInterestFeeIndex","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"interestFeeIndex","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPosition","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"position","type":"tuple","internalType":"struct IAaveIntegrationAdapter.MarketPosition","components":[{"name":"vaultIds","type":"bytes32[]","internalType":"bytes32[]"},{"name":"totalCollateralBTC","type":"uint256","internalType":"uint256"},{"name":"proxyContract","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getPositionSizeParams","inputs":[],"outputs":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"maxVaultsPerPosition","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getVaultUsageStatus","inputs":[{"name":"vaultId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"status","type":"uint8","internalType":"enum AaveVaultHandler.VaultUsageStatus"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"initialTBVAdmin","type":"address","internalType":"address"},{"name":"_applicationRecipient","type":"address","internalType":"address"},{"name":"_liquidationRedemptionFeeBps","type":"uint256","internalType":"uint256"},{"name":"_initialInterestFeeBps","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"interestFeeBps","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"isValidPositionResolver","inputs":[{"name":"resolver","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"liquidate","inputs":[{"name":"borrower","type":"address","internalType":"address"},{"name":"directBtcRedeemKey","type":"bytes32","internalType":"bytes32"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"},{"name":"priorityOrder","type":"uint256[]","internalType":"uint256[]"}],"outputs":[{"name":"vaultIds","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"liquidateWithLLP","inputs":[{"name":"borrower","type":"address","internalType":"address"},{"name":"llp","type":"address","internalType":"address"},{"name":"amounts","type":"uint256[]","internalType":"uint256[]"},{"name":"priorityOrder","type":"uint256[]","internalType":"uint256[]"},{"name":"requestedTokens","type":"tuple[]","internalType":"struct TokenAmountLib.TokenAmount[]","components":[{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"vaultIds","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"liquidationRedemptionFeeBps","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pauseState","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ITBVPausable.PauseState"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"redeemVaultFromLLP","inputs":[{"name":"vaultId","type":"bytes32","internalType":"bytes32"},{"name":"btcRedeemKey","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerResolver","inputs":[{"name":"resolver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeResolver","inputs":[{"name":"resolver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"reorderVaults","inputs":[{"name":"permuted","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"repayToCorePosition","inputs":[{"name":"borrower","type":"address","internalType":"address"},{"name":"debtReserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"repaidFee","type":"uint256","internalType":"uint256"},{"name":"repaidShares","type":"uint256","internalType":"uint256"},{"name":"repaidAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setApplicationRecipient","inputs":[{"name":"_applicationRecipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setInterestFeeBps","inputs":[{"name":"feeBps","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setLiquidationRedemptionFeeBps","inputs":[{"name":"feeBps","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPositionSizeParams","inputs":[{"name":"params","type":"tuple","internalType":"struct IAaveIntegrationAdapter.PositionSizeParams","components":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"maxVaultsPerPosition","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"unfreeze","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unpause","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"vaultOwner","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"withdrawCollaterals","inputs":[{"name":"vaultsToWithdraw","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"amountWithdrawn","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"event","name":"AdapterApplicationRecipientUpdated","inputs":[{"name":"applicationFeeRecipient","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AdapterLiquidationRedemptionFeeUpdated","inputs":[{"name":"liquidationRedemptionFeeBps","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"AdapterPositionResolverAdded","inputs":[{"name":"positionResolver","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AdapterPositionResolverRemoved","inputs":[{"name":"positionResolver","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BTCVaultCoreSpokeLiquidated","inputs":[{"name":"depositor","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"amountCollateralSeized","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"valueCollateralSeized","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"valueDebtRepaid","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BorrowedFromPosition","inputs":[{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"debtReserveId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"receiver","type":"address","indexed":true,"internalType":"address"},{"name":"borrowAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CollateralAdded","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"CollateralWithdrawn","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"FairnessPaymentFailed","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"protocolRecipient","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"FairnessPaymentPaid","inputs":[{"name":"positionAccount","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InterestFeeUpdated","inputs":[{"name":"newInterestFeeBps","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"LiquidationSettledViaLLP","inputs":[{"name":"llp","type":"address","indexed":true,"internalType":"address"},{"name":"liquidator","type":"address","indexed":true,"internalType":"address"},{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"vaultIds","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"payouts","type":"tuple[]","indexed":false,"internalType":"struct TokenAmountLib.TokenAmount[]","components":[{"name":"token","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"PausedWith","inputs":[{"name":"state","type":"uint8","indexed":true,"internalType":"enum ITBVPausable.PauseState"},{"name":"pauser","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PositionSizeParamsUpdated","inputs":[{"name":"newParams","type":"tuple","indexed":false,"internalType":"struct IAaveIntegrationAdapter.PositionSizeParams","components":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"maxVaultsPerPosition","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"RepaidFromPosition","inputs":[{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"debtReserveId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"repayAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Unfrozen","inputs":[{"name":"pauser","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Unpaused","inputs":[{"name":"pauser","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UserProxyCreated","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"proxy","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"VaultLiquidated","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"liquidator","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"VaultMarkedCollateralized","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"VaultMarkedLLPOwned","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"VaultMarkedRedeemed","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"VaultOwnershipChanged","inputs":[{"name":"vaultId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"VaultsReordered","inputs":[{"name":"borrower","type":"address","indexed":true,"internalType":"address"},{"name":"newVaults","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"type":"error","name":"AddressEmptyCode","inputs":[{"name":"target","type":"address","internalType":"address"}]},{"type":"error","name":"ERC1967InvalidImplementation","inputs":[{"name":"implementation","type":"address","internalType":"address"}]},{"type":"error","name":"ERC1967NonPayable","inputs":[]},{"type":"error","name":"EmptyArray","inputs":[]},{"type":"error","name":"FailedCall","inputs":[]},{"type":"error","name":"FairnessDebtRepaymentTargetNotMet","inputs":[{"name":"target","type":"uint256","internalType":"uint256"},{"name":"actual","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"IncompleteWithdrawal","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"actual","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidActivationMetadataVersion","inputs":[]},{"type":"error","name":"InvalidAmount","inputs":[]},{"type":"error","name":"InvalidAmountsLength","inputs":[{"name":"amountsLength","type":"uint256","internalType":"uint256"},{"name":"reserveCount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidInterestFeeBps","inputs":[]},{"type":"error","name":"InvalidOraclePrice","inputs":[]},{"type":"error","name":"InvalidPositionResolver","inputs":[]},{"type":"error","name":"InvalidPriorityOrderLength","inputs":[{"name":"priorityOrderLength","type":"uint256","internalType":"uint256"},{"name":"amountsLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidProxyContract","inputs":[]},{"type":"error","name":"InvalidReserveId","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidVaultStatus","inputs":[]},{"type":"error","name":"InvalidVaultsPermutation","inputs":[]},{"type":"error","name":"InvalidVaultsToRemove","inputs":[]},{"type":"error","name":"LLPDisabled","inputs":[{"name":"llp","type":"address","internalType":"address"}]},{"type":"error","name":"MaxPositionBelowVaultMin","inputs":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"minimumPegInAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NoDebtToLiquidate","inputs":[]},{"type":"error","name":"OnlyApplicationEntryPoint","inputs":[]},{"type":"error","name":"PositionAboveMaximum","inputs":[{"name":"actual","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PositionMaxBelowVaultMax","inputs":[{"name":"maxPositionBTC","type":"uint256","internalType":"uint256"},{"name":"vaultMaximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PositionNotLiquidatable","inputs":[]},{"type":"error","name":"PrefixLengthExceedsArray","inputs":[]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]},{"type":"error","name":"TBV_AlreadyFrozen","inputs":[]},{"type":"error","name":"TBV_AlreadyPaused","inputs":[]},{"type":"error","name":"TBV_Frozen","inputs":[]},{"type":"error","name":"TBV_NotFrozen","inputs":[]},{"type":"error","name":"TBV_NotPaused","inputs":[]},{"type":"error","name":"TBV_Paused","inputs":[]},{"type":"error","name":"TBV_Unauthorized","inputs":[]},{"type":"error","name":"UUPSUnauthorizedCallContext","inputs":[]},{"type":"error","name":"UUPSUnsupportedProxiableUUID","inputs":[{"name":"slot","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"Unauthorized","inputs":[]},{"type":"error","name":"VaultCountExceedsMaximum","inputs":[{"name":"actual","type":"uint256","internalType":"uint256"},{"name":"maximum","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ZeroAddress","inputs":[]},{"type":"error","name":"ZeroAmount","inputs":[]},{"type":"error","name":"ZeroBorrowAmount","inputs":[]},{"type":"error","name":"ZeroBtcKey","inputs":[]}]');async function Q(e,t,n){const a=await e.readContract({address:t,abi:A,functionName:"getPosition",args:[n]});return a.proxyContract===S.zeroAddress?null:{proxyContract:a.proxyContract,vaultIds:a.vaultIds}}async function j(e,t,n){return await e.readContract({address:t,abi:A,functionName:"getPositionCollateral",args:[n]})}function H(e){return e.drawnShares>0n||e.premiumShares>0n||e.realizedPremiumRay>0n}const _=JSON.parse('[{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"ORACLE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SET_USER_POSITION_MANAGER_TYPEHASH","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"addDynamicReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"dynamicConfig","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"outputs":[{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"}],"stateMutability":"nonpayable"},{"type":"function","name":"addReserve","inputs":[{"name":"hub","type":"address","internalType":"address"},{"name":"assetId","type":"uint256","internalType":"uint256"},{"name":"priceSource","type":"address","internalType":"address"},{"name":"config","type":"tuple","internalType":"struct ITBVAaveSpoke.ReserveConfig","components":[{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]},{"name":"dynamicConfig","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"borrow","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getDynamicReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"stateMutability":"view"},{"type":"function","name":"getLiquidationBonus","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"},{"name":"healthFactor","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getLiquidationConfig","inputs":[],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.LiquidationConfig","components":[{"name":"targetHealthFactor","type":"uint128","internalType":"uint128"},{"name":"healthFactorForMaxBonus","type":"uint64","internalType":"uint64"},{"name":"liquidationBonusFactor","type":"uint16","internalType":"uint16"}]}],"stateMutability":"view"},{"type":"function","name":"getLiquidationLogic","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"getReserve","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.Reserve","components":[{"name":"underlying","type":"address","internalType":"address"},{"name":"hub","type":"address","internalType":"address"},{"name":"assetId","type":"uint16","internalType":"uint16"},{"name":"decimals","type":"uint8","internalType":"uint8"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"},{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"getReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.ReserveConfig","components":[{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"getReserveCount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveSuppliedAssets","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveSuppliedShares","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getReserveTotalDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserAccountData","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.UserAccountData","components":[{"name":"riskPremium","type":"uint256","internalType":"uint256"},{"name":"avgCollateralFactor","type":"uint256","internalType":"uint256"},{"name":"healthFactor","type":"uint256","internalType":"uint256"},{"name":"totalCollateralValue","type":"uint256","internalType":"uint256"},{"name":"totalDebtValue","type":"uint256","internalType":"uint256"},{"name":"activeCollateralCount","type":"uint256","internalType":"uint256"},{"name":"borrowedCount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"view"},{"type":"function","name":"getUserDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserPosition","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct ITBVAaveSpoke.UserPosition","components":[{"name":"drawnShares","type":"uint120","internalType":"uint120"},{"name":"premiumShares","type":"uint120","internalType":"uint120"},{"name":"realizedPremiumRay","type":"uint200","internalType":"uint200"},{"name":"premiumOffsetRay","type":"uint200","internalType":"uint200"},{"name":"suppliedShares","type":"uint120","internalType":"uint120"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"getUserPremiumDebtRay","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserReserveStatus","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"},{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getUserSuppliedAssets","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserSuppliedShares","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getUserTotalDebt","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"isPositionManager","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"positionManager","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isPositionManagerActive","inputs":[{"name":"positionManager","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"liquidationCall","inputs":[{"name":"collateralReserveId","type":"uint256","internalType":"uint256"},{"name":"debtReserveId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"},{"name":"debtToCover","type":"uint256","internalType":"uint256"},{"name":"receiveShares","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"permitReserve","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"permitV","type":"uint8","internalType":"uint8"},{"name":"permitR","type":"bytes32","internalType":"bytes32"},{"name":"permitS","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renouncePositionManagerRole","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"repay","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"setUserPositionManager","inputs":[{"name":"positionManager","type":"address","internalType":"address"},{"name":"approve","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setUserPositionManagerWithSig","inputs":[{"name":"positionManager","type":"address","internalType":"address"},{"name":"user","type":"address","internalType":"address"},{"name":"approve","type":"bool","internalType":"bool"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"signature","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setUsingAsCollateral","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"usingAsCollateral","type":"bool","internalType":"bool"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supply","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"updateDynamicReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"dynamicConfigKey","type":"uint24","internalType":"uint24"},{"name":"dynamicConfig","type":"tuple","internalType":"struct ITBVAaveSpoke.DynamicReserveConfig","components":[{"name":"collateralFactor","type":"uint16","internalType":"uint16"},{"name":"maxLiquidationBonus","type":"uint32","internalType":"uint32"},{"name":"liquidationFee","type":"uint16","internalType":"uint16"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateLiquidationConfig","inputs":[{"name":"config","type":"tuple","internalType":"struct ITBVAaveSpoke.LiquidationConfig","components":[{"name":"targetHealthFactor","type":"uint128","internalType":"uint128"},{"name":"healthFactorForMaxBonus","type":"uint64","internalType":"uint64"},{"name":"liquidationBonusFactor","type":"uint16","internalType":"uint16"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updatePositionManager","inputs":[{"name":"positionManager","type":"address","internalType":"address"},{"name":"active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateReserveConfig","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"params","type":"tuple","internalType":"struct ITBVAaveSpoke.ReserveConfig","components":[{"name":"paused","type":"bool","internalType":"bool"},{"name":"frozen","type":"bool","internalType":"bool"},{"name":"borrowable","type":"bool","internalType":"bool"},{"name":"collateralRisk","type":"uint24","internalType":"uint24"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateReservePriceSource","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"priceSource","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateUserDynamicConfig","inputs":[{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateUserRiskPremium","inputs":[{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdraw","inputs":[{"name":"reserveId","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"},{"name":"onBehalfOf","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"}]');function ee(e){return{drawnShares:e.drawnShares,premiumShares:e.premiumShares,realizedPremiumRay:e.realizedPremiumRay,premiumOffsetRay:e.premiumOffsetRay,suppliedShares:e.suppliedShares,dynamicConfigKey:e.dynamicConfigKey}}async function te(e,t,n){const a=await e.readContract({address:t,abi:_,functionName:"getUserAccountData",args:[n]});return{riskPremium:a.riskPremium,avgCollateralFactor:a.avgCollateralFactor,healthFactor:a.healthFactor,totalCollateralValue:a.totalCollateralValue,totalDebtValue:a.totalDebtValue,activeCollateralCount:a.activeCollateralCount,borrowedCount:a.borrowedCount}}async function x(e,t,n,i){const a=await e.readContract({address:t,abi:_,functionName:"getUserPosition",args:[n,i]});return ee(a)}async function ne(e,t,n,i){const a=await x(e,t,n,i);return H(a)}async function ae(e,t,n,i){return(await x(e,t,n,i)).suppliedShares>0n}async function ie(e,t,n,i){return await e.readContract({address:t,abi:_,functionName:"getUserTotalDebt",args:[n,i]})}async function re(e,t){return N}async function se(e,t){return k}async function ue(e,t){return z}function pe(e,t){const n=S.encodeFunctionData({abi:A,functionName:M.REORDER_VAULTS,args:[t]});return{to:e,data:n}}function oe(e,t){const n=S.encodeFunctionData({abi:A,functionName:M.WITHDRAW_COLLATERALS,args:[t]});return{to:e,data:n}}function ye(e,t,n,i){const a=S.encodeFunctionData({abi:A,functionName:M.BORROW,args:[t,n,i]});return{to:e,data:a}}function le(e,t,n,i){const a=S.encodeFunctionData({abi:A,functionName:M.REPAY,args:[t,n,i]});return{to:e,data:a}}function de(e){return Number(e)/10**L}function me(e){return Number(e)/10**D}function ce(e,t){return t<=0?"0%":`${(e/t*100).toFixed(1)}%`}const C={GREEN:"#00E676",AMBER:"#FFC400",RED:"#FF1744",GRAY:"#5A5A5A"};function q(e,t){return t?e===null?"safe":e<1?"danger":e<U?"warning":"safe":"no_debt"}function Te(e){switch(e){case"safe":return C.GREEN;case"warning":return C.AMBER;case"danger":return C.RED;case"no_debt":return C.GRAY}}function be(e){return e===null?"-":e.toFixed(2)}function fe(e){return e===null?!0:e>=1}function ve(e){const t=isFinite(e),n=isFinite(e)?e:null;return q(n,t)}function Ae(e,t,n){return t<=0?1/0:e*(n/O)/t}function Re(e,t){if(t<=0)return{vaultIds:[],actualAmount:0};const n=[...e].sort((r,u)=>u.amount-r.amount),i=[];let a=0;for(const r of n){if(a>=t)break;i.push(r.id),a+=r.amount}return{vaultIds:i,actualAmount:a}}function ge(e){return e.reduce((t,n)=>t+n.amount,0)}const Ie=.01,G=20,W=.01;function Ce(e,t,n){if(e.length===0)return[];const a=e.reduce((p,s)=>p+s.btc,0)*t*(1-n);let r=0,u=0;for(;u<e.length&&r<a;)r+=e[u].btc,u++;return e.slice(0,u)}function Se(e,t,n,i,a,r,u,p,s){const y=p*r,m=n/(t*r),o=t*a,l=Math.max(0,e-o),c=u-y,d=c===0?n:n*((u-s)/c);let T;if(i)T=0;else{const b=l*m/p,f=Math.min(b,n-d);T=Math.max(0,n-d-f)}return{debtAfter:T,btcAfter:Math.max(0,t-e)}}function E(e,t,n,i,a,r,u,p){let s=[...e],y=t;const m=e.reduce((d,T)=>d+T.btc,0);let o=-1,l=0,c=0;for(;s.length>0&&y>W&&c<G;){const d=s.reduce((v,w)=>v+w.btc,0),T=d*n*(1-i);let b=0,f=0;for(;f<s.length&&b<T;)b+=s[f].btc,f++;const h=f>=s.length,{debtAfter:g}=Se(b,d,y,h,n,a,r,u,p);s=s.slice(f),y=g;const I=d-b;l+=I,o<0&&(o=I),c++}return{sumBtcAfterEvents:l,btcAfterG1:o<0?m:o}}const R=1e-4,Me=5,F=20;function he(e,t,n){const i=[];let a=[...e];for(;a.length>0;){const r=a.reduce((o,l)=>o+l.btc,0),u=r*t*(1-n);let p=[...a],s=r;const y=a.length;if(y<=F)for(let o=1;o<1<<y;o++){let l=0;const c=[];for(let d=0;d<y;d++)o&1<<d&&(l+=a[d].btc,c.push(a[d]));l>=u&&l<s&&(s=l,p=c)}const m=new Set(p.map(o=>o.id));i.push(...[...p].sort((o,l)=>l.btc-o.btc)),a=a.filter(o=>!m.has(o.id))}return i}function V(e,t,n,i,a,r,u,p){if(e.length===0)return{order:[],sumBtcAfterEvents:0,btcAfterG1:0};if(e.length>F)throw new Error(`Too many vaults for exhaustive search: ${e.length} exceeds maximum of ${F}`);if(e.length===1){const d=E(e,t,n,i,a,r,u,p);return{order:[...e],...d}}const s=e.length,m=e.reduce((d,T)=>d+T.btc,0)*n*(1-i);let o=[...e],l=-1/0,c=-1/0;for(let d=1;d<1<<s;d++){let T=0;const b=[],f=[];for(let v=0;v<s;v++)d&1<<v?(T+=e[v].btc,b.push(e[v])):f.push(e[v]);if(T<m)continue;b.sort((v,w)=>w.btc-v.btc);const h=[...b,...he(f,n,i)],{sumBtcAfterEvents:g,btcAfterG1:I}=E(h,t,n,i,a,r,u,p);(g>l+R||Math.abs(g-l)<=R&&I>c+R)&&(l=g,c=I,o=h)}return{order:o,sumBtcAfterEvents:l,btcAfterG1:c}}function _e(e,t,n,i,a,r,u,p){let s=V(e,t,n,i,a,r,u,p);for(let y=0;y<Me;y++){const m=V(s.order,t,n,i,a,r,u,p),o=m.sumBtcAfterEvents>s.sumBtcAfterEvents+R,c=Math.abs(m.sumBtcAfterEvents-s.sumBtcAfterEvents)<=R&&m.btcAfterG1>s.btcAfterG1+R;if(!o&&!c)break;s=m}return s}const Pe=BigInt(Number.MAX_SAFE_INTEGER);function P(e,t){if(e>Pe)throw new RangeError(`${t} (${e}) exceeds Number.MAX_SAFE_INTEGER; precision would be lost`)}function K(e,t,n,i){if(i<=0)return{seizedFraction:1,seizedFractionRaw:1/0};const a=t*e;if(n<=a)return{seizedFraction:1,seizedFractionRaw:1/0};const r=e*(n-i)/(n-a)*(t/i);return{seizedFraction:Math.max(0,Math.min(1,r)),seizedFractionRaw:r}}function B(e,t,n,i){return K(e,t,n,i).seizedFraction}function Be(e){const{totalBtc:t,CF:n,LB:i,THF:a,expectedHF:r,safetyMargin:u}=e;if(t<=0n)return{sacrificialVault:0n,protectedVault:0n,seizedFraction:0,targetSeizureBtc:0n};P(t,"totalBtc");const p=B(n,i,a,r),s=Number(t),y=BigInt(Math.ceil(s*p)),m=BigInt(Math.ceil(s*p*u)),o=m>t?t:m,l=t-o;return{sacrificialVault:o,protectedVault:l,seizedFraction:p,targetSeizureBtc:y}}function we(e){const{minPegin:t,seizedFraction:n,safetyMargin:i}=e;P(t,"minPegin");const a=n*i;if(a>=1||a<=0)return 0n;const r=1-a,u=Math.ceil(Number(t)/r),p=Math.ceil(Number(t)/a);return BigInt(Math.max(u,p))}function Ee(e){const{vaultAmounts:t,CF:n,LB:i,THF:a,expectedHF:r,safetyMargin:u}=e;if(t.length===0)return{needsRebalance:!1,deficit:0n,currentCoverage:0n,targetCoverage:0n};const p=t.reduce((l,c)=>l+c,0n);P(p,"totalBtc");const s=B(n,i,a,r),y=BigInt(Math.ceil(Number(p)*s*u)),m=t[0],o=y>m?y-m:0n;return{needsRebalance:o>0n,deficit:o,currentCoverage:m,targetCoverage:y}}function Fe(e){const{totalCollateralSats:t,CF:n,LB:i,THF:a,expectedHF:r}=e;if(t<=0n)return 0n;P(t,"totalCollateralSats");const u=B(n,i,a,r);return BigInt(Math.ceil(Number(t)*u))}function xe(e){const{orderedVaults:t,targetSeizureSats:n}=e;if(t.length===0)throw new Error("orderedVaults must not be empty");if(n<=0n)throw new Error("targetSeizureSats must be positive; use computeTargetSeizureSats to derive it");let i=0n,a=t.length;for(let y=0;y<t.length;y++)if(i+=t[y].amountSats,i>=n){a=y+1;break}const r=t.slice(0,a),u=t.slice(a),p=i,s=p>n?p-n:0n;return{seizedVaults:r,protectedVaults:u,overSeizureSats:s,cutoffIndex:a,totalSeizedSats:p}}exports.AAVE_BASE_CURRENCY_DECIMALS=L;exports.AAVE_FUNCTION_NAMES=M;exports.AaveIntegrationAdapterABI=A;exports.AaveSpokeABI=_;exports.BPS_SCALE=O;exports.BPS_TO_PERCENT_DIVISOR=Z;exports.BTC_DECIMALS=Y;exports.FULL_REPAY_BUFFER_DIVISOR=J;exports.HEALTH_FACTOR_COLORS=C;exports.HEALTH_FACTOR_WARNING_THRESHOLD=U;exports.MAX_GROUPS=G;exports.MIN_DEBT_THRESHOLD=W;exports.MIN_HEALTH_FACTOR_FOR_BORROW=$;exports.MOCK_COLLATERAL_FACTOR_BPS=k;exports.MOCK_LIQUIDATION_BONUS_WAD=z;exports.MOCK_TARGET_HEALTH_FACTOR_WAD=N;exports.SEIZURE_TOL=Ie;exports.USDC_DECIMALS=X;exports.WAD_DECIMALS=D;exports.aaveValueToUsd=de;exports.buildBorrowTx=ye;exports.buildReorderVaultsTx=pe;exports.buildRepayTx=le;exports.buildWithdrawCollateralsTx=oe;exports.calculateBorrowRatio=ce;exports.calculateHealthFactor=Ae;exports.calculateTotalVaultAmount=ge;exports.checkRebalanceNeeded=Ee;exports.computeMinDepositForSplit=we;exports.computeOptimalOrder=_e;exports.computeOptimalSplit=Be;exports.computeSeizedFraction=B;exports.computeSeizedFractionDetailed=K;exports.computeTargetSeizureSats=Fe;exports.formatHealthFactor=be;exports.getCollateralFactor=se;exports.getGroup1FromOrder=Ce;exports.getHealthFactorColor=Te;exports.getHealthFactorStatus=q;exports.getHealthFactorStatusFromValue=ve;exports.getLiquidationBonus=ue;exports.getPosition=Q;exports.getPositionCollateral=j;exports.getTargetHealthFactor=re;exports.getUserAccountData=te;exports.getUserPosition=x;exports.getUserTotalDebt=ie;exports.hasCollateral=ae;exports.hasDebt=ne;exports.hasDebtFromPosition=H;exports.isHealthFactorHealthy=fe;exports.selectVaultsForAmount=Re;exports.simulateCascade=E;exports.simulatePrefixSeizure=xe;exports.wadToNumber=me;
2
2
  //# sourceMappingURL=index.cjs.map