@avalabs/bridge-unified 4.3.0 → 4.4.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.
package/dist/index.d.cts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { Address } from 'viem';
2
+ import { Address as Address$1 } from 'abitype';
2
3
  import { z } from 'zod';
3
4
 
4
5
  type Chain = {
@@ -152,9 +153,17 @@ type EvmTransactionRequest = {
152
153
  };
153
154
  type EvmDispatch = (signedTxHash: Hex) => Promise<Hex>;
154
155
  type EvmSign = (data: EvmTransactionRequest, dispatch: EvmDispatch, step: BridgeStepDetails) => Promise<Hex>;
156
+ type EvmSignMessage = (params: {
157
+ message: string;
158
+ address: Address$1;
159
+ chainId: number;
160
+ }, dispatch: EvmDispatch, step: BridgeStepDetails) => Promise<Hex>;
155
161
  type EvmSigner = {
156
162
  sign: EvmSign;
157
163
  };
164
+ type EvmSignerWithMessage = EvmSigner & {
165
+ signMessage: EvmSignMessage;
166
+ };
158
167
  type BtcTransactionRequest = {
159
168
  inputs: BitcoinInputUTXO[];
160
169
  outputs: BitcoinOutputUTXO[];
@@ -170,7 +179,8 @@ declare enum ErrorCode {
170
179
  INITIALIZATION_FAILED = 5002,
171
180
  INVALID_PARAMS = 5003,
172
181
  TIMEOUT = 5004,
173
- TRANSACTION_REVERTED = 5005
182
+ TRANSACTION_REVERTED = 5005,
183
+ NOTARIZATION_FAILED = 5006
174
184
  }
175
185
  declare enum ErrorReason {
176
186
  ASSET_NOT_SUPPORTED = "ASSET_NOT_SUPPORTED",
@@ -244,9 +254,11 @@ declare enum BridgeType {
244
254
  AVALANCHE_BTC_AVA = "avalanche-btc-ava",
245
255
  AVALANCHE_AVA_BTC = "avalanche-ava-btc",
246
256
  CCTP = "cctp",
247
- ICTT_ERC20_ERC20 = "ictt-erc20-erc20"
257
+ ICTT_ERC20_ERC20 = "ictt-erc20-erc20",
258
+ LOMBARD_BTC_TO_BTCB = "lombard-btc-to-btcb",
259
+ LOMBARD_BTCB_TO_BTC = "lombard-btcb-to-btc"
248
260
  }
249
- declare const BTC_BRIDGE_TYPES: readonly [BridgeType.AVALANCHE_AVA_BTC, BridgeType.AVALANCHE_BTC_AVA];
261
+ declare const BTC_BRIDGE_TYPES: readonly [BridgeType.AVALANCHE_AVA_BTC, BridgeType.AVALANCHE_BTC_AVA, BridgeType.LOMBARD_BTC_TO_BTCB, BridgeType.LOMBARD_BTCB_TO_BTC];
250
262
  declare const EVM_BRIDGE_TYPES: readonly [BridgeType.AVALANCHE_EVM, BridgeType.CCTP, BridgeType.ICTT_ERC20_ERC20];
251
263
  type ArrayElement<A> = A extends readonly (infer T)[] ? T : never;
252
264
  type EvmBridgeInitializer = {
@@ -263,7 +275,14 @@ type BtcToAvaBridgeInitializer = {
263
275
  signer: BtcSigner;
264
276
  bitcoinFunctions: BitcoinFunctions;
265
277
  };
266
- type BridgeInitializer = EvmBridgeInitializer | AvaToBtcBridgeInitializer | BtcToAvaBridgeInitializer;
278
+ type LombardBridgeInitializer = {
279
+ type: BridgeType.LOMBARD_BTC_TO_BTCB | BridgeType.LOMBARD_BTCB_TO_BTC;
280
+ evmSigner: EvmSignerWithMessage;
281
+ btcSigner: BtcSigner;
282
+ bitcoinFunctions: BitcoinFunctions;
283
+ };
284
+ type BridgeInitializer = EvmBridgeInitializer | AvaToBtcBridgeInitializer | BtcToAvaBridgeInitializer | LombardBridgeInitializer;
285
+ declare const isLombardBridgeInitializer: (initializer: BridgeInitializer) => initializer is LombardBridgeInitializer;
267
286
  declare const isEvmBridgeInitializer: (initializer: BridgeInitializer) => initializer is EvmBridgeInitializer;
268
287
  declare const isAvaToBtcBridgeInitializer: (initializer: BridgeInitializer) => initializer is AvaToBtcBridgeInitializer;
269
288
  declare const isBtcToAvaBridgeInitializer: (initializer: BridgeInitializer) => initializer is BtcToAvaBridgeInitializer;
@@ -276,7 +295,8 @@ type FeeParams = {
276
295
  declare enum BridgeSignatureReason {
277
296
  AllowanceApproval = "allowance-approval",
278
297
  TokensTransfer = "tokens-transfer",
279
- WrapToken = "wrap-token"
298
+ WrapToken = "wrap-token",
299
+ AddressOwnership = "address-ownership"
280
300
  }
281
301
  type BridgeStepDetails = {
282
302
  currentSignature: number;
@@ -387,6 +407,13 @@ declare const _default: {
387
407
  toEip155HexChainId: ({ namespace, reference }: Caip2ChainId) => string;
388
408
  };
389
409
 
410
+ /**
411
+ * Gets the estimated bridging time in hours for a given Lombard bridge type
412
+ * @param bridgeType - The bridge type (LOMBARD_BTC_TO_BTCB or LOMBARD_BTCB_TO_BTC)
413
+ * @returns The estimated bridging time in hours
414
+ */
415
+ declare const getEstimatedBridgingTime: (bridgeType: BridgeType) => number | undefined;
416
+
390
417
  declare const getEnabledBridgeServices: (environment: Environment, enabledBridgeInitializers: BridgeInitializer[]) => Promise<BridgeServicesMap>;
391
418
 
392
- export { AVALANCHE_FUJI_CHAIN, AVALANCHE_MAINNET_CHAIN, AnalyzeTxParams, AnalyzeTxResult, ArrayElement, Asset, AssetFeeMap, AvaToBtcBridgeInitializer, AvalancheChainIds, BITCOIN_MAINNET_CHAIN, BITCOIN_TESTNET_CHAIN, BTC_BRIDGE_TYPES, BitcoinChainIds, BitcoinFunctions, BitcoinInputUTXO, BitcoinInputUTXOWithOptionalScript, BitcoinTx, BridgeAsset, BridgeInitializer, BridgeService, BridgeServiceConfig, BridgeServiceFactory, BridgeServicesMap, BridgeSignatureReason, BridgeStepDetails, BridgeTransfer, BridgeType, BtcDispatch, BtcSign, BtcSigner, BtcToAvaBridgeInitializer, BtcTransactionRequest, Chain, ChainAssetMap, DestinationInfo, ETHEREUM_MAINNET_CHAIN, ETHEREUM_SEPOLIA_CHAIN, EVM_BRIDGE_TYPES, Environment, Erc20Asset, ErrorCode, ErrorReason, EthereumChainIds, EvmBridgeInitializer, EvmDispatch, EvmSign, EvmSigner, EvmTransactionRequest, FeeParams, GasEstimationParams, GasSettings, Hex, NativeAsset, TokenType, TrackingParams, TransferParams, UnifiedBridgeService, _default as caip2, createUnifiedBridgeService, getEnabledBridgeServices, isAvaToBtcBridgeInitializer, isBtcToAvaBridgeInitializer, isErc20Asset, isEvmBridgeInitializer, isNativeAsset };
419
+ export { AVALANCHE_FUJI_CHAIN, AVALANCHE_MAINNET_CHAIN, AnalyzeTxParams, AnalyzeTxResult, ArrayElement, Asset, AssetFeeMap, AvaToBtcBridgeInitializer, AvalancheChainIds, BITCOIN_MAINNET_CHAIN, BITCOIN_TESTNET_CHAIN, BTC_BRIDGE_TYPES, BitcoinChainIds, BitcoinFunctions, BitcoinInputUTXO, BitcoinInputUTXOWithOptionalScript, BitcoinTx, BridgeAsset, BridgeInitializer, BridgeService, BridgeServiceConfig, BridgeServiceFactory, BridgeServicesMap, BridgeSignatureReason, BridgeStepDetails, BridgeTransfer, BridgeType, BtcDispatch, BtcSign, BtcSigner, BtcToAvaBridgeInitializer, BtcTransactionRequest, Chain, ChainAssetMap, DestinationInfo, ETHEREUM_MAINNET_CHAIN, ETHEREUM_SEPOLIA_CHAIN, EVM_BRIDGE_TYPES, Environment, Erc20Asset, ErrorCode, ErrorReason, EthereumChainIds, EvmBridgeInitializer, EvmDispatch, EvmSign, EvmSignMessage, EvmSigner, EvmSignerWithMessage, EvmTransactionRequest, FeeParams, GasEstimationParams, GasSettings, Hex, LombardBridgeInitializer, NativeAsset, TokenType, TrackingParams, TransferParams, UnifiedBridgeService, _default as caip2, createUnifiedBridgeService, getEnabledBridgeServices, getEstimatedBridgingTime, isAvaToBtcBridgeInitializer, isBtcToAvaBridgeInitializer, isErc20Asset, isEvmBridgeInitializer, isLombardBridgeInitializer, isNativeAsset };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { Address } from 'viem';
2
+ import { Address as Address$1 } from 'abitype';
2
3
  import { z } from 'zod';
3
4
 
4
5
  type Chain = {
@@ -152,9 +153,17 @@ type EvmTransactionRequest = {
152
153
  };
153
154
  type EvmDispatch = (signedTxHash: Hex) => Promise<Hex>;
154
155
  type EvmSign = (data: EvmTransactionRequest, dispatch: EvmDispatch, step: BridgeStepDetails) => Promise<Hex>;
156
+ type EvmSignMessage = (params: {
157
+ message: string;
158
+ address: Address$1;
159
+ chainId: number;
160
+ }, dispatch: EvmDispatch, step: BridgeStepDetails) => Promise<Hex>;
155
161
  type EvmSigner = {
156
162
  sign: EvmSign;
157
163
  };
164
+ type EvmSignerWithMessage = EvmSigner & {
165
+ signMessage: EvmSignMessage;
166
+ };
158
167
  type BtcTransactionRequest = {
159
168
  inputs: BitcoinInputUTXO[];
160
169
  outputs: BitcoinOutputUTXO[];
@@ -170,7 +179,8 @@ declare enum ErrorCode {
170
179
  INITIALIZATION_FAILED = 5002,
171
180
  INVALID_PARAMS = 5003,
172
181
  TIMEOUT = 5004,
173
- TRANSACTION_REVERTED = 5005
182
+ TRANSACTION_REVERTED = 5005,
183
+ NOTARIZATION_FAILED = 5006
174
184
  }
175
185
  declare enum ErrorReason {
176
186
  ASSET_NOT_SUPPORTED = "ASSET_NOT_SUPPORTED",
@@ -244,9 +254,11 @@ declare enum BridgeType {
244
254
  AVALANCHE_BTC_AVA = "avalanche-btc-ava",
245
255
  AVALANCHE_AVA_BTC = "avalanche-ava-btc",
246
256
  CCTP = "cctp",
247
- ICTT_ERC20_ERC20 = "ictt-erc20-erc20"
257
+ ICTT_ERC20_ERC20 = "ictt-erc20-erc20",
258
+ LOMBARD_BTC_TO_BTCB = "lombard-btc-to-btcb",
259
+ LOMBARD_BTCB_TO_BTC = "lombard-btcb-to-btc"
248
260
  }
249
- declare const BTC_BRIDGE_TYPES: readonly [BridgeType.AVALANCHE_AVA_BTC, BridgeType.AVALANCHE_BTC_AVA];
261
+ declare const BTC_BRIDGE_TYPES: readonly [BridgeType.AVALANCHE_AVA_BTC, BridgeType.AVALANCHE_BTC_AVA, BridgeType.LOMBARD_BTC_TO_BTCB, BridgeType.LOMBARD_BTCB_TO_BTC];
250
262
  declare const EVM_BRIDGE_TYPES: readonly [BridgeType.AVALANCHE_EVM, BridgeType.CCTP, BridgeType.ICTT_ERC20_ERC20];
251
263
  type ArrayElement<A> = A extends readonly (infer T)[] ? T : never;
252
264
  type EvmBridgeInitializer = {
@@ -263,7 +275,14 @@ type BtcToAvaBridgeInitializer = {
263
275
  signer: BtcSigner;
264
276
  bitcoinFunctions: BitcoinFunctions;
265
277
  };
266
- type BridgeInitializer = EvmBridgeInitializer | AvaToBtcBridgeInitializer | BtcToAvaBridgeInitializer;
278
+ type LombardBridgeInitializer = {
279
+ type: BridgeType.LOMBARD_BTC_TO_BTCB | BridgeType.LOMBARD_BTCB_TO_BTC;
280
+ evmSigner: EvmSignerWithMessage;
281
+ btcSigner: BtcSigner;
282
+ bitcoinFunctions: BitcoinFunctions;
283
+ };
284
+ type BridgeInitializer = EvmBridgeInitializer | AvaToBtcBridgeInitializer | BtcToAvaBridgeInitializer | LombardBridgeInitializer;
285
+ declare const isLombardBridgeInitializer: (initializer: BridgeInitializer) => initializer is LombardBridgeInitializer;
267
286
  declare const isEvmBridgeInitializer: (initializer: BridgeInitializer) => initializer is EvmBridgeInitializer;
268
287
  declare const isAvaToBtcBridgeInitializer: (initializer: BridgeInitializer) => initializer is AvaToBtcBridgeInitializer;
269
288
  declare const isBtcToAvaBridgeInitializer: (initializer: BridgeInitializer) => initializer is BtcToAvaBridgeInitializer;
@@ -276,7 +295,8 @@ type FeeParams = {
276
295
  declare enum BridgeSignatureReason {
277
296
  AllowanceApproval = "allowance-approval",
278
297
  TokensTransfer = "tokens-transfer",
279
- WrapToken = "wrap-token"
298
+ WrapToken = "wrap-token",
299
+ AddressOwnership = "address-ownership"
280
300
  }
281
301
  type BridgeStepDetails = {
282
302
  currentSignature: number;
@@ -387,6 +407,13 @@ declare const _default: {
387
407
  toEip155HexChainId: ({ namespace, reference }: Caip2ChainId) => string;
388
408
  };
389
409
 
410
+ /**
411
+ * Gets the estimated bridging time in hours for a given Lombard bridge type
412
+ * @param bridgeType - The bridge type (LOMBARD_BTC_TO_BTCB or LOMBARD_BTCB_TO_BTC)
413
+ * @returns The estimated bridging time in hours
414
+ */
415
+ declare const getEstimatedBridgingTime: (bridgeType: BridgeType) => number | undefined;
416
+
390
417
  declare const getEnabledBridgeServices: (environment: Environment, enabledBridgeInitializers: BridgeInitializer[]) => Promise<BridgeServicesMap>;
391
418
 
392
- export { AVALANCHE_FUJI_CHAIN, AVALANCHE_MAINNET_CHAIN, AnalyzeTxParams, AnalyzeTxResult, ArrayElement, Asset, AssetFeeMap, AvaToBtcBridgeInitializer, AvalancheChainIds, BITCOIN_MAINNET_CHAIN, BITCOIN_TESTNET_CHAIN, BTC_BRIDGE_TYPES, BitcoinChainIds, BitcoinFunctions, BitcoinInputUTXO, BitcoinInputUTXOWithOptionalScript, BitcoinTx, BridgeAsset, BridgeInitializer, BridgeService, BridgeServiceConfig, BridgeServiceFactory, BridgeServicesMap, BridgeSignatureReason, BridgeStepDetails, BridgeTransfer, BridgeType, BtcDispatch, BtcSign, BtcSigner, BtcToAvaBridgeInitializer, BtcTransactionRequest, Chain, ChainAssetMap, DestinationInfo, ETHEREUM_MAINNET_CHAIN, ETHEREUM_SEPOLIA_CHAIN, EVM_BRIDGE_TYPES, Environment, Erc20Asset, ErrorCode, ErrorReason, EthereumChainIds, EvmBridgeInitializer, EvmDispatch, EvmSign, EvmSigner, EvmTransactionRequest, FeeParams, GasEstimationParams, GasSettings, Hex, NativeAsset, TokenType, TrackingParams, TransferParams, UnifiedBridgeService, _default as caip2, createUnifiedBridgeService, getEnabledBridgeServices, isAvaToBtcBridgeInitializer, isBtcToAvaBridgeInitializer, isErc20Asset, isEvmBridgeInitializer, isNativeAsset };
419
+ export { AVALANCHE_FUJI_CHAIN, AVALANCHE_MAINNET_CHAIN, AnalyzeTxParams, AnalyzeTxResult, ArrayElement, Asset, AssetFeeMap, AvaToBtcBridgeInitializer, AvalancheChainIds, BITCOIN_MAINNET_CHAIN, BITCOIN_TESTNET_CHAIN, BTC_BRIDGE_TYPES, BitcoinChainIds, BitcoinFunctions, BitcoinInputUTXO, BitcoinInputUTXOWithOptionalScript, BitcoinTx, BridgeAsset, BridgeInitializer, BridgeService, BridgeServiceConfig, BridgeServiceFactory, BridgeServicesMap, BridgeSignatureReason, BridgeStepDetails, BridgeTransfer, BridgeType, BtcDispatch, BtcSign, BtcSigner, BtcToAvaBridgeInitializer, BtcTransactionRequest, Chain, ChainAssetMap, DestinationInfo, ETHEREUM_MAINNET_CHAIN, ETHEREUM_SEPOLIA_CHAIN, EVM_BRIDGE_TYPES, Environment, Erc20Asset, ErrorCode, ErrorReason, EthereumChainIds, EvmBridgeInitializer, EvmDispatch, EvmSign, EvmSignMessage, EvmSigner, EvmSignerWithMessage, EvmTransactionRequest, FeeParams, GasEstimationParams, GasSettings, Hex, LombardBridgeInitializer, NativeAsset, TokenType, TrackingParams, TransferParams, UnifiedBridgeService, _default as caip2, createUnifiedBridgeService, getEnabledBridgeServices, getEstimatedBridgingTime, isAvaToBtcBridgeInitializer, isBtcToAvaBridgeInitializer, isErc20Asset, isEvmBridgeInitializer, isLombardBridgeInitializer, isNativeAsset };