@elemental-stv-core/sdk 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/elemental-lend/accounts.d.ts +4 -1
  2. package/dist/elemental-lend/accounts.d.ts.map +1 -1
  3. package/dist/elemental-lend/accounts.js +34 -0
  4. package/dist/elemental-lend/accounts.js.map +1 -1
  5. package/dist/elemental-lend/constants.d.ts +5 -0
  6. package/dist/elemental-lend/constants.d.ts.map +1 -1
  7. package/dist/elemental-lend/constants.js +9 -1
  8. package/dist/elemental-lend/constants.js.map +1 -1
  9. package/dist/elemental-lend/instructions.d.ts +24 -4
  10. package/dist/elemental-lend/instructions.d.ts.map +1 -1
  11. package/dist/elemental-lend/instructions.js +49 -12
  12. package/dist/elemental-lend/instructions.js.map +1 -1
  13. package/dist/elemental-lend/jupiter-lend.d.ts +32 -0
  14. package/dist/elemental-lend/jupiter-lend.d.ts.map +1 -1
  15. package/dist/elemental-lend/jupiter-lend.js +65 -0
  16. package/dist/elemental-lend/jupiter-lend.js.map +1 -1
  17. package/dist/elemental-lend/pda.d.ts +1 -0
  18. package/dist/elemental-lend/pda.d.ts.map +1 -1
  19. package/dist/elemental-lend/pda.js +4 -0
  20. package/dist/elemental-lend/pda.js.map +1 -1
  21. package/dist/elemental-lend/types.d.ts +17 -1
  22. package/dist/elemental-lend/types.d.ts.map +1 -1
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +2 -2
  26. package/dist/index.js.map +1 -1
  27. package/dist/jlpd-strategy/accounts.d.ts +17 -0
  28. package/dist/jlpd-strategy/accounts.d.ts.map +1 -0
  29. package/dist/{jlp-strategy → jlpd-strategy}/accounts.js +50 -28
  30. package/dist/jlpd-strategy/accounts.js.map +1 -0
  31. package/dist/{jlp-strategy → jlpd-strategy}/constants.d.ts +20 -10
  32. package/dist/jlpd-strategy/constants.d.ts.map +1 -0
  33. package/dist/jlpd-strategy/constants.js +61 -0
  34. package/dist/jlpd-strategy/constants.js.map +1 -0
  35. package/dist/{jlp-strategy → jlpd-strategy}/index.d.ts +1 -0
  36. package/dist/jlpd-strategy/index.d.ts.map +1 -0
  37. package/dist/{jlp-strategy → jlpd-strategy}/index.js +1 -0
  38. package/dist/jlpd-strategy/index.js.map +1 -0
  39. package/dist/jlpd-strategy/instructions.d.ts +41 -0
  40. package/dist/jlpd-strategy/instructions.d.ts.map +1 -0
  41. package/dist/jlpd-strategy/instructions.js +64 -0
  42. package/dist/jlpd-strategy/instructions.js.map +1 -0
  43. package/dist/jlpd-strategy/pda.d.ts +8 -0
  44. package/dist/jlpd-strategy/pda.d.ts.map +1 -0
  45. package/dist/{jlp-strategy → jlpd-strategy}/pda.js +10 -3
  46. package/dist/jlpd-strategy/pda.js.map +1 -0
  47. package/dist/jlpd-strategy/types.d.ts +56 -0
  48. package/dist/jlpd-strategy/types.d.ts.map +1 -0
  49. package/dist/{jlp-strategy → jlpd-strategy}/types.js.map +1 -1
  50. package/dist/p-stv-core/accounts.d.ts +4 -1
  51. package/dist/p-stv-core/accounts.d.ts.map +1 -1
  52. package/dist/p-stv-core/accounts.js +55 -22
  53. package/dist/p-stv-core/accounts.js.map +1 -1
  54. package/dist/p-stv-core/constants.d.ts +10 -1
  55. package/dist/p-stv-core/constants.d.ts.map +1 -1
  56. package/dist/p-stv-core/constants.js +14 -2
  57. package/dist/p-stv-core/constants.js.map +1 -1
  58. package/dist/p-stv-core/events.d.ts.map +1 -1
  59. package/dist/p-stv-core/events.js +21 -9
  60. package/dist/p-stv-core/events.js.map +1 -1
  61. package/dist/p-stv-core/instructions.d.ts +32 -1
  62. package/dist/p-stv-core/instructions.d.ts.map +1 -1
  63. package/dist/p-stv-core/instructions.js +59 -6
  64. package/dist/p-stv-core/instructions.js.map +1 -1
  65. package/dist/p-stv-core/pda.d.ts +1 -0
  66. package/dist/p-stv-core/pda.d.ts.map +1 -1
  67. package/dist/p-stv-core/pda.js +4 -0
  68. package/dist/p-stv-core/pda.js.map +1 -1
  69. package/dist/p-stv-core/types.d.ts +20 -4
  70. package/dist/p-stv-core/types.d.ts.map +1 -1
  71. package/package.json +5 -5
  72. package/dist/jlp-strategy/accounts.d.ts +0 -11
  73. package/dist/jlp-strategy/accounts.d.ts.map +0 -1
  74. package/dist/jlp-strategy/accounts.js.map +0 -1
  75. package/dist/jlp-strategy/constants.d.ts.map +0 -1
  76. package/dist/jlp-strategy/constants.js +0 -47
  77. package/dist/jlp-strategy/constants.js.map +0 -1
  78. package/dist/jlp-strategy/index.d.ts.map +0 -1
  79. package/dist/jlp-strategy/index.js.map +0 -1
  80. package/dist/jlp-strategy/pda.d.ts +0 -5
  81. package/dist/jlp-strategy/pda.d.ts.map +0 -1
  82. package/dist/jlp-strategy/pda.js.map +0 -1
  83. package/dist/jlp-strategy/types.d.ts +0 -25
  84. package/dist/jlp-strategy/types.d.ts.map +0 -1
  85. /package/dist/{jlp-strategy → jlpd-strategy}/types.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"pda.js","sourceRoot":"","sources":["../../src/elemental-lend/pda.ts"],"names":[],"mappings":";;AAGA,oDAQC;AAED,gDAQC;AArBD,6CAA4C;AAC5C,2CAA6E;AAE7E,SAAgB,oBAAoB,CAClC,QAAmB,EACnB,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,+BAAmB,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAC1C,SAAS,CACV,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAChC,GAAc,EACd,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,yBAAa,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,EAC/B,SAAS,CACV,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"pda.js","sourceRoot":"","sources":["../../src/elemental-lend/pda.ts"],"names":[],"mappings":";;AAGA,oDAQC;AAED,gDAQC;AAED,gDASC;AAhCD,6CAA4C;AAC5C,2CAA2F;AAE3F,SAAgB,oBAAoB,CAClC,QAAmB,EACnB,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,+BAAmB,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAC1C,SAAS,CACV,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAChC,GAAc,EACd,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,yBAAa,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,EAC/B,SAAS,CACV,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAChC,aAAwB,EACxB,OAAkB,EAClB,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,wBAAY,EAAE,aAAa,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAC5D,SAAS,CACV,CAAC;AACJ,CAAC"}
@@ -7,6 +7,12 @@ export interface LendStrategyState extends StrategyStateHeader {
7
7
  protocols: PublicKey[];
8
8
  protocolCount: number;
9
9
  }
10
+ /** ManagerRole account — authorizes a manager for protocol instructions */
11
+ export interface ManagerRole {
12
+ strategyState: PublicKey;
13
+ manager: PublicKey;
14
+ bump: number;
15
+ }
10
16
  export type { StvPosition } from "../common/strategy-interface";
11
17
  export interface StrategyInitializedEvent {
12
18
  name: "StrategyInitialized";
@@ -93,5 +99,15 @@ export interface ProtocolRemovedEvent {
93
99
  protocolAccount: PublicKey;
94
100
  protocolCount: number;
95
101
  }
96
- export type LendEvent = StrategyInitializedEvent | StrategyUpdatedEvent | PositionInitializedEvent | LendDepositEvent | LendWithdrawEvent | AumUpdatedEvent | KvaultDepositEvent | KvaultWithdrawEvent | JupLendDepositEvent | JupLendWithdrawEvent | ProtocolAddedEvent | ProtocolRemovedEvent;
102
+ export interface ManagerAddedEvent {
103
+ name: "ManagerAdded";
104
+ strategyState: PublicKey;
105
+ manager: PublicKey;
106
+ }
107
+ export interface ManagerRemovedEvent {
108
+ name: "ManagerRemoved";
109
+ strategyState: PublicKey;
110
+ manager: PublicKey;
111
+ }
112
+ export type LendEvent = StrategyInitializedEvent | StrategyUpdatedEvent | PositionInitializedEvent | LendDepositEvent | LendWithdrawEvent | AumUpdatedEvent | KvaultDepositEvent | KvaultWithdrawEvent | JupLendDepositEvent | JupLendWithdrawEvent | ProtocolAddedEvent | ProtocolRemovedEvent | ManagerAddedEvent | ManagerRemovedEvent;
97
113
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/elemental-lend/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/elemental-lend/types.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * as common from "./common";
2
2
  export * as pStvCore from "./p-stv-core";
3
3
  export * as elementalLend from "./elemental-lend";
4
- export * as jlpStrategy from "./jlp-strategy";
4
+ export * as jlpdStrategy from "./jlpd-strategy";
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,QAAQ,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,QAAQ,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -33,9 +33,9 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.jlpStrategy = exports.elementalLend = exports.pStvCore = exports.common = void 0;
36
+ exports.jlpdStrategy = exports.elementalLend = exports.pStvCore = exports.common = void 0;
37
37
  exports.common = __importStar(require("./common"));
38
38
  exports.pStvCore = __importStar(require("./p-stv-core"));
39
39
  exports.elementalLend = __importStar(require("./elemental-lend"));
40
- exports.jlpStrategy = __importStar(require("./jlp-strategy"));
40
+ exports.jlpdStrategy = __importStar(require("./jlpd-strategy"));
41
41
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAmC;AACnC,yDAAyC;AACzC,kEAAkD;AAClD,8DAA8C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAmC;AACnC,yDAAyC;AACzC,kEAAkD;AAClD,gEAAgD"}
@@ -0,0 +1,17 @@
1
+ import { Connection, PublicKey } from "@solana/web3.js";
2
+ import type { StvPosition } from "../common/strategy-interface";
3
+ import { JlpdConfig, ManagerRole, JlpStrategyState } from "./types";
4
+ export declare function deserializeJlpdConfig(data: Buffer): JlpdConfig;
5
+ /** @deprecated Use deserializeJlpdConfig instead */
6
+ export declare const deserializeJlpVault: typeof deserializeJlpdConfig;
7
+ export declare function deserializeManagerRole(data: Buffer): ManagerRole;
8
+ export declare function deserializeJlpStrategyState(data: Buffer): JlpStrategyState;
9
+ export declare function deserializeJlpStvPosition(data: Buffer): StvPosition;
10
+ export declare function fetchJlpdConfig(connection: Connection, programId?: PublicKey): Promise<JlpdConfig>;
11
+ /** @deprecated Use fetchJlpdConfig instead */
12
+ export declare const fetchJlpVault: typeof fetchJlpdConfig;
13
+ export declare function fetchJlpStrategyState(connection: Connection, baseMint: PublicKey, programId?: PublicKey): Promise<JlpStrategyState>;
14
+ export declare function fetchJlpStvPosition(connection: Connection, stv: PublicKey, programId?: PublicKey): Promise<StvPosition>;
15
+ export declare function fetchAllJlpStrategyStates(connection: Connection, programId?: PublicKey): Promise<[PublicKey, JlpStrategyState][]>;
16
+ export declare function fetchManagersForConfig(connection: Connection, config: PublicKey, programId?: PublicKey): Promise<[PublicKey, ManagerRole][]>;
17
+ //# sourceMappingURL=accounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/jlpd-strategy/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAahE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAOpE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAwB9D;AAED,oDAAoD;AACpD,eAAO,MAAM,mBAAmB,8BAAwB,CAAC;AAEzD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAahE;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAsB1E;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CASnE;AAMD,wBAAsB,eAAe,CACnC,UAAU,EAAE,UAAU,EACtB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,UAAU,CAAC,CAKrB;AAED,8CAA8C;AAC9C,eAAO,MAAM,aAAa,wBAAkB,CAAC;AAE7C,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,SAAS,EACnB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,gBAAgB,CAAC,CAK3B;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,SAAS,EACd,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,WAAW,CAAC,CAKtB;AAMD,wBAAsB,yBAAyB,CAC7C,UAAU,EAAE,UAAU,EACtB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,CAAC,SAAS,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAQ1C;AAED,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,SAAS,EACjB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CASrC"}
@@ -1,12 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deserializeJlpVault = deserializeJlpVault;
3
+ exports.fetchJlpVault = exports.deserializeJlpVault = void 0;
4
+ exports.deserializeJlpdConfig = deserializeJlpdConfig;
5
+ exports.deserializeManagerRole = deserializeManagerRole;
4
6
  exports.deserializeJlpStrategyState = deserializeJlpStrategyState;
5
7
  exports.deserializeJlpStvPosition = deserializeJlpStvPosition;
6
- exports.fetchJlpVault = fetchJlpVault;
8
+ exports.fetchJlpdConfig = fetchJlpdConfig;
7
9
  exports.fetchJlpStrategyState = fetchJlpStrategyState;
8
10
  exports.fetchJlpStvPosition = fetchJlpStvPosition;
9
11
  exports.fetchAllJlpStrategyStates = fetchAllJlpStrategyStates;
12
+ exports.fetchManagersForConfig = fetchManagersForConfig;
10
13
  const buffer_1 = require("../common/buffer");
11
14
  const strategy_interface_1 = require("../common/strategy-interface");
12
15
  const constants_1 = require("./constants");
@@ -14,34 +17,43 @@ const pda_1 = require("./pda");
14
17
  // ---------------------------------------------------------------------------
15
18
  // Deserialization
16
19
  // ---------------------------------------------------------------------------
17
- function deserializeJlpVault(data) {
18
- if (data.length < constants_1.JLP_VAULT_SIZE) {
19
- throw new Error(`JLPVault data too short: ${data.length} < ${constants_1.JLP_VAULT_SIZE}`);
20
+ function deserializeJlpdConfig(data) {
21
+ if (data.length < constants_1.JLPD_CONFIG_SIZE) {
22
+ throw new Error(`JlpdConfig data too short: ${data.length} < ${constants_1.JLPD_CONFIG_SIZE}`);
20
23
  }
21
24
  const disc = data.subarray(0, 8);
22
- if (!disc.equals(constants_1.DISC_JLP_VAULT)) {
23
- throw new Error(`Invalid JLPVault discriminator`);
25
+ if (!disc.equals(constants_1.DISC_JLPD_CONFIG)) {
26
+ throw new Error(`Invalid JlpdConfig discriminator`);
24
27
  }
25
28
  const baseAssetMints = [];
26
29
  for (let i = 0; i < constants_1.NUM_ASSETS; i++) {
27
- baseAssetMints.push((0, buffer_1.readPubkey)(data, 136 + i * 32));
28
- }
29
- const jlxAssetMints = [];
30
- for (let i = 0; i < constants_1.NUM_ASSETS; i++) {
31
- jlxAssetMints.push((0, buffer_1.readPubkey)(data, 296 + i * 32));
30
+ baseAssetMints.push((0, buffer_1.readPubkey)(data, 72 + i * 32));
32
31
  }
33
32
  return {
34
33
  admin: (0, buffer_1.readPubkey)(data, 8),
35
- manager: (0, buffer_1.readPubkey)(data, 40),
36
- feeReceiver: (0, buffer_1.readPubkey)(data, 72),
37
- jlpMint: (0, buffer_1.readPubkey)(data, 104),
34
+ jlpMint: (0, buffer_1.readPubkey)(data, 40),
38
35
  baseAssetMints,
39
- jlxAssetMints,
40
- oracleStalenessTh: (0, buffer_1.readU64)(data, 456),
41
- flags: (0, buffer_1.readU16)(data, 464),
42
- jlpSlippageBps: (0, buffer_1.readU16)(data, 466),
43
- version: (0, buffer_1.readU8)(data, 468),
44
- bump: (0, buffer_1.readU8)(data, 469),
36
+ oracleStalenessTh: (0, buffer_1.readU64)(data, 232),
37
+ flags: (0, buffer_1.readU16)(data, 240),
38
+ jlpSlippageBps: (0, buffer_1.readU16)(data, 242),
39
+ version: (0, buffer_1.readU8)(data, 244),
40
+ bump: (0, buffer_1.readU8)(data, 245),
41
+ };
42
+ }
43
+ /** @deprecated Use deserializeJlpdConfig instead */
44
+ exports.deserializeJlpVault = deserializeJlpdConfig;
45
+ function deserializeManagerRole(data) {
46
+ if (data.length < constants_1.MANAGER_ROLE_SIZE) {
47
+ throw new Error(`ManagerRole data too short: ${data.length} < ${constants_1.MANAGER_ROLE_SIZE}`);
48
+ }
49
+ const disc = data.subarray(0, 8);
50
+ if (!disc.equals(constants_1.DISC_MANAGER_ROLE)) {
51
+ throw new Error(`Invalid ManagerRole discriminator`);
52
+ }
53
+ return {
54
+ config: (0, buffer_1.readPubkey)(data, 8),
55
+ manager: (0, buffer_1.readPubkey)(data, 40),
56
+ bump: (0, buffer_1.readU8)(data, 72),
45
57
  };
46
58
  }
47
59
  function deserializeJlpStrategyState(data) {
@@ -64,9 +76,7 @@ function deserializeJlpStrategyState(data) {
64
76
  version: (0, buffer_1.readU8)(data, 106),
65
77
  bump: (0, buffer_1.readU8)(data, 107),
66
78
  // Custom
67
- jlpVault: (0, buffer_1.readPubkey)(data, 112),
68
- jlMint: (0, buffer_1.readPubkey)(data, 144),
69
- baseLoaned: (0, buffer_1.readU64)(data, 176),
79
+ baseLoaned: (0, buffer_1.readU64)(data, 112),
70
80
  };
71
81
  }
72
82
  function deserializeJlpStvPosition(data) {
@@ -82,13 +92,15 @@ function deserializeJlpStvPosition(data) {
82
92
  // ---------------------------------------------------------------------------
83
93
  // Fetch Helpers
84
94
  // ---------------------------------------------------------------------------
85
- async function fetchJlpVault(connection, programId = constants_1.PROGRAM_ID) {
86
- const [pda] = (0, pda_1.findJlpVaultPda)(programId);
95
+ async function fetchJlpdConfig(connection, programId = constants_1.PROGRAM_ID) {
96
+ const [pda] = (0, pda_1.findJlpdConfigPda)(programId);
87
97
  const info = await connection.getAccountInfo(pda);
88
98
  if (!info)
89
- throw new Error("JLPVault account not found");
90
- return deserializeJlpVault(info.data);
99
+ throw new Error("JlpdConfig account not found");
100
+ return deserializeJlpdConfig(info.data);
91
101
  }
102
+ /** @deprecated Use fetchJlpdConfig instead */
103
+ exports.fetchJlpVault = fetchJlpdConfig;
92
104
  async function fetchJlpStrategyState(connection, baseMint, programId = constants_1.PROGRAM_ID) {
93
105
  const [pda] = (0, pda_1.findStrategyStatePda)(baseMint, programId);
94
106
  const info = await connection.getAccountInfo(pda);
@@ -115,4 +127,14 @@ async function fetchAllJlpStrategyStates(connection, programId = constants_1.PRO
115
127
  });
116
128
  return accounts.map((a) => [a.pubkey, deserializeJlpStrategyState(a.account.data)]);
117
129
  }
130
+ async function fetchManagersForConfig(connection, config, programId = constants_1.PROGRAM_ID) {
131
+ const accounts = await connection.getProgramAccounts(programId, {
132
+ filters: [
133
+ { dataSize: constants_1.MANAGER_ROLE_SIZE },
134
+ { memcmp: { offset: 0, bytes: constants_1.DISC_MANAGER_ROLE.toString("base64"), encoding: "base64" } },
135
+ { memcmp: { offset: 8, bytes: config.toBase58() } },
136
+ ],
137
+ });
138
+ return accounts.map((a) => [a.pubkey, deserializeManagerRole(a.account.data)]);
139
+ }
118
140
  //# sourceMappingURL=accounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/jlpd-strategy/accounts.ts"],"names":[],"mappings":"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"}
@@ -2,27 +2,37 @@ import { PublicKey } from "@solana/web3.js";
2
2
  export declare const PROGRAM_ID: PublicKey;
3
3
  export declare const PROGRAM_ID_MAINNET: PublicKey;
4
4
  export declare const PROGRAM_ID_DEVNET: PublicKey;
5
- export declare const JLP_VAULT_SEED: Buffer<ArrayBuffer>;
5
+ export declare const CONFIG_SEED: Buffer<ArrayBuffer>;
6
+ export declare const MANAGER_SEED: Buffer<ArrayBuffer>;
6
7
  export declare const STRATEGY_STATE_SEED: Buffer<ArrayBuffer>;
7
8
  export declare const POSITION_SEED: Buffer<ArrayBuffer>;
8
- export declare const DISC_JLP_VAULT: Buffer<ArrayBuffer>;
9
+ /** @deprecated Use CONFIG_SEED instead */
10
+ export declare const JLP_VAULT_SEED: Buffer<ArrayBuffer>;
11
+ export declare const DISC_JLPD_CONFIG: Buffer<ArrayBuffer>;
12
+ export declare const DISC_MANAGER_ROLE: Buffer<ArrayBuffer>;
9
13
  export declare const DISC_STRATEGY_STATE: Buffer<ArrayBuffer>;
10
14
  export declare const DISC_STV_POSITION: Buffer<ArrayBuffer>;
11
- export declare const IX_INIT_OR_UPDATE_JLP_VAULT: Buffer<ArrayBuffer>;
12
- export declare const IX_INIT_STRATEGY_STATE: Buffer<ArrayBuffer>;
13
- export declare const IX_UPDATE_STRATEGY_STATE: Buffer<ArrayBuffer>;
15
+ /** @deprecated Use DISC_JLPD_CONFIG instead */
16
+ export declare const DISC_JLP_VAULT: Buffer<ArrayBuffer>;
17
+ export declare const IX_INIT_OR_UPDATE_CONFIG: Buffer<ArrayBuffer>;
18
+ export declare const IX_INIT_OR_UPDATE_STRATEGY_STATE: Buffer<ArrayBuffer>;
14
19
  export declare const IX_INIT_POSITION: Buffer<ArrayBuffer>;
15
20
  export declare const IX_CLOSE_POSITION: Buffer<ArrayBuffer>;
16
21
  export declare const IX_DEPOSIT: Buffer<ArrayBuffer>;
17
22
  export declare const IX_WITHDRAW: Buffer<ArrayBuffer>;
18
23
  export declare const IX_UPDATE_AUM: Buffer<ArrayBuffer>;
19
- export declare const IX_JUP_EARN_DEPOSIT_WITHDRAW: Buffer<ArrayBuffer>;
20
- export declare const IX_MOVE_TO_FROM_VAULT: Buffer<ArrayBuffer>;
21
- export declare const IX_SWAP_JLX_TO_FROM_JLP: Buffer<ArrayBuffer>;
24
+ export declare const IX_SWAP_JLP: Buffer<ArrayBuffer>;
22
25
  export declare const IX_SETTLE_YIELD: Buffer<ArrayBuffer>;
23
- export declare const JLP_VAULT_SIZE = 472;
24
- export declare const STRATEGY_STATE_SIZE = 216;
26
+ export declare const IX_ADD_MANAGER: Buffer<ArrayBuffer>;
27
+ export declare const IX_REMOVE_MANAGER: Buffer<ArrayBuffer>;
28
+ /** @deprecated Use IX_INIT_OR_UPDATE_CONFIG instead */
29
+ export declare const IX_INIT_OR_UPDATE_JLP_VAULT: Buffer<ArrayBuffer>;
30
+ export declare const JLPD_CONFIG_SIZE = 272;
31
+ export declare const MANAGER_ROLE_SIZE = 80;
32
+ export declare const STRATEGY_STATE_SIZE = 160;
25
33
  export declare const STV_POSITION_SIZE = 56;
34
+ /** @deprecated Use JLPD_CONFIG_SIZE instead */
35
+ export declare const JLP_VAULT_SIZE = 272;
26
36
  export declare const FLAG_PAUSED = 1;
27
37
  export declare const FLAG_DEPOSITS_DISABLED = 2;
28
38
  export declare const FLAG_WITHDRAWALS_DISABLED = 4;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/jlpd-strategy/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,UAAU,WAAgE,CAAC;AACxF,eAAO,MAAM,kBAAkB,WAAa,CAAC;AAC7C,eAAO,MAAM,iBAAiB,WAAgE,CAAC;AAG/F,eAAO,MAAM,WAAW,qBAAwB,CAAC;AACjD,eAAO,MAAM,YAAY,qBAAyB,CAAC;AACnD,eAAO,MAAM,mBAAmB,qBAAgC,CAAC;AACjE,eAAO,MAAM,aAAa,qBAA0B,CAAC;AAErD,0CAA0C;AAC1C,eAAO,MAAM,cAAc,qBAAc,CAAC;AAI1C,eAAO,MAAM,gBAAgB,qBAAqD,CAAC;AAEnF,eAAO,MAAM,iBAAiB,qBAAuD,CAAC;AACtF,eAAO,MAAM,mBAAmB,qBAAqD,CAAC;AACtF,eAAO,MAAM,iBAAiB,qBAAqD,CAAC;AAEpF,+CAA+C;AAC/C,eAAO,MAAM,cAAc,qBAAmB,CAAC;AAG/C,eAAO,MAAM,wBAAwB,qBAAuD,CAAC;AAC7F,eAAO,MAAM,gCAAgC,qBAAkD,CAAC;AAChG,eAAO,MAAM,gBAAgB,qBAAkD,CAAC;AAChF,eAAO,MAAM,iBAAiB,qBAAiD,CAAC;AAChF,eAAO,MAAM,UAAU,qBAAsD,CAAC;AAC9E,eAAO,MAAM,WAAW,qBAAqD,CAAC;AAC9E,eAAO,MAAM,aAAa,qBAAqD,CAAC;AAChF,eAAO,MAAM,WAAW,qBAAwD,CAAC;AACjF,eAAO,MAAM,eAAe,qBAAkD,CAAC;AAE/E,eAAO,MAAM,cAAc,qBAAqD,CAAC;AAEjF,eAAO,MAAM,iBAAiB,qBAAmD,CAAC;AAElF,uDAAuD;AACvD,eAAO,MAAM,2BAA2B,qBAA2B,CAAC;AAGpE,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,+CAA+C;AAC/C,eAAO,MAAM,cAAc,MAAmB,CAAC;AAG/C,eAAO,MAAM,WAAW,IAAS,CAAC;AAClC,eAAO,MAAM,sBAAsB,IAAS,CAAC;AAC7C,eAAO,MAAM,yBAAyB,IAAS,CAAC;AAChD,eAAO,MAAM,iBAAiB,IAAS,CAAC;AACxC,eAAO,MAAM,uBAAuB,KAAS,CAAC;AAC9C,eAAO,MAAM,cAAc,KAAS,CAAC;AAGrC,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BPS_DENOMINATOR = exports.PPS_DECIMALS = exports.MAX_PERF_FEE_BPS = exports.MAX_MGMT_FEE_BPS = exports.NUM_ASSETS = exports.FLAG_TEST_MODE = exports.FLAG_REBALANCE_DISABLED = exports.FLAG_JLP_DISABLED = exports.FLAG_WITHDRAWALS_DISABLED = exports.FLAG_DEPOSITS_DISABLED = exports.FLAG_PAUSED = exports.JLP_VAULT_SIZE = exports.STV_POSITION_SIZE = exports.STRATEGY_STATE_SIZE = exports.MANAGER_ROLE_SIZE = exports.JLPD_CONFIG_SIZE = exports.IX_INIT_OR_UPDATE_JLP_VAULT = exports.IX_REMOVE_MANAGER = exports.IX_ADD_MANAGER = exports.IX_SETTLE_YIELD = exports.IX_SWAP_JLP = exports.IX_UPDATE_AUM = exports.IX_WITHDRAW = exports.IX_DEPOSIT = exports.IX_CLOSE_POSITION = exports.IX_INIT_POSITION = exports.IX_INIT_OR_UPDATE_STRATEGY_STATE = exports.IX_INIT_OR_UPDATE_CONFIG = exports.DISC_JLP_VAULT = exports.DISC_STV_POSITION = exports.DISC_STRATEGY_STATE = exports.DISC_MANAGER_ROLE = exports.DISC_JLPD_CONFIG = exports.JLP_VAULT_SEED = exports.POSITION_SEED = exports.STRATEGY_STATE_SEED = exports.MANAGER_SEED = exports.CONFIG_SEED = exports.PROGRAM_ID_DEVNET = exports.PROGRAM_ID_MAINNET = exports.PROGRAM_ID = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ exports.PROGRAM_ID = new web3_js_1.PublicKey("ELEM2bAobpZNuysfhyF28XGVjA1aTUwm6rPYyv1JX3oq");
6
+ exports.PROGRAM_ID_MAINNET = exports.PROGRAM_ID;
7
+ exports.PROGRAM_ID_DEVNET = new web3_js_1.PublicKey("AcVcAihjB9Z3Lg3ZiboWxni2sTzXUrrsF3unGX4ntn6p");
8
+ // PDA Seeds
9
+ exports.CONFIG_SEED = Buffer.from("config");
10
+ exports.MANAGER_SEED = Buffer.from("manager");
11
+ exports.STRATEGY_STATE_SEED = Buffer.from("strategy_state");
12
+ exports.POSITION_SEED = Buffer.from("position");
13
+ /** @deprecated Use CONFIG_SEED instead */
14
+ exports.JLP_VAULT_SEED = exports.CONFIG_SEED;
15
+ // Account discriminators (Anchor 8-byte)
16
+ // sha256("account:JlpdConfig")[..8]
17
+ exports.DISC_JLPD_CONFIG = Buffer.from([185, 146, 185, 28, 172, 71, 122, 38]);
18
+ // sha256("account:ManagerRole")[..8]
19
+ exports.DISC_MANAGER_ROLE = Buffer.from([37, 232, 100, 233, 170, 233, 219, 185]);
20
+ exports.DISC_STRATEGY_STATE = Buffer.from([83, 18, 224, 109, 174, 100, 39, 139]);
21
+ exports.DISC_STV_POSITION = Buffer.from([47, 212, 251, 176, 138, 160, 30, 87]);
22
+ /** @deprecated Use DISC_JLPD_CONFIG instead */
23
+ exports.DISC_JLP_VAULT = exports.DISC_JLPD_CONFIG;
24
+ // Instruction discriminators (Anchor 8-byte)
25
+ exports.IX_INIT_OR_UPDATE_CONFIG = Buffer.from([234, 24, 218, 120, 213, 149, 245, 213]);
26
+ exports.IX_INIT_OR_UPDATE_STRATEGY_STATE = Buffer.from([223, 7, 93, 99, 12, 44, 180, 255]);
27
+ exports.IX_INIT_POSITION = Buffer.from([197, 20, 10, 1, 97, 160, 177, 91]);
28
+ exports.IX_CLOSE_POSITION = Buffer.from([123, 134, 81, 0, 49, 68, 98, 98]);
29
+ exports.IX_DEPOSIT = Buffer.from([242, 35, 198, 137, 82, 225, 242, 182]);
30
+ exports.IX_WITHDRAW = Buffer.from([183, 18, 70, 156, 148, 109, 161, 34]);
31
+ exports.IX_UPDATE_AUM = Buffer.from([162, 40, 227, 16, 84, 169, 182, 185]);
32
+ exports.IX_SWAP_JLP = Buffer.from([229, 185, 136, 170, 210, 189, 172, 241]);
33
+ exports.IX_SETTLE_YIELD = Buffer.from([64, 28, 44, 24, 43, 204, 58, 215]);
34
+ // sha256("global:add_manager")[..8]
35
+ exports.IX_ADD_MANAGER = Buffer.from([125, 38, 192, 212, 101, 91, 179, 16]);
36
+ // sha256("global:remove_manager")[..8]
37
+ exports.IX_REMOVE_MANAGER = Buffer.from([150, 55, 157, 77, 128, 148, 7, 15]);
38
+ /** @deprecated Use IX_INIT_OR_UPDATE_CONFIG instead */
39
+ exports.IX_INIT_OR_UPDATE_JLP_VAULT = exports.IX_INIT_OR_UPDATE_CONFIG;
40
+ // Account sizes
41
+ exports.JLPD_CONFIG_SIZE = 272;
42
+ exports.MANAGER_ROLE_SIZE = 80;
43
+ exports.STRATEGY_STATE_SIZE = 160;
44
+ exports.STV_POSITION_SIZE = 56;
45
+ /** @deprecated Use JLPD_CONFIG_SIZE instead */
46
+ exports.JLP_VAULT_SIZE = exports.JLPD_CONFIG_SIZE;
47
+ // Flags
48
+ exports.FLAG_PAUSED = 0x0001;
49
+ exports.FLAG_DEPOSITS_DISABLED = 0x0002;
50
+ exports.FLAG_WITHDRAWALS_DISABLED = 0x0004;
51
+ exports.FLAG_JLP_DISABLED = 0x0008;
52
+ exports.FLAG_REBALANCE_DISABLED = 0x0010;
53
+ exports.FLAG_TEST_MODE = 0x0020;
54
+ // Limits
55
+ exports.NUM_ASSETS = 5;
56
+ exports.MAX_MGMT_FEE_BPS = 500;
57
+ exports.MAX_PERF_FEE_BPS = 3000;
58
+ var constants_1 = require("../common/constants");
59
+ Object.defineProperty(exports, "PPS_DECIMALS", { enumerable: true, get: function () { return constants_1.PPS_DECIMALS; } });
60
+ Object.defineProperty(exports, "BPS_DENOMINATOR", { enumerable: true, get: function () { return constants_1.BPS_DENOMINATOR; } });
61
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/jlpd-strategy/constants.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@ export * from "./constants";
2
2
  export * from "./types";
3
3
  export * from "./pda";
4
4
  export * from "./accounts";
5
+ export * from "./instructions";
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/jlpd-strategy/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
@@ -18,4 +18,5 @@ __exportStar(require("./constants"), exports);
18
18
  __exportStar(require("./types"), exports);
19
19
  __exportStar(require("./pda"), exports);
20
20
  __exportStar(require("./accounts"), exports);
21
+ __exportStar(require("./instructions"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jlpd-strategy/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,0CAAwB;AACxB,wCAAsB;AACtB,6CAA2B;AAC3B,iDAA+B"}
@@ -0,0 +1,41 @@
1
+ import { PublicKey, TransactionInstruction } from "@solana/web3.js";
2
+ export interface AddManagerArgs {
3
+ admin: PublicKey;
4
+ payer: PublicKey;
5
+ config: PublicKey;
6
+ managerRole: PublicKey;
7
+ manager: PublicKey;
8
+ systemProgram?: PublicKey;
9
+ }
10
+ /**
11
+ * Create an `add_manager` instruction for the JLPD Strategy program.
12
+ *
13
+ * Anchor instruction data: [8-byte disc, 32-byte manager pubkey]
14
+ *
15
+ * Accounts:
16
+ * 0. admin (signer)
17
+ * 1. payer (signer, writable)
18
+ * 2. config (writable — Anchor init needs writable config for bump read)
19
+ * 3. manager_role (writable — init)
20
+ * 4. system_program
21
+ */
22
+ export declare function createAddManagerIx(args: AddManagerArgs, programId?: PublicKey): TransactionInstruction;
23
+ export interface RemoveManagerArgs {
24
+ admin: PublicKey;
25
+ payer: PublicKey;
26
+ config: PublicKey;
27
+ managerRole: PublicKey;
28
+ }
29
+ /**
30
+ * Create a `remove_manager` instruction for the JLPD Strategy program.
31
+ *
32
+ * Anchor instruction data: [8-byte disc]
33
+ *
34
+ * Accounts:
35
+ * 0. admin (signer)
36
+ * 1. payer (writable — receives rent)
37
+ * 2. config
38
+ * 3. manager_role (writable — closed)
39
+ */
40
+ export declare function createRemoveManagerIx(args: RemoveManagerArgs, programId?: PublicKey): TransactionInstruction;
41
+ //# sourceMappingURL=instructions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/jlpd-strategy/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,sBAAsB,EAEvB,MAAM,iBAAiB,CAAC;AAWzB,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,SAAS,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,aAAa,CAAC,EAAE,SAAS,CAAC;CAC3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,cAAc,EACpB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CA0BxB;AAMD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,SAAS,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,iBAAiB,EACvB,SAAS,GAAE,SAAsB,GAChC,sBAAsB,CAiBxB"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createAddManagerIx = createAddManagerIx;
4
+ exports.createRemoveManagerIx = createRemoveManagerIx;
5
+ const web3_js_1 = require("@solana/web3.js");
6
+ const constants_1 = require("./constants");
7
+ /**
8
+ * Create an `add_manager` instruction for the JLPD Strategy program.
9
+ *
10
+ * Anchor instruction data: [8-byte disc, 32-byte manager pubkey]
11
+ *
12
+ * Accounts:
13
+ * 0. admin (signer)
14
+ * 1. payer (signer, writable)
15
+ * 2. config (writable — Anchor init needs writable config for bump read)
16
+ * 3. manager_role (writable — init)
17
+ * 4. system_program
18
+ */
19
+ function createAddManagerIx(args, programId = constants_1.PROGRAM_ID) {
20
+ const { admin, payer, config, managerRole, manager, systemProgram = web3_js_1.SystemProgram.programId, } = args;
21
+ // Anchor discriminator (8 bytes) + manager pubkey (32 bytes)
22
+ const data = Buffer.alloc(8 + 32);
23
+ constants_1.IX_ADD_MANAGER.copy(data, 0);
24
+ manager.toBuffer().copy(data, 8);
25
+ return new web3_js_1.TransactionInstruction({
26
+ keys: [
27
+ { pubkey: admin, isSigner: true, isWritable: false },
28
+ { pubkey: payer, isSigner: true, isWritable: true },
29
+ { pubkey: config, isSigner: false, isWritable: false },
30
+ { pubkey: managerRole, isSigner: false, isWritable: true },
31
+ { pubkey: systemProgram, isSigner: false, isWritable: false },
32
+ ],
33
+ programId,
34
+ data,
35
+ });
36
+ }
37
+ /**
38
+ * Create a `remove_manager` instruction for the JLPD Strategy program.
39
+ *
40
+ * Anchor instruction data: [8-byte disc]
41
+ *
42
+ * Accounts:
43
+ * 0. admin (signer)
44
+ * 1. payer (writable — receives rent)
45
+ * 2. config
46
+ * 3. manager_role (writable — closed)
47
+ */
48
+ function createRemoveManagerIx(args, programId = constants_1.PROGRAM_ID) {
49
+ const { admin, payer, config, managerRole } = args;
50
+ // Anchor discriminator only (8 bytes)
51
+ const data = Buffer.alloc(8);
52
+ constants_1.IX_REMOVE_MANAGER.copy(data, 0);
53
+ return new web3_js_1.TransactionInstruction({
54
+ keys: [
55
+ { pubkey: admin, isSigner: true, isWritable: false },
56
+ { pubkey: payer, isSigner: false, isWritable: true },
57
+ { pubkey: config, isSigner: false, isWritable: false },
58
+ { pubkey: managerRole, isSigner: false, isWritable: true },
59
+ ],
60
+ programId,
61
+ data,
62
+ });
63
+ }
64
+ //# sourceMappingURL=instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../src/jlpd-strategy/instructions.ts"],"names":[],"mappings":";;AAoCA,gDA6BC;AAwBD,sDAoBC;AA7GD,6CAIyB;AACzB,2CAIqB;AAerB;;;;;;;;;;;GAWG;AACH,SAAgB,kBAAkB,CAChC,IAAoB,EACpB,YAAuB,sBAAU;IAEjC,MAAM,EACJ,KAAK,EACL,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,aAAa,GAAG,uBAAa,CAAC,SAAS,GACxC,GAAG,IAAI,CAAC;IAET,6DAA6D;IAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAClC,0BAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7B,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAEjC,OAAO,IAAI,gCAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;YACpD,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YACnD,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACtD,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YAC1D,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;SAC9D;QACD,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAaD;;;;;;;;;;GAUG;AACH,SAAgB,qBAAqB,CACnC,IAAuB,EACvB,YAAuB,sBAAU;IAEjC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAEnD,sCAAsC;IACtC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,6BAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAEhC,OAAO,IAAI,gCAAsB,CAAC;QAChC,IAAI,EAAE;YACJ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE;YACpD,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;YACpD,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE;YACtD,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;SAC3D;QACD,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ export declare function findJlpdConfigPda(programId?: PublicKey): [PublicKey, number];
3
+ /** @deprecated Use findJlpdConfigPda instead */
4
+ export declare const findJlpVaultPda: typeof findJlpdConfigPda;
5
+ export declare function findManagerRolePda(config: PublicKey, manager: PublicKey, programId?: PublicKey): [PublicKey, number];
6
+ export declare function findStrategyStatePda(baseMint: PublicKey, programId?: PublicKey): [PublicKey, number];
7
+ export declare function findStvPositionPda(stv: PublicKey, programId?: PublicKey): [PublicKey, number];
8
+ //# sourceMappingURL=pda.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pda.d.ts","sourceRoot":"","sources":["../../src/jlpd-strategy/pda.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,wBAAgB,iBAAiB,CAC/B,SAAS,GAAE,SAAsB,GAChC,CAAC,SAAS,EAAE,MAAM,CAAC,CAErB;AAED,gDAAgD;AAChD,eAAO,MAAM,eAAe,0BAAoB,CAAC;AAEjD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,SAAS,EAClB,SAAS,GAAE,SAAsB,GAChC,CAAC,SAAS,EAAE,MAAM,CAAC,CAKrB;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,SAAS,EACnB,SAAS,GAAE,SAAsB,GAChC,CAAC,SAAS,EAAE,MAAM,CAAC,CAKrB;AAED,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,SAAS,EACd,SAAS,GAAE,SAAsB,GAChC,CAAC,SAAS,EAAE,MAAM,CAAC,CAKrB"}
@@ -1,12 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.findJlpVaultPda = findJlpVaultPda;
3
+ exports.findJlpVaultPda = void 0;
4
+ exports.findJlpdConfigPda = findJlpdConfigPda;
5
+ exports.findManagerRolePda = findManagerRolePda;
4
6
  exports.findStrategyStatePda = findStrategyStatePda;
5
7
  exports.findStvPositionPda = findStvPositionPda;
6
8
  const web3_js_1 = require("@solana/web3.js");
7
9
  const constants_1 = require("./constants");
8
- function findJlpVaultPda(programId = constants_1.PROGRAM_ID) {
9
- return web3_js_1.PublicKey.findProgramAddressSync([constants_1.JLP_VAULT_SEED], programId);
10
+ function findJlpdConfigPda(programId = constants_1.PROGRAM_ID) {
11
+ return web3_js_1.PublicKey.findProgramAddressSync([constants_1.CONFIG_SEED], programId);
12
+ }
13
+ /** @deprecated Use findJlpdConfigPda instead */
14
+ exports.findJlpVaultPda = findJlpdConfigPda;
15
+ function findManagerRolePda(config, manager, programId = constants_1.PROGRAM_ID) {
16
+ return web3_js_1.PublicKey.findProgramAddressSync([constants_1.MANAGER_SEED, config.toBuffer(), manager.toBuffer()], programId);
10
17
  }
11
18
  function findStrategyStatePda(baseMint, programId = constants_1.PROGRAM_ID) {
12
19
  return web3_js_1.PublicKey.findProgramAddressSync([constants_1.STRATEGY_STATE_SEED, baseMint.toBuffer()], programId);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pda.js","sourceRoot":"","sources":["../../src/jlpd-strategy/pda.ts"],"names":[],"mappings":";;;AAGA,8CAIC;AAKD,gDASC;AAED,oDAQC;AAED,gDAQC;AAzCD,6CAA4C;AAC5C,2CAAwG;AAExG,SAAgB,iBAAiB,CAC/B,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CAAC,CAAC,uBAAW,CAAC,EAAE,SAAS,CAAC,CAAC;AACpE,CAAC;AAED,gDAAgD;AACnC,QAAA,eAAe,GAAG,iBAAiB,CAAC;AAEjD,SAAgB,kBAAkB,CAChC,MAAiB,EACjB,OAAkB,EAClB,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,wBAAY,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EACrD,SAAS,CACV,CAAC;AACJ,CAAC;AAED,SAAgB,oBAAoB,CAClC,QAAmB,EACnB,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,+BAAmB,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAC1C,SAAS,CACV,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAChC,GAAc,EACd,YAAuB,sBAAU;IAEjC,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,yBAAa,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,EAC/B,SAAS,CACV,CAAC;AACJ,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { PublicKey } from "@solana/web3.js";
2
+ import BN from "bn.js";
3
+ import type { StrategyStateHeader } from "../common/strategy-interface";
4
+ /** JlpdConfig global config (272 bytes) */
5
+ export interface JlpdConfig {
6
+ admin: PublicKey;
7
+ jlpMint: PublicKey;
8
+ baseAssetMints: PublicKey[];
9
+ oracleStalenessTh: BN;
10
+ flags: number;
11
+ jlpSlippageBps: number;
12
+ version: number;
13
+ bump: number;
14
+ }
15
+ /** @deprecated Use JlpdConfig instead */
16
+ export type JLPVault = JlpdConfig;
17
+ /** ManagerRole PDA (80 bytes) — grants manager access to rebalance operations */
18
+ export interface ManagerRole {
19
+ config: PublicKey;
20
+ manager: PublicKey;
21
+ bump: number;
22
+ }
23
+ /** JLP StrategyState (160 bytes) — extends standard 104-byte header */
24
+ export interface JlpStrategyState extends StrategyStateHeader {
25
+ baseLoaned: BN;
26
+ }
27
+ export type { StvPosition } from "../common/strategy-interface";
28
+ export interface ConfigInitializedEvent {
29
+ name: "ConfigInitialized";
30
+ config: PublicKey;
31
+ admin: PublicKey;
32
+ jlpMint: PublicKey;
33
+ }
34
+ export interface ConfigUpdatedEvent {
35
+ name: "ConfigUpdated";
36
+ config: PublicKey;
37
+ oldAdmin: PublicKey;
38
+ newAdmin: PublicKey;
39
+ oldFlags: number;
40
+ newFlags: number;
41
+ oldJlpSlippageBps: number;
42
+ newJlpSlippageBps: number;
43
+ oldOracleStalenessTh: BN;
44
+ newOracleStalenessTh: BN;
45
+ }
46
+ export interface ManagerAddedEvent {
47
+ name: "ManagerAdded";
48
+ config: PublicKey;
49
+ manager: PublicKey;
50
+ }
51
+ export interface ManagerRemovedEvent {
52
+ name: "ManagerRemoved";
53
+ config: PublicKey;
54
+ manager: PublicKey;
55
+ }
56
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/jlpd-strategy/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,OAAO,CAAC;AACvB,OAAO,KAAK,EAAE,mBAAmB,EAAe,MAAM,8BAA8B,CAAC;AAMrF,2CAA2C;AAC3C,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,SAAS,CAAC;IACnB,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,iBAAiB,EAAE,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,yCAAyC;AACzC,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAElC,iFAAiF;AACjF,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,uEAAuE;AACvE,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB;IAC3D,UAAU,EAAE,EAAE,CAAC;CAChB;AAGD,YAAY,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAMhE,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,EAAE,CAAC;IACzB,oBAAoB,EAAE,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;CACpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/jlp-strategy/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/jlpd-strategy/types.ts"],"names":[],"mappings":""}