@win-trader/bindings 0.1.0 → 0.3.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.
@@ -5,56 +5,44 @@ export * from "@stellar/stellar-sdk";
5
5
  export * as contract from "@stellar/stellar-sdk/contract";
6
6
  export * as rpc from "@stellar/stellar-sdk/rpc";
7
7
  export declare const VaultError: {
8
- 1: {
8
+ 100: {
9
9
  message: string;
10
10
  };
11
- 2: {
11
+ 101: {
12
12
  message: string;
13
13
  };
14
- 3: {
14
+ 110: {
15
15
  message: string;
16
16
  };
17
- 4: {
17
+ 111: {
18
18
  message: string;
19
19
  };
20
- 5: {
20
+ 112: {
21
21
  message: string;
22
22
  };
23
- 6: {
23
+ 113: {
24
24
  message: string;
25
25
  };
26
- 7: {
26
+ 120: {
27
27
  message: string;
28
28
  };
29
- 8: {
29
+ 121: {
30
30
  message: string;
31
31
  };
32
- 9: {
32
+ 130: {
33
33
  message: string;
34
34
  };
35
- /**
36
- * `upgrade` called with no pending proposal.
37
- */
38
- 10: {
35
+ 131: {
39
36
  message: string;
40
37
  };
41
- /**
42
- * `upgrade` called before the proposal's timelock eta.
43
- */
44
- 11: {
38
+ 132: {
45
39
  message: string;
46
40
  };
47
- /**
48
- * `upgrade` called with a hash that differs from the proposal.
49
- */
50
- 12: {
41
+ 180: {
51
42
  message: string;
52
43
  };
53
44
  };
54
45
  export type Key = {
55
- tag: "Initialized";
56
- values: void;
57
- } | {
58
46
  tag: "ConfigManager";
59
47
  values: void;
60
48
  } | {
@@ -73,64 +61,6 @@ export type Key = {
73
61
  tag: "Version";
74
62
  values: void;
75
63
  };
76
- export interface OwnerTokensKey {
77
- index: u32;
78
- owner: string;
79
- }
80
- /**
81
- * Storage keys for the data associated with the enumerable extension of
82
- * `NonFungibleToken`
83
- */
84
- export type NFTEnumerableStorageKey = {
85
- tag: "TotalSupply";
86
- values: void;
87
- } | {
88
- tag: "OwnerTokens";
89
- values: readonly [OwnerTokensKey];
90
- } | {
91
- tag: "OwnerTokensIndex";
92
- values: readonly [u32];
93
- } | {
94
- tag: "GlobalTokens";
95
- values: readonly [u32];
96
- } | {
97
- tag: "GlobalTokensIndex";
98
- values: readonly [u32];
99
- };
100
- /**
101
- * Storage keys for the data associated with the consecutive extension of
102
- * `NonFungibleToken`
103
- */
104
- export type NFTConsecutiveStorageKey = {
105
- tag: "Approval";
106
- values: readonly [u32];
107
- } | {
108
- tag: "Owner";
109
- values: readonly [u32];
110
- } | {
111
- tag: "OwnershipBucket";
112
- values: readonly [u32];
113
- } | {
114
- tag: "BurnedToken";
115
- values: readonly [u32];
116
- };
117
- /**
118
- * Storage container for royalty information
119
- */
120
- export interface RoyaltyInfo {
121
- basis_points: u32;
122
- receiver: string;
123
- }
124
- /**
125
- * Storage keys for royalty data
126
- */
127
- export type NFTRoyaltiesStorageKey = {
128
- tag: "DefaultRoyalty";
129
- values: void;
130
- } | {
131
- tag: "TokenRoyalty";
132
- values: readonly [u32];
133
- };
134
64
  export declare const NonFungibleTokenError: {
135
65
  /**
136
66
  * Indicates a non-existent `token_id`.
@@ -226,887 +156,544 @@ export declare const NonFungibleTokenError: {
226
156
  message: string;
227
157
  };
228
158
  };
229
- export type NFTSequentialStorageKey = {
230
- tag: "TokenIdCounter";
231
- values: void;
232
- };
233
- /**
234
- * Storage container for token metadata
235
- */
236
- export interface Metadata {
237
- base_uri: string;
238
- name: string;
239
- symbol: string;
240
- }
241
- /**
242
- * Storage container for the token for which an approval is granted
243
- * and the ledger number at which this approval expires.
244
- */
245
- export interface ApprovalData {
246
- approved: string;
247
- live_until_ledger: u32;
248
- }
249
- /**
250
- * Storage keys for the data associated with `NonFungibleToken`
251
- */
252
- export type NFTStorageKey = {
253
- tag: "Owner";
254
- values: readonly [u32];
255
- } | {
256
- tag: "Balance";
257
- values: readonly [string];
258
- } | {
259
- tag: "Approval";
260
- values: readonly [u32];
261
- } | {
262
- tag: "ApprovalForAll";
263
- values: readonly [string, string];
264
- } | {
265
- tag: "Metadata";
266
- values: void;
267
- };
268
- /**
269
- * Hook types for modular compliance system.
270
- *
271
- * Each hook type represents a specific event or validation point
272
- * where compliance modules can be executed.
273
- */
274
- export type ComplianceHook = {
275
- tag: "Transferred";
276
- values: void;
277
- } | {
278
- tag: "Created";
279
- values: void;
280
- } | {
281
- tag: "Destroyed";
282
- values: void;
283
- } | {
284
- tag: "CanTransfer";
285
- values: void;
286
- } | {
287
- tag: "CanCreate";
288
- values: void;
289
- };
290
- export declare const ComplianceError: {
159
+ export declare const RWAError: {
291
160
  /**
292
- * Indicates a module is already registered for this hook.
161
+ * Indicates an error related to insufficient balance for the operation.
293
162
  */
294
- 360: {
163
+ 300: {
295
164
  message: string;
296
165
  };
297
166
  /**
298
- * Indicates a module is not registered for this hook.
167
+ * Indicates an error when an input must be >= 0.
299
168
  */
300
- 361: {
169
+ 301: {
301
170
  message: string;
302
171
  };
303
172
  /**
304
- * Indicates a module bound is exceeded.
173
+ * Indicates the address is frozen and cannot perform operations.
305
174
  */
306
- 362: {
175
+ 302: {
307
176
  message: string;
308
177
  };
309
178
  /**
310
- * Indicates a token is not bound to this compliance contract.
179
+ * Indicates insufficient free tokens (due to partial freezing).
311
180
  */
312
- 363: {
181
+ 303: {
313
182
  message: string;
314
183
  };
315
- };
316
- /**
317
- * Storage keys for the modular compliance contract.
318
- */
319
- export type ComplianceDataKey = {
320
- tag: "HookModules";
321
- values: readonly [ComplianceHook];
322
- };
323
- /**
324
- * Error codes for document management operations.
325
- */
326
- export declare const DocumentError: {
327
184
  /**
328
- * The specified document was not found.
185
+ * Indicates an identity cannot be verified.
329
186
  */
330
- 380: {
187
+ 304: {
331
188
  message: string;
332
189
  };
333
190
  /**
334
- * Maximum number of documents has been reached.
191
+ * Indicates the transfer does not comply with the compliance rules.
335
192
  */
336
- 381: {
193
+ 305: {
337
194
  message: string;
338
195
  };
339
196
  /**
340
- * The URI exceeds the maximum allowed length.
197
+ * Indicates the mint operation does not comply with the compliance rules.
341
198
  */
342
- 382: {
199
+ 306: {
343
200
  message: string;
344
201
  };
345
- };
346
- /**
347
- * Represents a document with its metadata.
348
- */
349
- export interface Document {
350
- /**
351
- * The hash of the document contents.
352
- */
353
- document_hash: Buffer;
354
202
  /**
355
- * Timestamp when the document was last modified.
356
- */
357
- timestamp: u64;
358
- /**
359
- * The URI where the document can be accessed.
360
- */
361
- uri: string;
362
- }
363
- /**
364
- * Storage keys for document management.
365
- */
366
- export type DocumentStorageKey = {
367
- tag: "Index";
368
- values: readonly [Buffer];
369
- } | {
370
- tag: "Bucket";
371
- values: readonly [u32];
372
- } | {
373
- tag: "Count";
374
- values: void;
375
- };
376
- export declare const ClaimIssuerError: {
203
+ * Indicates the compliance contract is not set.
204
+ */
205
+ 307: {
206
+ message: string;
207
+ };
377
208
  /**
378
- * Signature data length does not match the expected scheme.
209
+ * Indicates the onchain ID is not set.
379
210
  */
380
- 350: {
211
+ 308: {
381
212
  message: string;
382
213
  };
383
214
  /**
384
- * The provided key is empty.
215
+ * Indicates the version is not set.
385
216
  */
386
- 351: {
217
+ 309: {
387
218
  message: string;
388
219
  };
389
220
  /**
390
- * The key is already allowed for the specified topic.
221
+ * Indicates the claim topics and issuers contract is not set.
391
222
  */
392
- 352: {
223
+ 310: {
393
224
  message: string;
394
225
  };
395
226
  /**
396
- * The specified key was not found in the allowed keys.
227
+ * Indicates the identity registry storage contract is not set.
397
228
  */
398
- 353: {
229
+ 311: {
399
230
  message: string;
400
231
  };
401
232
  /**
402
- * The claim issuer is not allowed to sign claims about the specified
403
- * claim topic.
233
+ * Indicates the identity verifier contract is not set.
404
234
  */
405
- 354: {
235
+ 312: {
406
236
  message: string;
407
237
  };
408
238
  /**
409
- * Maximum limit exceeded (keys per topic or registries per key).
239
+ * Indicates the old account and new account have different identities.
410
240
  */
411
- 355: {
241
+ 313: {
412
242
  message: string;
413
243
  };
244
+ };
245
+ export declare const VaultTokenError: {
414
246
  /**
415
- * No signing keys found for the specified claim topic.
247
+ * Indicates access to uninitialized vault asset address.
416
248
  */
417
- 356: {
249
+ 400: {
418
250
  message: string;
419
251
  };
420
252
  /**
421
- * Invalid claim data encoding.
253
+ * Indicates that vault asset address is already set.
422
254
  */
423
- 357: {
255
+ 401: {
424
256
  message: string;
425
257
  };
426
258
  /**
427
- * Recovery of the Secp256k1 public key failed.
259
+ * Indicates that vault virtual decimals offset is already set.
428
260
  */
429
- 358: {
261
+ 402: {
430
262
  message: string;
431
263
  };
432
264
  /**
433
- * Indicates overflow when adding two values.
265
+ * Indicates the amount is not a valid vault assets value.
434
266
  */
435
- 359: {
436
- message: string;
437
- };
438
- };
439
- export interface SigningKey {
440
- public_key: Buffer;
441
- scheme: u32;
442
- }
443
- /**
444
- * Signature data for Ed25519 scheme.
445
- */
446
- export interface Ed25519SignatureData {
447
- public_key: Buffer;
448
- signature: Buffer;
449
- }
450
- /**
451
- * Storage keys for claim issuer key management.
452
- */
453
- export type ClaimIssuerStorageKey = {
454
- tag: "Topics";
455
- values: readonly [u32];
456
- } | {
457
- tag: "Pairs";
458
- values: readonly [SigningKey];
459
- } | {
460
- tag: "RevokedClaim";
461
- values: readonly [Buffer];
462
- } | {
463
- tag: "ClaimNonce";
464
- values: readonly [string, u32];
465
- };
466
- /**
467
- * Signature data for Secp256k1 scheme.
468
- */
469
- export interface Secp256k1SignatureData {
470
- public_key: Buffer;
471
- recovery_id: u32;
472
- signature: Buffer;
473
- }
474
- /**
475
- * Signature data for Secp256r1 scheme.
476
- */
477
- export interface Secp256r1SignatureData {
478
- public_key: Buffer;
479
- signature: Buffer;
480
- }
481
- export declare const ClaimsError: {
482
- /**
483
- * Claim ID does not exist.
484
- */
485
- 340: {
267
+ 403: {
486
268
  message: string;
487
269
  };
488
270
  /**
489
- * Claim Issuer cannot validate the claim (revocation, signature mismatch,
490
- * unauthorized signing key, etc.)
271
+ * Indicates the amount is not a valid vault shares value.
491
272
  */
492
- 341: {
273
+ 404: {
493
274
  message: string;
494
275
  };
495
- };
496
- /**
497
- * Represents a claim stored on-chain.
498
- */
499
- export interface Claim {
500
- /**
501
- * The claim data
502
- */
503
- data: Buffer;
504
- /**
505
- * The address of the claim issuer
506
- */
507
- issuer: string;
508
- /**
509
- * The signature scheme used
510
- */
511
- scheme: u32;
512
- /**
513
- * The cryptographic signature
514
- */
515
- signature: Buffer;
516
- /**
517
- * The claim topic (numeric identifier)
518
- */
519
- topic: u32;
520
- /**
521
- * Optional URI for additional information
522
- */
523
- uri: string;
524
- }
525
- /**
526
- * Storage keys for the data associated with Identity Claims.
527
- */
528
- export type ClaimsStorageKey = {
529
- tag: "Claim";
530
- values: readonly [Buffer];
531
- } | {
532
- tag: "ClaimsByTopic";
533
- values: readonly [u32];
534
- };
535
- /**
536
- * Storage keys for the data associated with `RWA` token
537
- */
538
- export type IdentityVerifierStorageKey = {
539
- tag: "ClaimTopicsAndIssuers";
540
- values: void;
541
- } | {
542
- tag: "IdentityRegistryStorage";
543
- values: void;
544
- };
545
- export declare const RWAError: {
546
276
  /**
547
- * Indicates an error related to insufficient balance for the operation.
277
+ * Attempted to deposit more assets than the max amount for address.
548
278
  */
549
- 300: {
279
+ 405: {
550
280
  message: string;
551
281
  };
552
282
  /**
553
- * Indicates an error when an input must be >= 0.
283
+ * Attempted to mint more shares than the max amount for address.
554
284
  */
555
- 301: {
285
+ 406: {
556
286
  message: string;
557
287
  };
558
288
  /**
559
- * Indicates the address is frozen and cannot perform operations.
289
+ * Attempted to withdraw more assets than the max amount for address.
560
290
  */
561
- 302: {
291
+ 407: {
562
292
  message: string;
563
293
  };
564
294
  /**
565
- * Indicates insufficient free tokens (due to partial freezing).
295
+ * Attempted to redeem more shares than the max amount for address.
566
296
  */
567
- 303: {
297
+ 408: {
568
298
  message: string;
569
299
  };
570
300
  /**
571
- * Indicates an identity cannot be verified.
301
+ * Maximum number of decimals offset exceeded
572
302
  */
573
- 304: {
303
+ 409: {
574
304
  message: string;
575
305
  };
576
306
  /**
577
- * Indicates the transfer does not comply with the compliance rules.
307
+ * Indicates overflow due to mathematical operations
578
308
  */
579
- 305: {
309
+ 410: {
580
310
  message: string;
581
311
  };
312
+ };
313
+ export declare const FungibleTokenError: {
582
314
  /**
583
- * Indicates the mint operation does not comply with the compliance rules.
315
+ * Indicates an error related to the current balance of account from which
316
+ * tokens are expected to be transferred.
584
317
  */
585
- 306: {
318
+ 100: {
586
319
  message: string;
587
320
  };
588
321
  /**
589
- * Indicates the compliance contract is not set.
322
+ * Indicates a failure with the allowance mechanism when a given spender
323
+ * doesn't have enough allowance.
590
324
  */
591
- 307: {
325
+ 101: {
592
326
  message: string;
593
327
  };
594
328
  /**
595
- * Indicates the onchain ID is not set.
329
+ * Indicates an invalid value for `live_until_ledger` when setting an
330
+ * allowance.
596
331
  */
597
- 308: {
332
+ 102: {
598
333
  message: string;
599
334
  };
600
335
  /**
601
- * Indicates the version is not set.
336
+ * Indicates an error when an input that must be >= 0
602
337
  */
603
- 309: {
338
+ 103: {
604
339
  message: string;
605
340
  };
606
341
  /**
607
- * Indicates the claim topics and issuers contract is not set.
342
+ * Indicates overflow when adding two values
608
343
  */
609
- 310: {
344
+ 104: {
610
345
  message: string;
611
346
  };
612
347
  /**
613
- * Indicates the identity registry storage contract is not set.
348
+ * Indicates access to uninitialized metadata
614
349
  */
615
- 311: {
350
+ 105: {
616
351
  message: string;
617
352
  };
618
353
  /**
619
- * Indicates the identity verifier contract is not set.
354
+ * Indicates that the operation would have caused `total_supply` to exceed
355
+ * the `cap`.
620
356
  */
621
- 312: {
357
+ 106: {
622
358
  message: string;
623
359
  };
624
360
  /**
625
- * Indicates the old account and new account have different identities.
361
+ * Indicates the supplied `cap` is not a valid cap value.
626
362
  */
627
- 313: {
363
+ 107: {
628
364
  message: string;
629
365
  };
630
- };
631
- export declare const ClaimTopicsAndIssuersError: {
632
366
  /**
633
- * Indicates a non-existent claim topic.
367
+ * Indicates the Cap was not set.
634
368
  */
635
- 370: {
369
+ 108: {
636
370
  message: string;
637
371
  };
638
372
  /**
639
- * Indicates a non-existent trusted issuer.
373
+ * Indicates the SAC address was not set.
640
374
  */
641
- 371: {
375
+ 109: {
642
376
  message: string;
643
377
  };
644
378
  /**
645
- * Indicates a claim topic already exists.
379
+ * Indicates a SAC address different than expected.
646
380
  */
647
- 372: {
381
+ 110: {
648
382
  message: string;
649
383
  };
650
384
  /**
651
- * Indicates a trusted issuer already exists.
385
+ * Indicates a missing function parameter in the SAC contract context.
652
386
  */
653
- 373: {
387
+ 111: {
654
388
  message: string;
655
389
  };
656
390
  /**
657
- * Indicates max claim topics limit is reached.
391
+ * Indicates an invalid function parameter in the SAC contract context.
658
392
  */
659
- 374: {
393
+ 112: {
660
394
  message: string;
661
395
  };
662
396
  /**
663
- * Indicates max trusted issuers limit is reached.
397
+ * The user is not allowed to perform this operation
664
398
  */
665
- 375: {
399
+ 113: {
666
400
  message: string;
667
401
  };
668
402
  /**
669
- * Indicates claim topics set provided for the issuer cannot be empty.
403
+ * The user is blocked and cannot perform this operation
670
404
  */
671
- 376: {
405
+ 114: {
672
406
  message: string;
673
407
  };
674
408
  };
675
409
  /**
676
- * Storage keys for the data associated with the claim topics and issuers
677
- * extension
410
+ * Storage container for token metadata
678
411
  */
679
- export type ClaimTopicsAndIssuersStorageKey = {
680
- tag: "ClaimTopics";
681
- values: void;
682
- } | {
683
- tag: "TrustedIssuers";
684
- values: void;
412
+ export interface Metadata {
413
+ base_uri: string;
414
+ name: string;
415
+ symbol: string;
416
+ }
417
+ /**
418
+ * Storage container for the token for which an approval is granted
419
+ * and the ledger number at which this approval expires.
420
+ */
421
+ export interface ApprovalData {
422
+ approved: string;
423
+ live_until_ledger: u32;
424
+ }
425
+ /**
426
+ * Storage keys for the data associated with `NonFungibleToken`
427
+ */
428
+ export type NFTStorageKey = {
429
+ tag: "Owner";
430
+ values: readonly [u32];
685
431
  } | {
686
- tag: "IssuerClaimTopics";
432
+ tag: "Balance";
687
433
  values: readonly [string];
688
434
  } | {
689
- tag: "ClaimTopicIssuers";
435
+ tag: "Approval";
690
436
  values: readonly [u32];
437
+ } | {
438
+ tag: "ApprovalForAll";
439
+ values: readonly [string, string];
440
+ } | {
441
+ tag: "Metadata";
442
+ values: void;
691
443
  };
692
444
  /**
693
- * Error codes for the Identity Registry Storage system.
445
+ * Hook types for modular compliance system.
446
+ *
447
+ * Each hook type represents a specific event or validation point
448
+ * where compliance modules can be executed.
694
449
  */
695
- export declare const IRSError: {
696
- /**
697
- * An identity already exists for the given account.
698
- */
699
- 320: {
700
- message: string;
701
- };
702
- /**
703
- * No identity found for the given account.
704
- */
705
- 321: {
706
- message: string;
707
- };
708
- /**
709
- * Country data not found at the specified index.
710
- */
711
- 322: {
450
+ export type ComplianceHook = {
451
+ tag: "Transferred";
452
+ values: void;
453
+ } | {
454
+ tag: "Created";
455
+ values: void;
456
+ } | {
457
+ tag: "Destroyed";
458
+ values: void;
459
+ } | {
460
+ tag: "CanTransfer";
461
+ values: void;
462
+ } | {
463
+ tag: "CanCreate";
464
+ values: void;
465
+ };
466
+ export declare const ComplianceError: {
467
+ /**
468
+ * Indicates a module is already registered for this hook.
469
+ */
470
+ 360: {
712
471
  message: string;
713
472
  };
714
473
  /**
715
- * Identity can't be with empty country data list.
474
+ * Indicates a module is not registered for this hook.
716
475
  */
717
- 323: {
476
+ 361: {
718
477
  message: string;
719
478
  };
720
479
  /**
721
- * The maximum number of country entries has been reached.
480
+ * Indicates a module bound is exceeded.
722
481
  */
723
- 324: {
482
+ 362: {
724
483
  message: string;
725
484
  };
726
485
  /**
727
- * Account has been recovered and cannot be used.
486
+ * Indicates a token is not bound to this compliance contract.
728
487
  */
729
- 325: {
488
+ 363: {
730
489
  message: string;
731
490
  };
491
+ };
492
+ export declare const ClaimIssuerError: {
732
493
  /**
733
- * Metadata has too many entries (exceeds MAX_METADATA_ENTRIES).
494
+ * Signature data length does not match the expected scheme.
734
495
  */
735
- 326: {
496
+ 350: {
736
497
  message: string;
737
498
  };
738
499
  /**
739
- * Metadata string value is too long (exceeds MAX_METADATA_STRING_LEN).
500
+ * The provided key is empty.
740
501
  */
741
- 327: {
502
+ 351: {
742
503
  message: string;
743
504
  };
744
- };
745
- /**
746
- * A country data containing the country relationship and optional metadata
747
- */
748
- export interface CountryData {
749
505
  /**
750
- * Type of country relationship
751
- */
752
- country: CountryRelation;
753
- /**
754
- * Optional metadata (e.g., visa type, validity period)
755
- */
756
- metadata: Option<Map<string, string>>;
757
- }
758
- /**
759
- * Represents the type of identity holder
760
- */
761
- export type IdentityType = {
762
- tag: "Individual";
763
- values: void;
764
- } | {
765
- tag: "Organization";
766
- values: void;
767
- };
768
- /**
769
- * Storage keys for the data associated with Identity Storage Registry.
770
- */
771
- export type IRSStorageKey = {
772
- tag: "Identity";
773
- values: readonly [string];
774
- } | {
775
- tag: "IdentityProfile";
776
- values: readonly [string];
777
- } | {
778
- tag: "RecoveredTo";
779
- values: readonly [string];
780
- };
781
- /**
782
- * Unified country relationship that can be either individual or organizational
783
- */
784
- export type CountryRelation = {
785
- tag: "Individual";
786
- values: readonly [IndividualCountryRelation];
787
- } | {
788
- tag: "Organization";
789
- values: readonly [OrganizationCountryRelation];
790
- };
791
- /**
792
- * Complete identity profile containing identity type and country data
793
- */
794
- export interface IdentityProfile {
795
- countries: Array<CountryData>;
796
- identity_type: IdentityType;
797
- }
798
- /**
799
- * Represents different types of country relationships for individuals
800
- * ISO 3166-1 numeric country code
801
- */
802
- export type IndividualCountryRelation = {
803
- tag: "Residence";
804
- values: readonly [u32];
805
- } | {
806
- tag: "Citizenship";
807
- values: readonly [u32];
808
- } | {
809
- tag: "SourceOfFunds";
810
- values: readonly [u32];
811
- } | {
812
- tag: "TaxResidency";
813
- values: readonly [u32];
814
- } | {
815
- tag: "Custom";
816
- values: readonly [string, u32];
817
- };
818
- /**
819
- * Represents different types of country relationships for organizations
820
- */
821
- export type OrganizationCountryRelation = {
822
- tag: "Incorporation";
823
- values: readonly [u32];
824
- } | {
825
- tag: "OperatingJurisdiction";
826
- values: readonly [u32];
827
- } | {
828
- tag: "TaxJurisdiction";
829
- values: readonly [u32];
830
- } | {
831
- tag: "SourceOfFunds";
832
- values: readonly [u32];
833
- } | {
834
- tag: "Custom";
835
- values: readonly [string, u32];
836
- };
837
- /**
838
- * Error codes for the Token Binder system.
839
- */
840
- export declare const TokenBinderError: {
506
+ * The key is already allowed for the specified topic.
507
+ */
508
+ 352: {
509
+ message: string;
510
+ };
841
511
  /**
842
- * The specified token was not found in the bound tokens list.
512
+ * The specified key was not found in the allowed keys.
843
513
  */
844
- 330: {
514
+ 353: {
845
515
  message: string;
846
516
  };
847
517
  /**
848
- * Attempted to bind a token that is already bound.
518
+ * The claim issuer is not allowed to sign claims about the specified
519
+ * claim topic.
849
520
  */
850
- 331: {
521
+ 354: {
851
522
  message: string;
852
523
  };
853
524
  /**
854
- * Total token capacity (MAX_TOKENS) has been reached.
525
+ * Maximum limit exceeded (keys per topic or registries per key).
855
526
  */
856
- 332: {
527
+ 355: {
857
528
  message: string;
858
529
  };
859
530
  /**
860
- * Batch bind size exceeded.
531
+ * No signing keys found for the specified claim topic.
861
532
  */
862
- 333: {
533
+ 356: {
863
534
  message: string;
864
535
  };
865
536
  /**
866
- * The batch contains duplicates.
537
+ * Invalid claim data encoding.
867
538
  */
868
- 334: {
539
+ 357: {
869
540
  message: string;
870
541
  };
871
- };
872
- /**
873
- * Storage keys for the token binder system.
874
- *
875
- * - Tokens are stored in buckets of 100 addresses each
876
- * - Each bucket is a `Vec<Address>` stored under its bucket index
877
- * - Total count is tracked separately
878
- * - When a token is unbound, the last token is moved to fill the gap
879
- * (swap-remove pattern)
880
- */
881
- export type TokenBinderStorageKey = {
882
- tag: "TokenBucket";
883
- values: readonly [u32];
884
- } | {
885
- tag: "TotalCount";
886
- values: void;
887
- };
888
- /**
889
- * Storage keys for the data associated with `RWA` token
890
- */
891
- export type RWAStorageKey = {
892
- tag: "AddressFrozen";
893
- values: readonly [string];
894
- } | {
895
- tag: "FrozenTokens";
896
- values: readonly [string];
897
- } | {
898
- tag: "Compliance";
899
- values: void;
900
- } | {
901
- tag: "OnchainId";
902
- values: void;
903
- } | {
904
- tag: "Version";
905
- values: void;
906
- } | {
907
- tag: "IdentityVerifier";
908
- values: void;
909
- };
910
- export declare const VaultTokenError: {
911
542
  /**
912
- * Indicates access to uninitialized vault asset address.
543
+ * Recovery of the Secp256k1 public key failed.
913
544
  */
914
- 400: {
545
+ 358: {
915
546
  message: string;
916
547
  };
917
548
  /**
918
- * Indicates that vault asset address is already set.
549
+ * Indicates overflow when adding two values.
919
550
  */
920
- 401: {
551
+ 359: {
921
552
  message: string;
922
553
  };
554
+ };
555
+ export declare const ClaimsError: {
923
556
  /**
924
- * Indicates that vault virtual decimals offset is already set.
557
+ * Claim ID does not exist.
925
558
  */
926
- 402: {
559
+ 340: {
927
560
  message: string;
928
561
  };
929
562
  /**
930
- * Indicates the amount is not a valid vault assets value.
563
+ * Claim Issuer cannot validate the claim (revocation, signature mismatch,
564
+ * unauthorized signing key, etc.)
931
565
  */
932
- 403: {
566
+ 341: {
933
567
  message: string;
934
568
  };
569
+ };
570
+ export declare const ClaimTopicsAndIssuersError: {
935
571
  /**
936
- * Indicates the amount is not a valid vault shares value.
572
+ * Indicates a non-existent claim topic.
937
573
  */
938
- 404: {
574
+ 370: {
939
575
  message: string;
940
576
  };
941
577
  /**
942
- * Attempted to deposit more assets than the max amount for address.
578
+ * Indicates a non-existent trusted issuer.
943
579
  */
944
- 405: {
580
+ 371: {
945
581
  message: string;
946
582
  };
947
583
  /**
948
- * Attempted to mint more shares than the max amount for address.
584
+ * Indicates a claim topic already exists.
949
585
  */
950
- 406: {
586
+ 372: {
951
587
  message: string;
952
588
  };
953
589
  /**
954
- * Attempted to withdraw more assets than the max amount for address.
590
+ * Indicates a trusted issuer already exists.
955
591
  */
956
- 407: {
592
+ 373: {
957
593
  message: string;
958
594
  };
959
595
  /**
960
- * Attempted to redeem more shares than the max amount for address.
596
+ * Indicates max claim topics limit is reached.
961
597
  */
962
- 408: {
598
+ 374: {
963
599
  message: string;
964
600
  };
965
601
  /**
966
- * Maximum number of decimals offset exceeded
602
+ * Indicates max trusted issuers limit is reached.
967
603
  */
968
- 409: {
604
+ 375: {
969
605
  message: string;
970
606
  };
971
607
  /**
972
- * Indicates overflow due to mathematical operations
608
+ * Indicates claim topics set provided for the issuer cannot be empty.
973
609
  */
974
- 410: {
610
+ 376: {
975
611
  message: string;
976
612
  };
977
613
  };
978
614
  /**
979
- * Storage keys for the data associated with the vault extension
615
+ * Error codes for the Identity Registry Storage system.
980
616
  */
981
- export type VaultStorageKey = {
982
- tag: "AssetAddress";
983
- values: void;
984
- } | {
985
- tag: "VirtualDecimalsOffset";
986
- values: void;
987
- };
988
- /**
989
- * Storage keys for the data associated with the allowlist extension
990
- */
991
- export type AllowListStorageKey = {
992
- tag: "Allowed";
993
- values: readonly [string];
994
- };
995
- /**
996
- * Storage keys for the data associated with the blocklist extension
997
- */
998
- export type BlockListStorageKey = {
999
- tag: "Blocked";
1000
- values: readonly [string];
1001
- };
1002
- export declare const FungibleTokenError: {
1003
- /**
1004
- * Indicates an error related to the current balance of account from which
1005
- * tokens are expected to be transferred.
1006
- */
1007
- 100: {
1008
- message: string;
1009
- };
1010
- /**
1011
- * Indicates a failure with the allowance mechanism when a given spender
1012
- * doesn't have enough allowance.
1013
- */
1014
- 101: {
1015
- message: string;
1016
- };
1017
- /**
1018
- * Indicates an invalid value for `live_until_ledger` when setting an
1019
- * allowance.
1020
- */
1021
- 102: {
1022
- message: string;
1023
- };
1024
- /**
1025
- * Indicates an error when an input that must be >= 0
1026
- */
1027
- 103: {
1028
- message: string;
1029
- };
1030
- /**
1031
- * Indicates overflow when adding two values
1032
- */
1033
- 104: {
1034
- message: string;
1035
- };
1036
- /**
1037
- * Indicates access to uninitialized metadata
1038
- */
1039
- 105: {
1040
- message: string;
1041
- };
1042
- /**
1043
- * Indicates that the operation would have caused `total_supply` to exceed
1044
- * the `cap`.
1045
- */
1046
- 106: {
1047
- message: string;
1048
- };
617
+ export declare const IRSError: {
1049
618
  /**
1050
- * Indicates the supplied `cap` is not a valid cap value.
619
+ * An identity already exists for the given account.
1051
620
  */
1052
- 107: {
621
+ 320: {
1053
622
  message: string;
1054
623
  };
1055
624
  /**
1056
- * Indicates the Cap was not set.
625
+ * No identity found for the given account.
1057
626
  */
1058
- 108: {
627
+ 321: {
1059
628
  message: string;
1060
629
  };
1061
630
  /**
1062
- * Indicates the SAC address was not set.
631
+ * Country data not found at the specified index.
1063
632
  */
1064
- 109: {
633
+ 322: {
1065
634
  message: string;
1066
635
  };
1067
636
  /**
1068
- * Indicates a SAC address different than expected.
637
+ * Identity can't be with empty country data list.
1069
638
  */
1070
- 110: {
639
+ 323: {
1071
640
  message: string;
1072
641
  };
1073
642
  /**
1074
- * Indicates a missing function parameter in the SAC contract context.
643
+ * The maximum number of country entries has been reached.
1075
644
  */
1076
- 111: {
645
+ 324: {
1077
646
  message: string;
1078
647
  };
1079
648
  /**
1080
- * Indicates an invalid function parameter in the SAC contract context.
649
+ * Account has been recovered and cannot be used.
1081
650
  */
1082
- 112: {
651
+ 325: {
1083
652
  message: string;
1084
653
  };
1085
654
  /**
1086
- * The user is not allowed to perform this operation
655
+ * Metadata has too many entries (exceeds MAX_METADATA_ENTRIES).
1087
656
  */
1088
- 113: {
657
+ 326: {
1089
658
  message: string;
1090
659
  };
1091
660
  /**
1092
- * The user is blocked and cannot perform this operation
661
+ * Metadata string value is too long (exceeds MAX_METADATA_STRING_LEN).
1093
662
  */
1094
- 114: {
663
+ 327: {
1095
664
  message: string;
1096
665
  };
1097
666
  };
1098
667
  /**
1099
- * Storage key for accessing the SAC address
668
+ * Storage keys for the data associated with `RWA` token
1100
669
  */
1101
- export type SACAdminGenericDataKey = {
1102
- tag: "Sac";
670
+ export type RWAStorageKey = {
671
+ tag: "AddressFrozen";
672
+ values: readonly [string];
673
+ } | {
674
+ tag: "FrozenTokens";
675
+ values: readonly [string];
676
+ } | {
677
+ tag: "Compliance";
678
+ values: void;
679
+ } | {
680
+ tag: "OnchainId";
681
+ values: void;
682
+ } | {
683
+ tag: "Version";
684
+ values: void;
685
+ } | {
686
+ tag: "IdentityVerifier";
1103
687
  values: void;
1104
688
  };
1105
689
  /**
1106
- * Storage key for accessing the SAC address
690
+ * Storage keys for the data associated with the vault extension
1107
691
  */
1108
- export type SACAdminWrapperDataKey = {
1109
- tag: "Sac";
692
+ export type VaultStorageKey = {
693
+ tag: "AssetAddress";
694
+ values: void;
695
+ } | {
696
+ tag: "VirtualDecimalsOffset";
1110
697
  values: void;
1111
698
  };
1112
699
  /**
@@ -1146,103 +733,472 @@ export interface AllowanceData {
1146
733
  live_until_ledger: u32;
1147
734
  }
1148
735
  /**
1149
- * Authoritative per-market state: the side aggregates, the funding indices,
1150
- * the funding EMA, and the market configuration.
1151
- *
1152
- * Soroban limits UDT field names to 30 characters, so where a doc glossary
1153
- * term is longer the field drops the redundant qualifier and its doc
1154
- * comment carries the full term (e.g. `receiver_backed_index_long` is the
1155
- * doc's `receiver_backed_payer_index` for the long side).
736
+ * Storage keys for the modular compliance contract.
737
+ */
738
+ export type ComplianceDataKey = {
739
+ tag: "HookModules";
740
+ values: readonly [ComplianceHook];
741
+ };
742
+ /**
743
+ * Error codes for document management operations.
744
+ */
745
+ export declare const DocumentError: {
746
+ /**
747
+ * The specified document was not found.
748
+ */
749
+ 380: {
750
+ message: string;
751
+ };
752
+ /**
753
+ * Maximum number of documents has been reached.
754
+ */
755
+ 381: {
756
+ message: string;
757
+ };
758
+ /**
759
+ * The URI exceeds the maximum allowed length.
760
+ */
761
+ 382: {
762
+ message: string;
763
+ };
764
+ };
765
+ export interface SigningKey {
766
+ public_key: Buffer;
767
+ scheme: u32;
768
+ }
769
+ /**
770
+ * Signature data for Ed25519 scheme.
771
+ */
772
+ export interface Ed25519SignatureData {
773
+ public_key: Buffer;
774
+ signature: Buffer;
775
+ }
776
+ /**
777
+ * Storage keys for claim issuer key management.
778
+ */
779
+ export type ClaimIssuerStorageKey = {
780
+ tag: "Topics";
781
+ values: readonly [u32];
782
+ } | {
783
+ tag: "Pairs";
784
+ values: readonly [SigningKey];
785
+ } | {
786
+ tag: "RevokedClaim";
787
+ values: readonly [Buffer];
788
+ } | {
789
+ tag: "ClaimNonce";
790
+ values: readonly [string, u32];
791
+ };
792
+ /**
793
+ * Signature data for Secp256k1 scheme.
794
+ */
795
+ export interface Secp256k1SignatureData {
796
+ public_key: Buffer;
797
+ recovery_id: u32;
798
+ signature: Buffer;
799
+ }
800
+ /**
801
+ * Signature data for Secp256r1 scheme.
802
+ */
803
+ export interface Secp256r1SignatureData {
804
+ public_key: Buffer;
805
+ signature: Buffer;
806
+ }
807
+ /**
808
+ * Represents a claim stored on-chain.
809
+ */
810
+ export interface Claim {
811
+ /**
812
+ * The claim data
813
+ */
814
+ data: Buffer;
815
+ /**
816
+ * The address of the claim issuer
817
+ */
818
+ issuer: string;
819
+ /**
820
+ * The signature scheme used
821
+ */
822
+ scheme: u32;
823
+ /**
824
+ * The cryptographic signature
825
+ */
826
+ signature: Buffer;
827
+ /**
828
+ * The claim topic (numeric identifier)
829
+ */
830
+ topic: u32;
831
+ /**
832
+ * Optional URI for additional information
833
+ */
834
+ uri: string;
835
+ }
836
+ /**
837
+ * Storage keys for the data associated with Identity Claims.
838
+ */
839
+ export type ClaimsStorageKey = {
840
+ tag: "Claim";
841
+ values: readonly [Buffer];
842
+ } | {
843
+ tag: "ClaimsByTopic";
844
+ values: readonly [u32];
845
+ };
846
+ /**
847
+ * Storage keys for the data associated with `RWA` token
848
+ */
849
+ export type IdentityVerifierStorageKey = {
850
+ tag: "ClaimTopicsAndIssuers";
851
+ values: void;
852
+ } | {
853
+ tag: "IdentityRegistryStorage";
854
+ values: void;
855
+ };
856
+ /**
857
+ * Storage keys for the data associated with the claim topics and issuers
858
+ * extension
859
+ */
860
+ export type ClaimTopicsAndIssuersStorageKey = {
861
+ tag: "ClaimTopics";
862
+ values: void;
863
+ } | {
864
+ tag: "TrustedIssuers";
865
+ values: void;
866
+ } | {
867
+ tag: "IssuerClaimTopics";
868
+ values: readonly [string];
869
+ } | {
870
+ tag: "ClaimTopicIssuers";
871
+ values: readonly [u32];
872
+ };
873
+ /**
874
+ * A country data containing the country relationship and optional metadata
875
+ */
876
+ export interface CountryData {
877
+ /**
878
+ * Type of country relationship
879
+ */
880
+ country: CountryRelation;
881
+ /**
882
+ * Optional metadata (e.g., visa type, validity period)
883
+ */
884
+ metadata: Option<Map<string, string>>;
885
+ }
886
+ /**
887
+ * Represents the type of identity holder
888
+ */
889
+ export type IdentityType = {
890
+ tag: "Individual";
891
+ values: void;
892
+ } | {
893
+ tag: "Organization";
894
+ values: void;
895
+ };
896
+ /**
897
+ * Storage keys for the data associated with Identity Storage Registry.
898
+ */
899
+ export type IRSStorageKey = {
900
+ tag: "Identity";
901
+ values: readonly [string];
902
+ } | {
903
+ tag: "IdentityProfile";
904
+ values: readonly [string];
905
+ } | {
906
+ tag: "RecoveredTo";
907
+ values: readonly [string];
908
+ };
909
+ /**
910
+ * Unified country relationship that can be either individual or organizational
911
+ */
912
+ export type CountryRelation = {
913
+ tag: "Individual";
914
+ values: readonly [IndividualCountryRelation];
915
+ } | {
916
+ tag: "Organization";
917
+ values: readonly [OrganizationCountryRelation];
918
+ };
919
+ /**
920
+ * Complete identity profile containing identity type and country data
921
+ */
922
+ export interface IdentityProfile {
923
+ countries: Array<CountryData>;
924
+ identity_type: IdentityType;
925
+ }
926
+ /**
927
+ * Represents different types of country relationships for individuals
928
+ * ISO 3166-1 numeric country code
929
+ */
930
+ export type IndividualCountryRelation = {
931
+ tag: "Residence";
932
+ values: readonly [u32];
933
+ } | {
934
+ tag: "Citizenship";
935
+ values: readonly [u32];
936
+ } | {
937
+ tag: "SourceOfFunds";
938
+ values: readonly [u32];
939
+ } | {
940
+ tag: "TaxResidency";
941
+ values: readonly [u32];
942
+ } | {
943
+ tag: "Custom";
944
+ values: readonly [string, u32];
945
+ };
946
+ /**
947
+ * Represents different types of country relationships for organizations
948
+ */
949
+ export type OrganizationCountryRelation = {
950
+ tag: "Incorporation";
951
+ values: readonly [u32];
952
+ } | {
953
+ tag: "OperatingJurisdiction";
954
+ values: readonly [u32];
955
+ } | {
956
+ tag: "TaxJurisdiction";
957
+ values: readonly [u32];
958
+ } | {
959
+ tag: "SourceOfFunds";
960
+ values: readonly [u32];
961
+ } | {
962
+ tag: "Custom";
963
+ values: readonly [string, u32];
964
+ };
965
+ /**
966
+ * Error codes for the Token Binder system.
967
+ */
968
+ export declare const TokenBinderError: {
969
+ /**
970
+ * The specified token was not found in the bound tokens list.
971
+ */
972
+ 330: {
973
+ message: string;
974
+ };
975
+ /**
976
+ * Attempted to bind a token that is already bound.
977
+ */
978
+ 331: {
979
+ message: string;
980
+ };
981
+ /**
982
+ * Total token capacity (MAX_TOKENS) has been reached.
983
+ */
984
+ 332: {
985
+ message: string;
986
+ };
987
+ /**
988
+ * Batch bind size exceeded.
989
+ */
990
+ 333: {
991
+ message: string;
992
+ };
993
+ /**
994
+ * The batch contains duplicates.
995
+ */
996
+ 334: {
997
+ message: string;
998
+ };
999
+ };
1000
+ export interface OwnerTokensKey {
1001
+ index: u32;
1002
+ owner: string;
1003
+ }
1004
+ /**
1005
+ * Storage keys for the data associated with the enumerable extension of
1006
+ * `NonFungibleToken`
1007
+ */
1008
+ export type NFTEnumerableStorageKey = {
1009
+ tag: "TotalSupply";
1010
+ values: void;
1011
+ } | {
1012
+ tag: "OwnerTokens";
1013
+ values: readonly [OwnerTokensKey];
1014
+ } | {
1015
+ tag: "OwnerTokensIndex";
1016
+ values: readonly [u32];
1017
+ } | {
1018
+ tag: "GlobalTokens";
1019
+ values: readonly [u32];
1020
+ } | {
1021
+ tag: "GlobalTokensIndex";
1022
+ values: readonly [u32];
1023
+ };
1024
+ /**
1025
+ * Storage keys for the data associated with the consecutive extension of
1026
+ * `NonFungibleToken`
1027
+ */
1028
+ export type NFTConsecutiveStorageKey = {
1029
+ tag: "Approval";
1030
+ values: readonly [u32];
1031
+ } | {
1032
+ tag: "Owner";
1033
+ values: readonly [u32];
1034
+ } | {
1035
+ tag: "OwnershipBucket";
1036
+ values: readonly [u32];
1037
+ } | {
1038
+ tag: "BurnedToken";
1039
+ values: readonly [u32];
1040
+ };
1041
+ /**
1042
+ * Storage container for royalty information
1043
+ */
1044
+ export interface RoyaltyInfo {
1045
+ basis_points: u32;
1046
+ receiver: string;
1047
+ }
1048
+ /**
1049
+ * Storage keys for royalty data
1050
+ */
1051
+ export type NFTRoyaltiesStorageKey = {
1052
+ tag: "DefaultRoyalty";
1053
+ values: void;
1054
+ } | {
1055
+ tag: "TokenRoyalty";
1056
+ values: readonly [u32];
1057
+ };
1058
+ export type NFTSequentialStorageKey = {
1059
+ tag: "TokenIdCounter";
1060
+ values: void;
1061
+ };
1062
+ /**
1063
+ * Represents a document with its metadata.
1064
+ */
1065
+ export interface Document {
1066
+ /**
1067
+ * The hash of the document contents.
1068
+ */
1069
+ document_hash: Buffer;
1070
+ /**
1071
+ * Timestamp when the document was last modified.
1072
+ */
1073
+ timestamp: u64;
1074
+ /**
1075
+ * The URI where the document can be accessed.
1076
+ */
1077
+ uri: string;
1078
+ }
1079
+ /**
1080
+ * Storage keys for document management.
1081
+ */
1082
+ export type DocumentStorageKey = {
1083
+ tag: "Index";
1084
+ values: readonly [Buffer];
1085
+ } | {
1086
+ tag: "Bucket";
1087
+ values: readonly [u32];
1088
+ } | {
1089
+ tag: "Count";
1090
+ values: void;
1091
+ };
1092
+ /**
1093
+ * Storage keys for the token binder system.
1094
+ *
1095
+ * - Tokens are stored in buckets of 100 addresses each
1096
+ * - Each bucket is a `Vec<Address>` stored under its bucket index
1097
+ * - Total count is tracked separately
1098
+ * - When a token is unbound, the last token is moved to fill the gap
1099
+ * (swap-remove pattern)
1100
+ */
1101
+ export type TokenBinderStorageKey = {
1102
+ tag: "TokenBucket";
1103
+ values: readonly [u32];
1104
+ } | {
1105
+ tag: "TotalCount";
1106
+ values: void;
1107
+ };
1108
+ /**
1109
+ * Storage keys for the data associated with the allowlist extension
1110
+ */
1111
+ export type AllowListStorageKey = {
1112
+ tag: "Allowed";
1113
+ values: readonly [string];
1114
+ };
1115
+ /**
1116
+ * Storage keys for the data associated with the blocklist extension
1117
+ */
1118
+ export type BlockListStorageKey = {
1119
+ tag: "Blocked";
1120
+ values: readonly [string];
1121
+ };
1122
+ /**
1123
+ * Storage key for accessing the SAC address
1124
+ */
1125
+ export type SACAdminGenericDataKey = {
1126
+ tag: "Sac";
1127
+ values: void;
1128
+ };
1129
+ /**
1130
+ * Storage key for accessing the SAC address
1131
+ */
1132
+ export type SACAdminWrapperDataKey = {
1133
+ tag: "Sac";
1134
+ values: void;
1135
+ };
1136
+ /**
1137
+ * SEP-40 asset identifier. Markets are quoted as `Other(market symbol)`.
1156
1138
  */
1139
+ export type Asset = {
1140
+ tag: "Stellar";
1141
+ values: readonly [string];
1142
+ } | {
1143
+ tag: "Other";
1144
+ values: readonly [string];
1145
+ };
1146
+ export interface PriceData {
1147
+ price: i128;
1148
+ timestamp: u64;
1149
+ }
1150
+ export interface StampedPrice {
1151
+ observed_at: u64;
1152
+ price: i128;
1153
+ }
1157
1154
  export interface Market {
1158
1155
  config: MarketConfig;
1159
- /**
1160
- * `INDEX_PRECISION`-scaled bps/day payer rate as of the last refresh.
1161
- */
1162
1156
  current_payer_rate: i128;
1163
1157
  current_payer_side: PayerSide;
1164
1158
  last_funding_checkpoint: u64;
1165
1159
  long: MarketSide;
1166
- /**
1167
- * Cumulative payer fee per unit of dominant-side size that is LP
1168
- * revenue on collection (§8.2).
1169
- */
1160
+ long_payer_remainders: RemainderGroup;
1170
1161
  lp_backed_index_long: i128;
1171
1162
  lp_backed_index_short: i128;
1172
- lp_payer_remainder: i128;
1173
- /**
1174
- * Sub-stroop carry of the receiver-liability accrual (§8.3).
1175
- */
1176
- pending_remainder: i128;
1177
- /**
1178
- * Cumulative payer fee per unit of dominant-side size whose collection
1179
- * restores cash backing an already-accrued receiver claim (§8.2).
1180
- */
1163
+ pending_receiver_funding: i128;
1181
1164
  receiver_backed_index_long: i128;
1182
1165
  receiver_backed_index_short: i128;
1183
- /**
1184
- * Cumulative funding credit per unit of light-side size (§8.2).
1185
- */
1186
1166
  receiver_index_long: i128;
1187
- receiver_index_remainder: i128;
1188
1167
  receiver_index_short: i128;
1189
- receiver_payer_remainder: i128;
1190
1168
  short: MarketSide;
1191
- /**
1192
- * §8.1 signed EMA of the instantaneous skew: a fraction of one at
1193
- * `INDEX_PRECISION` scale, positive when history says longs dominate.
1194
- * Decays toward the current skew with the global half-life.
1195
- */
1169
+ short_payer_remainders: RemainderGroup;
1196
1170
  skew_ema: i128;
1197
1171
  }
1172
+ export type Trigger = {
1173
+ tag: "None";
1174
+ values: void;
1175
+ } | {
1176
+ tag: "Attached";
1177
+ values: readonly [TriggerInstruction];
1178
+ };
1198
1179
  export interface LpConfig {
1199
- lp_request_delay: u64;
1180
+ lp_request_delay_seconds: u64;
1200
1181
  max_withdraw_utilization_bps: u32;
1201
1182
  min_deposit_nav_factor_bps: u32;
1202
1183
  }
1203
- /**
1204
- * Represents a single trader's open leveraged position.
1205
- */
1206
1184
  export interface Position {
1207
- /**
1208
- * Asset units at `PRICE_PRECISION`.
1209
- */
1210
1185
  base_exposure: i128;
1211
- borrow_debt: i128;
1212
- /**
1213
- * Cash owned by an optional-order executor.
1214
- */
1215
- execution_budget: i128;
1216
- funding_paid_to_lps_debt: i128;
1217
- funding_paid_to_receivers_debt: i128;
1218
- funding_received_debt: i128;
1186
+ borrow_index_snapshot: i128;
1219
1187
  id: u64;
1220
1188
  is_long: boolean;
1221
- last_increased_time: u64;
1189
+ lp_payer_index_snapshot: i128;
1222
1190
  market: string;
1191
+ opened_at: u64;
1223
1192
  owner: string;
1224
- /**
1225
- * Fixed gross capacity assigned when risk opens.
1226
- */
1193
+ pending_mutation_action_id: Option<u64>;
1194
+ receiver_index_snapshot: i128;
1195
+ receiver_payer_index_snapshot: i128;
1227
1196
  risk_units: i128;
1228
- /**
1229
- * USD notional at `PRICE_PRECISION`.
1230
- */
1231
1197
  size: i128;
1232
- /**
1233
- * Trigger price for the optional stop-loss order; `0` = none.
1234
- */
1235
- stop_loss: i128;
1236
- /**
1237
- * Trader-owned collateral recorded in contract state (the doc's
1238
- * "stored collateral"). Effective collateral — stored collateral after
1239
- * pending fees and funding credits — is always derived, never stored.
1240
- */
1198
+ stop_loss: Trigger;
1241
1199
  stored_collateral: i128;
1242
- /**
1243
- * Trigger price for the optional take-profit order; `0` = none.
1244
- */
1245
- take_profit: i128;
1200
+ stored_minimum_borrow_fee: i128;
1201
+ take_profit: Trigger;
1246
1202
  }
1247
1203
  export interface LpRequest {
1248
1204
  amount: i128;
@@ -1251,13 +1207,12 @@ export interface LpRequest {
1251
1207
  kind: LpRequestKind;
1252
1208
  owner: string;
1253
1209
  request_time: u64;
1210
+ /**
1211
+ * The resolve reward fixed when the request was made.
1212
+ */
1213
+ reward: i128;
1254
1214
  status: LpRequestStatus;
1255
1215
  }
1256
- /**
1257
- * Which side currently pays funding (§8.1: the side the blended integral
1258
- * skew points at — under the EMA this can be the *lighter* side for a
1259
- * while after the book flips). `None` when the blend is exactly zero.
1260
- */
1261
1216
  export type PayerSide = {
1262
1217
  tag: "None";
1263
1218
  values: void;
@@ -1281,122 +1236,67 @@ export type RiskState = {
1281
1236
  tag: "HardCap";
1282
1237
  values: void;
1283
1238
  };
1284
- /**
1285
- * A pending limit/stop entry order: the frozen `open_position` arguments
1286
- * plus a trigger condition and an expiry. Placing one only writes this
1287
- * record — no funds move. A keeper's `execute_entry_order` pulls the
1288
- * collateral via the owner's token allowance and opens the position
1289
- * exactly as a market open would.
1290
- */
1291
- export interface EntryOrder {
1292
- acceptable_price: i128;
1293
- collateral: i128;
1294
- execution_budget: i128;
1295
- /**
1296
- * Ledger timestamp after which the order is dead and swept on the next
1297
- * touch (user-configurable max TTL).
1298
- */
1299
- expires_at: u64;
1300
- id: u64;
1301
- is_long: boolean;
1302
- market: string;
1303
- owner: string;
1304
- size: i128;
1305
- stop_loss: i128;
1306
- take_profit: i128;
1307
- /**
1308
- * True → fill when price ≥ trigger (stop/breakout entry); false → fill
1309
- * when price ≤ trigger (limit/dip entry). Inferred at placement from
1310
- * the trigger vs. the current price.
1311
- */
1312
- trigger_above: boolean;
1313
- /**
1314
- * The oracle price at which the order becomes fillable.
1315
- */
1316
- trigger_price: i128;
1317
- }
1239
+ export type ActionKind = {
1240
+ tag: "MarketOpen";
1241
+ values: void;
1242
+ } | {
1243
+ tag: "LimitOpen";
1244
+ values: void;
1245
+ } | {
1246
+ tag: "Decrease";
1247
+ values: void;
1248
+ } | {
1249
+ tag: "Close";
1250
+ values: void;
1251
+ };
1318
1252
  export interface MarketSide {
1319
1253
  base_exposure: i128;
1254
+ hard_cap_payout_factor: i128;
1255
+ hard_cap_reference_pnl: i128;
1320
1256
  risk_state: RiskState;
1321
1257
  risk_units: i128;
1322
1258
  size_open_interest: i128;
1323
1259
  stored_collateral_total: i128;
1324
1260
  }
1325
- export interface RoundPrice {
1326
- price: i128;
1327
- symbol: string;
1261
+ export interface OpenPayload {
1262
+ acceptable_price: i128;
1263
+ expires_at: u64;
1264
+ is_long: boolean;
1265
+ size: i128;
1266
+ stop_loss: i128;
1267
+ submitted_collateral: i128;
1268
+ take_profit: i128;
1328
1269
  }
1329
- export interface OracleRound {
1330
- id: u64;
1331
- previous_id: u64;
1332
- previous_timestamp: u64;
1333
- prices: Array<RoundPrice>;
1334
- timestamp: u64;
1270
+ export interface ClosePayload {
1271
+ acceptable_price: i128;
1272
+ position_id: u64;
1335
1273
  }
1336
1274
  export interface GlobalConfig {
1337
1275
  base_borrow_rate_bps_day: i128;
1338
- /**
1339
- * §9.2 borrow-curve exponent, bps: 20_000 = u² (legacy quadratic),
1340
- * 10_000 = linear. Bounded to ≤ 100_000 (e ≤ 10) by validation.
1341
- */
1342
- borrow_exponent_bps: u32;
1343
- /**
1344
- * §8.1 half-life of the funding skew EMA, seconds (global: one memory
1345
- * horizon for every market).
1346
- */
1276
+ borrow_lp_revenue_share_bps: u32;
1277
+ config_timelock_seconds: u64;
1278
+ fee_lp_revenue_share_bps: u32;
1347
1279
  funding_half_life_seconds: u64;
1348
- hard_cap_factor_limit_bps: u32;
1349
- lp_revenue_share_bps: u32;
1280
+ global_hard_cap_limit_bps: u32;
1281
+ hard_cap_relatch_band_bps: u32;
1282
+ keeper_rewards: KeeperRewards;
1350
1283
  max_active_markets: u32;
1351
- max_adl_reward: i128;
1352
- max_insolvent_touch_reward: i128;
1284
+ max_market_order_lifetime: u64;
1285
+ max_order_lifetime_seconds: u64;
1286
+ max_price_age_seconds: u64;
1353
1287
  max_variable_borrow_bps_day: i128;
1354
- /**
1355
- * §11.2 minimum borrow charge per capitalization: an index delta at
1356
- * `INDEX_PRECISION` scale applied to the position's risk units
1357
- * (2e11 = 2 bps of notional at a 10% market risk factor). Zero
1358
- * disables the floor.
1359
- */
1360
- min_borrow_index_delta: i128;
1288
+ min_borrow_fee_seconds: u64;
1361
1289
  min_collateral: i128;
1362
1290
  min_position_lifetime: u64;
1363
- /**
1364
- * §11.1 share of a closing fee routed to the trader's referrer, carved
1365
- * from the protocol slice (keeper and LP shares are untouched). `0`
1366
- * disables referral accrual globally — a kill switch. Validated so
1367
- * `lp + keeper + referral ≤ BPS`, keeping the protocol remainder ≥ 0.
1368
- */
1369
- referral_fee_share_bps: u32;
1370
1291
  risk_capacity_limit_bps: u32;
1371
- risk_keeper_revenue_share_bps: u32;
1372
1292
  }
1373
1293
  export interface MarketConfig {
1374
1294
  adl_pnl_factor_bps: u32;
1375
- adl_reward_bps: u32;
1376
- /**
1377
- * §11.1 closing-fee tier when the close worsens skew.
1378
- */
1379
- close_fee_high_bps: u32;
1380
- /**
1381
- * §11.1 closing-fee tier when the close improves or preserves skew.
1382
- */
1383
- close_fee_low_bps: u32;
1295
+ close_pnl_fee_bps: u32;
1296
+ close_size_fee_bps: u32;
1384
1297
  hard_cap_pnl_factor_bps: u32;
1385
- /**
1386
- * Margin required to open or add risk (§12.3). Divides max leverage:
1387
- * a position may not be created closer to liquidation than this.
1388
- */
1389
1298
  initial_margin_bps: u32;
1390
- /**
1391
- * §8.1 weight of the instantaneous skew in the funding blend, in bps;
1392
- * the rest is the half-life EMA. `BPS` reproduces pure instant skew.
1393
- */
1394
1299
  instant_weight_bps: u32;
1395
- liquidation_reward_bps: u32;
1396
- /**
1397
- * Margin below which the position is liquidatable (§12.3). Must not
1398
- * exceed `initial_margin_bps`; the gap is the entry buffer.
1399
- */
1400
1300
  maintenance_margin_bps: u32;
1401
1301
  market_risk_factor_bps: u32;
1402
1302
  max_funding_rate_bps_day: i128;
@@ -1404,37 +1304,88 @@ export interface MarketConfig {
1404
1304
  max_long_size_open_interest: i128;
1405
1305
  max_short_base_exposure: i128;
1406
1306
  max_short_size_open_interest: i128;
1307
+ open_fee_bps: u32;
1308
+ order_execution_delay_seconds: u64;
1407
1309
  recovery_pnl_factor_bps: u32;
1408
1310
  warning_pnl_factor_bps: u32;
1409
1311
  }
1410
- /**
1411
- * Global safety thresholds for price validation.
1412
- */
1413
- export interface OracleConfig {
1414
- /**
1415
- * How long a cached aggregated price remains valid after the router
1416
- * fetch (in seconds). A cache hit also requires every source timestamp
1417
- * used for the cached median to remain within `staleness_threshold`.
1418
- * Must be > 0 and <= `staleness_threshold`.
1419
- */
1420
- cache_duration: u64;
1421
- /**
1422
- * Maximum allowed spread between oracle sources in basis points
1423
- * (e.g., 100 = 1%). Bounded at `crate::constants::MAX_DEVIATION_BPS_CEILING`.
1424
- */
1425
- max_deviation_bps: i128;
1426
- /**
1427
- * Minimum number of source responses that must agree within
1428
- * `max_deviation_bps` for OracleRouter to return a price. Floored at
1429
- * `crate::constants::MIN_REQUIRED_SOURCES_FLOOR`, ceilinged at
1430
- * `crate::constants::MAX_ORACLE_SOURCES`.
1431
- */
1432
- min_required_sources: u32;
1433
- /**
1434
- * Maximum age of an external SEP-40 price feed before it is rejected
1435
- * as stale (in seconds).
1436
- */
1437
- staleness_threshold: u64;
1312
+ export type ActionOutcome = {
1313
+ tag: "Executed";
1314
+ values: void;
1315
+ } | {
1316
+ tag: "Failed";
1317
+ values: void;
1318
+ } | {
1319
+ tag: "Cancelled";
1320
+ values: void;
1321
+ } | {
1322
+ tag: "Expired";
1323
+ values: void;
1324
+ } | {
1325
+ tag: "Superseded";
1326
+ values: void;
1327
+ } | {
1328
+ tag: "NotReady";
1329
+ values: void;
1330
+ } | {
1331
+ tag: "Pending";
1332
+ values: void;
1333
+ } | {
1334
+ tag: "RequiresLiquidation";
1335
+ values: void;
1336
+ };
1337
+ export type ActionPayload = {
1338
+ tag: "MarketOpen";
1339
+ values: readonly [OpenPayload];
1340
+ } | {
1341
+ tag: "LimitOpen";
1342
+ values: readonly [OpenPayload, TriggerCondition];
1343
+ } | {
1344
+ tag: "Decrease";
1345
+ values: readonly [DecreasePayload];
1346
+ } | {
1347
+ tag: "Close";
1348
+ values: readonly [ClosePayload];
1349
+ };
1350
+ export type FailureReason = {
1351
+ tag: "PriceBoundExceeded";
1352
+ values: void;
1353
+ } | {
1354
+ tag: "CapacityExceeded";
1355
+ values: void;
1356
+ } | {
1357
+ tag: "ExposureCapExceeded";
1358
+ values: void;
1359
+ } | {
1360
+ tag: "SideRestricted";
1361
+ values: void;
1362
+ } | {
1363
+ tag: "InsufficientCollateral";
1364
+ values: void;
1365
+ } | {
1366
+ tag: "UnpayableProfit";
1367
+ values: void;
1368
+ } | {
1369
+ tag: "PositionGone";
1370
+ values: void;
1371
+ } | {
1372
+ tag: "MarketPaused";
1373
+ values: void;
1374
+ } | {
1375
+ tag: "SizeTooSmall";
1376
+ values: void;
1377
+ };
1378
+ export interface KeeperRewards {
1379
+ adl: i128;
1380
+ close: i128;
1381
+ decrease: i128;
1382
+ expiry: i128;
1383
+ limit_order: i128;
1384
+ liquidation: i128;
1385
+ lp_resolve: i128;
1386
+ open: i128;
1387
+ sl: i128;
1388
+ tp: i128;
1438
1389
  }
1439
1390
  export type LpRequestKind = {
1440
1391
  tag: "Deposit";
@@ -1443,24 +1394,35 @@ export type LpRequestKind = {
1443
1394
  tag: "Withdrawal";
1444
1395
  values: void;
1445
1396
  };
1446
- /**
1447
- * Data required during a WASM migration. Single definition for all contracts.
1448
- */
1449
1397
  export interface MigrationData {
1450
1398
  version: u32;
1451
1399
  }
1452
- /**
1453
- * Pending WASM upgrade — set by `propose_upgrade`, consumed by `upgrade`
1454
- * (cleared atomically on a successful install), or cleared by `cancel_upgrade`.
1455
- * Single shape across every protocol contract. Contracts store it at
1456
- * the shared `pending_upgrade` Symbol key in their own instance storage (see
1457
- * `crate::upgrade::pending_upgrade_key`). `upgrade` refuses to install
1458
- * unless `pending.wasm_hash` matches the supplied hash and `now >= eta`.
1459
- */
1400
+ export interface PendingAction {
1401
+ action_id: u64;
1402
+ commit_observed_at: u64;
1403
+ created_at: u64;
1404
+ escrowed_collateral: i128;
1405
+ execute_after: u64;
1406
+ kind: ActionKind;
1407
+ market_id: string;
1408
+ owner: string;
1409
+ payload: ActionPayload;
1410
+ }
1460
1411
  export interface PendingUpgrade {
1461
1412
  eta: u64;
1462
1413
  wasm_hash: Buffer;
1463
1414
  }
1415
+ export interface RemainderGroup {
1416
+ distribution_remainder: i128;
1417
+ lp_payer_remainder: i128;
1418
+ receiver_liability_remainder: i128;
1419
+ receiver_payer_remainder: i128;
1420
+ }
1421
+ export interface DecreasePayload {
1422
+ acceptable_price: i128;
1423
+ position_id: u64;
1424
+ size_removed: i128;
1425
+ }
1464
1426
  export type LpRequestStatus = {
1465
1427
  tag: "Pending";
1466
1428
  values: void;
@@ -1470,32 +1432,20 @@ export type LpRequestStatus = {
1470
1432
  } | {
1471
1433
  tag: "Failed";
1472
1434
  values: void;
1473
- } | {
1474
- tag: "Expired";
1475
- values: void;
1476
1435
  };
1477
- /**
1478
- * The caller-supplied fields of a `place_entry_order` request, bundled so
1479
- * the entry point stays within Soroban's parameter limit. `owner` and
1480
- * `market` are passed alongside; `id` and `trigger_above` are derived at
1481
- * placement.
1482
- */
1483
- export interface EntryOrderParams {
1484
- acceptable_price: i128;
1485
- collateral: i128;
1486
- execution_budget: i128;
1487
- expires_at: u64;
1488
- is_long: boolean;
1489
- size: i128;
1490
- stop_loss: i128;
1491
- take_profit: i128;
1492
- trigger_price: i128;
1436
+ export interface PendingFeesView {
1437
+ borrow: i128;
1438
+ funding_paid_to_lps: i128;
1439
+ funding_paid_to_receivers: i128;
1440
+ funding_received: i128;
1441
+ }
1442
+ export interface PendingPriceFeed {
1443
+ effective_at: u64;
1444
+ price_feed: string;
1493
1445
  }
1494
1446
  export interface SettlementResult {
1495
- /**
1496
- * Shares minted for a deposit or assets paid for a withdrawal.
1497
- */
1498
1447
  amount: i128;
1448
+ reward: i128;
1499
1449
  status: SettlementStatus;
1500
1450
  }
1501
1451
  export type SettlementStatus = {
@@ -1504,19 +1454,49 @@ export type SettlementStatus = {
1504
1454
  } | {
1505
1455
  tag: "Failed";
1506
1456
  values: void;
1457
+ } | {
1458
+ tag: "NotReady";
1459
+ values: void;
1507
1460
  };
1461
+ export interface TriggerCondition {
1462
+ trigger_above: boolean;
1463
+ trigger_price: i128;
1464
+ }
1508
1465
  export interface AccountingSnapshot {
1509
1466
  cash_lp_equity: i128;
1510
1467
  cash_shortfall: i128;
1468
+ deleveraging_side_count: u32;
1511
1469
  free_lp_capital: i128;
1512
- lp_blocked_side_count: u32;
1470
+ min_equity_clear_of_adl: i128;
1513
1471
  non_lp_claims: i128;
1514
1472
  open_position_count: u64;
1515
1473
  physical_cash: i128;
1516
1474
  required_risk_backing: i128;
1475
+ restricted_side_count: u32;
1517
1476
  total_risk_units: i128;
1518
1477
  vault_nav: i128;
1519
1478
  }
1479
+ export interface TriggerInstruction {
1480
+ acceptable_price: i128;
1481
+ commit_observed_at: u64;
1482
+ committed_at: u64;
1483
+ execute_after: u64;
1484
+ trigger_price: i128;
1485
+ }
1486
+ export interface PendingGlobalConfig {
1487
+ config: GlobalConfig;
1488
+ effective_at: u64;
1489
+ }
1490
+ export interface PendingMarketConfig {
1491
+ config: MarketConfig;
1492
+ effective_at: u64;
1493
+ }
1494
+ export interface EventHeader {
1495
+ actor: string;
1496
+ event_version: u32;
1497
+ ledger_timestamp: u64;
1498
+ market: string;
1499
+ }
1520
1500
  export declare const UpgradeableError: {
1521
1501
  /**
1522
1502
  * When migration is attempted but not allowed due to upgrade state.
@@ -1545,16 +1525,6 @@ export declare const MerkleDistributorError: {
1545
1525
  message: string;
1546
1526
  };
1547
1527
  };
1548
- /**
1549
- * Storage keys for the data associated with `MerkleDistributor`
1550
- */
1551
- export type MerkleDistributorStorageKey = {
1552
- tag: "Root";
1553
- values: void;
1554
- } | {
1555
- tag: "Claimed";
1556
- values: readonly [u32];
1557
- };
1558
1528
  /**
1559
1529
  * Rounding direction for division operations
1560
1530
  */
@@ -1582,37 +1552,47 @@ export declare const SorobanFixedPointError: {
1582
1552
  message: string;
1583
1553
  };
1584
1554
  };
1585
- export declare const CryptoError: {
1555
+ export declare const PausableError: {
1586
1556
  /**
1587
- * The merkle proof length is out of bounds.
1557
+ * The operation failed because the contract is paused.
1588
1558
  */
1589
- 1400: {
1559
+ 1000: {
1590
1560
  message: string;
1591
1561
  };
1592
1562
  /**
1593
- * The index of the leaf is out of bounds.
1563
+ * The operation failed because the contract is not paused.
1594
1564
  */
1595
- 1401: {
1565
+ 1001: {
1596
1566
  message: string;
1597
1567
  };
1568
+ };
1569
+ /**
1570
+ * Storage keys for the data associated with `MerkleDistributor`
1571
+ */
1572
+ export type MerkleDistributorStorageKey = {
1573
+ tag: "Root";
1574
+ values: void;
1575
+ } | {
1576
+ tag: "Claimed";
1577
+ values: readonly [u32];
1578
+ };
1579
+ export declare const CryptoError: {
1598
1580
  /**
1599
- * No data in hasher state.
1581
+ * The merkle proof length is out of bounds.
1600
1582
  */
1601
- 1402: {
1583
+ 1400: {
1602
1584
  message: string;
1603
1585
  };
1604
- };
1605
- export declare const PausableError: {
1606
1586
  /**
1607
- * The operation failed because the contract is paused.
1587
+ * The index of the leaf is out of bounds.
1608
1588
  */
1609
- 1000: {
1589
+ 1401: {
1610
1590
  message: string;
1611
1591
  };
1612
1592
  /**
1613
- * The operation failed because the contract is not paused.
1593
+ * No data in hasher state.
1614
1594
  */
1615
- 1001: {
1595
+ 1402: {
1616
1596
  message: string;
1617
1597
  };
1618
1598
  };
@@ -1740,6 +1720,10 @@ export interface Client {
1740
1720
  owner: string;
1741
1721
  spender: string;
1742
1722
  }, options?: MethodOptions) => Promise<AssembledTransaction<i128>>;
1723
+ /**
1724
+ * Construct and simulate a lp_paused transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1725
+ */
1726
+ lp_paused: (options?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1743
1727
  /**
1744
1728
  * Construct and simulate a query_asset transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1745
1729
  */
@@ -1786,11 +1770,10 @@ export interface Client {
1786
1770
  /**
1787
1771
  * Construct and simulate a settle_deposit transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1788
1772
  */
1789
- settle_deposit: ({ caller, owner, assets, round }: {
1773
+ settle_deposit: ({ caller, owner, assets }: {
1790
1774
  caller: string;
1791
1775
  owner: string;
1792
1776
  assets: i128;
1793
- round: OracleRound;
1794
1777
  }, options?: MethodOptions) => Promise<AssembledTransaction<SettlementResult>>;
1795
1778
  /**
1796
1779
  * Construct and simulate a transfer_claim transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
@@ -1809,17 +1792,18 @@ export interface Client {
1809
1792
  wasm_hash: Buffer;
1810
1793
  }, options?: MethodOptions) => Promise<AssembledTransaction<null>>;
1811
1794
  /**
1812
- * Construct and simulate a bump_vault_state transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1795
+ * Construct and simulate a lp_resolve_reward transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1813
1796
  */
1814
- bump_vault_state: (options?: MethodOptions) => Promise<AssembledTransaction<null>>;
1797
+ lp_resolve_reward: (options?: MethodOptions) => Promise<AssembledTransaction<i128>>;
1815
1798
  /**
1816
1799
  * Construct and simulate a settle_withdrawal transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1817
1800
  */
1818
- settle_withdrawal: ({ caller, owner, shares, round }: {
1801
+ settle_withdrawal: ({ caller, owner, shares, executor, reward }: {
1819
1802
  caller: string;
1820
1803
  owner: string;
1821
1804
  shares: i128;
1822
- round: OracleRound;
1805
+ executor: string;
1806
+ reward: i128;
1823
1807
  }, options?: MethodOptions) => Promise<AssembledTransaction<SettlementResult>>;
1824
1808
  /**
1825
1809
  * Construct and simulate a receive_collateral transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
@@ -1843,17 +1827,7 @@ export interface Client {
1843
1827
  /**
1844
1828
  * Construct and simulate a accounting_snapshot transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1845
1829
  */
1846
- accounting_snapshot: ({ round }: {
1847
- round: OracleRound;
1848
- }, options?: MethodOptions) => Promise<AssembledTransaction<AccountingSnapshot>>;
1849
- /**
1850
- * Construct and simulate a pull_from_allowance transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1851
- */
1852
- pull_from_allowance: ({ caller, from, amount }: {
1853
- caller: string;
1854
- from: string;
1855
- amount: i128;
1856
- }, options?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1830
+ accounting_snapshot: (options?: MethodOptions) => Promise<AssembledTransaction<AccountingSnapshot>>;
1857
1831
  /**
1858
1832
  * Construct and simulate a can_create_lp_request transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1859
1833
  */
@@ -1866,6 +1840,10 @@ export interface Client {
1866
1840
  recipient: string;
1867
1841
  amount: i128;
1868
1842
  }, options?: MethodOptions) => Promise<AssembledTransaction<null>>;
1843
+ /**
1844
+ * Construct and simulate a config_timelock_seconds transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1845
+ */
1846
+ config_timelock_seconds: (options?: MethodOptions) => Promise<AssembledTransaction<u64>>;
1869
1847
  }
1870
1848
  export declare class Client extends ContractClient {
1871
1849
  readonly options: ContractClientOptions;
@@ -1899,6 +1877,7 @@ export declare class Client extends ContractClient {
1899
1877
  decimals: (json: string) => AssembledTransaction<number>;
1900
1878
  transfer: (json: string) => AssembledTransaction<null>;
1901
1879
  allowance: (json: string) => AssembledTransaction<bigint>;
1880
+ lp_paused: (json: string) => AssembledTransaction<boolean>;
1902
1881
  query_asset: (json: string) => AssembledTransaction<string>;
1903
1882
  total_supply: (json: string) => AssembledTransaction<bigint>;
1904
1883
  get_lp_config: (json: string) => AssembledTransaction<LpConfig>;
@@ -1909,14 +1888,14 @@ export declare class Client extends ContractClient {
1909
1888
  settle_deposit: (json: string) => AssembledTransaction<SettlementResult>;
1910
1889
  transfer_claim: (json: string) => AssembledTransaction<null>;
1911
1890
  propose_upgrade: (json: string) => AssembledTransaction<null>;
1912
- bump_vault_state: (json: string) => AssembledTransaction<null>;
1891
+ lp_resolve_reward: (json: string) => AssembledTransaction<bigint>;
1913
1892
  settle_withdrawal: (json: string) => AssembledTransaction<SettlementResult>;
1914
1893
  receive_collateral: (json: string) => AssembledTransaction<null>;
1915
1894
  set_request_router: (json: string) => AssembledTransaction<null>;
1916
1895
  total_share_supply: (json: string) => AssembledTransaction<bigint>;
1917
1896
  accounting_snapshot: (json: string) => AssembledTransaction<AccountingSnapshot>;
1918
- pull_from_allowance: (json: string) => AssembledTransaction<boolean>;
1919
1897
  can_create_lp_request: (json: string) => AssembledTransaction<boolean>;
1920
1898
  transfer_safety_claim: (json: string) => AssembledTransaction<null>;
1899
+ config_timelock_seconds: (json: string) => AssembledTransaction<bigint>;
1921
1900
  };
1922
1901
  }