@atomiqlabs/chain-starknet 1.0.8 → 2.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/dist/index.d.ts +13 -9
  2. package/dist/index.js +13 -9
  3. package/dist/starknet/StarknetChainType.d.ts +6 -2
  4. package/dist/starknet/StarknetInitializer.d.ts +3 -2
  5. package/dist/starknet/StarknetInitializer.js +17 -6
  6. package/dist/starknet/btcrelay/StarknetBtcRelay.d.ts +28 -7
  7. package/dist/starknet/btcrelay/StarknetBtcRelay.js +75 -20
  8. package/dist/starknet/{base → chain}/StarknetAction.d.ts +2 -2
  9. package/dist/starknet/chain/StarknetChainInterface.d.ts +52 -0
  10. package/dist/starknet/chain/StarknetChainInterface.js +91 -0
  11. package/dist/starknet/{base → chain}/StarknetModule.d.ts +3 -3
  12. package/dist/starknet/{base → chain}/modules/StarknetAddresses.d.ts +1 -1
  13. package/dist/starknet/{base → chain}/modules/StarknetAddresses.js +1 -1
  14. package/dist/starknet/{base → chain}/modules/StarknetSignatures.d.ts +2 -2
  15. package/dist/starknet/{base → chain}/modules/StarknetTokens.js +2 -1
  16. package/dist/starknet/{base → chain}/modules/StarknetTransactions.d.ts +7 -1
  17. package/dist/starknet/{base → chain}/modules/StarknetTransactions.js +45 -16
  18. package/dist/starknet/contract/StarknetContractBase.d.ts +5 -5
  19. package/dist/starknet/contract/StarknetContractBase.js +5 -7
  20. package/dist/starknet/contract/StarknetContractModule.d.ts +8 -0
  21. package/dist/starknet/contract/StarknetContractModule.js +11 -0
  22. package/dist/starknet/contract/modules/StarknetContractEvents.d.ts +15 -4
  23. package/dist/starknet/contract/modules/StarknetContractEvents.js +26 -6
  24. package/dist/starknet/events/StarknetChainEvents.d.ts +3 -1
  25. package/dist/starknet/events/StarknetChainEvents.js +9 -9
  26. package/dist/starknet/events/StarknetChainEventsBrowser.d.ts +24 -6
  27. package/dist/starknet/events/StarknetChainEventsBrowser.js +116 -28
  28. package/dist/starknet/provider/RpcProviderWithRetries.d.ts +21 -0
  29. package/dist/starknet/provider/RpcProviderWithRetries.js +32 -0
  30. package/dist/starknet/spv_swap/SpvVaultContractAbi.d.ts +488 -0
  31. package/dist/starknet/spv_swap/SpvVaultContractAbi.js +656 -0
  32. package/dist/starknet/spv_swap/StarknetSpvVaultContract.d.ts +65 -0
  33. package/dist/starknet/spv_swap/StarknetSpvVaultContract.js +372 -0
  34. package/dist/starknet/spv_swap/StarknetSpvVaultData.d.ts +49 -0
  35. package/dist/starknet/spv_swap/StarknetSpvVaultData.js +144 -0
  36. package/dist/starknet/spv_swap/StarknetSpvWithdrawalData.d.ts +24 -0
  37. package/dist/starknet/spv_swap/StarknetSpvWithdrawalData.js +61 -0
  38. package/dist/starknet/swaps/StarknetSwapContract.d.ts +4 -22
  39. package/dist/starknet/swaps/StarknetSwapContract.js +23 -80
  40. package/dist/starknet/swaps/StarknetSwapModule.d.ts +6 -5
  41. package/dist/starknet/swaps/StarknetSwapModule.js +5 -6
  42. package/dist/starknet/swaps/handlers/IHandler.d.ts +2 -2
  43. package/dist/starknet/swaps/handlers/claim/ClaimHandlers.d.ts +1 -1
  44. package/dist/starknet/swaps/handlers/claim/HashlockClaimHandler.d.ts +2 -2
  45. package/dist/starknet/swaps/handlers/claim/btc/BitcoinNoncedOutputClaimHandler.d.ts +2 -2
  46. package/dist/starknet/swaps/handlers/claim/btc/BitcoinOutputClaimHandler.d.ts +2 -2
  47. package/dist/starknet/swaps/handlers/claim/btc/BitcoinTxIdClaimHandler.d.ts +2 -2
  48. package/dist/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.d.ts +2 -21
  49. package/dist/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.js +7 -41
  50. package/dist/starknet/swaps/handlers/refund/TimelockRefundHandler.d.ts +2 -2
  51. package/dist/starknet/swaps/modules/StarknetLpVault.d.ts +1 -1
  52. package/dist/starknet/swaps/modules/StarknetLpVault.js +9 -9
  53. package/dist/starknet/swaps/modules/StarknetSwapClaim.d.ts +1 -1
  54. package/dist/starknet/swaps/modules/StarknetSwapClaim.js +8 -8
  55. package/dist/starknet/swaps/modules/StarknetSwapInit.d.ts +1 -1
  56. package/dist/starknet/swaps/modules/StarknetSwapInit.js +9 -9
  57. package/dist/starknet/swaps/modules/StarknetSwapRefund.d.ts +1 -3
  58. package/dist/starknet/swaps/modules/StarknetSwapRefund.js +8 -11
  59. package/dist/starknet/wallet/StarknetSigner.js +1 -1
  60. package/dist/utils/Utils.d.ts +2 -2
  61. package/dist/utils/Utils.js +3 -1
  62. package/package.json +2 -2
  63. package/src/index.ts +15 -9
  64. package/src/starknet/StarknetChainType.ts +10 -2
  65. package/src/starknet/StarknetInitializer.ts +23 -7
  66. package/src/starknet/btcrelay/StarknetBtcRelay.ts +104 -30
  67. package/src/starknet/{base → chain}/StarknetAction.ts +3 -3
  68. package/src/starknet/chain/StarknetChainInterface.ts +149 -0
  69. package/src/starknet/{base → chain}/StarknetModule.ts +3 -3
  70. package/src/starknet/{base → chain}/modules/StarknetAddresses.ts +1 -1
  71. package/src/starknet/{base → chain}/modules/StarknetSignatures.ts +2 -2
  72. package/src/starknet/{base → chain}/modules/StarknetTokens.ts +2 -1
  73. package/src/starknet/{base → chain}/modules/StarknetTransactions.ts +43 -18
  74. package/src/starknet/contract/StarknetContractBase.ts +9 -12
  75. package/src/starknet/contract/StarknetContractModule.ts +16 -0
  76. package/src/starknet/contract/modules/StarknetContractEvents.ts +33 -7
  77. package/src/starknet/events/StarknetChainEvents.ts +15 -11
  78. package/src/starknet/events/StarknetChainEventsBrowser.ts +168 -41
  79. package/src/starknet/provider/RpcProviderWithRetries.ts +43 -0
  80. package/src/starknet/spv_swap/SpvVaultContractAbi.ts +656 -0
  81. package/src/starknet/spv_swap/StarknetSpvVaultContract.ts +475 -0
  82. package/src/starknet/spv_swap/StarknetSpvVaultData.ts +194 -0
  83. package/src/starknet/spv_swap/StarknetSpvWithdrawalData.ts +68 -0
  84. package/src/starknet/swaps/StarknetSwapContract.ts +28 -116
  85. package/src/starknet/swaps/StarknetSwapModule.ts +8 -8
  86. package/src/starknet/swaps/handlers/IHandler.ts +2 -2
  87. package/src/starknet/swaps/handlers/claim/ClaimHandlers.ts +1 -1
  88. package/src/starknet/swaps/handlers/claim/HashlockClaimHandler.ts +2 -2
  89. package/src/starknet/swaps/handlers/claim/btc/BitcoinNoncedOutputClaimHandler.ts +2 -2
  90. package/src/starknet/swaps/handlers/claim/btc/BitcoinOutputClaimHandler.ts +2 -2
  91. package/src/starknet/swaps/handlers/claim/btc/BitcoinTxIdClaimHandler.ts +2 -2
  92. package/src/starknet/swaps/handlers/claim/btc/IBitcoinClaimHandler.ts +12 -61
  93. package/src/starknet/swaps/handlers/refund/TimelockRefundHandler.ts +2 -2
  94. package/src/starknet/swaps/modules/StarknetLpVault.ts +10 -10
  95. package/src/starknet/swaps/modules/StarknetSwapClaim.ts +9 -9
  96. package/src/starknet/swaps/modules/StarknetSwapInit.ts +10 -10
  97. package/src/starknet/swaps/modules/StarknetSwapRefund.ts +9 -13
  98. package/src/starknet/wallet/StarknetSigner.ts +1 -1
  99. package/src/utils/Utils.ts +4 -3
  100. package/dist/starknet/base/StarknetBase.d.ts +0 -34
  101. package/dist/starknet/base/StarknetBase.js +0 -29
  102. package/src/starknet/base/StarknetBase.ts +0 -56
  103. /package/dist/starknet/{base → chain}/StarknetAction.js +0 -0
  104. /package/dist/starknet/{base → chain}/StarknetModule.js +0 -0
  105. /package/dist/starknet/{base → chain}/modules/ERC20Abi.d.ts +0 -0
  106. /package/dist/starknet/{base → chain}/modules/ERC20Abi.js +0 -0
  107. /package/dist/starknet/{base → chain}/modules/StarknetAccounts.d.ts +0 -0
  108. /package/dist/starknet/{base → chain}/modules/StarknetAccounts.js +0 -0
  109. /package/dist/starknet/{base → chain}/modules/StarknetBlocks.d.ts +0 -0
  110. /package/dist/starknet/{base → chain}/modules/StarknetBlocks.js +0 -0
  111. /package/dist/starknet/{base → chain}/modules/StarknetEvents.d.ts +0 -0
  112. /package/dist/starknet/{base → chain}/modules/StarknetEvents.js +0 -0
  113. /package/dist/starknet/{base → chain}/modules/StarknetFees.d.ts +0 -0
  114. /package/dist/starknet/{base → chain}/modules/StarknetFees.js +0 -0
  115. /package/dist/starknet/{base → chain}/modules/StarknetSignatures.js +0 -0
  116. /package/dist/starknet/{base → chain}/modules/StarknetTokens.d.ts +0 -0
  117. /package/src/starknet/{base → chain}/modules/ERC20Abi.ts +0 -0
  118. /package/src/starknet/{base → chain}/modules/StarknetAccounts.ts +0 -0
  119. /package/src/starknet/{base → chain}/modules/StarknetBlocks.ts +0 -0
  120. /package/src/starknet/{base → chain}/modules/StarknetEvents.ts +0 -0
  121. /package/src/starknet/{base → chain}/modules/StarknetFees.ts +0 -0
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StarknetSpvWithdrawalData = void 0;
4
+ const base_1 = require("@atomiqlabs/base");
5
+ const buffer_1 = require("buffer");
6
+ const starknet_1 = require("starknet");
7
+ const Utils_1 = require("../../utils/Utils");
8
+ const StarknetSpvVaultContract_1 = require("./StarknetSpvVaultContract");
9
+ class StarknetSpvWithdrawalData extends base_1.SpvWithdrawalTransactionData {
10
+ fromOpReturnData(data) {
11
+ return StarknetSpvVaultContract_1.StarknetSpvVaultContract.fromOpReturnData(data);
12
+ }
13
+ isRecipient(address) {
14
+ return this.getRecipient().toLowerCase() === address.toLowerCase();
15
+ }
16
+ getTxHash() {
17
+ return BigInt("0x" + buffer_1.Buffer.from(this.btcTx.txid, "hex").reverse().toString("hex"));
18
+ }
19
+ getFrontingAmount() {
20
+ return [this.rawAmounts[0] + this.getExecutionFee()[0], this.rawAmounts[1]];
21
+ }
22
+ serialize() {
23
+ return {
24
+ type: "STARKNET",
25
+ ...super.serialize()
26
+ };
27
+ }
28
+ serializeToStruct() {
29
+ const callerFee = this.getCallerFee();
30
+ const frontingFee = this.getFrontingFee();
31
+ const executionFee = this.getExecutionFee();
32
+ return {
33
+ recipient: this.recipient,
34
+ amount: starknet_1.cairo.tuple(this.rawAmounts[0], this.rawAmounts[1]),
35
+ caller_fee: starknet_1.cairo.tuple(callerFee[0], callerFee[1]),
36
+ fronting_fee: starknet_1.cairo.tuple(frontingFee[0], frontingFee[1]),
37
+ execution_handler_fee_amount_0: executionFee[0],
38
+ execution_hash: (0, Utils_1.toBigInt)(this.executionHash) ?? 0n,
39
+ execution_expiry: BigInt(this.executionExpiry)
40
+ };
41
+ }
42
+ serializeToFelts() {
43
+ const callerFee = this.getCallerFee();
44
+ const frontingFee = this.getFrontingFee();
45
+ const executionFee = this.getExecutionFee();
46
+ return [
47
+ this.recipient,
48
+ this.rawAmounts[0],
49
+ this.rawAmounts[1],
50
+ callerFee[0],
51
+ callerFee[1],
52
+ frontingFee[0],
53
+ frontingFee[1],
54
+ executionFee[0],
55
+ (0, Utils_1.toBigInt)(this.executionHash) ?? 0n,
56
+ BigInt(this.executionExpiry)
57
+ ];
58
+ }
59
+ }
60
+ exports.StarknetSpvWithdrawalData = StarknetSpvWithdrawalData;
61
+ base_1.SpvWithdrawalTransactionData.deserializers["STARKNET"] = StarknetSpvWithdrawalData;
@@ -2,11 +2,9 @@ import { ChainSwapType, IntermediaryReputationType, RelaySynchronizer, Signature
2
2
  import { Buffer } from "buffer";
3
3
  import { EscrowManagerAbi } from "./EscrowManagerAbi";
4
4
  import { StarknetContractBase } from "../contract/StarknetContractBase";
5
- import { StarknetTx } from "../base/modules/StarknetTransactions";
5
+ import { StarknetTx } from "../chain/modules/StarknetTransactions";
6
6
  import { StarknetSigner } from "../wallet/StarknetSigner";
7
- import { constants, Provider } from "starknet";
8
- import { StarknetRetryPolicy } from "../base/StarknetBase";
9
- import { StarknetFees } from "../base/modules/StarknetFees";
7
+ import { StarknetChainInterface } from "../chain/StarknetChainInterface";
10
8
  import { StarknetBtcRelay } from "../btcrelay/StarknetBtcRelay";
11
9
  import { StarknetSwapData } from "./StarknetSwapData";
12
10
  import { StarknetLpVault } from "./modules/StarknetLpVault";
@@ -39,7 +37,7 @@ export declare class StarknetSwapContract extends StarknetContractBase<typeof Es
39
37
  };
40
38
  readonly timelockRefundHandler: IHandler<any, any>;
41
39
  readonly btcRelay: StarknetBtcRelay<any>;
42
- constructor(chainId: constants.StarknetChainId, provider: Provider, btcRelay: StarknetBtcRelay<any>, contractAddress?: string, retryPolicy?: StarknetRetryPolicy, solanaFeeEstimator?: StarknetFees, handlerAddresses?: {
40
+ constructor(chainInterface: StarknetChainInterface, btcRelay: StarknetBtcRelay<any>, contractAddress?: string, handlerAddresses?: {
43
41
  refund?: {
44
42
  timelock?: string;
45
43
  };
@@ -141,15 +139,13 @@ export declare class StarknetSwapContract extends StarknetContractBase<typeof Es
141
139
  */
142
140
  getCommitedData(paymentHashHex: string): Promise<StarknetSwapData>;
143
141
  createSwapData(type: ChainSwapType, offerer: string, claimer: string, token: string, amount: bigint, paymentHash: string, sequence: bigint, expiry: bigint, payIn: boolean, payOut: boolean, securityDeposit: bigint, claimerBounty: bigint, depositToken?: string): Promise<StarknetSwapData>;
144
- getBalance(signer: string, tokenAddress: string, inContract: boolean): Promise<bigint>;
142
+ getBalance(signer: string, tokenAddress: string, inContract?: boolean): Promise<bigint>;
145
143
  getIntermediaryData(address: string, token: string): Promise<{
146
144
  balance: bigint;
147
145
  reputation: IntermediaryReputationType;
148
146
  }>;
149
147
  getIntermediaryReputation(address: string, token: string): Promise<IntermediaryReputationType>;
150
148
  getIntermediaryBalance(address: string, token: string): Promise<bigint>;
151
- isValidAddress(address: string): boolean;
152
- getNativeCurrencyAddress(): string;
153
149
  txsClaimWithSecret(signer: string | StarknetSigner, swapData: StarknetSwapData, secret: string, checkExpiry?: boolean, initAta?: boolean, feeRate?: string, skipAtaCheck?: boolean): Promise<StarknetTx[]>;
154
150
  txsClaimWithTxData(signer: string | StarknetSigner, swapData: StarknetSwapData, tx: {
155
151
  blockhash: string;
@@ -171,7 +167,6 @@ export declare class StarknetSwapContract extends StarknetContractBase<typeof Es
171
167
  }, skipChecks?: boolean, feeRate?: string): Promise<StarknetTx[]>;
172
168
  txsWithdraw(signer: string, token: string, amount: bigint, feeRate?: string): Promise<StarknetTx[]>;
173
169
  txsDeposit(signer: string, token: string, amount: bigint, feeRate?: string): Promise<StarknetTx[]>;
174
- txsTransfer(signer: string, token: string, amount: bigint, dstAddress: string, feeRate?: string): Promise<StarknetTx[]>;
175
170
  claimWithSecret(signer: StarknetSigner, swapData: StarknetSwapData, secret: string, checkExpiry?: boolean, initAta?: boolean, txOptions?: TransactionConfirmationOptions): Promise<string>;
176
171
  claimWithTxData(signer: StarknetSigner, swapData: StarknetSwapData, tx: {
177
172
  blockhash: string;
@@ -185,12 +180,6 @@ export declare class StarknetSwapContract extends StarknetContractBase<typeof Es
185
180
  init(signer: StarknetSigner, swapData: StarknetSwapData, signature: SignatureData, skipChecks?: boolean, txOptions?: TransactionConfirmationOptions): Promise<string>;
186
181
  withdraw(signer: StarknetSigner, token: string, amount: bigint, txOptions?: TransactionConfirmationOptions): Promise<string>;
187
182
  deposit(signer: StarknetSigner, token: string, amount: bigint, txOptions?: TransactionConfirmationOptions): Promise<string>;
188
- transfer(signer: StarknetSigner, token: string, amount: bigint, dstAddress: string, txOptions?: TransactionConfirmationOptions): Promise<string>;
189
- sendAndConfirm(signer: StarknetSigner, txs: StarknetTx[], waitForConfirmation?: boolean, abortSignal?: AbortSignal, parallel?: boolean, onBeforePublish?: (txId: string, rawTx: string) => Promise<void>): Promise<string[]>;
190
- serializeTx(tx: StarknetTx): Promise<string>;
191
- deserializeTx(txData: string): Promise<StarknetTx>;
192
- getTxIdStatus(txId: string): Promise<"not_found" | "pending" | "success" | "reverted">;
193
- getTxStatus(tx: string): Promise<"not_found" | "pending" | "success" | "reverted">;
194
183
  getInitPayInFeeRate(offerer?: string, claimer?: string, token?: string, paymentHash?: string): Promise<string>;
195
184
  getInitFeeRate(offerer?: string, claimer?: string, token?: string, paymentHash?: string): Promise<string>;
196
185
  getRefundFeeRate(swapData: StarknetSwapData): Promise<string>;
@@ -204,11 +193,4 @@ export declare class StarknetSwapContract extends StarknetContractBase<typeof Es
204
193
  * Get the estimated solana transaction fee of the refund transaction
205
194
  */
206
195
  getRefundFee(swapData: StarknetSwapData, feeRate?: string): Promise<bigint>;
207
- offBeforeTxReplace(callback: (oldTx: string, oldTxId: string, newTx: string, newTxId: string) => Promise<void>): boolean;
208
- onBeforeTxReplace(callback: (oldTx: string, oldTxId: string, newTx: string, newTxId: string) => Promise<void>): void;
209
- onBeforeTxSigned(callback: (tx: StarknetTx) => Promise<void>): void;
210
- offBeforeTxSigned(callback: (tx: StarknetTx) => Promise<void>): boolean;
211
- isValidToken(tokenIdentifier: string): boolean;
212
- randomAddress(): string;
213
- randomSigner(): StarknetSigner;
214
196
  }
@@ -5,13 +5,10 @@ const base_1 = require("@atomiqlabs/base");
5
5
  const buffer_1 = require("buffer");
6
6
  const EscrowManagerAbi_1 = require("./EscrowManagerAbi");
7
7
  const StarknetContractBase_1 = require("../contract/StarknetContractBase");
8
- const StarknetSigner_1 = require("../wallet/StarknetSigner");
9
8
  const starknet_1 = require("starknet");
10
- const StarknetFees_1 = require("../base/modules/StarknetFees");
11
9
  const StarknetSwapData_1 = require("./StarknetSwapData");
12
10
  const Utils_1 = require("../../utils/Utils");
13
11
  const TimelockRefundHandler_1 = require("./handlers/refund/TimelockRefundHandler");
14
- const StarknetKeypairWallet_1 = require("../wallet/StarknetKeypairWallet");
15
12
  const StarknetLpVault_1 = require("./modules/StarknetLpVault");
16
13
  const StarknetSwapInit_1 = require("./modules/StarknetSwapInit");
17
14
  const StarknetSwapRefund_1 = require("./modules/StarknetSwapRefund");
@@ -48,8 +45,8 @@ const defaultRefundAddresses = {
48
45
  }
49
46
  };
50
47
  class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
51
- constructor(chainId, provider, btcRelay, contractAddress = swapContractAddreses[chainId], retryPolicy, solanaFeeEstimator = new StarknetFees_1.StarknetFees(provider), handlerAddresses) {
52
- super(chainId, provider, contractAddress, EscrowManagerAbi_1.EscrowManagerAbi, retryPolicy, solanaFeeEstimator);
48
+ constructor(chainInterface, btcRelay, contractAddress = swapContractAddreses[chainInterface.starknetChainId], handlerAddresses) {
49
+ super(chainInterface, contractAddress, EscrowManagerAbi_1.EscrowManagerAbi);
53
50
  ////////////////////////
54
51
  //// Constants
55
52
  this.chainId = "STARKNET";
@@ -66,16 +63,16 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
66
63
  this.claimHandlersByAddress = {};
67
64
  this.claimHandlersBySwapType = {};
68
65
  this.refundHandlersByAddress = {};
69
- this.Init = new StarknetSwapInit_1.StarknetSwapInit(this);
70
- this.Refund = new StarknetSwapRefund_1.StarknetSwapRefund(this);
71
- this.Claim = new StarknetSwapClaim_1.StarknetSwapClaim(this);
72
- this.LpVault = new StarknetLpVault_1.StarknetLpVault(this);
66
+ this.Init = new StarknetSwapInit_1.StarknetSwapInit(chainInterface, this);
67
+ this.Refund = new StarknetSwapRefund_1.StarknetSwapRefund(chainInterface, this);
68
+ this.Claim = new StarknetSwapClaim_1.StarknetSwapClaim(chainInterface, this);
69
+ this.LpVault = new StarknetLpVault_1.StarknetLpVault(chainInterface, this);
73
70
  this.btcRelay = btcRelay;
74
71
  handlerAddresses ?? (handlerAddresses = {});
75
72
  handlerAddresses.refund ?? (handlerAddresses.refund = {});
76
- handlerAddresses.refund = { ...defaultRefundAddresses[chainId], ...handlerAddresses.refund };
73
+ handlerAddresses.refund = { ...defaultRefundAddresses[chainInterface.starknetChainId], ...handlerAddresses.refund };
77
74
  handlerAddresses.claim ?? (handlerAddresses.claim = {});
78
- handlerAddresses.claim = { ...defaultClaimAddresses[chainId], ...handlerAddresses.claim };
75
+ handlerAddresses.claim = { ...defaultClaimAddresses[chainInterface.starknetChainId], ...handlerAddresses.claim };
79
76
  ClaimHandlers_1.claimHandlersList.forEach(handlerCtor => {
80
77
  const handler = new handlerCtor(handlerAddresses.claim[handlerCtor.type]);
81
78
  this.claimHandlersByAddress[handler.address] = handler;
@@ -110,10 +107,10 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
110
107
  return this.Refund.isSignatureValid(swapData, timeout, prefix, signature);
111
108
  }
112
109
  getDataSignature(signer, data) {
113
- return this.Signatures.getDataSignature(signer, data);
110
+ return this.Chain.Signatures.getDataSignature(signer, data);
114
111
  }
115
112
  isValidDataSignature(data, signature, publicKey) {
116
- return this.Signatures.isValidDataSignature(data, signature, publicKey);
113
+ return this.Chain.Signatures.isValidDataSignature(data, signature, publicKey);
117
114
  }
118
115
  ////////////////////////////////////////////
119
116
  //// Swap data utils
@@ -273,7 +270,7 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
273
270
  }
274
271
  ////////////////////////////////////////////
275
272
  //// Swap data initializer
276
- createSwapData(type, offerer, claimer, token, amount, paymentHash, sequence, expiry, payIn, payOut, securityDeposit, claimerBounty, depositToken = this.Tokens.getNativeCurrencyAddress()) {
273
+ createSwapData(type, offerer, claimer, token, amount, paymentHash, sequence, expiry, payIn, payOut, securityDeposit, claimerBounty, depositToken = this.Chain.Tokens.getNativeCurrencyAddress()) {
277
274
  return Promise.resolve(new StarknetSwapData_1.StarknetSwapData(offerer, claimer, token, this.timelockRefundHandler.address, this.claimHandlersBySwapType?.[type]?.address, payOut, payIn, payIn, //For now track reputation for all payIn swaps
278
275
  sequence, "0x" + paymentHash, (0, Utils_1.toHex)(expiry), amount, depositToken, securityDeposit, claimerBounty, type, null));
279
276
  }
@@ -283,7 +280,7 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
283
280
  if (inContract)
284
281
  return await this.getIntermediaryBalance(signer, tokenAddress);
285
282
  //TODO: For native token we should discount the cost of deploying an account if it is not deployed yet
286
- return await this.Tokens.getTokenBalance(signer, tokenAddress);
283
+ return await this.Chain.getBalance(signer, tokenAddress);
287
284
  }
288
285
  getIntermediaryData(address, token) {
289
286
  return this.LpVault.getIntermediaryData(address, token);
@@ -294,12 +291,6 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
294
291
  getIntermediaryBalance(address, token) {
295
292
  return this.LpVault.getIntermediaryBalance(address, token);
296
293
  }
297
- isValidAddress(address) {
298
- return this.Addresses.isValidAddress(address);
299
- }
300
- getNativeCurrencyAddress() {
301
- return this.Tokens.getNativeCurrencyAddress();
302
- }
303
294
  ////////////////////////////////////////////
304
295
  //// Transaction initializers
305
296
  async txsClaimWithSecret(signer, swapData, secret, checkExpiry, initAta, feeRate, skipAtaCheck) {
@@ -323,14 +314,11 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
323
314
  txsDeposit(signer, token, amount, feeRate) {
324
315
  return this.LpVault.txsDeposit(signer, token, amount, feeRate);
325
316
  }
326
- txsTransfer(signer, token, amount, dstAddress, feeRate) {
327
- return this.Tokens.txsTransfer(signer, token, amount, dstAddress, feeRate);
328
- }
329
317
  ////////////////////////////////////////////
330
318
  //// Executors
331
319
  async claimWithSecret(signer, swapData, secret, checkExpiry, initAta, txOptions) {
332
320
  const result = await this.Claim.txsClaimWithSecret(signer.getAddress(), swapData, secret, checkExpiry, txOptions?.feeRate);
333
- const [signature] = await this.Transactions.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
321
+ const [signature] = await this.Chain.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
334
322
  return signature;
335
323
  }
336
324
  async claimWithTxData(signer, swapData, tx, requiredConfirmations, vout, commitedHeader, synchronizer, initAta, txOptions) {
@@ -338,17 +326,17 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
338
326
  if (txs === null)
339
327
  throw new Error("Btc relay not synchronized to required blockheight!");
340
328
  //TODO: This doesn't return proper tx signature
341
- const [signature] = await this.Transactions.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal);
329
+ const [signature] = await this.Chain.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal);
342
330
  return signature;
343
331
  }
344
332
  async refund(signer, swapData, check, initAta, txOptions) {
345
333
  let result = await this.txsRefund(signer.getAddress(), swapData, check, initAta, txOptions?.feeRate);
346
- const [signature] = await this.Transactions.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
334
+ const [signature] = await this.Chain.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
347
335
  return signature;
348
336
  }
349
337
  async refundWithAuthorization(signer, swapData, signature, check, initAta, txOptions) {
350
338
  let result = await this.txsRefundWithAuthorization(signer.getAddress(), swapData, signature, check, initAta, txOptions?.feeRate);
351
- const [txSignature] = await this.Transactions.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
339
+ const [txSignature] = await this.Chain.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
352
340
  return txSignature;
353
341
  }
354
342
  async init(signer, swapData, signature, skipChecks, txOptions) {
@@ -361,54 +349,32 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
361
349
  throw new Error("Invalid signer provided!");
362
350
  }
363
351
  let result = await this.txsInit(swapData, signature, skipChecks, txOptions?.feeRate);
364
- const [txSignature] = await this.Transactions.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
352
+ const [txSignature] = await this.Chain.sendAndConfirm(signer, result, txOptions?.waitForConfirmation, txOptions?.abortSignal);
365
353
  return txSignature;
366
354
  }
367
355
  async withdraw(signer, token, amount, txOptions) {
368
356
  const txs = await this.LpVault.txsWithdraw(signer.getAddress(), token, amount, txOptions?.feeRate);
369
- const [txId] = await this.Transactions.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal, false);
357
+ const [txId] = await this.Chain.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal, false);
370
358
  return txId;
371
359
  }
372
360
  async deposit(signer, token, amount, txOptions) {
373
361
  const txs = await this.LpVault.txsDeposit(signer.getAddress(), token, amount, txOptions?.feeRate);
374
- const [txId] = await this.Transactions.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal, false);
375
- return txId;
376
- }
377
- async transfer(signer, token, amount, dstAddress, txOptions) {
378
- const txs = await this.Tokens.txsTransfer(signer.getAddress(), token, amount, dstAddress, txOptions?.feeRate);
379
- const [txId] = await this.Transactions.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal, false);
362
+ const [txId] = await this.Chain.sendAndConfirm(signer, txs, txOptions?.waitForConfirmation, txOptions?.abortSignal, false);
380
363
  return txId;
381
364
  }
382
365
  ////////////////////////////////////////////
383
- //// Transactions
384
- sendAndConfirm(signer, txs, waitForConfirmation, abortSignal, parallel, onBeforePublish) {
385
- return this.Transactions.sendAndConfirm(signer, txs, waitForConfirmation, abortSignal, parallel, onBeforePublish);
386
- }
387
- serializeTx(tx) {
388
- return this.Transactions.serializeTx(tx);
389
- }
390
- deserializeTx(txData) {
391
- return this.Transactions.deserializeTx(txData);
392
- }
393
- getTxIdStatus(txId) {
394
- return this.Transactions.getTxIdStatus(txId);
395
- }
396
- getTxStatus(tx) {
397
- return this.Transactions.getTxStatus(tx);
398
- }
399
- ////////////////////////////////////////////
400
366
  //// Fees
401
367
  getInitPayInFeeRate(offerer, claimer, token, paymentHash) {
402
- return this.Fees.getFeeRate();
368
+ return this.Chain.Fees.getFeeRate();
403
369
  }
404
370
  getInitFeeRate(offerer, claimer, token, paymentHash) {
405
- return this.Fees.getFeeRate();
371
+ return this.Chain.Fees.getFeeRate();
406
372
  }
407
373
  getRefundFeeRate(swapData) {
408
- return this.Fees.getFeeRate();
374
+ return this.Chain.Fees.getFeeRate();
409
375
  }
410
376
  getClaimFeeRate(signer, swapData) {
411
- return this.Fees.getFeeRate();
377
+ return this.Chain.Fees.getFeeRate();
412
378
  }
413
379
  getClaimFee(signer, swapData, feeRate) {
414
380
  return this.Claim.getClaimFee(swapData, feeRate);
@@ -425,28 +391,5 @@ class StarknetSwapContract extends StarknetContractBase_1.StarknetContractBase {
425
391
  getRefundFee(swapData, feeRate) {
426
392
  return this.Refund.getRefundFee(swapData, feeRate);
427
393
  }
428
- ///////////////////////////////////
429
- //// Callbacks & handlers
430
- offBeforeTxReplace(callback) {
431
- return true;
432
- }
433
- onBeforeTxReplace(callback) { }
434
- onBeforeTxSigned(callback) {
435
- this.Transactions.onBeforeTxSigned(callback);
436
- }
437
- offBeforeTxSigned(callback) {
438
- return this.Transactions.offBeforeTxSigned(callback);
439
- }
440
- isValidToken(tokenIdentifier) {
441
- return this.Tokens.isValidToken(tokenIdentifier);
442
- }
443
- randomAddress() {
444
- return starknet_1.stark.randomAddress();
445
- }
446
- randomSigner() {
447
- const privateKey = "0x" + buffer_1.Buffer.from(starknet_1.ec.starkCurve.utils.randomPrivateKey()).toString("hex");
448
- const wallet = new StarknetKeypairWallet_1.StarknetKeypairWallet(this.provider, privateKey);
449
- return new StarknetSigner_1.StarknetSigner(wallet);
450
- }
451
394
  }
452
395
  exports.StarknetSwapContract = StarknetSwapContract;
@@ -1,9 +1,10 @@
1
- import { StarknetModule } from "../base/StarknetModule";
2
1
  import { StarknetSwapContract } from "./StarknetSwapContract";
3
2
  import { TypedContractV2 } from "starknet";
4
3
  import { EscrowManagerAbi } from "./EscrowManagerAbi";
5
- export declare class StarknetSwapModule extends StarknetModule {
6
- readonly root: StarknetSwapContract;
7
- readonly contract: TypedContractV2<typeof EscrowManagerAbi>;
8
- constructor(root: StarknetSwapContract);
4
+ import { StarknetChainInterface } from "../chain/StarknetChainInterface";
5
+ import { StarknetContractModule } from "../contract/StarknetContractModule";
6
+ export declare class StarknetSwapModule extends StarknetContractModule<typeof EscrowManagerAbi> {
7
+ readonly contract: StarknetSwapContract;
8
+ readonly swapContract: TypedContractV2<typeof EscrowManagerAbi>;
9
+ constructor(chainInterface: StarknetChainInterface, contract: StarknetSwapContract);
9
10
  }
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StarknetSwapModule = void 0;
4
- const StarknetModule_1 = require("../base/StarknetModule");
5
- class StarknetSwapModule extends StarknetModule_1.StarknetModule {
6
- constructor(root) {
7
- super(root);
8
- this.root = root;
9
- this.contract = root.contract;
4
+ const StarknetContractModule_1 = require("../contract/StarknetContractModule");
5
+ class StarknetSwapModule extends StarknetContractModule_1.StarknetContractModule {
6
+ constructor(chainInterface, contract) {
7
+ super(chainInterface, contract);
8
+ this.swapContract = contract.contract;
10
9
  }
11
10
  }
12
11
  exports.StarknetSwapModule = StarknetSwapModule;
@@ -1,7 +1,7 @@
1
1
  import { StarknetSwapData } from "../StarknetSwapData";
2
2
  import { BigNumberish } from "starknet";
3
- import { StarknetGas } from "../../base/StarknetAction";
4
- import { StarknetTx } from "../../base/modules/StarknetTransactions";
3
+ import { StarknetGas } from "../../chain/StarknetAction";
4
+ import { StarknetTx } from "../../chain/modules/StarknetTransactions";
5
5
  export interface IHandler<TCommitmentData, TWitnessData> {
6
6
  readonly address: string;
7
7
  getCommitment(data: TCommitmentData): BigNumberish;
@@ -1,5 +1,5 @@
1
1
  import { ChainSwapType } from "@atomiqlabs/base";
2
- import { StarknetGas } from "../../../base/StarknetAction";
2
+ import { StarknetGas } from "../../../chain/StarknetAction";
3
3
  import { IHandler } from "../IHandler";
4
4
  import { BigNumberish } from "starknet";
5
5
  export interface IClaimHandler<C, W> extends IHandler<C, W> {
@@ -1,9 +1,9 @@
1
1
  import { StarknetSwapData } from "../../StarknetSwapData";
2
2
  import { BigNumberish } from "starknet";
3
3
  import { ChainSwapType } from "@atomiqlabs/base";
4
- import { StarknetGas } from "../../../base/StarknetAction";
4
+ import { StarknetGas } from "../../../chain/StarknetAction";
5
5
  import { Buffer } from "buffer";
6
- import { StarknetTx } from "../../../base/modules/StarknetTransactions";
6
+ import { StarknetTx } from "../../../chain/modules/StarknetTransactions";
7
7
  import { IClaimHandler } from "./ClaimHandlers";
8
8
  export declare class HashlockClaimHandler implements IClaimHandler<Buffer, string> {
9
9
  readonly address: string;
@@ -1,8 +1,8 @@
1
1
  import { StarknetSwapData } from "../../../StarknetSwapData";
2
- import { StarknetGas } from "../../../../base/StarknetAction";
2
+ import { StarknetGas } from "../../../../chain/StarknetAction";
3
3
  import { ChainSwapType } from "@atomiqlabs/base";
4
4
  import { BigNumberish } from "starknet";
5
- import { StarknetTx } from "../../../../base/modules/StarknetTransactions";
5
+ import { StarknetTx } from "../../../../chain/modules/StarknetTransactions";
6
6
  import { BitcoinCommitmentData, IBitcoinClaimHandler } from "./IBitcoinClaimHandler";
7
7
  import { BitcoinOutputWitnessData } from "./BitcoinOutputClaimHandler";
8
8
  import { Buffer } from "buffer";
@@ -1,8 +1,8 @@
1
1
  import { StarknetSwapData } from "../../../StarknetSwapData";
2
- import { StarknetGas } from "../../../../base/StarknetAction";
2
+ import { StarknetGas } from "../../../../chain/StarknetAction";
3
3
  import { ChainSwapType } from "@atomiqlabs/base";
4
4
  import { BigNumberish } from "starknet";
5
- import { StarknetTx } from "../../../../base/modules/StarknetTransactions";
5
+ import { StarknetTx } from "../../../../chain/modules/StarknetTransactions";
6
6
  import { BitcoinCommitmentData, BitcoinWitnessData, IBitcoinClaimHandler } from "./IBitcoinClaimHandler";
7
7
  import { Buffer } from "buffer";
8
8
  export type BitcoinOutputCommitmentData = {
@@ -1,8 +1,8 @@
1
1
  import { StarknetSwapData } from "../../../StarknetSwapData";
2
- import { StarknetGas } from "../../../../base/StarknetAction";
2
+ import { StarknetGas } from "../../../../chain/StarknetAction";
3
3
  import { ChainSwapType } from "@atomiqlabs/base";
4
4
  import { BigNumberish } from "starknet";
5
- import { StarknetTx } from "../../../../base/modules/StarknetTransactions";
5
+ import { StarknetTx } from "../../../../chain/modules/StarknetTransactions";
6
6
  import { BitcoinCommitmentData, BitcoinWitnessData, IBitcoinClaimHandler } from "./IBitcoinClaimHandler";
7
7
  export type BitcoinTxIdCommitmentData = {
8
8
  txId: string;
@@ -1,10 +1,10 @@
1
1
  import { IClaimHandler } from "../ClaimHandlers";
2
2
  import { StarknetSwapData } from "../../../StarknetSwapData";
3
- import { StarknetGas } from "../../../../base/StarknetAction";
3
+ import { StarknetGas } from "../../../../chain/StarknetAction";
4
4
  import { ChainSwapType, RelaySynchronizer } from "@atomiqlabs/base";
5
5
  import { BigNumberish } from "starknet";
6
6
  import { StarknetBtcStoredHeader } from "../../../../btcrelay/headers/StarknetBtcStoredHeader";
7
- import { StarknetTx } from "../../../../base/modules/StarknetTransactions";
7
+ import { StarknetTx } from "../../../../chain/modules/StarknetTransactions";
8
8
  import { StarknetBtcRelay } from "../../../../btcrelay/StarknetBtcRelay";
9
9
  export type BitcoinCommitmentData = {
10
10
  btcRelay: StarknetBtcRelay<any>;
@@ -26,25 +26,6 @@ export type BitcoinWitnessData = {
26
26
  export declare abstract class IBitcoinClaimHandler<C, W extends BitcoinWitnessData> implements IClaimHandler<C & BitcoinCommitmentData, W> {
27
27
  readonly address: string;
28
28
  constructor(address: string);
29
- /**
30
- * Gets committed header, identified by blockhash & blockheight, determines required BTC relay blockheight based on
31
- * requiredConfirmations
32
- * If synchronizer is passed & blockhash is not found, it produces transactions to sync up the btc relay to the
33
- * current chain tip & adds them to the txs array
34
- *
35
- * @param signer
36
- * @param btcRelay
37
- * @param txBlockheight transaction blockheight
38
- * @param requiredConfirmations required confirmation for the swap to be claimable with that TX
39
- * @param blockhash blockhash of the block which includes the transaction
40
- * @param txs solana transaction array, in case we need to synchronize the btc relay ourselves the synchronization
41
- * txns are added here
42
- * @param synchronizer optional synchronizer to use to synchronize the btc relay in case it is not yet synchronized
43
- * to the required blockheight
44
- * @param feeRate Fee rate to use for synchronization transactions
45
- * @private
46
- */
47
- protected getCommitedHeaderAndSynchronize(signer: string, btcRelay: StarknetBtcRelay<any>, txBlockheight: number, requiredConfirmations: number, blockhash: string, txs: StarknetTx[], synchronizer?: RelaySynchronizer<StarknetBtcStoredHeader, StarknetTx, any>, feeRate?: string): Promise<StarknetBtcStoredHeader>;
48
29
  static readonly address = "";
49
30
  static readonly type: ChainSwapType;
50
31
  static readonly gas: StarknetGas;
@@ -3,49 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IBitcoinClaimHandler = void 0;
4
4
  const base_1 = require("@atomiqlabs/base");
5
5
  const starknet_1 = require("starknet");
6
+ const StarknetBtcRelay_1 = require("../../../../btcrelay/StarknetBtcRelay");
6
7
  const Utils_1 = require("../../../../../utils/Utils");
7
8
  const logger = (0, Utils_1.getLogger)("IBitcoinClaimHandler: ");
8
9
  class IBitcoinClaimHandler {
9
10
  constructor(address) {
10
11
  this.address = address;
11
12
  }
12
- /**
13
- * Gets committed header, identified by blockhash & blockheight, determines required BTC relay blockheight based on
14
- * requiredConfirmations
15
- * If synchronizer is passed & blockhash is not found, it produces transactions to sync up the btc relay to the
16
- * current chain tip & adds them to the txs array
17
- *
18
- * @param signer
19
- * @param btcRelay
20
- * @param txBlockheight transaction blockheight
21
- * @param requiredConfirmations required confirmation for the swap to be claimable with that TX
22
- * @param blockhash blockhash of the block which includes the transaction
23
- * @param txs solana transaction array, in case we need to synchronize the btc relay ourselves the synchronization
24
- * txns are added here
25
- * @param synchronizer optional synchronizer to use to synchronize the btc relay in case it is not yet synchronized
26
- * to the required blockheight
27
- * @param feeRate Fee rate to use for synchronization transactions
28
- * @private
29
- */
30
- async getCommitedHeaderAndSynchronize(signer, btcRelay, txBlockheight, requiredConfirmations, blockhash, txs, synchronizer, feeRate) {
31
- const requiredBlockheight = txBlockheight + requiredConfirmations - 1;
32
- const result = await (0, Utils_1.tryWithRetries)(() => btcRelay.retrieveLogAndBlockheight({
33
- blockhash: blockhash
34
- }, requiredBlockheight));
35
- if (result != null)
36
- return result.header;
37
- //Need to synchronize
38
- if (synchronizer == null)
39
- return null;
40
- //TODO: We don't have to synchronize to tip, only to our required blockheight
41
- const resp = await synchronizer.syncToLatestTxs(signer.toString(), feeRate);
42
- logger.debug("getCommitedHeaderAndSynchronize(): BTC Relay not synchronized to required blockheight, " +
43
- "synchronizing ourselves in " + resp.txs.length + " txs");
44
- logger.debug("getCommitedHeaderAndSynchronize(): BTC Relay computed header map: ", resp.computedHeaderMap);
45
- resp.txs.forEach(tx => txs.push(tx));
46
- //Retrieve computed header
47
- return resp.computedHeaderMap[txBlockheight];
48
- }
49
13
  serializeCommitment(data) {
50
14
  return [
51
15
  data.confirmations,
@@ -67,10 +31,12 @@ class IBitcoinClaimHandler {
67
31
  const merkleProof = await btcRelay.bitcoinRpc.getMerkleProof(tx.txid, tx.blockhash);
68
32
  logger.debug("getWitness(): merkle proof computed: ", merkleProof);
69
33
  const txs = [];
70
- if (commitedHeader == null)
71
- commitedHeader = await this.getCommitedHeaderAndSynchronize(signer, btcRelay, tx.height, requiredConfirmations, tx.blockhash, txs, synchronizer, feeRate);
72
- if (commitedHeader == null)
73
- throw new Error("Cannot fetch committed header!");
34
+ if (commitedHeader == null) {
35
+ const headers = await StarknetBtcRelay_1.StarknetBtcRelay.getCommitedHeadersAndSynchronize(signer, btcRelay, [{ blockheight: tx.height, requiredConfirmations, blockhash: tx.blockhash }], txs, synchronizer, feeRate);
36
+ if (headers == null)
37
+ throw new Error("Cannot fetch committed header!");
38
+ commitedHeader = headers[tx.blockhash];
39
+ }
74
40
  serializedData.push(...commitedHeader.serialize());
75
41
  serializedData.push(merkleProof.merkle.length, ...merkleProof.merkle.map(Utils_1.bufferToU32Array).flat());
76
42
  serializedData.push(merkleProof.pos);
@@ -1,8 +1,8 @@
1
- import { StarknetTx } from "../../../base/modules/StarknetTransactions";
1
+ import { StarknetTx } from "../../../chain/modules/StarknetTransactions";
2
2
  import { StarknetSwapData } from "../../StarknetSwapData";
3
3
  import { BigNumberish } from "starknet";
4
4
  import { IHandler } from "../IHandler";
5
- import { StarknetGas } from "../../../base/StarknetAction";
5
+ import { StarknetGas } from "../../../chain/StarknetAction";
6
6
  export declare class TimelockRefundHandler implements IHandler<bigint, never> {
7
7
  readonly address: string;
8
8
  static readonly gas: StarknetGas;
@@ -1,6 +1,6 @@
1
1
  import { IntermediaryReputationType } from "@atomiqlabs/base";
2
2
  import { StarknetSwapModule } from "../StarknetSwapModule";
3
- import { StarknetTx } from "../../base/modules/StarknetTransactions";
3
+ import { StarknetTx } from "../../chain/modules/StarknetTransactions";
4
4
  export declare class StarknetLpVault extends StarknetSwapModule {
5
5
  private static readonly GasCosts;
6
6
  /**