@hawksightco/hawk-sdk 1.3.265 → 1.3.267

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 (181) hide show
  1. package/dist/addresses.d.ts +37 -0
  2. package/dist/addresses.d.ts.map +1 -0
  3. package/dist/addresses.js +84 -0
  4. package/dist/anchor.d.ts +22 -0
  5. package/dist/anchor.d.ts.map +1 -0
  6. package/dist/anchor.js +121 -0
  7. package/dist/classes/AltStorage.d.ts +29 -0
  8. package/dist/classes/AltStorage.d.ts.map +1 -0
  9. package/dist/classes/AltStorage.js +58 -0
  10. package/dist/classes/Atomicity.d.ts +34 -0
  11. package/dist/classes/Atomicity.d.ts.map +1 -0
  12. package/dist/classes/Atomicity.js +110 -0
  13. package/dist/classes/Client.d.ts +35 -0
  14. package/dist/classes/Client.d.ts.map +1 -0
  15. package/dist/classes/Client.js +66 -0
  16. package/dist/classes/CombineTransactions.d.ts +11 -0
  17. package/dist/classes/CombineTransactions.d.ts.map +1 -0
  18. package/dist/classes/CombineTransactions.js +58 -0
  19. package/dist/classes/CreateTxMetadata.d.ts +100 -0
  20. package/dist/classes/CreateTxMetadata.d.ts.map +1 -0
  21. package/dist/classes/CreateTxMetadata.js +415 -0
  22. package/dist/classes/General.d.ts +87 -0
  23. package/dist/classes/General.d.ts.map +1 -0
  24. package/dist/classes/General.js +176 -0
  25. package/dist/classes/GeneralUtility.d.ts +79 -0
  26. package/dist/classes/GeneralUtility.d.ts.map +1 -0
  27. package/dist/classes/GeneralUtility.js +121 -0
  28. package/dist/classes/HawkAPI.d.ts +122 -0
  29. package/dist/classes/HawkAPI.d.ts.map +1 -0
  30. package/dist/classes/HawkAPI.js +169 -0
  31. package/dist/classes/Health.d.ts +29 -0
  32. package/dist/classes/Health.d.ts.map +1 -0
  33. package/dist/classes/Health.js +48 -0
  34. package/dist/classes/JupiterAlts.d.ts +37 -0
  35. package/dist/classes/JupiterAlts.d.ts.map +1 -0
  36. package/dist/classes/JupiterAlts.js +114 -0
  37. package/dist/classes/JupiterSwap.d.ts +21 -0
  38. package/dist/classes/JupiterSwap.d.ts.map +1 -0
  39. package/dist/classes/JupiterSwap.js +40 -0
  40. package/dist/classes/Logging.d.ts +13 -0
  41. package/dist/classes/Logging.d.ts.map +1 -0
  42. package/dist/classes/Logging.js +50 -0
  43. package/dist/classes/MultiTransaction.d.ts +75 -0
  44. package/dist/classes/MultiTransaction.d.ts.map +1 -0
  45. package/dist/classes/MultiTransaction.js +296 -0
  46. package/dist/classes/RaydiumSDK.d.ts +67 -0
  47. package/dist/classes/RaydiumSDK.d.ts.map +1 -0
  48. package/dist/classes/RaydiumSDK.js +206 -0
  49. package/dist/classes/Search.d.ts +100 -0
  50. package/dist/classes/Search.d.ts.map +1 -0
  51. package/dist/classes/Search.js +216 -0
  52. package/dist/classes/SimpleIxGenerator.d.ts +57 -0
  53. package/dist/classes/SimpleIxGenerator.d.ts.map +1 -0
  54. package/dist/classes/SimpleIxGenerator.js +62 -0
  55. package/dist/classes/SimplePdaGenerator.d.ts +28 -0
  56. package/dist/classes/SimplePdaGenerator.d.ts.map +1 -0
  57. package/dist/classes/SimplePdaGenerator.js +33 -0
  58. package/dist/classes/Transaction.d.ts +229 -0
  59. package/dist/classes/Transaction.d.ts.map +1 -0
  60. package/dist/classes/Transaction.js +643 -0
  61. package/dist/classes/Transaction2.d.ts +107 -0
  62. package/dist/classes/Transaction2.d.ts.map +1 -0
  63. package/dist/classes/Transaction2.js +249 -0
  64. package/dist/classes/Transaction3.d.ts +165 -0
  65. package/dist/classes/Transaction3.d.ts.map +1 -0
  66. package/dist/classes/Transaction3.js +416 -0
  67. package/dist/classes/TransactionBatchExecute.d.ts +163 -0
  68. package/dist/classes/TransactionBatchExecute.d.ts.map +1 -0
  69. package/dist/classes/TransactionBatchExecute.js +466 -0
  70. package/dist/classes/TransactionBatchExecute2.d.ts +99 -0
  71. package/dist/classes/TransactionBatchExecute2.d.ts.map +1 -0
  72. package/dist/classes/TransactionBatchExecute2.js +357 -0
  73. package/dist/classes/Transactions.d.ts +586 -0
  74. package/dist/classes/Transactions.d.ts.map +1 -0
  75. package/dist/classes/Transactions.js +7667 -0
  76. package/dist/classes/TxGenerator.d.ts +350 -0
  77. package/dist/classes/TxGenerator.d.ts.map +1 -0
  78. package/dist/classes/TxGenerator.js +1957 -0
  79. package/dist/classes/TxGeneratorAutomations.d.ts +186 -0
  80. package/dist/classes/TxGeneratorAutomations.d.ts.map +1 -0
  81. package/dist/classes/TxGeneratorAutomations.js +897 -0
  82. package/dist/classes/Util.d.ts +87 -0
  83. package/dist/classes/Util.d.ts.map +1 -0
  84. package/dist/classes/Util.js +148 -0
  85. package/dist/classes/account-cache/AccountCache.d.ts +54 -0
  86. package/dist/classes/account-cache/AccountCache.d.ts.map +1 -0
  87. package/dist/classes/account-cache/AccountCache.js +143 -0
  88. package/dist/classes/account-cache/MintCache.d.ts +33 -0
  89. package/dist/classes/account-cache/MintCache.d.ts.map +1 -0
  90. package/dist/classes/account-cache/MintCache.js +47 -0
  91. package/dist/classes/account-cache/TokenCache.d.ts +33 -0
  92. package/dist/classes/account-cache/TokenCache.d.ts.map +1 -0
  93. package/dist/classes/account-cache/TokenCache.js +47 -0
  94. package/dist/errors.d.ts +13 -0
  95. package/dist/errors.d.ts.map +1 -0
  96. package/dist/errors.js +96 -0
  97. package/dist/functions.d.ts +514 -0
  98. package/dist/functions.d.ts.map +1 -0
  99. package/dist/functions.js +1636 -0
  100. package/dist/hawksight.d.ts +53 -0
  101. package/dist/hawksight.d.ts.map +1 -0
  102. package/dist/hawksight.js +328 -0
  103. package/dist/hsToMeteora.d.ts +31 -0
  104. package/dist/hsToMeteora.d.ts.map +1 -0
  105. package/dist/hsToMeteora.js +3175 -0
  106. package/dist/idl/iyf-extension-idl.d.ts +14583 -0
  107. package/dist/idl/iyf-extension-idl.d.ts.map +1 -0
  108. package/dist/idl/iyf-extension-idl.js +14578 -0
  109. package/dist/idl/iyf-extension-wrapper.d.ts +112 -0
  110. package/dist/idl/iyf-extension-wrapper.d.ts.map +1 -0
  111. package/dist/idl/iyf-extension-wrapper.js +2 -0
  112. package/dist/idl/iyf-main-idl.d.ts +12078 -0
  113. package/dist/idl/iyf-main-idl.d.ts.map +1 -0
  114. package/dist/idl/iyf-main-idl.js +12073 -0
  115. package/dist/idl/iyf-main-wrapper.d.ts +112 -0
  116. package/dist/idl/iyf-main-wrapper.d.ts.map +1 -0
  117. package/dist/idl/iyf-main-wrapper.js +2 -0
  118. package/dist/idl/jupiter-idl.d.ts +3063 -0
  119. package/dist/idl/jupiter-idl.d.ts.map +1 -0
  120. package/dist/idl/jupiter-idl.js +3061 -0
  121. package/dist/idl/meteora-idl.d.ts +7371 -0
  122. package/dist/idl/meteora-idl.d.ts.map +1 -0
  123. package/dist/idl/meteora-idl.js +7372 -0
  124. package/dist/idl/orca-idl.d.ts +3833 -0
  125. package/dist/idl/orca-idl.d.ts.map +1 -0
  126. package/dist/idl/orca-idl.js +3834 -0
  127. package/dist/idl/raydium-idl.d.ts +3054 -0
  128. package/dist/idl/raydium-idl.d.ts.map +1 -0
  129. package/dist/idl/raydium-idl.js +3055 -0
  130. package/dist/index.d.ts +9 -0
  131. package/dist/index.d.ts.map +1 -0
  132. package/dist/index.js +31 -0
  133. package/dist/ixGenerator/IyfExtensionIxGenerator.d.ts +126 -0
  134. package/dist/ixGenerator/IyfExtensionIxGenerator.d.ts.map +1 -0
  135. package/dist/ixGenerator/IyfExtensionIxGenerator.js +467 -0
  136. package/dist/ixGenerator/IyfMainIxGenerator.d.ts +330 -0
  137. package/dist/ixGenerator/IyfMainIxGenerator.d.ts.map +1 -0
  138. package/dist/ixGenerator/IyfMainIxGenerator.js +1239 -0
  139. package/dist/ixGenerator/MeteoraDlmmIxGenerator.d.ts +685 -0
  140. package/dist/ixGenerator/MeteoraDlmmIxGenerator.d.ts.map +1 -0
  141. package/dist/ixGenerator/MeteoraDlmmIxGenerator.js +3008 -0
  142. package/dist/ixGenerator/OrcaIxGenerator.d.ts +119 -0
  143. package/dist/ixGenerator/OrcaIxGenerator.d.ts.map +1 -0
  144. package/dist/ixGenerator/OrcaIxGenerator.js +438 -0
  145. package/dist/ixGenerator/RaydiumIxGenerator.d.ts +99 -0
  146. package/dist/ixGenerator/RaydiumIxGenerator.d.ts.map +1 -0
  147. package/dist/ixGenerator/RaydiumIxGenerator.js +558 -0
  148. package/dist/ixGenerator/UtilIxGenerator.d.ts +20 -0
  149. package/dist/ixGenerator/UtilIxGenerator.d.ts.map +1 -0
  150. package/dist/ixGenerator/UtilIxGenerator.js +25 -0
  151. package/dist/meteora/index.d.ts +2 -0
  152. package/dist/meteora/index.d.ts.map +1 -0
  153. package/dist/meteora/index.js +17 -0
  154. package/dist/meteora/liquidityStrategy.d.ts +408 -0
  155. package/dist/meteora/liquidityStrategy.d.ts.map +1 -0
  156. package/dist/meteora/liquidityStrategy.js +1325 -0
  157. package/dist/meteora.d.ts +669 -0
  158. package/dist/meteora.d.ts.map +1 -0
  159. package/dist/meteora.js +1932 -0
  160. package/dist/orca.d.ts +57 -0
  161. package/dist/orca.d.ts.map +1 -0
  162. package/dist/orca.js +123 -0
  163. package/dist/pdaGenerator/HawksightPdaGenerator.d.ts +29 -0
  164. package/dist/pdaGenerator/HawksightPdaGenerator.d.ts.map +1 -0
  165. package/dist/pdaGenerator/HawksightPdaGenerator.js +75 -0
  166. package/dist/pdaGenerator/MeteoraPdaGenerator.d.ts +76 -0
  167. package/dist/pdaGenerator/MeteoraPdaGenerator.d.ts.map +1 -0
  168. package/dist/pdaGenerator/MeteoraPdaGenerator.js +166 -0
  169. package/dist/pdaGenerator/OrcaPdaGenerator.d.ts +23 -0
  170. package/dist/pdaGenerator/OrcaPdaGenerator.d.ts.map +1 -0
  171. package/dist/pdaGenerator/OrcaPdaGenerator.js +68 -0
  172. package/dist/pdaGenerator/RaydiumPdaGenerator.d.ts +49 -0
  173. package/dist/pdaGenerator/RaydiumPdaGenerator.d.ts.map +1 -0
  174. package/dist/pdaGenerator/RaydiumPdaGenerator.js +114 -0
  175. package/dist/pdaGenerator/UtilPdaGenerator.d.ts +8 -0
  176. package/dist/pdaGenerator/UtilPdaGenerator.d.ts.map +1 -0
  177. package/dist/pdaGenerator/UtilPdaGenerator.js +51 -0
  178. package/dist/types.d.ts +1104 -0
  179. package/dist/types.d.ts.map +1 -0
  180. package/dist/types.js +95 -0
  181. package/package.json +6 -5
@@ -0,0 +1,37 @@
1
+ import * as web3 from "@solana/web3.js";
2
+ export declare const GLOBAL_ALT: string[];
3
+ export declare const IYF_MAIN: web3.PublicKey;
4
+ export declare const IYF_EXTENSION: web3.PublicKey;
5
+ export declare const STABLEMINT_1: web3.PublicKey;
6
+ export declare const STABLEMINT_2: web3.PublicKey;
7
+ export declare const TOKEN_PROGRAM_ID: web3.PublicKey;
8
+ export declare const TOKEN_2022_PROGRAM_ID: web3.PublicKey;
9
+ export declare const ASSOCIATED_TOKEN_PROGRAM: web3.PublicKey;
10
+ export declare const SITE_FEE_OWNER: web3.PublicKey;
11
+ export declare const USDC_FARM: web3.PublicKey;
12
+ export declare const SOL_FARM: web3.PublicKey;
13
+ export declare const SOME_METEORA_DLMM_POOL: web3.PublicKey;
14
+ export declare const METEORA_DLMM_PROGRAM: web3.PublicKey;
15
+ export declare const METEORA_EVENT_AUTHORITY: web3.PublicKey;
16
+ export declare const COMPUTE_BUDGET: web3.PublicKey;
17
+ export declare const HS_AUTHORITY: web3.PublicKey;
18
+ export declare const ORCA_WHIRLPOOL_PROGRAM: web3.PublicKey;
19
+ export declare const ORCA_METADATA_UPDATE_AUTH: web3.PublicKey;
20
+ export declare const WSOL_MINT: web3.PublicKey;
21
+ export declare const JUPITER_PROGRAM: web3.PublicKey;
22
+ export declare const RAYDIUM_PROGRAM: web3.PublicKey;
23
+ export declare const TOKEN_2022: web3.PublicKey;
24
+ export declare const MEMO_PROGRAM: web3.PublicKey;
25
+ export declare const PUMP_FUN_AMM_PROGRAM: web3.PublicKey;
26
+ export declare const USDC_MINT: web3.PublicKey;
27
+ export declare const ADX_MINT: web3.PublicKey;
28
+ export declare const QUARRY_MINE_PROGRAM: web3.PublicKey;
29
+ export declare const SABER_SWAP_PROGRAM: web3.PublicKey;
30
+ export declare const REDEEMER_PROGRAM: web3.PublicKey;
31
+ export declare const MINT_PROXY_PROGRAM: web3.PublicKey;
32
+ export declare const MINT_WRAPPER_PROGRAM: web3.PublicKey;
33
+ export declare const SABER_MINT: web3.PublicKey;
34
+ export declare const SABER_IOU_MINT: web3.PublicKey;
35
+ export declare const SABER_MINT_PROXY_STATE: web3.PublicKey;
36
+ export declare const PROXY_MINT_AUTHORITY: web3.PublicKey;
37
+ //# sourceMappingURL=addresses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../src/addresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAExC,eAAO,MAAM,UAAU,UAYtB,CAAC;AAEF,eAAO,MAAM,QAAQ,gBAAqE,CAAC;AAC3F,eAAO,MAAM,aAAa,gBAAqE,CAAC;AAChG,eAAO,MAAM,YAAY,gBAAqE,CAAC;AAC/F,eAAO,MAAM,YAAY,gBAAqE,CAAC;AAC/F,eAAO,MAAM,gBAAgB,gBAAoE,CAAC;AAClG,eAAO,MAAM,qBAAqB,gBAAoE,CAAC;AACvG,eAAO,MAAM,wBAAwB,gBAAqE,CAAC;AAC3G,eAAO,MAAM,cAAc,gBAAqE,CAAC;AACjG,eAAO,MAAM,SAAS,gBAAqE,CAAC;AAC5F,eAAO,MAAM,QAAQ,gBAAqE,CAAC;AAC3F,eAAO,MAAM,sBAAsB,gBAAqE,CAAC;AACzG,eAAO,MAAM,oBAAoB,gBAAoE,CAAC;AACtG,eAAO,MAAM,uBAAuB,gBAAqE,CAAC;AAC1G,eAAO,MAAM,cAAc,gBAAoE,CAAC;AAChG,eAAO,MAAM,YAAY,gBAAoE,CAAC;AAC9F,eAAO,MAAM,sBAAsB,gBAAoE,CAAC;AACxG,eAAO,MAAM,yBAAyB,gBAAqE,CAAC;AAC5G,eAAO,MAAM,SAAS,gBAAoE,CAAC;AAC3F,eAAO,MAAM,eAAe,gBAAoE,CAAC;AACjG,eAAO,MAAM,eAAe,gBAAqE,CAAC;AAClG,eAAO,MAAM,UAAU,gBAAoE,CAAC;AAC5F,eAAO,MAAM,YAAY,gBAAoE,CAAC;AAC9F,eAAO,MAAM,oBAAoB,gBAAoE,CAAC;AACtG,eAAO,MAAM,SAAS,gBAAqE,CAAC;AAC5F,eAAO,MAAM,QAAQ,gBAAqE,CAAC;AAC3F,eAAO,MAAM,mBAAmB,gBAAoE,CAAC;AACrG,eAAO,MAAM,kBAAkB,gBAAoE,CAAC;AACpG,eAAO,MAAM,gBAAgB,gBAAoE,CAAC;AAClG,eAAO,MAAM,kBAAkB,gBAAoE,CAAC;AACpG,eAAO,MAAM,oBAAoB,gBAAoE,CAAC;AACtG,eAAO,MAAM,UAAU,gBAAoE,CAAC;AAC5F,eAAO,MAAM,cAAc,gBAAoE,CAAC;AAChG,eAAO,MAAM,sBAAsB,gBAAqE,CAAC;AACzG,eAAO,MAAM,oBAAoB,gBAAqE,CAAC"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.PROXY_MINT_AUTHORITY = exports.SABER_MINT_PROXY_STATE = exports.SABER_IOU_MINT = exports.SABER_MINT = exports.MINT_WRAPPER_PROGRAM = exports.MINT_PROXY_PROGRAM = exports.REDEEMER_PROGRAM = exports.SABER_SWAP_PROGRAM = exports.QUARRY_MINE_PROGRAM = exports.ADX_MINT = exports.USDC_MINT = exports.PUMP_FUN_AMM_PROGRAM = exports.MEMO_PROGRAM = exports.TOKEN_2022 = exports.RAYDIUM_PROGRAM = exports.JUPITER_PROGRAM = exports.WSOL_MINT = exports.ORCA_METADATA_UPDATE_AUTH = exports.ORCA_WHIRLPOOL_PROGRAM = exports.HS_AUTHORITY = exports.COMPUTE_BUDGET = exports.METEORA_EVENT_AUTHORITY = exports.METEORA_DLMM_PROGRAM = exports.SOME_METEORA_DLMM_POOL = exports.SOL_FARM = exports.USDC_FARM = exports.SITE_FEE_OWNER = exports.ASSOCIATED_TOKEN_PROGRAM = exports.TOKEN_2022_PROGRAM_ID = exports.TOKEN_PROGRAM_ID = exports.STABLEMINT_2 = exports.STABLEMINT_1 = exports.IYF_EXTENSION = exports.IYF_MAIN = exports.GLOBAL_ALT = void 0;
37
+ const web3 = __importStar(require("@solana/web3.js"));
38
+ exports.GLOBAL_ALT = [
39
+ "AC3t5k5PUTJirxGEHgGGQStafu1vXkvddPyqVNDrRQDt",
40
+ "F2gRaSdfWYucAMAKv3CHReKMHvPkE3sNWrQPPPPR6UMV",
41
+ "FQHdXaRjfKxEfqDXMs6L1gfx2wwa6idDVB8hdQuf6eSD",
42
+ "4vMQAkkjhxrgJmqbRd4Z9YP9K7WFVAhHZn4jTJoN45Qj",
43
+ "6KhzJ2cs85hKdLeUXS6QjQnygUY9rFUnJADJwrYp9mjM",
44
+ "4UgEL5PQVu9MSarh8yb7U22GEZQoSkmNM3w7mZFx47aL",
45
+ "5FrgBCVUtwD1cFw39PZxnUsBaAecZVxmaYEcvv6y7b1h",
46
+ "FJ76CVMrHBxQxLcQkKdh9YBpwZuECsPjBLJWphwS34XF",
47
+ "Fgxms1gyzwhF1L3pJSoAxrNkogbg9sqct7U1z6HfLv5A",
48
+ "7vaSmpacdSv7vDjpGhBfZf3rLXjsfDkY6A12JkbNqK5Q",
49
+ "AEAMg38ZiQHanFqFiYBQSqsmqyUHj66LZXQzEaD8YJxc",
50
+ ];
51
+ exports.IYF_MAIN = new web3.PublicKey("FqGg2Y1FNxMiGd51Q6UETixQWkF5fB92MysbYogRJb3P");
52
+ exports.IYF_EXTENSION = new web3.PublicKey("EZiUb6ydWpR3ciizBTJ1J36KCqLyPKVjh4yZEJbs5Uno");
53
+ exports.STABLEMINT_1 = new web3.PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v");
54
+ exports.STABLEMINT_2 = new web3.PublicKey("9vMJfxuKxXBoEa7rM12mYLMwTacLMLDJqHozw96WQL8i");
55
+ exports.TOKEN_PROGRAM_ID = new web3.PublicKey("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");
56
+ exports.TOKEN_2022_PROGRAM_ID = new web3.PublicKey("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb");
57
+ exports.ASSOCIATED_TOKEN_PROGRAM = new web3.PublicKey("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL");
58
+ exports.SITE_FEE_OWNER = new web3.PublicKey("4K3a2ucXiGvuMJMPNneRDyzmNp6i4RdzXJmBdWwGwPEh");
59
+ exports.USDC_FARM = new web3.PublicKey("7jLQhREMxXjKdpwVuN6gwsWt3BNfAg9WqbepffPbi4ww");
60
+ exports.SOL_FARM = new web3.PublicKey("CY6qutkyek6hh5UCQbbNyEXKoD4tFLFb2tjM3AHnhJcR");
61
+ exports.SOME_METEORA_DLMM_POOL = new web3.PublicKey("7eexH14UjhNxJe6zTT3f1Vb1E8iACsBMVaWheDEmxdT2");
62
+ exports.METEORA_DLMM_PROGRAM = new web3.PublicKey("LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo");
63
+ exports.METEORA_EVENT_AUTHORITY = new web3.PublicKey("D1ZN9Wj1fRSUQfCjhvnu1hqDMT7hzjzBBpi12nVniYD6");
64
+ exports.COMPUTE_BUDGET = new web3.PublicKey("ComputeBudget111111111111111111111111111111");
65
+ exports.HS_AUTHORITY = new web3.PublicKey("dche7M2764e8AxNihBdn7uffVzZvTBNeL8x4LZg5E2c");
66
+ exports.ORCA_WHIRLPOOL_PROGRAM = new web3.PublicKey("whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc");
67
+ exports.ORCA_METADATA_UPDATE_AUTH = new web3.PublicKey("3axbTs2z5GBy6usVbNVoqEgZMng3vZvMnAoX29BFfwhr");
68
+ exports.WSOL_MINT = new web3.PublicKey("So11111111111111111111111111111111111111112");
69
+ exports.JUPITER_PROGRAM = new web3.PublicKey("JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4");
70
+ exports.RAYDIUM_PROGRAM = new web3.PublicKey("CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK");
71
+ exports.TOKEN_2022 = new web3.PublicKey("TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb");
72
+ exports.MEMO_PROGRAM = new web3.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr");
73
+ exports.PUMP_FUN_AMM_PROGRAM = new web3.PublicKey("pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA");
74
+ exports.USDC_MINT = new web3.PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v");
75
+ exports.ADX_MINT = new web3.PublicKey("AuQaustGiaqxRvj2gtCdrd22PBzTn8kM3kEPEkZCtuDw");
76
+ exports.QUARRY_MINE_PROGRAM = new web3.PublicKey("QMNeHCGYnLVDn1icRAfQZpjPLBNkfGbSKRB83G5d8KB");
77
+ exports.SABER_SWAP_PROGRAM = new web3.PublicKey("SSwpkEEcbUqx4vtoEByFjSkhKdCT862DNVb52nZg1UZ");
78
+ exports.REDEEMER_PROGRAM = new web3.PublicKey("RDM23yr8pr1kEAmhnFpaabPny6C9UVcEcok3Py5v86X");
79
+ exports.MINT_PROXY_PROGRAM = new web3.PublicKey("UBEBk5idELqykEEaycYtQ7iBVrCg6NmvFSzMpdr22mL");
80
+ exports.MINT_WRAPPER_PROGRAM = new web3.PublicKey("QMWoBmAyJLAsA1Lh9ugMTw2gciTihncciphzdNzdZYV");
81
+ exports.SABER_MINT = new web3.PublicKey("Saber2gLauYim4Mvftnrasomsv6NvAuncvMEZwcLpD1");
82
+ exports.SABER_IOU_MINT = new web3.PublicKey("iouQcQBAiEXe6cKLS85zmZxUqaCqBdeHFpqKoSz615u");
83
+ exports.SABER_MINT_PROXY_STATE = new web3.PublicKey("9qRjwMQYrkd5JvsENaYYxSCgwEuVhK4qAo5kCFHSmdmL");
84
+ exports.PROXY_MINT_AUTHORITY = new web3.PublicKey("GyktbGXbH9kvxP8RGfWsnFtuRgC7QCQo2WBqpo3ryk7L");
@@ -0,0 +1,22 @@
1
+ import * as web3 from "@solana/web3.js";
2
+ import * as anchor from "@coral-xyz/anchor";
3
+ import { Whirlpool } from "./idl/orca-idl";
4
+ import { LbClmm } from "./idl/meteora-idl";
5
+ import { Raydium } from "./idl/raydium-idl";
6
+ import { IyfExtension } from "./idl/iyf-extension-wrapper";
7
+ import { IndexYieldFarming } from "./idl/iyf-main-wrapper";
8
+ export { IyfExtension };
9
+ export declare class Anchor {
10
+ connection: web3.Connection;
11
+ private static _instance;
12
+ provider: anchor.AnchorProvider;
13
+ iyfMain: anchor.Program<IndexYieldFarming>;
14
+ iyfExtension: anchor.Program<IyfExtension>;
15
+ orcaProgram: anchor.Program<Whirlpool>;
16
+ meteoraProgram: anchor.Program<LbClmm>;
17
+ raydiumProgram: anchor.Program<Raydium>;
18
+ private constructor();
19
+ static initialize(connection: web3.Connection): void;
20
+ static instance(): Anchor;
21
+ }
22
+ //# sourceMappingURL=anchor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchor.d.ts","sourceRoot":"","sources":["../src/anchor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAqB,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAkB,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAmB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAS7D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAK3D,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,qBAAa,MAAM;IAeR,UAAU,EAAE,IAAI,CAAC,UAAU;IAbpC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAS;IACjC,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC;IAGhC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAG3C,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3C,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAExC,OAAO;IA6DP,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU;IAI7C,MAAM,CAAC,QAAQ,IAAI,MAAM;CAO1B"}
package/dist/anchor.js ADDED
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.Anchor = void 0;
40
+ const web3 = __importStar(require("@solana/web3.js"));
41
+ const anchor = __importStar(require("@coral-xyz/anchor"));
42
+ const orca_idl_1 = require("./idl/orca-idl");
43
+ const meteora_idl_1 = require("./idl/meteora-idl");
44
+ const raydium_idl_1 = require("./idl/raydium-idl");
45
+ const nodewallet_1 = __importDefault(require("@coral-xyz/anchor/dist/cjs/nodewallet"));
46
+ const addresses_1 = require("./addresses");
47
+ const iyf_extension_idl_1 = require("./idl/iyf-extension-idl");
48
+ const iyf_main_idl_1 = require("./idl/iyf-main-idl");
49
+ class Anchor {
50
+ constructor(connection) {
51
+ this.connection = connection;
52
+ // Initialize the Anchor provider
53
+ this.provider = new anchor.AnchorProvider(connection, new nodewallet_1.default(web3.Keypair.generate()), {});
54
+ const IyfMain = {
55
+ version: iyf_main_idl_1.IDL.metadata.version,
56
+ name: iyf_main_idl_1.IDL.metadata.name,
57
+ // @ts-ignore
58
+ instructions: iyf_main_idl_1.IDL.instructions.map((instruction, index) => {
59
+ return {
60
+ name: instruction.name,
61
+ accounts: instruction.accounts.map(account => {
62
+ return {
63
+ name: account.name,
64
+ isMut: "writable" in account ? account.writable : false,
65
+ isSigner: "signer" in account ? account.signer : false,
66
+ };
67
+ }),
68
+ args: instruction.args,
69
+ };
70
+ }),
71
+ };
72
+ this.iyfMain = new anchor.Program(IyfMain, addresses_1.IYF_MAIN, this.provider);
73
+ const p = iyf_extension_idl_1.IDL.instructions.map(instruction => {
74
+ return {
75
+ name: instruction.name,
76
+ accounts: [instruction.accounts.map(account => {
77
+ return {
78
+ name: account.name,
79
+ isMut: "writable" in account ? account.writable : false,
80
+ isSigner: "signer" in account ? account.signer : false,
81
+ };
82
+ })],
83
+ args: instruction.args,
84
+ };
85
+ });
86
+ const IyfExtension = {
87
+ version: iyf_extension_idl_1.IDL.metadata.version,
88
+ name: iyf_extension_idl_1.IDL.metadata.name,
89
+ // @ts-ignore
90
+ instructions: iyf_extension_idl_1.IDL.instructions.map((instruction, index) => {
91
+ return {
92
+ name: instruction.name,
93
+ accounts: instruction.accounts.map(account => {
94
+ return {
95
+ name: account.name,
96
+ isMut: "writable" in account ? account.writable : false,
97
+ isSigner: "signer" in account ? account.signer : false,
98
+ };
99
+ }),
100
+ args: instruction.args,
101
+ };
102
+ }),
103
+ };
104
+ this.iyfExtension = new anchor.Program(IyfExtension, addresses_1.IYF_EXTENSION, this.provider);
105
+ this.orcaProgram = new anchor.Program(orca_idl_1.IDL, addresses_1.ORCA_WHIRLPOOL_PROGRAM, this.provider);
106
+ this.meteoraProgram = new anchor.Program(meteora_idl_1.IDL, addresses_1.METEORA_DLMM_PROGRAM, this.provider);
107
+ this.raydiumProgram = new anchor.Program(raydium_idl_1.IDL, addresses_1.RAYDIUM_PROGRAM, this.provider);
108
+ }
109
+ static initialize(connection) {
110
+ Anchor._instance = new Anchor(connection);
111
+ }
112
+ static instance() {
113
+ if (Anchor._instance === undefined) {
114
+ throw new Error(`Initialize first using initialize() method`);
115
+ }
116
+ else {
117
+ return Anchor._instance;
118
+ }
119
+ }
120
+ }
121
+ exports.Anchor = Anchor;
@@ -0,0 +1,29 @@
1
+ import * as web3 from "@solana/web3.js";
2
+ export declare class AltStorage {
3
+ private static _instance;
4
+ static instance(): AltStorage;
5
+ /**
6
+ * Override property to override behavior of this class
7
+ */
8
+ override: {
9
+ loadSingleAlt: (alt: string, connection?: web3.Connection) => Promise<web3.AddressLookupTableAccount>;
10
+ getAlt: (alt: string) => Promise<web3.AddressLookupTableAccount | null>;
11
+ };
12
+ /**
13
+ * Loads a single address lookup table account.
14
+ *
15
+ * @param alt - The address lookup table account address as a string.
16
+ * @param connection - (Optional) A specific Solana blockchain connection object to use.
17
+ * @returns A promise that resolves to the address lookup table account.
18
+ * @throws Error if the address lookup table does not exist.
19
+ */
20
+ loadSingleAlt(alt: string, connection?: web3.Connection): Promise<web3.AddressLookupTableAccount>;
21
+ /**
22
+ * Gets an address lookup table account.
23
+ *
24
+ * @param alt - The address lookup table account address as a string.
25
+ * @returns A promise that resolves to the address lookup table account or null if it does not exist.
26
+ */
27
+ getAlt(alt: string): Promise<web3.AddressLookupTableAccount | null>;
28
+ }
29
+ //# sourceMappingURL=AltStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AltStorage.d.ts","sourceRoot":"","sources":["../../src/classes/AltStorage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AAExC,qBAAa,UAAU;IAErB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAa;IACrC,MAAM,CAAC,QAAQ;IAOf;;OAEG;IACH,QAAQ,EAAE;QACR,aAAa,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACtG,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAA;KACxE,CAOA;IACD;;;;;;;OAOG;IACG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC;IAIvG;;;;;OAKG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;CAG1E"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AltStorage = void 0;
13
+ class AltStorage {
14
+ constructor() {
15
+ /**
16
+ * Override property to override behavior of this class
17
+ */
18
+ this.override = {
19
+ loadSingleAlt: (alt, connection) => {
20
+ throw new Error('Not yet implemented.');
21
+ },
22
+ getAlt: (alt) => {
23
+ throw new Error('Not yet implemented.');
24
+ }
25
+ };
26
+ }
27
+ static instance() {
28
+ if (this._instance === undefined) {
29
+ this._instance = new AltStorage();
30
+ }
31
+ return this._instance;
32
+ }
33
+ /**
34
+ * Loads a single address lookup table account.
35
+ *
36
+ * @param alt - The address lookup table account address as a string.
37
+ * @param connection - (Optional) A specific Solana blockchain connection object to use.
38
+ * @returns A promise that resolves to the address lookup table account.
39
+ * @throws Error if the address lookup table does not exist.
40
+ */
41
+ loadSingleAlt(alt, connection) {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ return yield this.override.loadSingleAlt(alt, connection);
44
+ });
45
+ }
46
+ /**
47
+ * Gets an address lookup table account.
48
+ *
49
+ * @param alt - The address lookup table account address as a string.
50
+ * @returns A promise that resolves to the address lookup table account or null if it does not exist.
51
+ */
52
+ getAlt(alt) {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ return this.override.getAlt(alt);
55
+ });
56
+ }
57
+ }
58
+ exports.AltStorage = AltStorage;
@@ -0,0 +1,34 @@
1
+ import * as web3 from '@solana/web3.js';
2
+ import { DummySigners, TransactionBatchExecute } from "./TransactionBatchExecute";
3
+ import { SimpleIxGenerator } from './SimpleIxGenerator';
4
+ import { JupiterAlts } from './JupiterAlts';
5
+ export declare class Atomicity extends TransactionBatchExecute {
6
+ private ixGenerator;
7
+ /**
8
+ * User wallet
9
+ */
10
+ private userWallet?;
11
+ constructor(lookupTableAddresses: web3.PublicKey[], instructions: web3.TransactionInstruction[], payer: web3.Keypair, connection: web3.Connection, signers: web3.Keypair[] | undefined, jupiterAlts: JupiterAlts, ixGenerator: SimpleIxGenerator);
12
+ /**
13
+ * Set user wallet
14
+ */
15
+ setUserWallet(userWallet: web3.PublicKey): void;
16
+ /**
17
+ * Check whether instruction is an atomicity instruction
18
+ * @param ix
19
+ */
20
+ private isAtomicityIx;
21
+ /**
22
+ * Builds a batch of executable transaction instructions
23
+ */
24
+ buildBatch(): Promise<web3.TransactionInstruction[][]>;
25
+ /**
26
+ * Split transactions
27
+ *
28
+ * @param simulationIxs
29
+ * @param dummySigners
30
+ * @returns
31
+ */
32
+ protected splitToTransactions(simulationIxs: web3.TransactionInstruction[], dummySigners: DummySigners): Promise<web3.TransactionInstruction[][]>;
33
+ }
34
+ //# sourceMappingURL=Atomicity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Atomicity.d.ts","sourceRoot":"","sources":["../../src/classes/Atomicity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,SAAU,SAAQ,uBAAuB;IAclD,OAAO,CAAC,WAAW;IAZrB;;OAEG;IACH,OAAO,CAAC,UAAU,CAAC,CAAiB;gBAGlC,oBAAoB,EAAE,IAAI,CAAC,SAAS,EAAE,EACtC,YAAY,EAAE,IAAI,CAAC,sBAAsB,EAAE,EAC3C,KAAK,EAAE,IAAI,CAAC,OAAO,EACnB,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,YAAK,EAC5B,WAAW,EAAE,WAAW,EAChB,WAAW,EAAE,iBAAiB;IAYxC;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS;IAIxC;;;OAGG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,CAAC;IA4B5D;;;;;;OAMG;cACa,mBAAmB,CAAC,aAAa,EAAE,IAAI,CAAC,sBAAsB,EAAE,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,CAAC;CAiDxJ"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Atomicity = void 0;
13
+ const TransactionBatchExecute_1 = require("./TransactionBatchExecute");
14
+ const functions_1 = require("../functions");
15
+ class Atomicity extends TransactionBatchExecute_1.TransactionBatchExecute {
16
+ constructor(lookupTableAddresses, instructions, payer, connection, signers = [], jupiterAlts, ixGenerator) {
17
+ super(lookupTableAddresses, instructions, payer, connection, signers, jupiterAlts);
18
+ this.ixGenerator = ixGenerator;
19
+ }
20
+ /**
21
+ * Set user wallet
22
+ */
23
+ setUserWallet(userWallet) {
24
+ this.userWallet = userWallet;
25
+ }
26
+ /**
27
+ * Check whether instruction is an atomicity instruction
28
+ * @param ix
29
+ */
30
+ isAtomicityIx(ix) {
31
+ return ix.data.length >= 8 && (0, functions_1.sighashMatch)(ix.data, "setTransactionSlot") || (0, functions_1.sighashMatch)(ix.data, "verifyTransactionSlot");
32
+ }
33
+ /**
34
+ * Builds a batch of executable transaction instructions
35
+ */
36
+ buildBatch() {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ // Download address lookup table from given cluster
39
+ yield this.downloadAlts();
40
+ // Generate dummy instructions for batch calculation
41
+ const [simulationIxs, dummySigners] = this.generateSimulationIxs();
42
+ // Split simulation ixs
43
+ const dummyBatches = yield this.splitToTransactions(simulationIxs, dummySigners);
44
+ // Batch of actual instructions
45
+ const batch = [];
46
+ let index = 0;
47
+ for (const dummyIxs of dummyBatches) {
48
+ const currentBatch = [];
49
+ for (const dummyIx of dummyIxs) {
50
+ if (this.isAtomicityIx(dummyIx)) {
51
+ currentBatch.push(dummyIx);
52
+ }
53
+ else {
54
+ currentBatch.push(this.instructions[index++]);
55
+ }
56
+ }
57
+ batch.push(currentBatch);
58
+ }
59
+ return batch;
60
+ });
61
+ }
62
+ /**
63
+ * Split transactions
64
+ *
65
+ * @param simulationIxs
66
+ * @param dummySigners
67
+ * @returns
68
+ */
69
+ splitToTransactions(simulationIxs, dummySigners) {
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ // Fetch latest blockhash required to calculate transaction size
72
+ const latestBlockhash = yield this.connection.getLatestBlockhash();
73
+ // User wallet must be set
74
+ if (this.userWallet === undefined) {
75
+ throw new Error(`Atomicity.userWallet is not set`);
76
+ }
77
+ // Generate set transaction slot instruction
78
+ const setTransactionSlotIx = yield this.ixGenerator.iyfMain.setTransactionSlot(this.connection, { userWallet: this.userWallet });
79
+ // Generate verify transaction slot instruction
80
+ const verifyTransactionSlotIx = yield this.ixGenerator.iyfMain.verifyTransactionSlot(this.connection, { userWallet: this.userWallet });
81
+ // Run simulation
82
+ let batch = [];
83
+ let result = [];
84
+ let postIx;
85
+ for (const ix of simulationIxs) {
86
+ // Include dummy ix to transaction
87
+ batch.push(ix);
88
+ // Include setTransactionSlot instruction if result batch is still zero
89
+ if (result.length === 0) {
90
+ postIx = setTransactionSlotIx;
91
+ }
92
+ else {
93
+ postIx = verifyTransactionSlotIx;
94
+ }
95
+ // Calculate transaction size
96
+ const txSize = this.calculateTransactionSize(latestBlockhash, [...batch, postIx], dummySigners);
97
+ if (txSize > this.MAX_SIZE) {
98
+ batch.pop();
99
+ result.push([...batch, postIx]);
100
+ batch = [ix];
101
+ }
102
+ }
103
+ if (batch.length > 0 && simulationIxs.length !== 0) {
104
+ result.push([...batch, postIx]);
105
+ }
106
+ return result;
107
+ });
108
+ }
109
+ }
110
+ exports.Atomicity = Atomicity;
@@ -0,0 +1,35 @@
1
+ import * as client from "@hawksightco/swagger-client";
2
+ /**
3
+ * The Client class serves as the central configuration point for all HawkSight API interactions.
4
+ * It encapsulates the setup of the API's configuration and initializes various sub-APIs to manage different
5
+ * aspects of the HawkSight services. These sub-APIs include health checks, general endpoints, and specific
6
+ * functionalities for different decentralized market making solutions like Meteora and Orca.
7
+ */
8
+ export declare class Client {
9
+ readonly url: string;
10
+ /** Configuration object for the HawkSight API, setting the base path and other necessary settings. */
11
+ readonly config: client.Configuration;
12
+ /** API accessor for health check operations to monitor the availability and status of the HawkSight API. */
13
+ readonly healthCheck: client.HealthCheckApi;
14
+ /** API accessor for general endpoints, which include various utility functions that are broadly applicable. */
15
+ readonly generalEndpoints: client.GeneralEndpointsApi;
16
+ /** API accessor for general utility */
17
+ readonly generalUtility: client.GeneralUtilityEndpointsApi;
18
+ /** API accessor for utility functions specifically tailored for Meteora Decentralized Liquidity Market Maker (DLMM) operations. */
19
+ readonly meteoraDLMMUtilityFunctionsApi: client.MeteoraDLMMUtilityFunctionsApi;
20
+ /** API accessor for instructional functions related to Meteora DLMM, handling specific transaction instructions. */
21
+ readonly meteoraDLMMInstructionsApi: client.MeteoraDLMMInstructionsApi;
22
+ /** API accessor for automation instructions within Meteora DLMM, supporting automated transaction processes. */
23
+ readonly meteoraDLMMAutomationInstructionsApi: client.MeteoraDLMMAutomationInstructionsApi;
24
+ /** API accessor for utility functions tailored for Orca's Concentrated Liquidity Market Maker (CLMM) operations. */
25
+ readonly orcaUtilityFunctionsApi: client.OrcaUtilityFunctionsApi;
26
+ /** API accessor for instructional functions related to Orca CLMM, managing specific trading and liquidity strategies. */
27
+ readonly orcaCLMMInstructionsApi: client.OrcaCLMMInstructionsApi;
28
+ /**
29
+ * Constructs a new Client object with a specified API URL.
30
+ * @param url The base URL for the HawkSight API, defaulting to "https://api2.hawksight.co" if not specified.
31
+ * This URL is used to configure the path for all API calls made through this client.
32
+ */
33
+ constructor(url?: string);
34
+ }
35
+ //# sourceMappingURL=Client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/classes/Client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AAEtD;;;;;GAKG;AACH,qBAAa,MAAM;aAkCC,GAAG,EAAE,MAAM;IAjC7B,sGAAsG;IACtG,SAAgB,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC;IAE7C,4GAA4G;IAC5G,SAAgB,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC;IAEnD,+GAA+G;IAC/G,SAAgB,gBAAgB,EAAE,MAAM,CAAC,mBAAmB,CAAC;IAE7D,uCAAuC;IACvC,SAAgB,cAAc,EAAE,MAAM,CAAC,0BAA0B,CAAC;IAElE,mIAAmI;IACnI,SAAgB,8BAA8B,EAAE,MAAM,CAAC,8BAA8B,CAAC;IAEtF,oHAAoH;IACpH,SAAgB,0BAA0B,EAAE,MAAM,CAAC,0BAA0B,CAAC;IAE9E,gHAAgH;IAChH,SAAgB,oCAAoC,EAAE,MAAM,CAAC,oCAAoC,CAAC;IAElG,oHAAoH;IACpH,SAAgB,uBAAuB,EAAE,MAAM,CAAC,uBAAuB,CAAC;IAExE,yHAAyH;IACzH,SAAgB,uBAAuB,EAAE,MAAM,CAAC,uBAAuB,CAAC;IAExE;;;;OAIG;gBAEe,GAAG,GAAE,MAAoC;CAe5D"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Client = void 0;
37
+ const client = __importStar(require("@hawksightco/swagger-client"));
38
+ /**
39
+ * The Client class serves as the central configuration point for all HawkSight API interactions.
40
+ * It encapsulates the setup of the API's configuration and initializes various sub-APIs to manage different
41
+ * aspects of the HawkSight services. These sub-APIs include health checks, general endpoints, and specific
42
+ * functionalities for different decentralized market making solutions like Meteora and Orca.
43
+ */
44
+ class Client {
45
+ /**
46
+ * Constructs a new Client object with a specified API URL.
47
+ * @param url The base URL for the HawkSight API, defaulting to "https://api2.hawksight.co" if not specified.
48
+ * This URL is used to configure the path for all API calls made through this client.
49
+ */
50
+ constructor(url = "https://api2.hawksight.co") {
51
+ this.url = url;
52
+ this.config = new client.Configuration({
53
+ basePath: url
54
+ });
55
+ // Initialization of all API accessors with the configured base path.
56
+ this.healthCheck = new client.HealthCheckApi(this.config);
57
+ this.generalEndpoints = new client.GeneralEndpointsApi(this.config);
58
+ this.generalUtility = new client.GeneralUtilityEndpointsApi(this.config);
59
+ this.meteoraDLMMUtilityFunctionsApi = new client.MeteoraDLMMUtilityFunctionsApi(this.config);
60
+ this.meteoraDLMMInstructionsApi = new client.MeteoraDLMMInstructionsApi(this.config);
61
+ this.meteoraDLMMAutomationInstructionsApi = new client.MeteoraDLMMAutomationInstructionsApi(this.config);
62
+ this.orcaUtilityFunctionsApi = new client.OrcaUtilityFunctionsApi(this.config);
63
+ this.orcaCLMMInstructionsApi = new client.OrcaCLMMInstructionsApi(this.config);
64
+ }
65
+ }
66
+ exports.Client = Client;
@@ -0,0 +1,11 @@
1
+ import { GeneralUtility } from "./GeneralUtility";
2
+ import { CombineTransactionsParams, ResponseWithStatus, TransactionMetadata } from "../types";
3
+ export declare class CombineTransactions {
4
+ private readonly generalUtility;
5
+ constructor(generalUtility: GeneralUtility);
6
+ /**
7
+ * Combines transactions into a single transaction.
8
+ */
9
+ combine({ connection, payer, description, instructions, additionalAlt, }: CombineTransactionsParams): Promise<ResponseWithStatus<TransactionMetadata>>;
10
+ }
11
+ //# sourceMappingURL=CombineTransactions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CombineTransactions.d.ts","sourceRoot":"","sources":["../../src/classes/CombineTransactions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE9F,qBAAa,mBAAmB;IAE5B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAGjD;;OAEG;IACU,OAAO,CAAC,EACnB,UAAU,EACV,KAAK,EACL,WAAW,EACX,YAAY,EACZ,aAAa,GACd,EAAE,yBAAyB,GAAG,OAAO,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;CAkChF"}