flash-sdk 10.8.0-alpha.3 → 10.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { BN } from "@coral-xyz/anchor";
2
3
  import { ContractOraclePrice } from "./types";
3
4
  export declare class OraclePrice {
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { BN } from "@coral-xyz/anchor";
2
3
  import { PublicKey } from "@solana/web3.js";
3
4
  import { LimitOrder, Order, TriggerOrder } from "./types";
@@ -1,3 +1,5 @@
1
+ /// <reference types="bn.js" />
2
+ /// <reference types="node" />
1
3
  import { Program, AnchorProvider, BN } from "@coral-xyz/anchor";
2
4
  import { PublicKey, TransactionInstruction, Commitment, Signer, AddressLookupTableAccount, VersionedTransaction } from "@solana/web3.js";
3
5
  import { PoolAccount } from "./PoolAccount";
@@ -41,7 +43,6 @@ export declare class PerpetualsClient {
41
43
  bump: number;
42
44
  };
43
45
  addressLookupTables: AddressLookupTableAccount[];
44
- pusherAddressLookupTables: AddressLookupTableAccount;
45
46
  eventAuthority: {
46
47
  publicKey: PublicKey;
47
48
  bump: number;
@@ -20,8 +20,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
20
20
  });
21
21
  };
22
22
  var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
25
  function verb(n) { return function (v) { return step([n, v]); }; }
26
26
  function step(op) {
27
27
  if (f) throw new TypeError("Generator is already executing.");
@@ -91,35 +91,31 @@ var PerpetualsClient = (function () {
91
91
  _this.prioritizationFee = fee;
92
92
  };
93
93
  this.loadAddressLookupTable = function (poolConfig) { return __awaiter(_this, void 0, void 0, function () {
94
- var addresses, _i, _a, address, addressLookupTable, _b, accCreationLamports;
95
- return __generator(this, function (_c) {
96
- switch (_c.label) {
94
+ var addresses, _i, _a, address, addressLookupTable, accCreationLamports;
95
+ return __generator(this, function (_b) {
96
+ switch (_b.label) {
97
97
  case 0:
98
98
  addresses = [];
99
99
  _i = 0, _a = poolConfig.addressLookupTableAddresses;
100
- _c.label = 1;
100
+ _b.label = 1;
101
101
  case 1:
102
102
  if (!(_i < _a.length)) return [3, 4];
103
103
  address = _a[_i];
104
104
  return [4, this.provider.connection.getAddressLookupTable(address)];
105
105
  case 2:
106
- addressLookupTable = (_c.sent()).value;
106
+ addressLookupTable = (_b.sent()).value;
107
107
  if (addressLookupTable) {
108
108
  addresses.push(addressLookupTable);
109
109
  }
110
- _c.label = 3;
110
+ _b.label = 3;
111
111
  case 3:
112
112
  _i++;
113
113
  return [3, 1];
114
114
  case 4:
115
115
  this.addressLookupTables = addresses;
116
- _b = this;
117
- return [4, this.provider.connection.getAddressLookupTable(poolConfig.pusherAddressLookupTableAddress)];
118
- case 5:
119
- _b.pusherAddressLookupTables = (_c.sent()).value;
120
116
  return [4, (0, spl_token_1.getMinimumBalanceForRentExemptAccount)(this.provider.connection)];
121
- case 6:
122
- accCreationLamports = (_c.sent());
117
+ case 5:
118
+ accCreationLamports = (_b.sent());
123
119
  if (accCreationLamports) {
124
120
  this.minimumBalanceForRentExemptAccountLamports = accCreationLamports;
125
121
  }
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { BN } from "@coral-xyz/anchor";
2
3
  import { Pool, TokenRatios, StakeStats, CompoundingStats, Permissions } from "./types";
3
4
  import { PublicKey } from "@solana/web3.js";
@@ -72,7 +72,6 @@ export declare class PoolConfig {
72
72
  protocolTokenAccount: PublicKey;
73
73
  multisig: PublicKey;
74
74
  addressLookupTableAddresses: PublicKey[];
75
- pusherAddressLookupTableAddress: PublicKey;
76
75
  backupOracle: PublicKey;
77
76
  nftCollectionAddress: PublicKey;
78
77
  rewardDistributionProgram: {
@@ -85,7 +84,7 @@ export declare class PoolConfig {
85
84
  tokens: Token[];
86
85
  custodies: CustodyConfig[];
87
86
  markets: MarketConfig[];
88
- constructor(programId: PublicKey, perpComposibilityProgramId: PublicKey, fbNftRewardProgramId: PublicKey, cluster: Cluster, poolName: string, poolAddress: PublicKey, stakedLpTokenMint: PublicKey, compoundingTokenMint: PublicKey, stakedLpVault: PublicKey, compoundingLpVault: PublicKey, lpDecimals: number, compoundingLpTokenSymbol: string, stakedLpTokenSymbol: string, perpetuals: PublicKey, transferAuthority: PublicKey, tokenMint: PublicKey, tokenVault: PublicKey, tokenVaultTokenAccount: PublicKey, revenueTokenAccount: PublicKey, protocolVault: PublicKey, protocolTokenAccount: PublicKey, multisig: PublicKey, addressLookupTableAddresses: PublicKey[], pusherAddressLookupTableAddress: PublicKey, backupOracle: PublicKey, nftCollectionAddress: PublicKey, rewardDistributionProgram: {
87
+ constructor(programId: PublicKey, perpComposibilityProgramId: PublicKey, fbNftRewardProgramId: PublicKey, cluster: Cluster, poolName: string, poolAddress: PublicKey, stakedLpTokenMint: PublicKey, compoundingTokenMint: PublicKey, stakedLpVault: PublicKey, compoundingLpVault: PublicKey, lpDecimals: number, compoundingLpTokenSymbol: string, stakedLpTokenSymbol: string, perpetuals: PublicKey, transferAuthority: PublicKey, tokenMint: PublicKey, tokenVault: PublicKey, tokenVaultTokenAccount: PublicKey, revenueTokenAccount: PublicKey, protocolVault: PublicKey, protocolTokenAccount: PublicKey, multisig: PublicKey, addressLookupTableAddresses: PublicKey[], backupOracle: PublicKey, nftCollectionAddress: PublicKey, rewardDistributionProgram: {
89
88
  programId: PublicKey;
90
89
  transferAuthority: PublicKey;
91
90
  rewardVault: PublicKey;
@@ -19,7 +19,7 @@ var web3_js_1 = require("@solana/web3.js");
19
19
  var PoolConfig_json_1 = __importDefault(require("./PoolConfig.json"));
20
20
  var types_1 = require("./types");
21
21
  var PoolConfig = (function () {
22
- function PoolConfig(programId, perpComposibilityProgramId, fbNftRewardProgramId, cluster, poolName, poolAddress, stakedLpTokenMint, compoundingTokenMint, stakedLpVault, compoundingLpVault, lpDecimals, compoundingLpTokenSymbol, stakedLpTokenSymbol, perpetuals, transferAuthority, tokenMint, tokenVault, tokenVaultTokenAccount, revenueTokenAccount, protocolVault, protocolTokenAccount, multisig, addressLookupTableAddresses, pusherAddressLookupTableAddress, backupOracle, nftCollectionAddress, rewardDistributionProgram, tokens, custodies, markets) {
22
+ function PoolConfig(programId, perpComposibilityProgramId, fbNftRewardProgramId, cluster, poolName, poolAddress, stakedLpTokenMint, compoundingTokenMint, stakedLpVault, compoundingLpVault, lpDecimals, compoundingLpTokenSymbol, stakedLpTokenSymbol, perpetuals, transferAuthority, tokenMint, tokenVault, tokenVaultTokenAccount, revenueTokenAccount, protocolVault, protocolTokenAccount, multisig, addressLookupTableAddresses, backupOracle, nftCollectionAddress, rewardDistributionProgram, tokens, custodies, markets) {
23
23
  var _this = this;
24
24
  this.programId = programId;
25
25
  this.perpComposibilityProgramId = perpComposibilityProgramId;
@@ -44,7 +44,6 @@ var PoolConfig = (function () {
44
44
  this.protocolTokenAccount = protocolTokenAccount;
45
45
  this.multisig = multisig;
46
46
  this.addressLookupTableAddresses = addressLookupTableAddresses;
47
- this.pusherAddressLookupTableAddress = pusherAddressLookupTableAddress;
48
47
  this.backupOracle = backupOracle;
49
48
  this.nftCollectionAddress = nftCollectionAddress;
50
49
  this.rewardDistributionProgram = rewardDistributionProgram;
@@ -171,13 +170,6 @@ var PoolConfig = (function () {
171
170
  catch (error) {
172
171
  console.log("ERROR: buildPoolconfigFromJson unable to load addressLookupTableAddresses ");
173
172
  }
174
- var pusherAddressLookupTableAddress;
175
- try {
176
- pusherAddressLookupTableAddress = new web3_js_1.PublicKey(poolConfig['pusherAddressLookupTableAddress']);
177
- }
178
- catch (error) {
179
- console.log("ERROR: buildPoolconfigFromJson unable to load pusherAddressLookupTableAddress ");
180
- }
181
173
  var markets;
182
174
  try {
183
175
  markets = poolConfig['markets'].map(function (i) {
@@ -187,7 +179,7 @@ var PoolConfig = (function () {
187
179
  catch (error) {
188
180
  console.log("ERROR: buildPoolconfigFromJson unable to load markets ");
189
181
  }
190
- return new PoolConfig(new web3_js_1.PublicKey(poolConfig.programId), new web3_js_1.PublicKey(poolConfig.perpComposibilityProgramId), new web3_js_1.PublicKey(poolConfig.fbNftRewardProgramId), poolConfig.cluster, poolConfig.poolName, new web3_js_1.PublicKey(poolConfig.poolAddress), new web3_js_1.PublicKey(poolConfig.stakedLpTokenMint), new web3_js_1.PublicKey(poolConfig.compoundingTokenMint), new web3_js_1.PublicKey(poolConfig.stakedLpVault), new web3_js_1.PublicKey(poolConfig.compoundingLpVault), poolConfig.lpDecimals, poolConfig.compoundingLpTokenSymbol, poolConfig.stakedLpTokenSymbol, new web3_js_1.PublicKey(poolConfig.perpetuals), new web3_js_1.PublicKey(poolConfig.transferAuthority), new web3_js_1.PublicKey(poolConfig.tokenMint), new web3_js_1.PublicKey(poolConfig.tokenVault), new web3_js_1.PublicKey(poolConfig.tokenVaultTokenAccount), new web3_js_1.PublicKey(poolConfig.revenueTokenAccount), new web3_js_1.PublicKey(poolConfig.protocolVault), new web3_js_1.PublicKey(poolConfig.protocolTokenAccount), new web3_js_1.PublicKey(poolConfig.multisig), addressLookupTableAddresses, pusherAddressLookupTableAddress, new web3_js_1.PublicKey(poolConfig.backupOracle), new web3_js_1.PublicKey(poolConfig.nftCollectionAddress), {
182
+ return new PoolConfig(new web3_js_1.PublicKey(poolConfig.programId), new web3_js_1.PublicKey(poolConfig.perpComposibilityProgramId), new web3_js_1.PublicKey(poolConfig.fbNftRewardProgramId), poolConfig.cluster, poolConfig.poolName, new web3_js_1.PublicKey(poolConfig.poolAddress), new web3_js_1.PublicKey(poolConfig.stakedLpTokenMint), new web3_js_1.PublicKey(poolConfig.compoundingTokenMint), new web3_js_1.PublicKey(poolConfig.stakedLpVault), new web3_js_1.PublicKey(poolConfig.compoundingLpVault), poolConfig.lpDecimals, poolConfig.compoundingLpTokenSymbol, poolConfig.stakedLpTokenSymbol, new web3_js_1.PublicKey(poolConfig.perpetuals), new web3_js_1.PublicKey(poolConfig.transferAuthority), new web3_js_1.PublicKey(poolConfig.tokenMint), new web3_js_1.PublicKey(poolConfig.tokenVault), new web3_js_1.PublicKey(poolConfig.tokenVaultTokenAccount), new web3_js_1.PublicKey(poolConfig.revenueTokenAccount), new web3_js_1.PublicKey(poolConfig.protocolVault), new web3_js_1.PublicKey(poolConfig.protocolTokenAccount), new web3_js_1.PublicKey(poolConfig.multisig), addressLookupTableAddresses, new web3_js_1.PublicKey(poolConfig.backupOracle), new web3_js_1.PublicKey(poolConfig.nftCollectionAddress), {
191
183
  programId: new web3_js_1.PublicKey(poolConfig.rewardDistributionProgram.programId),
192
184
  rewardMint: new web3_js_1.PublicKey(poolConfig.rewardDistributionProgram.rewardMint),
193
185
  rewardTokenAccount: new web3_js_1.PublicKey(poolConfig.rewardDistributionProgram.rewardTokenAccount),
@@ -33,7 +33,6 @@
33
33
  "addressLookupTableAddresses": [
34
34
  "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM"
35
35
  ],
36
- "pusherAddressLookupTableAddress": "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM",
37
36
  "backupOracle": "AjAubETeBLhebBxLcErmzbavZfqF9bCxkpRAdyJtoi9G",
38
37
  "nftCollectionAddress": "H4EQ8pcE7PQSQGG1WYW4hAA1nizU6ULYipHZcYk9b64u",
39
38
  "rewardDistributionProgram": {
@@ -414,7 +413,6 @@
414
413
  "addressLookupTableAddresses": [
415
414
  "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM"
416
415
  ],
417
- "pusherAddressLookupTableAddress": "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM",
418
416
  "backupOracle": "AjAubETeBLhebBxLcErmzbavZfqF9bCxkpRAdyJtoi9G",
419
417
  "nftCollectionAddress": "H4EQ8pcE7PQSQGG1WYW4hAA1nizU6ULYipHZcYk9b64u",
420
418
  "rewardDistributionProgram": {
@@ -798,7 +796,6 @@
798
796
  "addressLookupTableAddresses": [
799
797
  "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM"
800
798
  ],
801
- "pusherAddressLookupTableAddress": "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM",
802
799
  "backupOracle": "AjAubETeBLhebBxLcErmzbavZfqF9bCxkpRAdyJtoi9G",
803
800
  "nftCollectionAddress": "H4EQ8pcE7PQSQGG1WYW4hAA1nizU6ULYipHZcYk9b64u",
804
801
  "rewardDistributionProgram": {
@@ -1306,7 +1303,6 @@
1306
1303
  "addressLookupTableAddresses": [
1307
1304
  "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM"
1308
1305
  ],
1309
- "pusherAddressLookupTableAddress": "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM",
1310
1306
  "backupOracle": "AjAubETeBLhebBxLcErmzbavZfqF9bCxkpRAdyJtoi9G",
1311
1307
  "nftCollectionAddress": "H4EQ8pcE7PQSQGG1WYW4hAA1nizU6ULYipHZcYk9b64u",
1312
1308
  "rewardDistributionProgram": {
@@ -1566,7 +1562,6 @@
1566
1562
  "addressLookupTableAddresses": [
1567
1563
  "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM"
1568
1564
  ],
1569
- "pusherAddressLookupTableAddress": "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM",
1570
1565
  "backupOracle": "AjAubETeBLhebBxLcErmzbavZfqF9bCxkpRAdyJtoi9G",
1571
1566
  "nftCollectionAddress": "H4EQ8pcE7PQSQGG1WYW4hAA1nizU6ULYipHZcYk9b64u",
1572
1567
  "rewardDistributionProgram": {
@@ -1702,7 +1697,6 @@
1702
1697
  "addressLookupTableAddresses": [
1703
1698
  "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM"
1704
1699
  ],
1705
- "pusherAddressLookupTableAddress": "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM",
1706
1700
  "backupOracle": "AjAubETeBLhebBxLcErmzbavZfqF9bCxkpRAdyJtoi9G",
1707
1701
  "nftCollectionAddress": "H4EQ8pcE7PQSQGG1WYW4hAA1nizU6ULYipHZcYk9b64u",
1708
1702
  "rewardDistributionProgram": {
@@ -1838,7 +1832,6 @@
1838
1832
  "addressLookupTableAddresses": [
1839
1833
  "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM"
1840
1834
  ],
1841
- "pusherAddressLookupTableAddress": "AUebVLw8UwN35Us2XcPQaTQejJoQ5T7ckWzxHTwN1mkM",
1842
1835
  "backupOracle": "AjAubETeBLhebBxLcErmzbavZfqF9bCxkpRAdyJtoi9G",
1843
1836
  "nftCollectionAddress": "H4EQ8pcE7PQSQGG1WYW4hAA1nizU6ULYipHZcYk9b64u",
1844
1837
  "rewardDistributionProgram": {
@@ -1974,7 +1967,6 @@
1974
1967
  "addressLookupTableAddresses": [
1975
1968
  "5V8A9S1pmynVZogrGkxyu68ps1FSRrH8AfKoAtbYZdBM"
1976
1969
  ],
1977
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
1978
1970
  "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
1979
1971
  "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
1980
1972
  "rewardDistributionProgram": {
@@ -2355,7 +2347,6 @@
2355
2347
  "addressLookupTableAddresses": [
2356
2348
  "5V8A9S1pmynVZogrGkxyu68ps1FSRrH8AfKoAtbYZdBM"
2357
2349
  ],
2358
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
2359
2350
  "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
2360
2351
  "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
2361
2352
  "rewardDistributionProgram": {
@@ -2739,7 +2730,6 @@
2739
2730
  "addressLookupTableAddresses": [
2740
2731
  "5V8A9S1pmynVZogrGkxyu68ps1FSRrH8AfKoAtbYZdBM"
2741
2732
  ],
2742
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
2743
2733
  "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
2744
2734
  "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
2745
2735
  "rewardDistributionProgram": {
@@ -3247,7 +3237,6 @@
3247
3237
  "addressLookupTableAddresses": [
3248
3238
  "5V8A9S1pmynVZogrGkxyu68ps1FSRrH8AfKoAtbYZdBM"
3249
3239
  ],
3250
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
3251
3240
  "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
3252
3241
  "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
3253
3242
  "rewardDistributionProgram": {
@@ -3507,7 +3496,6 @@
3507
3496
  "addressLookupTableAddresses": [
3508
3497
  "5V8A9S1pmynVZogrGkxyu68ps1FSRrH8AfKoAtbYZdBM"
3509
3498
  ],
3510
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
3511
3499
  "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
3512
3500
  "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
3513
3501
  "rewardDistributionProgram": {
@@ -3643,7 +3631,6 @@
3643
3631
  "addressLookupTableAddresses": [
3644
3632
  "5V8A9S1pmynVZogrGkxyu68ps1FSRrH8AfKoAtbYZdBM"
3645
3633
  ],
3646
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
3647
3634
  "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
3648
3635
  "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
3649
3636
  "rewardDistributionProgram": {
@@ -3771,6 +3758,110 @@
3771
3758
  "pythPriceId": "0xeff7446475e218517566ea99e72a4abec2e1bd8498b43b7d8331e29dcb059389",
3772
3759
  "isToken2022": false
3773
3760
  },
3761
+ {
3762
+ "symbol": "FARTCOIN",
3763
+ "mintKey": "fartpRHniUMJ2dG3AFkFcmvDHptBSqBbttYwE3hKv5t",
3764
+ "decimals": 6,
3765
+ "usdPrecision": 4,
3766
+ "tokenPrecision": 4,
3767
+ "isStable": false,
3768
+ "isVirtual": false,
3769
+ "lazerId": 182,
3770
+ "pythTicker": "Crypto.FARTCOIN/USD",
3771
+ "pythPriceId": "0x58cd29ef0e714c5affc44f269b2c1899a52da4169d7acc147b9da692e6953608",
3772
+ "isToken2022": false
3773
+ },
3774
+ {
3775
+ "symbol": "JUP",
3776
+ "mintKey": "jupFZJoi1GKLMyt2J2Ui13BNTNh47XQtYPpNucbMAF4",
3777
+ "decimals": 6,
3778
+ "usdPrecision": 4,
3779
+ "tokenPrecision": 4,
3780
+ "isStable": false,
3781
+ "isVirtual": false,
3782
+ "lazerId": 92,
3783
+ "pythTicker": "Crypto.JUP/USD",
3784
+ "pythPriceId": "0x0a0408d619e9380abad35060f9192039ed5042fa6f82301d0e48bb52be830996",
3785
+ "isToken2022": false
3786
+ },
3787
+ {
3788
+ "symbol": "PYTH",
3789
+ "mintKey": "pythwankpPj8tfCtBEW6BBE6oVC6ZFWF8tjyLPRSr45",
3790
+ "decimals": 6,
3791
+ "usdPrecision": 4,
3792
+ "tokenPrecision": 4,
3793
+ "isStable": false,
3794
+ "isVirtual": false,
3795
+ "lazerId": 3,
3796
+ "pythTicker": "Crypto.PYTH/USD",
3797
+ "pythPriceId": "0x0bbf28e9a841a1cc788f6a361b17ca072d0ea3098a1e5df1c3922d06719579ff",
3798
+ "isToken2022": false
3799
+ },
3800
+ {
3801
+ "symbol": "JTO",
3802
+ "mintKey": "jtoLsU5JqXTYzPzRwGK7UmsNgy1EN6BwNRr6KMJKcXi",
3803
+ "decimals": 6,
3804
+ "usdPrecision": 4,
3805
+ "tokenPrecision": 4,
3806
+ "isStable": false,
3807
+ "isVirtual": false,
3808
+ "lazerId": 91,
3809
+ "pythTicker": "Crypto.JTO/USD",
3810
+ "pythPriceId": "0xb43660a5f790c69354b0729a5ef9d50d68f1df92107540210b9cccba1f947cc2",
3811
+ "isToken2022": false
3812
+ },
3813
+ {
3814
+ "symbol": "RAY",
3815
+ "mintKey": "ray4PVwCwoM4ADM3qKar3Wy6v7eA2zcMtHWv7LAPGe8",
3816
+ "decimals": 6,
3817
+ "usdPrecision": 4,
3818
+ "tokenPrecision": 4,
3819
+ "isStable": false,
3820
+ "isVirtual": false,
3821
+ "lazerId": 54,
3822
+ "pythTicker": "Crypto.RAY/USD",
3823
+ "pythPriceId": "0x91568baa8beb53db23eb3fb7f22c6e8bd303d103919e19733f2bb642d3e7987a",
3824
+ "isToken2022": false
3825
+ },
3826
+ {
3827
+ "symbol": "KMNO",
3828
+ "mintKey": "kmnooU2T6dYeVvPcwFjtNwDdgfNtAY6qs8tnxacZQxb",
3829
+ "decimals": 6,
3830
+ "usdPrecision": 4,
3831
+ "tokenPrecision": 4,
3832
+ "isStable": false,
3833
+ "isVirtual": false,
3834
+ "lazerId": 464,
3835
+ "pythTicker": "Crypto.KMNO/USD",
3836
+ "pythPriceId": "0xb17e5bc5de742a8a378b54c9c75442b7d51e30ada63f28d9bd28d3c0e26511a0",
3837
+ "isToken2022": false
3838
+ },
3839
+ {
3840
+ "symbol": "2Z",
3841
+ "mintKey": "2zRoPBHuDHcwHym3aeAtZZhWbpzHUXJSe3H8Rnsh3SL3",
3842
+ "decimals": 8,
3843
+ "usdPrecision": 4,
3844
+ "tokenPrecision": 4,
3845
+ "isStable": false,
3846
+ "isVirtual": false,
3847
+ "lazerId": 2316,
3848
+ "pythTicker": "Crypto.2Z/USD",
3849
+ "pythPriceId": "0xf2b3ab1c49e35e881003c3c0482d18b181a1560b697b844c24c8f85aba1cab95",
3850
+ "isToken2022": false
3851
+ },
3852
+ {
3853
+ "symbol": "MET",
3854
+ "mintKey": "met2Hm6WYJaN27BkDVAuNefdk4BzkRpy5HqDrXVgDVH",
3855
+ "decimals": 6,
3856
+ "usdPrecision": 4,
3857
+ "tokenPrecision": 4,
3858
+ "isStable": false,
3859
+ "isVirtual": false,
3860
+ "lazerId": 102,
3861
+ "pythTicker": "Crypto.W/USD",
3862
+ "pythPriceId": "0xeff7446475e218517566ea99e72a4abec2e1bd8498b43b7d8331e29dcb059389",
3863
+ "isToken2022": false
3864
+ },
3774
3865
  {
3775
3866
  "symbol": "FARTCOIN",
3776
3867
  "mintKey": "fartpRHniUMJ2dG3AFkFcmvDHptBSqBbttYwE3hKv5t",
@@ -4275,7 +4366,6 @@
4275
4366
  "addressLookupTableAddresses": [
4276
4367
  "5V8A9S1pmynVZogrGkxyu68ps1FSRrH8AfKoAtbYZdBM"
4277
4368
  ],
4278
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
4279
4369
  "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
4280
4370
  "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
4281
4371
  "rewardDistributionProgram": {
@@ -4383,229 +4473,6 @@
4383
4473
  "collateralMint": "Gh9ZwEmdLJ8DscKNTkTqPbNwLNNBjuSzaG9Vp2KGtKJr"
4384
4474
  }
4385
4475
  ]
4386
- },
4387
- {
4388
- "programId": "FTPP4jEWW1n8s2FEccwVfS9KCPjpndaswg7Nkkuz4ER4",
4389
- "perpComposibilityProgramId": "SWAP4AE4N1if9qKD7dgfQgmRBRv1CtWG8xDs4HP14ST",
4390
- "fbNftRewardProgramId": "FB8mxzFuW99ExD1B14hFqoeWWS1UdbuK6iY2PVPpKFQi",
4391
- "cluster": "devnet",
4392
- "poolName": "Remora.1",
4393
- "poolAddress": "C8oensjR4xowfZAxAVviWDp8JGHzHAqKg14fg7vX44VH",
4394
- "stakedLpTokenMint": "JDshfEoCK3HJsY2kNTyjGtgh4rsfkfCvrYfkXi9poVWw",
4395
- "compoundingLpVault": "EKvGz1sKpHyB9hUuK1iMnaWe4db5LX1eZwspK5QnFUV6",
4396
- "compoundingTokenMint": "86tKmJMvsvzCEEjrtvnyuTY87xKGh3g8pSLB8wVA1j8R",
4397
- "stakedLpVault": "H3SWZYv3oQa17ebYhabr6nccjd7zAJQQMKgv4yz12z65",
4398
- "metadataAccount": "ET8kzufP9ppbBCYrEuhSq2Dt6DWdg52rBKxrMiLNdi7s",
4399
- "lpDecimals": 6,
4400
- "compoundingLpTokenSymbol": "FLP.8",
4401
- "stakedLpTokenSymbol": "sFLP.8",
4402
- "perpetuals": "Eqdi9iS9yxHu2kK84YYp1T5ynwsrHBhZJjA6W7sBQ6u",
4403
- "transferAuthority": "7FQugUsik25vwUVtB2gr6JZyQGq3t2PQYrZ7yjcF5BUp",
4404
- "tokenMint": "fafsR7zoBPiSBAa96fUQiCJExsoXV5u6HaWrdXL19B2",
4405
- "tokenVault": "ELDbqfMSwrwb77zszaERW8vwYHGKnupddRACfBq2WPw4",
4406
- "tokenVaultTokenAccount": "DJ4qTezsjc7HjtNKuVM8xoQpAhrxAEYDMitmzUesXtsR",
4407
- "revenueTokenAccount": "CFoRc6wa6v7XwByXQ9k1noADHDBtsgaPRqRqcvXj45PX",
4408
- "protocolVault": "5Ah1vannj7FSVa7N6eZdwwXowMyZBrHtrF7Zd1HVjuJ",
4409
- "protocolTokenAccount": "4US73S8pPe3rGJ44iUuTRATeB8PA2Jindwf11D3B3C37",
4410
- "multisig": "8DieAFUfaUZNSQzzzux9c7LAxsd9XQQuM9kvrZupnJ4Q",
4411
- "addressLookupTableAddresses": [
4412
- "Dykk6BCAJ5bD3rR7GkgmqRh9fDKXuQETnMc1YLjWvjLo"
4413
- ],
4414
- "pusherAddressLookupTableAddress": "3CUaTZz7yEXZQxCqAKkdbrn7qHzfdU4BVrUH1CnYN8vt",
4415
- "backupOracle": "AHaKsRB4tsGSzFfFqAxUpfRRmsUj5EhwHSxSXK2UGRp5",
4416
- "nftCollectionAddress": "3rkRzHdN7dXy5CQfX3Lz6UBBJ2F9n58VEpvDSmbaVHt9",
4417
- "rewardDistributionProgram": {
4418
- "programId": "FARTfzmezUtejeF42vfyvX96NWq1BuAcXFiAQuz6wZZg",
4419
- "transferAuthority": "4cgNvcrPFxmgJVyQNJqM8Sb6eJnDktr5mWA3gSkdNcyT",
4420
- "rewardVault": "DrXUtn8BRUYAo1i3ZTkPRXqU7w2KGbCjiskzH8wGExGK",
4421
- "rewardMint": "Gh9ZwEmdLJ8DscKNTkTqPbNwLNNBjuSzaG9Vp2KGtKJr",
4422
- "rewardTokenAccount": "6X9LbFxtvjGxBEgHiE3KLQjJtAqkThqrhCufLhrPfMEp"
4423
- },
4424
- "tokens": [
4425
- {
4426
- "symbol": "USDC",
4427
- "mintKey": "Gh9ZwEmdLJ8DscKNTkTqPbNwLNNBjuSzaG9Vp2KGtKJr",
4428
- "decimals": 6,
4429
- "usdPrecision": 2,
4430
- "tokenPrecision": 4,
4431
- "isStable": true,
4432
- "isVirtual": false,
4433
- "lazerId": 7,
4434
- "pythTicker": "Crypto.USDC/USD",
4435
- "pythPriceId": "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a",
4436
- "isToken2022": false
4437
- },
4438
- {
4439
- "symbol": "TSLA",
4440
- "mintKey": "ts1aDtA2pHaFrMRDcy5YsK6giEbrABDfv1PkQK21Kga",
4441
- "decimals": 9,
4442
- "usdPrecision": 2,
4443
- "tokenPrecision": 4,
4444
- "isStable": true,
4445
- "isVirtual": false,
4446
- "lazerId": 7,
4447
- "pythTicker": "Equity.US.TSLA/USD",
4448
- "pythPriceId": "0x16dad506d7db8da01c87581c87ca897a012a153557d4d578c3b9c9e1bc0632f1",
4449
- "isToken2022": true
4450
- },
4451
- {
4452
- "symbol": "NVDA",
4453
- "mintKey": "nvdtJJCvPEuULW33UkodP1WPyZBr3wZt4FTTEf8F5AY",
4454
- "decimals": 9,
4455
- "usdPrecision": 4,
4456
- "tokenPrecision": 4,
4457
- "isStable": false,
4458
- "isVirtual": false,
4459
- "lazerId": 182,
4460
- "pythTicker": "Equity.US.NVDA/USD",
4461
- "pythPriceId": "0xb1073854ed24cbc755dc527418f52b7d271f6cc967bbf8d8129112b18860a593",
4462
- "isToken2022": true
4463
- },
4464
- {
4465
- "symbol": "CRCL",
4466
- "mintKey": "crcSSShvEkSjtKsThPxW9rbdHD8aiTiM9w5zEZSzisM",
4467
- "decimals": 9,
4468
- "usdPrecision": 4,
4469
- "tokenPrecision": 4,
4470
- "isStable": false,
4471
- "isVirtual": false,
4472
- "lazerId": 182,
4473
- "pythTicker": "Equity.US.CRCL/USD",
4474
- "pythPriceId": "0x92b8527aabe59ea2b12230f7b532769b133ffb118dfbd48ff676f14b273f1365",
4475
- "isToken2022": true
4476
- },
4477
- {
4478
- "symbol": "MSTR",
4479
- "mintKey": "mstrRvtbGpUwSTVaNePMRDtepsNidLPtJ35WnNFubBY",
4480
- "decimals": 9,
4481
- "usdPrecision": 4,
4482
- "tokenPrecision": 4,
4483
- "isStable": false,
4484
- "isVirtual": false,
4485
- "lazerId": 182,
4486
- "pythTicker": "Equity.US.MSTR/USD",
4487
- "pythPriceId": "0xe1e80251e5f5184f2195008382538e847fafc36f751896889dd3d1b1f6111f09",
4488
- "isToken2022": true
4489
- },
4490
- {
4491
- "symbol": "SPY",
4492
- "mintKey": "spyK8TuzAF1iwcJtzysb7J5u8e4yymtpUMhVLZrKz2r",
4493
- "decimals": 9,
4494
- "usdPrecision": 4,
4495
- "tokenPrecision": 4,
4496
- "isStable": false,
4497
- "isVirtual": false,
4498
- "lazerId": 182,
4499
- "pythTicker": "Equity.US.SPY/USD",
4500
- "pythPriceId": "0x19e09bb805456ada3979a7d1cbb4b6d63babc3a0f8e8a9509f68afa5c4c11cd5",
4501
- "isToken2022": true
4502
- }
4503
- ],
4504
- "custodies": [
4505
- {
4506
- "custodyId": 0,
4507
- "custodyAccount": "A4RCSednDMqEpnV3BFdiDAJWyzT9QM2aNh9FCY8Pen94",
4508
- "tokenAccount": "8YjzXtURYgaPjWaBoK9AZ8dqBRVpTJayHFiHrZ9kkV3y",
4509
- "symbol": "USDC",
4510
- "mintKey": "Gh9ZwEmdLJ8DscKNTkTqPbNwLNNBjuSzaG9Vp2KGtKJr",
4511
- "decimals": 6,
4512
- "usdPrecision": 2,
4513
- "tokenPrecision": 4,
4514
- "isStable": true,
4515
- "isVirtual": false,
4516
- "intOracleAddress": "2KyAS1PZPhqaFyiiuTLc1uAjr2o3PH814MEpM9GNnvbs",
4517
- "extOracleAddress": "Dpw1EAVrSB1ibxiDQyTAW6Zip3J4Btk2x4SgApQCeFbX",
4518
- "lazerId": 7,
4519
- "pythTicker": "Crypto.USDC/USD",
4520
- "pythPriceId": "0xeaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a"
4521
- },
4522
- {
4523
- "custodyId": 2,
4524
- "custodyAccount": "4BtySgvArhrkCJntUSMmpjUK4ueNkocMkzJErmfL87At",
4525
- "tokenAccount": "J1fupKEMtyVzAk6ciMkfpgEeXfKQB6M5rgZYD2Ag3FVe",
4526
- "symbol": "TSLA",
4527
- "mintKey": "ts1aDtA2pHaFrMRDcy5YsK6giEbrABDfv1PkQK21Kga",
4528
- "decimals": 9,
4529
- "usdPrecision": 4,
4530
- "tokenPrecision": 4,
4531
- "isStable": false,
4532
- "isVirtual": false,
4533
- "intOracleAddress": "FkYwDMdt3bVQ9mEQdne2cQew7qZ1a5yBptn9JYhdeRgE",
4534
- "extOracleAddress": "E8WFH8brgP58arcuW2wwsPHiomYrSvrgWTsRLZLAEZUQ",
4535
- "lazerId": 1435,
4536
- "pythTicker": "Equity.US.TSLA/USD",
4537
- "pythPriceId": "0x16dad506d7db8da01c87581c87ca897a012a153557d4d578c3b9c9e1bc0632f1"
4538
- },
4539
- {
4540
- "custodyId": 2,
4541
- "custodyAccount": "2A3harPJCzK7kbnNnz81Aywu4Z3L98m7Ew39PZQ6jfDu",
4542
- "tokenAccount": "9qZ4w4p1QBGuDkf8WppVGjmNmjkwTcL6AVn8Y5YsdTad",
4543
- "symbol": "NVDA",
4544
- "mintKey": "nvdtJJCvPEuULW33UkodP1WPyZBr3wZt4FTTEf8F5AY",
4545
- "decimals": 9,
4546
- "usdPrecision": 4,
4547
- "tokenPrecision": 4,
4548
- "isStable": false,
4549
- "isVirtual": false,
4550
- "intOracleAddress": "6Ro3zps31WjvQtGRhrXde3DA3ty3wpmkMdiZRfTDWyb3",
4551
- "extOracleAddress": "2w1Tg1XTZbUib7srfRoStJ4v5JXVsK7roQEGMsMaGZFC",
4552
- "lazerId": 1314,
4553
- "pythTicker": "Equity.US.NVDA/USD",
4554
- "pythPriceId": "0xb1073854ed24cbc755dc527418f52b7d271f6cc967bbf8d8129112b18860a593"
4555
- },
4556
- {
4557
- "custodyId": 2,
4558
- "custodyAccount": "98jBsDwsc48Rz7kyzT3TKAsSAp52MbyU3YVhNHWDPrWB",
4559
- "tokenAccount": "HqE6qJw4jY82GqQwCN9yyiq5qCjzGsLjY7QTpUKdarTi",
4560
- "symbol": "CRCL",
4561
- "mintKey": "crcSSShvEkSjtKsThPxW9rbdHD8aiTiM9w5zEZSzisM",
4562
- "decimals": 9,
4563
- "usdPrecision": 4,
4564
- "tokenPrecision": 4,
4565
- "isStable": false,
4566
- "isVirtual": false,
4567
- "intOracleAddress": "BCdcrWG3MEZxK2NRDcf9e8pV7Unz5RAv8MQhh2ivmpdu",
4568
- "extOracleAddress": "7zWGncBP5aGTDmEK7Ej4GYwGc2kXFHZJZFxmq28ocCaG",
4569
- "lazerId": 1683,
4570
- "pythTicker": "Equity.US.CRCL/USD",
4571
- "pythPriceId": "0x92b8527aabe59ea2b12230f7b532769b133ffb118dfbd48ff676f14b273f1365"
4572
- },
4573
- {
4574
- "custodyId": 2,
4575
- "custodyAccount": "AGb19zsHtpJaHzLbBHThykVqdU2EjjYrqNxiTmRgAnNC",
4576
- "tokenAccount": "6fohYXoQggEkmNZVGmmEr3o82BXVUaAXWUTWpqsSFVqF",
4577
- "symbol": "MSTR",
4578
- "mintKey": "mstrRvtbGpUwSTVaNePMRDtepsNidLPtJ35WnNFubBY",
4579
- "decimals": 9,
4580
- "usdPrecision": 4,
4581
- "tokenPrecision": 4,
4582
- "isStable": false,
4583
- "isVirtual": false,
4584
- "intOracleAddress": "GYVGX3GvNr4peg1Ny8M5nouno8Hqq41VE9pwAbTzNTZV",
4585
- "extOracleAddress": "HJGvGyWrAXdZPG4Q7LNkkKja72FDkJW7ixuyg3u6vZyP",
4586
- "lazerId": 1717,
4587
- "pythTicker": "Equity.US.MSTR/USD",
4588
- "pythPriceId": "0xe1e80251e5f5184f2195008382538e847fafc36f751896889dd3d1b1f6111f09"
4589
- },
4590
- {
4591
- "custodyId": 2,
4592
- "custodyAccount": "5hteknd3WimjZFiFmgg6GsApKcGcviFuFwFMWJJMtQmv",
4593
- "tokenAccount": "A2RekSwbnveWi49AxkGRdKCMWg45G5RQLHoK66Yp1AcM",
4594
- "symbol": "SPY",
4595
- "mintKey": "spyK8TuzAF1iwcJtzysb7J5u8e4yymtpUMhVLZrKz2r",
4596
- "decimals": 9,
4597
- "usdPrecision": 4,
4598
- "tokenPrecision": 4,
4599
- "isStable": false,
4600
- "isVirtual": false,
4601
- "intOracleAddress": "A917cZb2WhPtaCuUKZ8wVEACfdCwKiZw5iKPp7Ya4NQL",
4602
- "extOracleAddress": "9owhtgrdLiUMAH9JKxYFt5pUY4Luy4EzzLhdcWPVuDyy",
4603
- "lazerId": 1398,
4604
- "pythTicker": "Equity.US.SPY/USD",
4605
- "pythPriceId": "0x19e09bb805456ada3979a7d1cbb4b6d63babc3a0f8e8a9509f68afa5c4c11cd5"
4606
- }
4607
- ],
4608
- "markets": []
4609
4476
  }
4610
4477
  ]
4611
4478
  }
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { BN } from "@coral-xyz/anchor";
2
3
  import { Mint } from "@solana/spl-token";
3
4
  import { CustodyAccount } from "./CustodyAccount";
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { BN } from "@coral-xyz/anchor";
2
3
  import { PublicKey } from "@solana/web3.js";
3
4
  import { ContractOraclePrice, Position } from "./types";
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { TokenStake, WithdrawStakeLog } from "./types";
2
3
  import { BN } from "@coral-xyz/anchor";
3
4
  import { PublicKey } from "@solana/web3.js";
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { BN } from "@coral-xyz/anchor";
2
3
  import { PublicKey } from "@solana/web3.js";
3
4
  import { TokenVault } from "./types";
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import { BN } from "@coral-xyz/anchor";
2
3
  import { Trading, VoltageStats } from "./types";
3
4
  import { PublicKey } from "@solana/web3.js";
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");