@across-protocol/sdk 4.3.11 → 4.3.13

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 (95) hide show
  1. package/dist/cjs/arch/svm/BlockUtils.d.ts +1 -0
  2. package/dist/cjs/arch/svm/BlockUtils.js +69 -52
  3. package/dist/cjs/arch/svm/BlockUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/SpokeUtils.d.ts +21 -10
  5. package/dist/cjs/arch/svm/SpokeUtils.js +303 -49
  6. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  7. package/dist/cjs/arch/svm/types.d.ts +7 -0
  8. package/dist/cjs/arch/svm/utils.d.ts +8 -3
  9. package/dist/cjs/arch/svm/utils.js +81 -4
  10. package/dist/cjs/arch/svm/utils.js.map +1 -1
  11. package/dist/cjs/caching/IPFS/PinataIPFSClient.d.ts +2 -0
  12. package/dist/cjs/caching/IPFS/PinataIPFSClient.js +6 -0
  13. package/dist/cjs/caching/IPFS/PinataIPFSClient.js.map +1 -1
  14. package/dist/cjs/caching/Memory/MemoryCacheClient.d.ts +2 -0
  15. package/dist/cjs/caching/Memory/MemoryCacheClient.js +6 -0
  16. package/dist/cjs/caching/Memory/MemoryCacheClient.js.map +1 -1
  17. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +1 -1
  18. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +5 -2
  19. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  20. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +8 -8
  21. package/dist/cjs/clients/HubPoolClient.d.ts +1 -0
  22. package/dist/cjs/clients/HubPoolClient.js +11 -0
  23. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  24. package/dist/cjs/interfaces/CachingMechanism.d.ts +2 -0
  25. package/dist/cjs/interfaces/index.d.ts +0 -1
  26. package/dist/cjs/interfaces/index.js +0 -1
  27. package/dist/cjs/interfaces/index.js.map +1 -1
  28. package/dist/esm/arch/svm/BlockUtils.d.ts +7 -0
  29. package/dist/esm/arch/svm/BlockUtils.js +76 -54
  30. package/dist/esm/arch/svm/BlockUtils.js.map +1 -1
  31. package/dist/esm/arch/svm/SpokeUtils.d.ts +51 -10
  32. package/dist/esm/arch/svm/SpokeUtils.js +294 -8
  33. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  34. package/dist/esm/arch/svm/types.d.ts +7 -0
  35. package/dist/esm/arch/svm/utils.d.ts +35 -3
  36. package/dist/esm/arch/svm/utils.js +103 -3
  37. package/dist/esm/arch/svm/utils.js.map +1 -1
  38. package/dist/esm/caching/IPFS/PinataIPFSClient.d.ts +2 -0
  39. package/dist/esm/caching/IPFS/PinataIPFSClient.js +6 -0
  40. package/dist/esm/caching/IPFS/PinataIPFSClient.js.map +1 -1
  41. package/dist/esm/caching/Memory/MemoryCacheClient.d.ts +2 -0
  42. package/dist/esm/caching/Memory/MemoryCacheClient.js +6 -0
  43. package/dist/esm/caching/Memory/MemoryCacheClient.js.map +1 -1
  44. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +1 -1
  45. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +5 -2
  46. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  47. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +8 -8
  48. package/dist/esm/clients/HubPoolClient.d.ts +1 -0
  49. package/dist/esm/clients/HubPoolClient.js +19 -0
  50. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  51. package/dist/esm/interfaces/CachingMechanism.d.ts +12 -0
  52. package/dist/esm/interfaces/index.d.ts +0 -1
  53. package/dist/esm/interfaces/index.js +0 -1
  54. package/dist/esm/interfaces/index.js.map +1 -1
  55. package/dist/types/arch/svm/BlockUtils.d.ts +7 -0
  56. package/dist/types/arch/svm/BlockUtils.d.ts.map +1 -1
  57. package/dist/types/arch/svm/SpokeUtils.d.ts +51 -10
  58. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  59. package/dist/types/arch/svm/types.d.ts +7 -0
  60. package/dist/types/arch/svm/types.d.ts.map +1 -1
  61. package/dist/types/arch/svm/utils.d.ts +35 -3
  62. package/dist/types/arch/svm/utils.d.ts.map +1 -1
  63. package/dist/types/caching/IPFS/PinataIPFSClient.d.ts +2 -0
  64. package/dist/types/caching/IPFS/PinataIPFSClient.d.ts.map +1 -1
  65. package/dist/types/caching/Memory/MemoryCacheClient.d.ts +2 -0
  66. package/dist/types/caching/Memory/MemoryCacheClient.d.ts.map +1 -1
  67. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +1 -1
  68. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts.map +1 -1
  69. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +8 -8
  70. package/dist/types/clients/HubPoolClient.d.ts +1 -0
  71. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  72. package/dist/types/interfaces/CachingMechanism.d.ts +12 -0
  73. package/dist/types/interfaces/CachingMechanism.d.ts.map +1 -1
  74. package/dist/types/interfaces/index.d.ts +0 -1
  75. package/dist/types/interfaces/index.d.ts.map +1 -1
  76. package/package.json +1 -1
  77. package/src/arch/svm/BlockUtils.ts +33 -16
  78. package/src/arch/svm/SpokeUtils.ts +272 -10
  79. package/src/arch/svm/types.ts +8 -0
  80. package/src/arch/svm/utils.ts +99 -8
  81. package/src/caching/IPFS/PinataIPFSClient.ts +8 -0
  82. package/src/caching/Memory/MemoryCacheClient.ts +8 -0
  83. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +5 -2
  84. package/src/clients/HubPoolClient.ts +23 -0
  85. package/src/interfaces/CachingMechanism.ts +14 -0
  86. package/src/interfaces/index.ts +0 -1
  87. package/dist/cjs/interfaces/PubSubMechanism.d.ts +0 -4
  88. package/dist/cjs/interfaces/PubSubMechanism.js +0 -3
  89. package/dist/cjs/interfaces/PubSubMechanism.js.map +0 -1
  90. package/dist/esm/interfaces/PubSubMechanism.d.ts +0 -14
  91. package/dist/esm/interfaces/PubSubMechanism.js +0 -2
  92. package/dist/esm/interfaces/PubSubMechanism.js.map +0 -1
  93. package/dist/types/interfaces/PubSubMechanism.d.ts +0 -15
  94. package/dist/types/interfaces/PubSubMechanism.d.ts.map +0 -1
  95. package/src/interfaces/PubSubMechanism.ts +0 -15
@@ -1,18 +1,18 @@
1
1
  import { __assign, __awaiter, __generator } from "tslib";
2
- import { SvmSpokeClient } from "@across-protocol/contracts";
2
+ import { MessageTransmitterClient, SvmSpokeClient, TokenMessengerMinterClient } from "@across-protocol/contracts";
3
3
  import { decodeFillStatusAccount, fetchState } from "@across-protocol/contracts/dist/src/svm/clients/SvmSpoke";
4
- import { intToU8Array32 } from "@across-protocol/contracts/dist/src/svm/web3-v1/conversionUtils";
5
4
  import { hashNonEmptyMessage } from "@across-protocol/contracts/dist/src/svm/web3-v1";
5
+ import { intToU8Array32 } from "@across-protocol/contracts/dist/src/svm/web3-v1/conversionUtils";
6
+ import { SYSTEM_PROGRAM_ADDRESS } from "@solana-program/system";
6
7
  import { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS, fetchMint, getApproveCheckedInstruction, getCreateAssociatedTokenIdempotentInstruction, } from "@solana-program/token";
7
- import { appendTransactionMessageInstruction, fetchEncodedAccount, fetchEncodedAccounts, getAddressEncoder, getProgramDerivedAddress, getU32Encoder, getU64Encoder, pipe, some, } from "@solana/kit";
8
+ import { AccountRole, appendTransactionMessageInstruction, fetchEncodedAccount, fetchEncodedAccounts, getAddressEncoder, getBase64EncodedWireTransaction, getProgramDerivedAddress, getSignatureFromTransaction, getU32Encoder, getU64Encoder, pipe, signTransactionMessageWithSigners, some, } from "@solana/kit";
8
9
  import assert from "assert";
9
10
  import { arrayify, hexZeroPad, hexlify } from "ethers/lib/utils";
10
- import { SYSTEM_PROGRAM_ADDRESS } from "@solana-program/system";
11
+ import { CHAIN_IDs, TOKEN_SYMBOLS_MAP } from "../../constants";
11
12
  import { FillStatus } from "../../interfaces";
12
- import { SvmAddress, chainIsSvm, chunk, isUnsafeDepositId, keccak256, toAddressType, } from "../../utils";
13
- import { bigToU8a32, createDefaultTransaction, getEventAuthority, getFillStatusPda, getStatePda, toAddress, unwrapEventData, } from "./utils";
14
- import { CHAIN_IDs } from "../../constants";
15
- import { isSolanaError, SVM_NO_BLOCK_AT_SLOT } from "./provider";
13
+ import { EvmAddress, SvmAddress, bs58, chainIsProd, chainIsSvm, chunk, isUnsafeDepositId, keccak256, mapAsync, toAddressType, } from "../../utils";
14
+ import { bigToU8a32, createDefaultTransaction, getCCTPNoncePda, getEventAuthority, getFillStatusPda, getSelfAuthority, getStatePda, isDepositForBurnEvent, simulateAndDecode, toAddress, unwrapEventData, } from "./";
15
+ import { SVM_NO_BLOCK_AT_SLOT, isSolanaError } from "./provider";
16
16
  import { SVMEventNames } from "./types";
17
17
  /**
18
18
  * @note: Average Solana slot duration is about 400-500ms. We can be conservative
@@ -714,6 +714,23 @@ export var createCloseFillPdaInstruction = function (signer, solanaClient, fillS
714
714
  }
715
715
  });
716
716
  }); };
717
+ export var createReceiveMessageInstruction = function (signer, solanaClient, input, remainingAccounts) { return __awaiter(void 0, void 0, void 0, function () {
718
+ var receiveMessageIx, _a;
719
+ var _b;
720
+ return __generator(this, function (_c) {
721
+ switch (_c.label) {
722
+ case 0: return [4 /*yield*/, MessageTransmitterClient.getReceiveMessageInstruction(input)];
723
+ case 1:
724
+ receiveMessageIx = _c.sent();
725
+ (_b = receiveMessageIx.accounts).push.apply(_b, remainingAccounts);
726
+ _a = pipe;
727
+ return [4 /*yield*/, createDefaultTransaction(solanaClient, signer)];
728
+ case 2: return [2 /*return*/, _a.apply(void 0, [_c.sent(), function (tx) {
729
+ return appendTransactionMessageInstruction(receiveMessageIx, tx);
730
+ }])];
731
+ }
732
+ });
733
+ }); };
717
734
  export function getAssociatedTokenAddress(owner, mint, tokenProgramId) {
718
735
  if (tokenProgramId === void 0) { tokenProgramId = TOKEN_PROGRAM_ADDRESS; }
719
736
  return __awaiter(this, void 0, void 0, function () {
@@ -944,4 +961,273 @@ export function getFillRelayDelegatePda(relayHash, repaymentChainId, repaymentAd
944
961
  });
945
962
  });
946
963
  }
964
+ /**
965
+ * Checks if a CCTP message has been processed.
966
+ * @param solanaClient The Solana client.
967
+ * @param signer The signer of the transaction.
968
+ * @param nonce The nonce to check.
969
+ * @param sourceDomain The source domain.
970
+ * @returns True if the message has been processed, false otherwise.
971
+ */
972
+ export var hasCCTPV1MessageBeenProcessed = function (solanaClient, signer, nonce, sourceDomain) { return __awaiter(void 0, void 0, void 0, function () {
973
+ var noncePda, isNonceUsedIx, parserFunction;
974
+ return __generator(this, function (_a) {
975
+ switch (_a.label) {
976
+ case 0: return [4 /*yield*/, getCCTPNoncePda(solanaClient, signer, nonce, sourceDomain)];
977
+ case 1:
978
+ noncePda = _a.sent();
979
+ return [4 /*yield*/, MessageTransmitterClient.getIsNonceUsedInstruction({
980
+ nonce: nonce,
981
+ usedNonces: noncePda,
982
+ })];
983
+ case 2:
984
+ isNonceUsedIx = _a.sent();
985
+ parserFunction = function (buf) {
986
+ if (buf.length != 1) {
987
+ throw new Error("Invalid buffer length for isNonceUsedIx");
988
+ }
989
+ return Boolean(buf[0]);
990
+ };
991
+ return [4 /*yield*/, simulateAndDecode(solanaClient, isNonceUsedIx, signer, parserFunction)];
992
+ case 3: return [2 /*return*/, _a.sent()];
993
+ }
994
+ });
995
+ }); };
996
+ /**
997
+ * Returns the account metas for a tokenless message.
998
+ * @returns The account metas for a tokenless message.
999
+ */
1000
+ export function getAccountMetasForTokenlessMessage() {
1001
+ return __awaiter(this, void 0, void 0, function () {
1002
+ var statePda, _a;
1003
+ var _b, _c;
1004
+ return __generator(this, function (_d) {
1005
+ switch (_d.label) {
1006
+ case 0: return [4 /*yield*/, getStatePda(SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS)];
1007
+ case 1:
1008
+ statePda = _d.sent();
1009
+ _a = [{ address: statePda, role: AccountRole.READONLY }];
1010
+ _b = {};
1011
+ return [4 /*yield*/, getSelfAuthority()];
1012
+ case 2:
1013
+ _a = _a.concat([
1014
+ (_b.address = _d.sent(), _b.role = AccountRole.READONLY, _b),
1015
+ { address: SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS, role: AccountRole.READONLY },
1016
+ { address: statePda, role: AccountRole.WRITABLE }
1017
+ ]);
1018
+ _c = {};
1019
+ return [4 /*yield*/, getEventAuthority(SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS)];
1020
+ case 3: return [2 /*return*/, _a.concat([
1021
+ (_c.address = _d.sent(), _c.role = AccountRole.READONLY, _c),
1022
+ { address: SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS, role: AccountRole.READONLY }
1023
+ ])];
1024
+ }
1025
+ });
1026
+ });
1027
+ }
1028
+ /**
1029
+ * Returns the account metas for a deposit message.
1030
+ * @param message The CCTP message.
1031
+ * @param hubChainId The chain ID of the hub.
1032
+ * @param tokenMessengerMinter The token messenger minter address.
1033
+ * @returns The account metas for a deposit message.
1034
+ */
1035
+ function getAccountMetasForDepositMessage(message, hubChainId, tokenMessengerMinter) {
1036
+ return __awaiter(this, void 0, void 0, function () {
1037
+ var l1Usdc, l2Usdc, tokenMessengerPda, tokenMinterPda, localTokenPda, tokenMessengerEventAuthorityPda, custodyTokenAccountPda, state, tokenProgram, vault, tokenPairPda, remoteTokenMessengerPda;
1038
+ return __generator(this, function (_a) {
1039
+ switch (_a.label) {
1040
+ case 0:
1041
+ l1Usdc = EvmAddress.from(TOKEN_SYMBOLS_MAP.USDC.addresses[hubChainId]);
1042
+ l2Usdc = SvmAddress.from(TOKEN_SYMBOLS_MAP.USDC.addresses[chainIsProd(hubChainId) ? CHAIN_IDs.SOLANA : CHAIN_IDs.SOLANA_DEVNET]);
1043
+ return [4 /*yield*/, getProgramDerivedAddress({
1044
+ programAddress: tokenMessengerMinter,
1045
+ seeds: ["token_messenger"],
1046
+ })];
1047
+ case 1:
1048
+ tokenMessengerPda = (_a.sent())[0];
1049
+ return [4 /*yield*/, getProgramDerivedAddress({
1050
+ programAddress: tokenMessengerMinter,
1051
+ seeds: ["token_minter"],
1052
+ })];
1053
+ case 2:
1054
+ tokenMinterPda = (_a.sent())[0];
1055
+ return [4 /*yield*/, getProgramDerivedAddress({
1056
+ programAddress: tokenMessengerMinter,
1057
+ seeds: ["local_token", bs58.decode(l2Usdc.toBase58())],
1058
+ })];
1059
+ case 3:
1060
+ localTokenPda = (_a.sent())[0];
1061
+ return [4 /*yield*/, getProgramDerivedAddress({
1062
+ programAddress: tokenMessengerMinter,
1063
+ seeds: ["__event_authority"],
1064
+ })];
1065
+ case 4:
1066
+ tokenMessengerEventAuthorityPda = (_a.sent())[0];
1067
+ return [4 /*yield*/, getProgramDerivedAddress({
1068
+ programAddress: tokenMessengerMinter,
1069
+ seeds: ["custody", bs58.decode(l2Usdc.toBase58())],
1070
+ })];
1071
+ case 5:
1072
+ custodyTokenAccountPda = (_a.sent())[0];
1073
+ return [4 /*yield*/, getStatePda(SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS)];
1074
+ case 6:
1075
+ state = _a.sent();
1076
+ tokenProgram = TOKEN_PROGRAM_ADDRESS;
1077
+ return [4 /*yield*/, getAssociatedTokenAddress(SvmAddress.from(state), SvmAddress.from(l2Usdc.toBase58()), tokenProgram)];
1078
+ case 7:
1079
+ vault = _a.sent();
1080
+ return [4 /*yield*/, getProgramDerivedAddress({
1081
+ programAddress: tokenMessengerMinter,
1082
+ seeds: [
1083
+ new Uint8Array(Buffer.from("token_pair")),
1084
+ new Uint8Array(Buffer.from(String(message.sourceDomain))),
1085
+ new Uint8Array(Buffer.from(l1Usdc.toBytes32().slice(2), "hex")),
1086
+ ],
1087
+ })];
1088
+ case 8:
1089
+ tokenPairPda = (_a.sent())[0];
1090
+ return [4 /*yield*/, getProgramDerivedAddress({
1091
+ programAddress: tokenMessengerMinter,
1092
+ seeds: ["remote_token_messenger", String(message.sourceDomain)],
1093
+ })];
1094
+ case 9:
1095
+ remoteTokenMessengerPda = (_a.sent())[0];
1096
+ return [2 /*return*/, [
1097
+ { address: tokenMessengerPda, role: AccountRole.READONLY },
1098
+ { address: remoteTokenMessengerPda, role: AccountRole.READONLY },
1099
+ { address: tokenMinterPda, role: AccountRole.WRITABLE },
1100
+ { address: localTokenPda, role: AccountRole.WRITABLE },
1101
+ { address: tokenPairPda, role: AccountRole.READONLY },
1102
+ { address: vault, role: AccountRole.WRITABLE },
1103
+ { address: custodyTokenAccountPda, role: AccountRole.WRITABLE },
1104
+ { address: TOKEN_PROGRAM_ADDRESS, role: AccountRole.READONLY },
1105
+ { address: tokenMessengerEventAuthorityPda, role: AccountRole.READONLY },
1106
+ { address: tokenMessengerMinter, role: AccountRole.READONLY },
1107
+ ]];
1108
+ }
1109
+ });
1110
+ });
1111
+ }
1112
+ /**
1113
+ * Returns the CCTP v1 receive message transaction.
1114
+ * @param solanaClient The Solana client.
1115
+ * @param signer The signer of the transaction.
1116
+ * @param message The CCTP message.
1117
+ * @param hubChainId The chain ID of the hub.
1118
+ * @returns The CCTP v1 receive message transaction.
1119
+ */
1120
+ export function getCCTPV1ReceiveMessageTx(solanaClient, signer, message, hubChainId) {
1121
+ return __awaiter(this, void 0, void 0, function () {
1122
+ var messageTransmitterPda, eventAuthorityPda, cctpMessageReceiver, authorityPda, usedNonces, accountMetas, _a, messageBytes, input;
1123
+ return __generator(this, function (_b) {
1124
+ switch (_b.label) {
1125
+ case 0: return [4 /*yield*/, getProgramDerivedAddress({
1126
+ programAddress: MessageTransmitterClient.MESSAGE_TRANSMITTER_PROGRAM_ADDRESS,
1127
+ seeds: ["message_transmitter"],
1128
+ })];
1129
+ case 1:
1130
+ messageTransmitterPda = (_b.sent())[0];
1131
+ return [4 /*yield*/, getProgramDerivedAddress({
1132
+ programAddress: MessageTransmitterClient.MESSAGE_TRANSMITTER_PROGRAM_ADDRESS,
1133
+ seeds: ["__event_authority"],
1134
+ })];
1135
+ case 2:
1136
+ eventAuthorityPda = (_b.sent())[0];
1137
+ cctpMessageReceiver = isDepositForBurnEvent(message)
1138
+ ? TokenMessengerMinterClient.TOKEN_MESSENGER_MINTER_PROGRAM_ADDRESS
1139
+ : SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS;
1140
+ return [4 /*yield*/, getProgramDerivedAddress({
1141
+ programAddress: MessageTransmitterClient.MESSAGE_TRANSMITTER_PROGRAM_ADDRESS,
1142
+ seeds: ["message_transmitter_authority", bs58.decode(cctpMessageReceiver)],
1143
+ })];
1144
+ case 3:
1145
+ authorityPda = (_b.sent())[0];
1146
+ return [4 /*yield*/, getCCTPNoncePda(solanaClient, signer, message.nonce, message.sourceDomain)];
1147
+ case 4:
1148
+ usedNonces = _b.sent();
1149
+ if (!isDepositForBurnEvent(message)) return [3 /*break*/, 6];
1150
+ return [4 /*yield*/, getAccountMetasForDepositMessage(message, hubChainId, TokenMessengerMinterClient.TOKEN_MESSENGER_MINTER_PROGRAM_ADDRESS)];
1151
+ case 5:
1152
+ _a = _b.sent();
1153
+ return [3 /*break*/, 8];
1154
+ case 6: return [4 /*yield*/, getAccountMetasForTokenlessMessage()];
1155
+ case 7:
1156
+ _a = _b.sent();
1157
+ _b.label = 8;
1158
+ case 8:
1159
+ accountMetas = _a;
1160
+ messageBytes = message.messageBytes.startsWith("0x")
1161
+ ? Buffer.from(message.messageBytes.slice(2), "hex")
1162
+ : Buffer.from(message.messageBytes, "hex");
1163
+ input = {
1164
+ program: MessageTransmitterClient.MESSAGE_TRANSMITTER_PROGRAM_ADDRESS,
1165
+ payer: signer,
1166
+ caller: signer,
1167
+ authorityPda: authorityPda,
1168
+ messageTransmitter: messageTransmitterPda,
1169
+ eventAuthority: eventAuthorityPda,
1170
+ usedNonces: usedNonces,
1171
+ receiver: SvmSpokeClient.SVM_SPOKE_PROGRAM_ADDRESS,
1172
+ systemProgram: SYSTEM_PROGRAM_ADDRESS,
1173
+ message: messageBytes,
1174
+ attestation: Buffer.from(message.attestation.slice(2), "hex"),
1175
+ };
1176
+ return [2 /*return*/, createReceiveMessageInstruction(signer, solanaClient, input, accountMetas)];
1177
+ }
1178
+ });
1179
+ });
1180
+ }
1181
+ /**
1182
+ * Finalizes CCTP deposits and messages on Solana.
1183
+ *
1184
+ * @param solanaClient The Solana client.
1185
+ * @param attestedMessages The CCTP messages to Solana.
1186
+ * @param signer A base signer to be converted into a Solana signer.
1187
+ * @param simulate Whether to simulate the transaction.
1188
+ * @param hubChainId The chain ID of the hub.
1189
+ * @returns A list of executed transaction signatures.
1190
+ */
1191
+ export function finalizeCCTPV1Messages(solanaClient, attestedMessages, signer, simulate, hubChainId) {
1192
+ var _this = this;
1193
+ if (simulate === void 0) { simulate = false; }
1194
+ if (hubChainId === void 0) { hubChainId = 1; }
1195
+ return mapAsync(attestedMessages, function (message) { return __awaiter(_this, void 0, void 0, function () {
1196
+ var receiveMessageIx, result, _a, _b, _c, signedTransaction, signature, encodedTransaction;
1197
+ return __generator(this, function (_d) {
1198
+ switch (_d.label) {
1199
+ case 0: return [4 /*yield*/, getCCTPV1ReceiveMessageTx(solanaClient, signer, message, hubChainId)];
1200
+ case 1:
1201
+ receiveMessageIx = _d.sent();
1202
+ if (!simulate) return [3 /*break*/, 4];
1203
+ _b = (_a = solanaClient)
1204
+ .simulateTransaction;
1205
+ _c = getBase64EncodedWireTransaction;
1206
+ return [4 /*yield*/, signTransactionMessageWithSigners(receiveMessageIx)];
1207
+ case 2: return [4 /*yield*/, _b.apply(_a, [_c.apply(void 0, [_d.sent()]),
1208
+ {
1209
+ encoding: "base64",
1210
+ }])
1211
+ .send()];
1212
+ case 3:
1213
+ result = _d.sent();
1214
+ if (result.value.err) {
1215
+ throw new Error(result.value.err.toString());
1216
+ }
1217
+ return [2 /*return*/, ""];
1218
+ case 4: return [4 /*yield*/, signTransactionMessageWithSigners(receiveMessageIx)];
1219
+ case 5:
1220
+ signedTransaction = _d.sent();
1221
+ signature = getSignatureFromTransaction(signedTransaction);
1222
+ encodedTransaction = getBase64EncodedWireTransaction(signedTransaction);
1223
+ return [4 /*yield*/, solanaClient
1224
+ .sendTransaction(encodedTransaction, { preflightCommitment: "confirmed", encoding: "base64" })
1225
+ .send()];
1226
+ case 6:
1227
+ _d.sent();
1228
+ return [2 /*return*/, signature];
1229
+ }
1230
+ });
1231
+ }); });
1232
+ }
947
1233
  //# sourceMappingURL=SpokeUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../../src/arch/svm/SpokeUtils.ts"],"names":[],"mappings":"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"}
@@ -31,3 +31,10 @@ export type RpcClient = {
31
31
  rpc: SVMProvider;
32
32
  rpcSubscriptions: RpcSubscriptions<SignatureNotificationsApi & SlotNotificationsApi>;
33
33
  };
34
+ export type AttestedCCTPMessage = {
35
+ nonce: number;
36
+ sourceDomain: number;
37
+ messageBytes: string;
38
+ attestation: string;
39
+ type: "transfer" | "message";
40
+ };
@@ -1,8 +1,9 @@
1
+ /// <reference types="node" />
1
2
  import { Idl } from "@coral-xyz/anchor";
2
- import { Address, type TransactionSigner } from "@solana/kit";
3
+ import { Address, IInstruction, KeyPairSigner, type TransactionSigner } from "@solana/kit";
3
4
  import { RelayData } from "../../interfaces";
4
5
  import { BigNumber, Address as SdkAddress } from "../../utils";
5
- import { EventName, SVMProvider } from "./types";
6
+ import { AttestedCCTPMessage, EventName, SVMProvider } from "./types";
6
7
  export { isSolanaError } from "@solana/kit";
7
8
  /**
8
9
  * Basic void TransactionSigner type
@@ -95,6 +96,11 @@ export declare function getClaimAccountPda(programId: Address, mint: Address, to
95
96
  * @returns The PDA for the Event Authority.
96
97
  */
97
98
  export declare function getEventAuthority(programId: Address): Promise<Address>;
99
+ /**
100
+ * Returns the PDA for the Self Authority.
101
+ * @returns The PDA for the Self Authority.
102
+ */
103
+ export declare const getSelfAuthority: () => Promise<Address<string>>;
98
104
  /**
99
105
  * Returns a random SVM address.
100
106
  */
@@ -106,11 +112,37 @@ export declare function getRandomSvmAddress(): Address<string>;
106
112
  * @returns The default transaction.
107
113
  */
108
114
  export declare const createDefaultTransaction: (rpcClient: SVMProvider, signer: TransactionSigner) => Promise<import("@solana/kit").TransactionMessageWithBlockhashLifetime & import("@solana/kit").ITransactionMessageWithFeePayerSigner<string, TransactionSigner<string>> & Omit<Readonly<{
109
- instructions: readonly import("@solana/kit").IInstruction<string, readonly (import("@solana/kit").IAccountLookupMeta<string, string> | import("@solana/kit").IAccountMeta<string>)[]>[];
115
+ instructions: readonly IInstruction<string, readonly (import("@solana/kit").IAccountLookupMeta<string, string> | import("@solana/kit").IAccountMeta<string>)[]>[];
110
116
  version: 0;
111
117
  }>, "feePayer">>;
118
+ /**
119
+ * Simulates a transaction and decodes the result using a parser function.
120
+ * @param solanaClient - The Solana client.
121
+ * @param ix - The instruction to simulate.
122
+ * @param signer - The signer of the transaction.
123
+ * @param parser - The parser function to decode the result.
124
+ * @returns The decoded result.
125
+ */
126
+ export declare const simulateAndDecode: <P extends (buf: Buffer) => unknown>(solanaClient: SVMProvider, ix: IInstruction, signer: KeyPairSigner, parser: P) => Promise<ReturnType<P>>;
127
+ /**
128
+ * Returns the PDA for the CCTP nonce.
129
+ * @param solanaClient The Solana client.
130
+ * @param signer The signer of the transaction.
131
+ * @param nonce The nonce to get the PDA for.
132
+ * @param sourceDomain The source domain.
133
+ * @returns The PDA for the CCTP nonce.
134
+ */
135
+ export declare const getCCTPNoncePda: (solanaClient: SVMProvider, signer: KeyPairSigner, nonce: number, sourceDomain: number) => Promise<Address>;
136
+ /**
137
+ * Checks if a CCTP message is a deposit for burn event.
138
+ * @param event The CCTP message event.
139
+ * @returns True if the message is a deposit for burn event, false otherwise.
140
+ */
141
+ export declare function isDepositForBurnEvent(event: AttestedCCTPMessage): boolean;
112
142
  /**
113
143
  * Convert a bigint (0 ≤ n < 2^256) to a 32-byte Uint8Array (big-endian).
144
+ * @param n The bigint to convert.
145
+ * @returns The 32-byte Uint8Array.
114
146
  */
115
147
  export declare function bigintToU8a32(n: bigint): Uint8Array;
116
148
  export declare const bigToU8a32: (bn: bigint | BigNumber) => Uint8Array;