@xitadel-fi/sdk 0.1.8 → 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.
@@ -33,6 +33,15 @@ export declare class XitadelProgram {
33
33
  * @returns Transaction instruction for transferring manager authority
34
34
  */
35
35
  transferManager(currentManager: PublicKey, newManager: PublicKey): Promise<TransactionInstruction>;
36
+ /**
37
+ * Set circuit breaker (pause or unpause the program).
38
+ * Config must be V2 (manager + bump + paused). For legacy configs, run migrate_config first.
39
+ *
40
+ * @param manager The config manager's public key (must sign the transaction)
41
+ * @param paused True to activate circuit breaker (pause), false to deactivate (unpause)
42
+ * @returns Transaction instruction for set_circuit_breaker
43
+ */
44
+ setCircuitBreaker(manager: PublicKey, paused: boolean): Promise<TransactionInstruction>;
36
45
  /**
37
46
  * Helper method to get LTT configuration PDA
38
47
  * @param lttId The LTT ID (Pubkey)
@@ -79,6 +79,24 @@ class XitadelProgram {
79
79
  })
80
80
  .instruction();
81
81
  }
82
+ /**
83
+ * Set circuit breaker (pause or unpause the program).
84
+ * Config must be V2 (manager + bump + paused). For legacy configs, run migrate_config first.
85
+ *
86
+ * @param manager The config manager's public key (must sign the transaction)
87
+ * @param paused True to activate circuit breaker (pause), false to deactivate (unpause)
88
+ * @returns Transaction instruction for set_circuit_breaker
89
+ */
90
+ async setCircuitBreaker(manager, paused) {
91
+ const configPda = this.getConfigPda();
92
+ return this.program.methods
93
+ .setCircuitBreaker(paused)
94
+ .accountsPartial({
95
+ config: configPda,
96
+ manager,
97
+ })
98
+ .instruction();
99
+ }
82
100
  /**
83
101
  * Helper method to get LTT configuration PDA
84
102
  * @param lttId The LTT ID (Pubkey)
@@ -180,9 +198,11 @@ class XitadelProgram {
180
198
  const createInvestorLTTAtaIx = (0, spl_token_1.createAssociatedTokenAccountInstruction)(investor, investorLTTAta, investor, lttId);
181
199
  instructions.push(createInvestorLTTAtaIx);
182
200
  }
201
+ const configPda = this.getConfigPda();
183
202
  instructions.push(await this.program.methods
184
203
  .fundLtt(fundingAmount)
185
204
  .accountsPartial({
205
+ config: configPda,
186
206
  investor,
187
207
  lttConfiguration: lttConfigPda,
188
208
  fundingVaultAta,
@@ -207,9 +227,11 @@ class XitadelProgram {
207
227
  const lttConfigPda = this.getLTTConfigPda(lttId);
208
228
  const lttConfig = await this.program.account.lttConfiguration.fetch(lttConfigPda);
209
229
  const collateralVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.collateralTokenMint, lttConfigPda, true);
230
+ const configPda = this.getConfigPda();
210
231
  return this.program.methods
211
232
  .activateLiquidation(Buffer.from(signedReport))
212
233
  .accountsPartial({
234
+ config: configPda,
213
235
  lttConfiguration: lttConfigPda,
214
236
  priceFeed: pricefeed,
215
237
  signer: keeperBot,
@@ -237,9 +259,11 @@ class XitadelProgram {
237
259
  const lttConfigPda = this.getLTTConfigPda(lttId);
238
260
  const lttConfig = await this.program.account.lttConfiguration.fetch(lttConfigPda);
239
261
  const collateralVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.collateralTokenMint, lttConfigPda, true);
262
+ const configPda = this.getConfigPda();
240
263
  return this.program.methods
241
264
  .executeLiquidation(Buffer.from(signedReport))
242
265
  .accountsPartial({
266
+ config: configPda,
243
267
  priceFeed,
244
268
  lttConfiguration: lttConfigPda,
245
269
  signer: keeperBot,
@@ -275,9 +299,11 @@ class XitadelProgram {
275
299
  if (needsCreate) {
276
300
  instructions.push((0, spl_token_1.createAssociatedTokenAccountInstruction)(withdrawer, withdrawerCollateralAta, withdrawer, lttConfig.collateralTokenMint));
277
301
  }
302
+ const configPda = this.getConfigPda();
278
303
  instructions.push(await this.program.methods
279
304
  .withdrawCollateral(amount, Buffer.from(signedReport))
280
305
  .accountsPartial({
306
+ config: configPda,
281
307
  lttConfiguration: lttConfigPda,
282
308
  issuer: withdrawer,
283
309
  collateralVaultAta,
@@ -308,9 +334,11 @@ class XitadelProgram {
308
334
  const lttConfig = await this.program.account.lttConfiguration.fetch(lttConfigPda);
309
335
  const fundingVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.fundingTokenMint, lttConfigPda, true);
310
336
  const withdrawerFundingAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.fundingTokenMint, withdrawer, true);
337
+ const configPda = this.getConfigPda();
311
338
  return this.program.methods
312
339
  .withdrawUsdc(amount)
313
340
  .accountsPartial({
341
+ config: configPda,
314
342
  lttConfiguration: lttConfigPda,
315
343
  issuer: withdrawer,
316
344
  fundingVaultAta,
@@ -361,9 +389,11 @@ class XitadelProgram {
361
389
  if (investorCollateralAtaInfo == null) {
362
390
  instructions.push((0, spl_token_1.createAssociatedTokenAccountInstruction)(investor, investorCollateralAta, investor, lttConfig.collateralTokenMint));
363
391
  }
392
+ const configPda = this.getConfigPda();
364
393
  instructions.push(await this.program.methods
365
394
  .redeem(amount)
366
395
  .accountsPartial({
396
+ config: configPda,
367
397
  investor: investor,
368
398
  lttConfiguration: lttConfigPda,
369
399
  fundingVaultAta,
@@ -393,9 +423,11 @@ class XitadelProgram {
393
423
  const lttConfig = await this.program.account.lttConfiguration.fetch(lttConfigPda);
394
424
  const fundingVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.fundingTokenMint, lttConfigPda, true);
395
425
  const collateralVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.collateralTokenMint, lttConfigPda, true);
426
+ const configPda = this.getConfigPda();
396
427
  return this.program.methods
397
428
  .updateLttStatus()
398
429
  .accountsPartial({
430
+ config: configPda,
399
431
  lttConfiguration: lttConfigPda,
400
432
  fundingVaultAta,
401
433
  collateralVaultAta,
@@ -466,14 +498,12 @@ class XitadelProgram {
466
498
  if (positionNftAccountInfo == null) {
467
499
  instructions.push((0, spl_token_1.createAssociatedTokenAccountInstruction)(signer, positionNftAccount, lpAuthority, positionNftMint, spl_token_1.TOKEN_2022_PROGRAM_ID));
468
500
  }
469
- console.log('harvestVaultPositionNftAta', harvestVaultPositionNftAta.toBase58());
470
- console.log('harvestVaultFundingAta', harvestVaultFundingAta.toBase58());
471
- console.log('harvestVaultCollateralAta', harvestVaultCollateralAta.toBase58());
472
- console.log('positionNftAccount', positionNftAccount.toBase58());
501
+ const configPda = this.getConfigPda();
473
502
  // Add the main deactivate instruction
474
503
  instructions.push(await this.program.methods
475
504
  .deactivateLtt()
476
505
  .accountsPartial({
506
+ config: configPda,
477
507
  signer: signer,
478
508
  lttConfiguration: lttConfigPda,
479
509
  lpAuthority: lpAuthority,
@@ -609,9 +639,11 @@ class XitadelProgram {
609
639
  addresses: uniqueAddresses.slice(i, i + chunkSize),
610
640
  }));
611
641
  }
642
+ const configPda = this.getConfigPda();
612
643
  instructions.push(await this.program.methods
613
644
  .activateLtt()
614
645
  .accountsPartial({
646
+ config: configPda,
615
647
  signer: signer,
616
648
  lttConfiguration: lttConfigPda,
617
649
  lpAuthority,
@@ -695,9 +727,11 @@ class XitadelProgram {
695
727
  const [positionNftAccountB] = web3_js_1.PublicKey.findProgramAddressSync([constants_1.POSITION_NFT_ACCOUNT_SEED, positionNftMintB.toBuffer()], cpAmmProgramId);
696
728
  const collateralVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.collateralTokenMint, lttConfigPda, true);
697
729
  const fundingVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.fundingTokenMint, lttConfigPda, true);
730
+ const configPda = this.getConfigPda();
698
731
  const maturateIx = await this.program.methods
699
732
  .maturate()
700
733
  .accountsPartial({
734
+ config: configPda,
701
735
  signer,
702
736
  lpAuthority,
703
737
  lttConfiguration: lttConfigPda,
@@ -738,9 +772,11 @@ class XitadelProgram {
738
772
  const lttConfigPda = this.getLTTConfigPda(lttId);
739
773
  const lttConfig = await this.program.account.lttConfiguration.fetch(lttConfigPda);
740
774
  const collateralVaultAta = (0, spl_token_1.getAssociatedTokenAddressSync)(lttConfig.collateralTokenMint, lttConfigPda, true);
775
+ const configPda = this.getConfigPda();
741
776
  return this.program.methods
742
777
  .stopLiquidation(Buffer.from(signedReport))
743
778
  .accountsPartial({
779
+ config: configPda,
744
780
  lttConfiguration: lttConfigPda,
745
781
  signer: signer,
746
782
  priceFeed,
@@ -20,6 +20,24 @@
20
20
  18
21
21
  ],
22
22
  "accounts": [
23
+ {
24
+ "name": "config",
25
+ "pda": {
26
+ "seeds": [
27
+ {
28
+ "kind": "const",
29
+ "value": [
30
+ 99,
31
+ 111,
32
+ 110,
33
+ 102,
34
+ 105,
35
+ 103
36
+ ]
37
+ }
38
+ ]
39
+ }
40
+ },
23
41
  {
24
42
  "name": "ltt_configuration",
25
43
  "writable": true,
@@ -200,6 +218,24 @@
200
218
  92
201
219
  ],
202
220
  "accounts": [
221
+ {
222
+ "name": "config",
223
+ "pda": {
224
+ "seeds": [
225
+ {
226
+ "kind": "const",
227
+ "value": [
228
+ 99,
229
+ 111,
230
+ 110,
231
+ 102,
232
+ 105,
233
+ 103
234
+ ]
235
+ }
236
+ ]
237
+ }
238
+ },
203
239
  {
204
240
  "name": "signer",
205
241
  "writable": true,
@@ -837,6 +873,24 @@
837
873
  237
838
874
  ],
839
875
  "accounts": [
876
+ {
877
+ "name": "config",
878
+ "pda": {
879
+ "seeds": [
880
+ {
881
+ "kind": "const",
882
+ "value": [
883
+ 99,
884
+ 111,
885
+ 110,
886
+ 102,
887
+ 105,
888
+ 103
889
+ ]
890
+ }
891
+ ]
892
+ }
893
+ },
840
894
  {
841
895
  "name": "signer",
842
896
  "writable": true,
@@ -1109,7 +1163,8 @@
1109
1163
  }
1110
1164
  },
1111
1165
  {
1112
- "name": "position_nft_mint"
1166
+ "name": "position_nft_mint",
1167
+ "writable": true
1113
1168
  },
1114
1169
  {
1115
1170
  "name": "position_nft_account",
@@ -1548,6 +1603,24 @@
1548
1603
  124
1549
1604
  ],
1550
1605
  "accounts": [
1606
+ {
1607
+ "name": "config",
1608
+ "pda": {
1609
+ "seeds": [
1610
+ {
1611
+ "kind": "const",
1612
+ "value": [
1613
+ 99,
1614
+ 111,
1615
+ 110,
1616
+ 102,
1617
+ 105,
1618
+ 103
1619
+ ]
1620
+ }
1621
+ ]
1622
+ }
1623
+ },
1551
1624
  {
1552
1625
  "name": "signer",
1553
1626
  "writable": true,
@@ -1823,6 +1896,24 @@
1823
1896
  43
1824
1897
  ],
1825
1898
  "accounts": [
1899
+ {
1900
+ "name": "config",
1901
+ "pda": {
1902
+ "seeds": [
1903
+ {
1904
+ "kind": "const",
1905
+ "value": [
1906
+ 99,
1907
+ 111,
1908
+ 110,
1909
+ 102,
1910
+ 105,
1911
+ 103
1912
+ ]
1913
+ }
1914
+ ]
1915
+ }
1916
+ },
1826
1917
  {
1827
1918
  "name": "ltt_configuration",
1828
1919
  "writable": true,
@@ -2252,7 +2343,8 @@
2252
2343
  }
2253
2344
  },
2254
2345
  {
2255
- "name": "position_nft_mint"
2346
+ "name": "position_nft_mint",
2347
+ "writable": true
2256
2348
  },
2257
2349
  {
2258
2350
  "name": "harvest_vault_position_nft_ata",
@@ -2887,6 +2979,24 @@
2887
2979
  38
2888
2980
  ],
2889
2981
  "accounts": [
2982
+ {
2983
+ "name": "config",
2984
+ "pda": {
2985
+ "seeds": [
2986
+ {
2987
+ "kind": "const",
2988
+ "value": [
2989
+ 99,
2990
+ 111,
2991
+ 110,
2992
+ 102,
2993
+ 105,
2994
+ 103
2995
+ ]
2996
+ }
2997
+ ]
2998
+ }
2999
+ },
2890
3000
  {
2891
3001
  "name": "signer",
2892
3002
  "writable": true,
@@ -3200,10 +3310,12 @@
3200
3310
  "name": "token_b_mint",
3201
3311
  "docs": [
3202
3312
  "The mint of token b"
3203
- ]
3313
+ ],
3314
+ "writable": true
3204
3315
  },
3205
3316
  {
3206
- "name": "position_nft_mint"
3317
+ "name": "position_nft_mint",
3318
+ "writable": true
3207
3319
  },
3208
3320
  {
3209
3321
  "name": "position_nft_account",
@@ -3212,7 +3324,8 @@
3212
3324
  ]
3213
3325
  },
3214
3326
  {
3215
- "name": "position_nft_mint_b"
3327
+ "name": "position_nft_mint_b",
3328
+ "writable": true
3216
3329
  },
3217
3330
  {
3218
3331
  "name": "position_nft_account_b",
@@ -3255,6 +3368,24 @@
3255
3368
  225
3256
3369
  ],
3257
3370
  "accounts": [
3371
+ {
3372
+ "name": "config",
3373
+ "pda": {
3374
+ "seeds": [
3375
+ {
3376
+ "kind": "const",
3377
+ "value": [
3378
+ 99,
3379
+ 111,
3380
+ 110,
3381
+ 102,
3382
+ 105,
3383
+ 103
3384
+ ]
3385
+ }
3386
+ ]
3387
+ }
3388
+ },
3258
3389
  {
3259
3390
  "name": "investor",
3260
3391
  "writable": true,
@@ -4064,6 +4195,51 @@
4064
4195
  }
4065
4196
  ]
4066
4197
  },
4198
+ {
4199
+ "name": "set_circuit_breaker",
4200
+ "discriminator": [
4201
+ 135,
4202
+ 207,
4203
+ 46,
4204
+ 31,
4205
+ 152,
4206
+ 94,
4207
+ 123,
4208
+ 247
4209
+ ],
4210
+ "accounts": [
4211
+ {
4212
+ "name": "config",
4213
+ "writable": true,
4214
+ "pda": {
4215
+ "seeds": [
4216
+ {
4217
+ "kind": "const",
4218
+ "value": [
4219
+ 99,
4220
+ 111,
4221
+ 110,
4222
+ 102,
4223
+ 105,
4224
+ 103
4225
+ ]
4226
+ }
4227
+ ]
4228
+ }
4229
+ },
4230
+ {
4231
+ "name": "manager",
4232
+ "writable": true,
4233
+ "signer": true
4234
+ }
4235
+ ],
4236
+ "args": [
4237
+ {
4238
+ "name": "paused",
4239
+ "type": "bool"
4240
+ }
4241
+ ]
4242
+ },
4067
4243
  {
4068
4244
  "name": "stop_liquidation",
4069
4245
  "discriminator": [
@@ -4077,6 +4253,24 @@
4077
4253
  92
4078
4254
  ],
4079
4255
  "accounts": [
4256
+ {
4257
+ "name": "config",
4258
+ "pda": {
4259
+ "seeds": [
4260
+ {
4261
+ "kind": "const",
4262
+ "value": [
4263
+ 99,
4264
+ 111,
4265
+ 110,
4266
+ 102,
4267
+ 105,
4268
+ 103
4269
+ ]
4270
+ }
4271
+ ]
4272
+ }
4273
+ },
4080
4274
  {
4081
4275
  "name": "ltt_configuration",
4082
4276
  "writable": true,
@@ -4216,6 +4410,24 @@
4216
4410
  104
4217
4411
  ],
4218
4412
  "accounts": [
4413
+ {
4414
+ "name": "config",
4415
+ "pda": {
4416
+ "seeds": [
4417
+ {
4418
+ "kind": "const",
4419
+ "value": [
4420
+ 99,
4421
+ 111,
4422
+ 110,
4423
+ 102,
4424
+ 105,
4425
+ 103
4426
+ ]
4427
+ }
4428
+ ]
4429
+ }
4430
+ },
4219
4431
  {
4220
4432
  "name": "ltt_configuration",
4221
4433
  "writable": true,
@@ -4450,6 +4662,24 @@
4450
4662
  150
4451
4663
  ],
4452
4664
  "accounts": [
4665
+ {
4666
+ "name": "config",
4667
+ "pda": {
4668
+ "seeds": [
4669
+ {
4670
+ "kind": "const",
4671
+ "value": [
4672
+ 99,
4673
+ 111,
4674
+ 110,
4675
+ 102,
4676
+ 105,
4677
+ 103
4678
+ ]
4679
+ }
4680
+ ]
4681
+ }
4682
+ },
4453
4683
  {
4454
4684
  "name": "issuer",
4455
4685
  "writable": true,
@@ -4666,7 +4896,8 @@
4666
4896
  }
4667
4897
  },
4668
4898
  {
4669
- "name": "collateral_token_mint"
4899
+ "name": "collateral_token_mint",
4900
+ "writable": true
4670
4901
  },
4671
4902
  {
4672
4903
  "name": "chainlink_program"
@@ -4926,6 +5157,24 @@
4926
5157
  155
4927
5158
  ],
4928
5159
  "accounts": [
5160
+ {
5161
+ "name": "config",
5162
+ "pda": {
5163
+ "seeds": [
5164
+ {
5165
+ "kind": "const",
5166
+ "value": [
5167
+ 99,
5168
+ 111,
5169
+ 110,
5170
+ 102,
5171
+ 105,
5172
+ 103
5173
+ ]
5174
+ }
5175
+ ]
5176
+ }
5177
+ },
4929
5178
  {
4930
5179
  "name": "ltt_configuration",
4931
5180
  "writable": true,
@@ -5393,6 +5642,11 @@
5393
5642
  "code": 6039,
5394
5643
  "name": "InvalidVerifierAccount",
5395
5644
  "msg": "Invalid verifier account"
5645
+ },
5646
+ {
5647
+ "code": 6040,
5648
+ "name": "CircuitBreakerActive",
5649
+ "msg": "Circuit breaker is active - program is paused"
5396
5650
  }
5397
5651
  ],
5398
5652
  "types": [
@@ -5408,6 +5662,10 @@
5408
5662
  {
5409
5663
  "name": "bump",
5410
5664
  "type": "u8"
5665
+ },
5666
+ {
5667
+ "name": "paused",
5668
+ "type": "bool"
5411
5669
  }
5412
5670
  ]
5413
5671
  }
@@ -26,6 +26,24 @@ export type Xitadel = {
26
26
  18
27
27
  ];
28
28
  "accounts": [
29
+ {
30
+ "name": "config";
31
+ "pda": {
32
+ "seeds": [
33
+ {
34
+ "kind": "const";
35
+ "value": [
36
+ 99,
37
+ 111,
38
+ 110,
39
+ 102,
40
+ 105,
41
+ 103
42
+ ];
43
+ }
44
+ ];
45
+ };
46
+ },
29
47
  {
30
48
  "name": "lttConfiguration";
31
49
  "writable": true;
@@ -206,6 +224,24 @@ export type Xitadel = {
206
224
  92
207
225
  ];
208
226
  "accounts": [
227
+ {
228
+ "name": "config";
229
+ "pda": {
230
+ "seeds": [
231
+ {
232
+ "kind": "const";
233
+ "value": [
234
+ 99,
235
+ 111,
236
+ 110,
237
+ 102,
238
+ 105,
239
+ 103
240
+ ];
241
+ }
242
+ ];
243
+ };
244
+ },
209
245
  {
210
246
  "name": "signer";
211
247
  "writable": true;
@@ -843,6 +879,24 @@ export type Xitadel = {
843
879
  237
844
880
  ];
845
881
  "accounts": [
882
+ {
883
+ "name": "config";
884
+ "pda": {
885
+ "seeds": [
886
+ {
887
+ "kind": "const";
888
+ "value": [
889
+ 99,
890
+ 111,
891
+ 110,
892
+ 102,
893
+ 105,
894
+ 103
895
+ ];
896
+ }
897
+ ];
898
+ };
899
+ },
846
900
  {
847
901
  "name": "signer";
848
902
  "writable": true;
@@ -1116,6 +1170,7 @@ export type Xitadel = {
1116
1170
  },
1117
1171
  {
1118
1172
  "name": "positionNftMint";
1173
+ "writable": true;
1119
1174
  },
1120
1175
  {
1121
1176
  "name": "positionNftAccount";
@@ -1554,6 +1609,24 @@ export type Xitadel = {
1554
1609
  124
1555
1610
  ];
1556
1611
  "accounts": [
1612
+ {
1613
+ "name": "config";
1614
+ "pda": {
1615
+ "seeds": [
1616
+ {
1617
+ "kind": "const";
1618
+ "value": [
1619
+ 99,
1620
+ 111,
1621
+ 110,
1622
+ 102,
1623
+ 105,
1624
+ 103
1625
+ ];
1626
+ }
1627
+ ];
1628
+ };
1629
+ },
1557
1630
  {
1558
1631
  "name": "signer";
1559
1632
  "writable": true;
@@ -1829,6 +1902,24 @@ export type Xitadel = {
1829
1902
  43
1830
1903
  ];
1831
1904
  "accounts": [
1905
+ {
1906
+ "name": "config";
1907
+ "pda": {
1908
+ "seeds": [
1909
+ {
1910
+ "kind": "const";
1911
+ "value": [
1912
+ 99,
1913
+ 111,
1914
+ 110,
1915
+ 102,
1916
+ 105,
1917
+ 103
1918
+ ];
1919
+ }
1920
+ ];
1921
+ };
1922
+ },
1832
1923
  {
1833
1924
  "name": "lttConfiguration";
1834
1925
  "writable": true;
@@ -2259,6 +2350,7 @@ export type Xitadel = {
2259
2350
  },
2260
2351
  {
2261
2352
  "name": "positionNftMint";
2353
+ "writable": true;
2262
2354
  },
2263
2355
  {
2264
2356
  "name": "harvestVaultPositionNftAta";
@@ -2893,6 +2985,24 @@ export type Xitadel = {
2893
2985
  38
2894
2986
  ];
2895
2987
  "accounts": [
2988
+ {
2989
+ "name": "config";
2990
+ "pda": {
2991
+ "seeds": [
2992
+ {
2993
+ "kind": "const";
2994
+ "value": [
2995
+ 99,
2996
+ 111,
2997
+ 110,
2998
+ 102,
2999
+ 105,
3000
+ 103
3001
+ ];
3002
+ }
3003
+ ];
3004
+ };
3005
+ },
2896
3006
  {
2897
3007
  "name": "signer";
2898
3008
  "writable": true;
@@ -3207,9 +3317,11 @@ export type Xitadel = {
3207
3317
  "docs": [
3208
3318
  "The mint of token b"
3209
3319
  ];
3320
+ "writable": true;
3210
3321
  },
3211
3322
  {
3212
3323
  "name": "positionNftMint";
3324
+ "writable": true;
3213
3325
  },
3214
3326
  {
3215
3327
  "name": "positionNftAccount";
@@ -3219,6 +3331,7 @@ export type Xitadel = {
3219
3331
  },
3220
3332
  {
3221
3333
  "name": "positionNftMintB";
3334
+ "writable": true;
3222
3335
  },
3223
3336
  {
3224
3337
  "name": "positionNftAccountB";
@@ -3261,6 +3374,24 @@ export type Xitadel = {
3261
3374
  225
3262
3375
  ];
3263
3376
  "accounts": [
3377
+ {
3378
+ "name": "config";
3379
+ "pda": {
3380
+ "seeds": [
3381
+ {
3382
+ "kind": "const";
3383
+ "value": [
3384
+ 99,
3385
+ 111,
3386
+ 110,
3387
+ 102,
3388
+ 105,
3389
+ 103
3390
+ ];
3391
+ }
3392
+ ];
3393
+ };
3394
+ },
3264
3395
  {
3265
3396
  "name": "investor";
3266
3397
  "writable": true;
@@ -4070,6 +4201,51 @@ export type Xitadel = {
4070
4201
  }
4071
4202
  ];
4072
4203
  },
4204
+ {
4205
+ "name": "setCircuitBreaker";
4206
+ "discriminator": [
4207
+ 135,
4208
+ 207,
4209
+ 46,
4210
+ 31,
4211
+ 152,
4212
+ 94,
4213
+ 123,
4214
+ 247
4215
+ ];
4216
+ "accounts": [
4217
+ {
4218
+ "name": "config";
4219
+ "writable": true;
4220
+ "pda": {
4221
+ "seeds": [
4222
+ {
4223
+ "kind": "const";
4224
+ "value": [
4225
+ 99,
4226
+ 111,
4227
+ 110,
4228
+ 102,
4229
+ 105,
4230
+ 103
4231
+ ];
4232
+ }
4233
+ ];
4234
+ };
4235
+ },
4236
+ {
4237
+ "name": "manager";
4238
+ "writable": true;
4239
+ "signer": true;
4240
+ }
4241
+ ];
4242
+ "args": [
4243
+ {
4244
+ "name": "paused";
4245
+ "type": "bool";
4246
+ }
4247
+ ];
4248
+ },
4073
4249
  {
4074
4250
  "name": "stopLiquidation";
4075
4251
  "discriminator": [
@@ -4083,6 +4259,24 @@ export type Xitadel = {
4083
4259
  92
4084
4260
  ];
4085
4261
  "accounts": [
4262
+ {
4263
+ "name": "config";
4264
+ "pda": {
4265
+ "seeds": [
4266
+ {
4267
+ "kind": "const";
4268
+ "value": [
4269
+ 99,
4270
+ 111,
4271
+ 110,
4272
+ 102,
4273
+ 105,
4274
+ 103
4275
+ ];
4276
+ }
4277
+ ];
4278
+ };
4279
+ },
4086
4280
  {
4087
4281
  "name": "lttConfiguration";
4088
4282
  "writable": true;
@@ -4222,6 +4416,24 @@ export type Xitadel = {
4222
4416
  104
4223
4417
  ];
4224
4418
  "accounts": [
4419
+ {
4420
+ "name": "config";
4421
+ "pda": {
4422
+ "seeds": [
4423
+ {
4424
+ "kind": "const";
4425
+ "value": [
4426
+ 99,
4427
+ 111,
4428
+ 110,
4429
+ 102,
4430
+ 105,
4431
+ 103
4432
+ ];
4433
+ }
4434
+ ];
4435
+ };
4436
+ },
4225
4437
  {
4226
4438
  "name": "lttConfiguration";
4227
4439
  "writable": true;
@@ -4456,6 +4668,24 @@ export type Xitadel = {
4456
4668
  150
4457
4669
  ];
4458
4670
  "accounts": [
4671
+ {
4672
+ "name": "config";
4673
+ "pda": {
4674
+ "seeds": [
4675
+ {
4676
+ "kind": "const";
4677
+ "value": [
4678
+ 99,
4679
+ 111,
4680
+ 110,
4681
+ 102,
4682
+ 105,
4683
+ 103
4684
+ ];
4685
+ }
4686
+ ];
4687
+ };
4688
+ },
4459
4689
  {
4460
4690
  "name": "issuer";
4461
4691
  "writable": true;
@@ -4673,6 +4903,7 @@ export type Xitadel = {
4673
4903
  },
4674
4904
  {
4675
4905
  "name": "collateralTokenMint";
4906
+ "writable": true;
4676
4907
  },
4677
4908
  {
4678
4909
  "name": "chainlinkProgram";
@@ -4932,6 +5163,24 @@ export type Xitadel = {
4932
5163
  155
4933
5164
  ];
4934
5165
  "accounts": [
5166
+ {
5167
+ "name": "config";
5168
+ "pda": {
5169
+ "seeds": [
5170
+ {
5171
+ "kind": "const";
5172
+ "value": [
5173
+ 99,
5174
+ 111,
5175
+ 110,
5176
+ 102,
5177
+ 105,
5178
+ 103
5179
+ ];
5180
+ }
5181
+ ];
5182
+ };
5183
+ },
4935
5184
  {
4936
5185
  "name": "lttConfiguration";
4937
5186
  "writable": true;
@@ -5399,6 +5648,11 @@ export type Xitadel = {
5399
5648
  "code": 6039;
5400
5649
  "name": "invalidVerifierAccount";
5401
5650
  "msg": "Invalid verifier account";
5651
+ },
5652
+ {
5653
+ "code": 6040;
5654
+ "name": "circuitBreakerActive";
5655
+ "msg": "Circuit breaker is active - program is paused";
5402
5656
  }
5403
5657
  ];
5404
5658
  "types": [
@@ -5414,6 +5668,10 @@ export type Xitadel = {
5414
5668
  {
5415
5669
  "name": "bump";
5416
5670
  "type": "u8";
5671
+ },
5672
+ {
5673
+ "name": "paused";
5674
+ "type": "bool";
5417
5675
  }
5418
5676
  ];
5419
5677
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": false,
3
3
  "name": "@xitadel-fi/sdk",
4
- "version": "0.1.8",
4
+ "version": "0.2.0",
5
5
  "description": "SDK for interacting with the Xitadel program",
6
6
  "main": "dist/sdk/src/index.js",
7
7
  "types": "dist/sdk/src/index.d.ts",