@o2exchange/contracts 0.4.4-rc → 0.4.5-rc3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/contracts/OrderBook.js +23 -23
  2. package/dist/contracts/OrderBookFactory.js +1 -1
  3. package/dist/contracts/PropAccount.d.ts +398 -0
  4. package/dist/contracts/PropAccount.d.ts.map +1 -0
  5. package/dist/contracts/PropAccount.js +1301 -0
  6. package/dist/contracts/PropAccount.js.map +1 -0
  7. package/dist/contracts/PropAccountFactory.d.ts +9 -0
  8. package/dist/contracts/PropAccountFactory.d.ts.map +1 -0
  9. package/dist/contracts/PropAccountFactory.js +23 -0
  10. package/dist/contracts/PropAccountFactory.js.map +1 -0
  11. package/dist/contracts/PropAccountOracle.d.ts +190 -0
  12. package/dist/contracts/PropAccountOracle.d.ts.map +1 -0
  13. package/dist/contracts/PropAccountOracle.js +555 -0
  14. package/dist/contracts/PropAccountOracle.js.map +1 -0
  15. package/dist/contracts/PropAccountOracleFactory.d.ts +9 -0
  16. package/dist/contracts/PropAccountOracleFactory.d.ts.map +1 -0
  17. package/dist/contracts/PropAccountOracleFactory.js +23 -0
  18. package/dist/contracts/PropAccountOracleFactory.js.map +1 -0
  19. package/dist/contracts/PropAccountOracleProxy.d.ts +192 -0
  20. package/dist/contracts/PropAccountOracleProxy.d.ts.map +1 -0
  21. package/dist/contracts/PropAccountOracleProxy.js +432 -0
  22. package/dist/contracts/PropAccountOracleProxy.js.map +1 -0
  23. package/dist/contracts/PropAccountOracleProxyFactory.d.ts +9 -0
  24. package/dist/contracts/PropAccountOracleProxyFactory.d.ts.map +1 -0
  25. package/dist/contracts/PropAccountOracleProxyFactory.js +23 -0
  26. package/dist/contracts/PropAccountOracleProxyFactory.js.map +1 -0
  27. package/dist/contracts/PropAccountProxy.d.ts +191 -0
  28. package/dist/contracts/PropAccountProxy.d.ts.map +1 -0
  29. package/dist/contracts/PropAccountProxy.js +484 -0
  30. package/dist/contracts/PropAccountProxy.js.map +1 -0
  31. package/dist/contracts/PropAccountProxyFactory.d.ts +9 -0
  32. package/dist/contracts/PropAccountProxyFactory.d.ts.map +1 -0
  33. package/dist/contracts/PropAccountProxyFactory.js +23 -0
  34. package/dist/contracts/PropAccountProxyFactory.js.map +1 -0
  35. package/dist/contracts/PropMarginPool.d.ts +1216 -0
  36. package/dist/contracts/PropMarginPool.d.ts.map +1 -0
  37. package/dist/contracts/PropMarginPool.js +4057 -0
  38. package/dist/contracts/PropMarginPool.js.map +1 -0
  39. package/dist/contracts/PropMarginPoolFactory.d.ts +9 -0
  40. package/dist/contracts/PropMarginPoolFactory.d.ts.map +1 -0
  41. package/dist/contracts/PropMarginPoolFactory.js +23 -0
  42. package/dist/contracts/PropMarginPoolFactory.js.map +1 -0
  43. package/dist/contracts/PropMarginPoolMock.d.ts +1320 -0
  44. package/dist/contracts/PropMarginPoolMock.d.ts.map +1 -0
  45. package/dist/contracts/PropMarginPoolMock.js +4899 -0
  46. package/dist/contracts/PropMarginPoolMock.js.map +1 -0
  47. package/dist/contracts/PropMarginPoolMockFactory.d.ts +9 -0
  48. package/dist/contracts/PropMarginPoolMockFactory.d.ts.map +1 -0
  49. package/dist/contracts/PropMarginPoolMockFactory.js +23 -0
  50. package/dist/contracts/PropMarginPoolMockFactory.js.map +1 -0
  51. package/dist/contracts/PropMarginPoolProxy.d.ts +192 -0
  52. package/dist/contracts/PropMarginPoolProxy.d.ts.map +1 -0
  53. package/dist/contracts/PropMarginPoolProxy.js +432 -0
  54. package/dist/contracts/PropMarginPoolProxy.js.map +1 -0
  55. package/dist/contracts/PropMarginPoolProxyFactory.d.ts +9 -0
  56. package/dist/contracts/PropMarginPoolProxyFactory.d.ts.map +1 -0
  57. package/dist/contracts/PropMarginPoolProxyFactory.js +23 -0
  58. package/dist/contracts/PropMarginPoolProxyFactory.js.map +1 -0
  59. package/dist/contracts/index.d.ts +14 -0
  60. package/dist/contracts/index.d.ts.map +1 -1
  61. package/dist/contracts/index.js +14 -0
  62. package/dist/contracts/index.js.map +1 -1
  63. package/package.json +1 -1
@@ -0,0 +1,1216 @@
1
+ import { Contract as __Contract, Interface } from "fuels";
2
+ import type { Provider, Account, StorageSlot, Address, BigNumberish, BN, FunctionFragment, InvokeFunction } from 'fuels';
3
+ import type { Option, Enum, Vec } from "./common";
4
+ export type AccessControlErrorInput = Enum<{
5
+ AccessControlNotAuthorized: BigNumberish;
6
+ AccessControlNoMsgSender: undefined;
7
+ AccessControlRoleOutOfBounds: undefined;
8
+ }>;
9
+ export type AccessControlErrorOutput = Enum<{
10
+ AccessControlNotAuthorized: BN;
11
+ AccessControlNoMsgSender: void;
12
+ AccessControlRoleOutOfBounds: void;
13
+ }>;
14
+ export declare enum DiscountScopeInput {
15
+ FirstPremium = "FirstPremium",
16
+ AllPremiums = "AllPremiums"
17
+ }
18
+ export declare enum DiscountScopeOutput {
19
+ FirstPremium = "FirstPremium",
20
+ AllPremiums = "AllPremiums"
21
+ }
22
+ export type IdentityInput = Enum<{
23
+ Address: AddressInput;
24
+ ContractId: ContractIdInput;
25
+ }>;
26
+ export type IdentityOutput = Enum<{
27
+ Address: AddressOutput;
28
+ ContractId: ContractIdOutput;
29
+ }>;
30
+ export declare enum PauseErrorInput {
31
+ Paused = "Paused",
32
+ NotPaused = "NotPaused"
33
+ }
34
+ export declare enum PauseErrorOutput {
35
+ Paused = "Paused",
36
+ NotPaused = "NotPaused"
37
+ }
38
+ export declare enum ProlongPeriodInput {
39
+ SixHours = "SixHours",
40
+ Day = "Day",
41
+ Week = "Week",
42
+ Month = "Month"
43
+ }
44
+ export declare enum ProlongPeriodOutput {
45
+ SixHours = "SixHours",
46
+ Day = "Day",
47
+ Week = "Week",
48
+ Month = "Month"
49
+ }
50
+ export declare enum ProlongTriggerInput {
51
+ User = "User",
52
+ Auto = "Auto"
53
+ }
54
+ export declare enum ProlongTriggerOutput {
55
+ User = "User",
56
+ Auto = "Auto"
57
+ }
58
+ export declare enum PropMarginPoolErrorInput {
59
+ AlreadyInitialized = "AlreadyInitialized",
60
+ CallerNotContract = "CallerNotContract",
61
+ NotPropAccount = "NotPropAccount",
62
+ NoActiveSession = "NoActiveSession",
63
+ SessionActive = "SessionActive",
64
+ SessionEnded = "SessionEnded",
65
+ WrongAsset = "WrongAsset",
66
+ AmountIsZero = "AmountIsZero",
67
+ CollateralTooSmall = "CollateralTooSmall",
68
+ AccountNotEmpty = "AccountNotEmpty",
69
+ AssetNotInTier = "AssetNotInTier",
70
+ UseDraw = "UseDraw",
71
+ UseRepayQuote = "UseRepayQuote",
72
+ LoanCapExceeded = "LoanCapExceeded",
73
+ InsufficientInventory = "InsufficientInventory",
74
+ InsufficientBalance = "InsufficientBalance",
75
+ BelowTierCollateral = "BelowTierCollateral",
76
+ OverReturn = "OverReturn",
77
+ OverRepay = "OverRepay",
78
+ QuoteOutstanding = "QuoteOutstanding",
79
+ DebtsOutstanding = "DebtsOutstanding",
80
+ CashShortOfDrawn = "CashShortOfDrawn",
81
+ FundOtherAccount = "FundOtherAccount",
82
+ InvalidTier = "InvalidTier",
83
+ InvalidTierVersion = "InvalidTierVersion",
84
+ InvalidTierParams = "InvalidTierParams",
85
+ InvalidLeverage = "InvalidLeverage",
86
+ BufferBelowMaintenance = "BufferBelowMaintenance",
87
+ BufferAboveCap = "BufferAboveCap",
88
+ SessionUnusableAtOpen = "SessionUnusableAtOpen",
89
+ InvalidBook = "InvalidBook",
90
+ TooManyBooks = "TooManyBooks",
91
+ PriceMissing = "PriceMissing",
92
+ PriceStale = "PriceStale",
93
+ PriceInvalid = "PriceInvalid",
94
+ PriceDecimalsChanged = "PriceDecimalsChanged",
95
+ InvalidRegistry = "InvalidRegistry",
96
+ InvalidPriceFeed = "InvalidPriceFeed",
97
+ InvalidPlatformPayout = "InvalidPlatformPayout",
98
+ InvalidLiquidator = "InvalidLiquidator",
99
+ ValueOverflow = "ValueOverflow",
100
+ PeriodNotOffered = "PeriodNotOffered",
101
+ AutoProlongDisabled = "AutoProlongDisabled",
102
+ AutoProlongPeriodInvalid = "AutoProlongPeriodInvalid",
103
+ TimesIsZero = "TimesIsZero",
104
+ ProlongAfterExpiry = "ProlongAfterExpiry",
105
+ AutoProlongNotDue = "AutoProlongNotDue",
106
+ BookNotDrained = "BookNotDrained",
107
+ SweepIncomplete = "SweepIncomplete",
108
+ PositionsOutstanding = "PositionsOutstanding",
109
+ NotLiquidatable = "NotLiquidatable",
110
+ NotExpired = "NotExpired",
111
+ NoBestBid = "NoBestBid",
112
+ AssetNotSupported = "AssetNotSupported",
113
+ ProlongAboveCollateral = "ProlongAboveCollateral",
114
+ InvalidDiscount = "InvalidDiscount",
115
+ TierDisabled = "TierDisabled",
116
+ TopUpsDisabled = "TopUpsDisabled",
117
+ TurboEntryNotExact = "TurboEntryNotExact",
118
+ InvalidTurboTerms = "InvalidTurboTerms",
119
+ RolloverNotOffered = "RolloverNotOffered",
120
+ RolloverNotDue = "RolloverNotDue",
121
+ RolloverNotEarned = "RolloverNotEarned",
122
+ RolloverExhausted = "RolloverExhausted",
123
+ RolloverPending = "RolloverPending",
124
+ UseExpireOrRollover = "UseExpireOrRollover",
125
+ UsePermissionlessExpiry = "UsePermissionlessExpiry",
126
+ InvalidExpiryCosigner = "InvalidExpiryCosigner",
127
+ ExpiryCosignerNotSet = "ExpiryCosignerNotSet"
128
+ }
129
+ export declare enum PropMarginPoolErrorOutput {
130
+ AlreadyInitialized = "AlreadyInitialized",
131
+ CallerNotContract = "CallerNotContract",
132
+ NotPropAccount = "NotPropAccount",
133
+ NoActiveSession = "NoActiveSession",
134
+ SessionActive = "SessionActive",
135
+ SessionEnded = "SessionEnded",
136
+ WrongAsset = "WrongAsset",
137
+ AmountIsZero = "AmountIsZero",
138
+ CollateralTooSmall = "CollateralTooSmall",
139
+ AccountNotEmpty = "AccountNotEmpty",
140
+ AssetNotInTier = "AssetNotInTier",
141
+ UseDraw = "UseDraw",
142
+ UseRepayQuote = "UseRepayQuote",
143
+ LoanCapExceeded = "LoanCapExceeded",
144
+ InsufficientInventory = "InsufficientInventory",
145
+ InsufficientBalance = "InsufficientBalance",
146
+ BelowTierCollateral = "BelowTierCollateral",
147
+ OverReturn = "OverReturn",
148
+ OverRepay = "OverRepay",
149
+ QuoteOutstanding = "QuoteOutstanding",
150
+ DebtsOutstanding = "DebtsOutstanding",
151
+ CashShortOfDrawn = "CashShortOfDrawn",
152
+ FundOtherAccount = "FundOtherAccount",
153
+ InvalidTier = "InvalidTier",
154
+ InvalidTierVersion = "InvalidTierVersion",
155
+ InvalidTierParams = "InvalidTierParams",
156
+ InvalidLeverage = "InvalidLeverage",
157
+ BufferBelowMaintenance = "BufferBelowMaintenance",
158
+ BufferAboveCap = "BufferAboveCap",
159
+ SessionUnusableAtOpen = "SessionUnusableAtOpen",
160
+ InvalidBook = "InvalidBook",
161
+ TooManyBooks = "TooManyBooks",
162
+ PriceMissing = "PriceMissing",
163
+ PriceStale = "PriceStale",
164
+ PriceInvalid = "PriceInvalid",
165
+ PriceDecimalsChanged = "PriceDecimalsChanged",
166
+ InvalidRegistry = "InvalidRegistry",
167
+ InvalidPriceFeed = "InvalidPriceFeed",
168
+ InvalidPlatformPayout = "InvalidPlatformPayout",
169
+ InvalidLiquidator = "InvalidLiquidator",
170
+ ValueOverflow = "ValueOverflow",
171
+ PeriodNotOffered = "PeriodNotOffered",
172
+ AutoProlongDisabled = "AutoProlongDisabled",
173
+ AutoProlongPeriodInvalid = "AutoProlongPeriodInvalid",
174
+ TimesIsZero = "TimesIsZero",
175
+ ProlongAfterExpiry = "ProlongAfterExpiry",
176
+ AutoProlongNotDue = "AutoProlongNotDue",
177
+ BookNotDrained = "BookNotDrained",
178
+ SweepIncomplete = "SweepIncomplete",
179
+ PositionsOutstanding = "PositionsOutstanding",
180
+ NotLiquidatable = "NotLiquidatable",
181
+ NotExpired = "NotExpired",
182
+ NoBestBid = "NoBestBid",
183
+ AssetNotSupported = "AssetNotSupported",
184
+ ProlongAboveCollateral = "ProlongAboveCollateral",
185
+ InvalidDiscount = "InvalidDiscount",
186
+ TierDisabled = "TierDisabled",
187
+ TopUpsDisabled = "TopUpsDisabled",
188
+ TurboEntryNotExact = "TurboEntryNotExact",
189
+ InvalidTurboTerms = "InvalidTurboTerms",
190
+ RolloverNotOffered = "RolloverNotOffered",
191
+ RolloverNotDue = "RolloverNotDue",
192
+ RolloverNotEarned = "RolloverNotEarned",
193
+ RolloverExhausted = "RolloverExhausted",
194
+ RolloverPending = "RolloverPending",
195
+ UseExpireOrRollover = "UseExpireOrRollover",
196
+ UsePermissionlessExpiry = "UsePermissionlessExpiry",
197
+ InvalidExpiryCosigner = "InvalidExpiryCosigner",
198
+ ExpiryCosignerNotSet = "ExpiryCosignerNotSet"
199
+ }
200
+ export declare enum SettlementReasonInput {
201
+ UserClose = "UserClose",
202
+ Expiry = "Expiry",
203
+ Liquidation = "Liquidation"
204
+ }
205
+ export declare enum SettlementReasonOutput {
206
+ UserClose = "UserClose",
207
+ Expiry = "Expiry",
208
+ Liquidation = "Liquidation"
209
+ }
210
+ export type SignatureInput = Enum<{
211
+ Secp256k1: Secp256k1Input;
212
+ Secp256r1: Secp256r1Input;
213
+ Ed25519: Ed25519Input;
214
+ }>;
215
+ export type SignatureOutput = Enum<{
216
+ Secp256k1: Secp256k1Output;
217
+ Secp256r1: Secp256r1Output;
218
+ Ed25519: Ed25519Output;
219
+ }>;
220
+ export type AddressInput = {
221
+ bits: string;
222
+ };
223
+ export type AddressOutput = AddressInput;
224
+ export type AssetBorrowedInput = {
225
+ account: ContractIdInput;
226
+ session_id: BigNumberish;
227
+ asset_id: AssetIdInput;
228
+ amount: BigNumberish;
229
+ debt_total: BigNumberish;
230
+ timestamp: TimeInput;
231
+ };
232
+ export type AssetBorrowedOutput = {
233
+ account: ContractIdOutput;
234
+ session_id: BN;
235
+ asset_id: AssetIdOutput;
236
+ amount: BN;
237
+ debt_total: BN;
238
+ timestamp: TimeOutput;
239
+ };
240
+ export type AssetIdInput = {
241
+ bits: string;
242
+ };
243
+ export type AssetIdOutput = AssetIdInput;
244
+ export type AssetRepaidInput = {
245
+ account: ContractIdInput;
246
+ session_id: BigNumberish;
247
+ asset_id: AssetIdInput;
248
+ amount: BigNumberish;
249
+ debt_total: BigNumberish;
250
+ timestamp: TimeInput;
251
+ };
252
+ export type AssetRepaidOutput = {
253
+ account: ContractIdOutput;
254
+ session_id: BN;
255
+ asset_id: AssetIdOutput;
256
+ amount: BN;
257
+ debt_total: BN;
258
+ timestamp: TimeOutput;
259
+ };
260
+ export type AutoProlongChangedInput = {
261
+ account: ContractIdInput;
262
+ session_id: BigNumberish;
263
+ period: Option<ProlongPeriodInput>;
264
+ expires_at: BigNumberish;
265
+ timestamp: TimeInput;
266
+ };
267
+ export type AutoProlongChangedOutput = {
268
+ account: ContractIdOutput;
269
+ session_id: BN;
270
+ period: Option<ProlongPeriodOutput>;
271
+ expires_at: BN;
272
+ timestamp: TimeOutput;
273
+ };
274
+ export type BaseDebtRepaidFromCollateralInput = {
275
+ account: ContractIdInput;
276
+ session_id: BigNumberish;
277
+ asset_id: AssetIdInput;
278
+ amount: BigNumberish;
279
+ ask: BigNumberish;
280
+ value: BigNumberish;
281
+ fee: BigNumberish;
282
+ debt_total: BigNumberish;
283
+ new_collateral: BigNumberish;
284
+ new_credit_line: BigNumberish;
285
+ fees_accrued: BigNumberish;
286
+ from_capitalised: BigNumberish;
287
+ capitalised_total: BigNumberish;
288
+ decapitalised_total: BigNumberish;
289
+ timestamp: TimeInput;
290
+ };
291
+ export type BaseDebtRepaidFromCollateralOutput = {
292
+ account: ContractIdOutput;
293
+ session_id: BN;
294
+ asset_id: AssetIdOutput;
295
+ amount: BN;
296
+ ask: BN;
297
+ value: BN;
298
+ fee: BN;
299
+ debt_total: BN;
300
+ new_collateral: BN;
301
+ new_credit_line: BN;
302
+ fees_accrued: BN;
303
+ from_capitalised: BN;
304
+ capitalised_total: BN;
305
+ decapitalised_total: BN;
306
+ timestamp: TimeOutput;
307
+ };
308
+ export type CollateralAddedInput = {
309
+ account: ContractIdInput;
310
+ session_id: BigNumberish;
311
+ funder: IdentityInput;
312
+ amount: BigNumberish;
313
+ new_collateral: BigNumberish;
314
+ new_credit_line: BigNumberish;
315
+ capitalised_total: BigNumberish;
316
+ cap: BigNumberish;
317
+ timestamp: TimeInput;
318
+ };
319
+ export type CollateralAddedOutput = {
320
+ account: ContractIdOutput;
321
+ session_id: BN;
322
+ funder: IdentityOutput;
323
+ amount: BN;
324
+ new_collateral: BN;
325
+ new_credit_line: BN;
326
+ capitalised_total: BN;
327
+ cap: BN;
328
+ timestamp: TimeOutput;
329
+ };
330
+ export type ContractIdInput = {
331
+ bits: string;
332
+ };
333
+ export type ContractIdOutput = ContractIdInput;
334
+ export type Ed25519Input = {
335
+ bits: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish];
336
+ };
337
+ export type Ed25519Output = {
338
+ bits: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number];
339
+ };
340
+ export type MarginPoolLiquidatorChangedInput = {
341
+ old_liquidator: IdentityInput;
342
+ new_liquidator: IdentityInput;
343
+ timestamp: TimeInput;
344
+ };
345
+ export type MarginPoolLiquidatorChangedOutput = {
346
+ old_liquidator: IdentityOutput;
347
+ new_liquidator: IdentityOutput;
348
+ timestamp: TimeOutput;
349
+ };
350
+ export type MarginPoolPauseChangedInput = {
351
+ paused: boolean;
352
+ timestamp: TimeInput;
353
+ };
354
+ export type MarginPoolPauseChangedOutput = {
355
+ paused: boolean;
356
+ timestamp: TimeOutput;
357
+ };
358
+ export type MarginPoolPlatformPayoutChangedInput = {
359
+ old_platform_payout: IdentityInput;
360
+ new_platform_payout: IdentityInput;
361
+ timestamp: TimeInput;
362
+ };
363
+ export type MarginPoolPlatformPayoutChangedOutput = {
364
+ old_platform_payout: IdentityOutput;
365
+ new_platform_payout: IdentityOutput;
366
+ timestamp: TimeOutput;
367
+ };
368
+ export type MarginPoolPriceFeedChangedInput = {
369
+ old_price_feed: ContractIdInput;
370
+ new_price_feed: ContractIdInput;
371
+ timestamp: TimeInput;
372
+ };
373
+ export type MarginPoolPriceFeedChangedOutput = {
374
+ old_price_feed: ContractIdOutput;
375
+ new_price_feed: ContractIdOutput;
376
+ timestamp: TimeOutput;
377
+ };
378
+ export type MarginPoolRegistryChangedInput = {
379
+ old_registry: ContractIdInput;
380
+ new_registry: ContractIdInput;
381
+ timestamp: TimeInput;
382
+ };
383
+ export type MarginPoolRegistryChangedOutput = {
384
+ old_registry: ContractIdOutput;
385
+ new_registry: ContractIdOutput;
386
+ timestamp: TimeOutput;
387
+ };
388
+ export type MarginWithdrawnInput = {
389
+ account: ContractIdInput;
390
+ session_id: BigNumberish;
391
+ asset_id: AssetIdInput;
392
+ amount: BigNumberish;
393
+ from_account: BigNumberish;
394
+ from_pool: BigNumberish;
395
+ from_capitalised: BigNumberish;
396
+ share_qty: BigNumberish;
397
+ new_collateral: BigNumberish;
398
+ new_credit_line: BigNumberish;
399
+ capitalised_total: BigNumberish;
400
+ timestamp: TimeInput;
401
+ };
402
+ export type MarginWithdrawnOutput = {
403
+ account: ContractIdOutput;
404
+ session_id: BN;
405
+ asset_id: AssetIdOutput;
406
+ amount: BN;
407
+ from_account: BN;
408
+ from_pool: BN;
409
+ from_capitalised: BN;
410
+ share_qty: BN;
411
+ new_collateral: BN;
412
+ new_credit_line: BN;
413
+ capitalised_total: BN;
414
+ timestamp: TimeOutput;
415
+ };
416
+ export type PauseEventInput = {
417
+ caller: IdentityInput;
418
+ };
419
+ export type PauseEventOutput = {
420
+ caller: IdentityOutput;
421
+ };
422
+ export type PropOrderBookCleanupInput = {
423
+ order_book: ContractIdInput;
424
+ order_ids: Vec<string>;
425
+ };
426
+ export type PropOrderBookCleanupOutput = {
427
+ order_book: ContractIdOutput;
428
+ order_ids: Vec<string>;
429
+ };
430
+ export type QuoteDrawnInput = {
431
+ account: ContractIdInput;
432
+ session_id: BigNumberish;
433
+ amount: BigNumberish;
434
+ drawn_total: BigNumberish;
435
+ timestamp: TimeInput;
436
+ };
437
+ export type QuoteDrawnOutput = {
438
+ account: ContractIdOutput;
439
+ session_id: BN;
440
+ amount: BN;
441
+ drawn_total: BN;
442
+ timestamp: TimeOutput;
443
+ };
444
+ export type QuoteRepaidFromCollateralInput = {
445
+ account: ContractIdInput;
446
+ session_id: BigNumberish;
447
+ amount: BigNumberish;
448
+ new_drawn_quote: BigNumberish;
449
+ new_collateral: BigNumberish;
450
+ new_credit_line: BigNumberish;
451
+ from_capitalised: BigNumberish;
452
+ capitalised_total: BigNumberish;
453
+ decapitalised_total: BigNumberish;
454
+ timestamp: TimeInput;
455
+ };
456
+ export type QuoteRepaidFromCollateralOutput = {
457
+ account: ContractIdOutput;
458
+ session_id: BN;
459
+ amount: BN;
460
+ new_drawn_quote: BN;
461
+ new_collateral: BN;
462
+ new_credit_line: BN;
463
+ from_capitalised: BN;
464
+ capitalised_total: BN;
465
+ decapitalised_total: BN;
466
+ timestamp: TimeOutput;
467
+ };
468
+ export type QuoteReturnedInput = {
469
+ account: ContractIdInput;
470
+ session_id: BigNumberish;
471
+ amount: BigNumberish;
472
+ drawn_total: BigNumberish;
473
+ timestamp: TimeInput;
474
+ };
475
+ export type QuoteReturnedOutput = {
476
+ account: ContractIdOutput;
477
+ session_id: BN;
478
+ amount: BN;
479
+ drawn_total: BN;
480
+ timestamp: TimeOutput;
481
+ };
482
+ export type RoleGrantedEventInput = {
483
+ role: BigNumberish;
484
+ account: IdentityInput;
485
+ };
486
+ export type RoleGrantedEventOutput = {
487
+ role: BN;
488
+ account: IdentityOutput;
489
+ };
490
+ export type RoleRevokedEventInput = {
491
+ role: BigNumberish;
492
+ account: IdentityInput;
493
+ };
494
+ export type RoleRevokedEventOutput = {
495
+ role: BN;
496
+ account: IdentityOutput;
497
+ };
498
+ export type RolloverViewInput = {
499
+ anchor: BigNumberish;
500
+ withdrawn: BigNumberish;
501
+ rollovers_used: BigNumberish;
502
+ max_rollovers: BigNumberish;
503
+ profit_required: BigNumberish;
504
+ };
505
+ export type RolloverViewOutput = {
506
+ anchor: BN;
507
+ withdrawn: BN;
508
+ rollovers_used: BN;
509
+ max_rollovers: BN;
510
+ profit_required: BN;
511
+ };
512
+ export type RolloverWithdrawalRecordedInput = {
513
+ account: ContractIdInput;
514
+ session_id: BigNumberish;
515
+ amount: BigNumberish;
516
+ withdrawn_total: BigNumberish;
517
+ timestamp: TimeInput;
518
+ };
519
+ export type RolloverWithdrawalRecordedOutput = {
520
+ account: ContractIdOutput;
521
+ session_id: BN;
522
+ amount: BN;
523
+ withdrawn_total: BN;
524
+ timestamp: TimeOutput;
525
+ };
526
+ export type Secp256k1Input = {
527
+ bits: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish];
528
+ };
529
+ export type Secp256k1Output = {
530
+ bits: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number];
531
+ };
532
+ export type Secp256r1Input = {
533
+ bits: [BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish];
534
+ };
535
+ export type Secp256r1Output = {
536
+ bits: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number];
537
+ };
538
+ export type SessionClosedInput = {
539
+ account: ContractIdInput;
540
+ session_id: BigNumberish;
541
+ reason: SettlementReasonInput;
542
+ v: BigNumberish;
543
+ v_is_negative: boolean;
544
+ v_liq: BigNumberish;
545
+ v_liq_is_negative: boolean;
546
+ profit_abs: BigNumberish;
547
+ profit_is_negative: boolean;
548
+ fees_accrued: BigNumberish;
549
+ platform_total: BigNumberish;
550
+ user_net: BigNumberish;
551
+ bad_debt: BigNumberish;
552
+ cancelled_debt: Vec<[AssetIdInput, BigNumberish]>;
553
+ payout_parent: Vec<[AssetIdInput, BigNumberish]>;
554
+ payout_platform: Vec<[AssetIdInput, BigNumberish]>;
555
+ timestamp: TimeInput;
556
+ };
557
+ export type SessionClosedOutput = {
558
+ account: ContractIdOutput;
559
+ session_id: BN;
560
+ reason: SettlementReasonOutput;
561
+ v: BN;
562
+ v_is_negative: boolean;
563
+ v_liq: BN;
564
+ v_liq_is_negative: boolean;
565
+ profit_abs: BN;
566
+ profit_is_negative: boolean;
567
+ fees_accrued: BN;
568
+ platform_total: BN;
569
+ user_net: BN;
570
+ bad_debt: BN;
571
+ cancelled_debt: Vec<[AssetIdOutput, BN]>;
572
+ payout_parent: Vec<[AssetIdOutput, BN]>;
573
+ payout_platform: Vec<[AssetIdOutput, BN]>;
574
+ timestamp: TimeOutput;
575
+ };
576
+ export type SessionLinesInput = {
577
+ positive: BigNumberish;
578
+ negative: BigNumberish;
579
+ threshold: BigNumberish;
580
+ freeze: BigNumberish;
581
+ };
582
+ export type SessionLinesOutput = {
583
+ positive: BN;
584
+ negative: BN;
585
+ threshold: BN;
586
+ freeze: BN;
587
+ };
588
+ export type SessionOpenedInput = {
589
+ account: ContractIdInput;
590
+ session_id: BigNumberish;
591
+ tier_id: BigNumberish;
592
+ tier_version: BigNumberish;
593
+ parent: IdentityInput;
594
+ collateral: BigNumberish;
595
+ credit_line: BigNumberish;
596
+ started_at: BigNumberish;
597
+ expires_at: BigNumberish;
598
+ open_fee: BigNumberish;
599
+ fees_accrued: BigNumberish;
600
+ timestamp: TimeInput;
601
+ };
602
+ export type SessionOpenedOutput = {
603
+ account: ContractIdOutput;
604
+ session_id: BN;
605
+ tier_id: BN;
606
+ tier_version: number;
607
+ parent: IdentityOutput;
608
+ collateral: BN;
609
+ credit_line: BN;
610
+ started_at: BN;
611
+ expires_at: BN;
612
+ open_fee: BN;
613
+ fees_accrued: BN;
614
+ timestamp: TimeOutput;
615
+ };
616
+ export type SessionProlongedInput = {
617
+ account: ContractIdInput;
618
+ session_id: BigNumberish;
619
+ period: ProlongPeriodInput;
620
+ times: BigNumberish;
621
+ seconds: BigNumberish;
622
+ trigger: ProlongTriggerInput;
623
+ new_expires_at: BigNumberish;
624
+ new_credit_line: BigNumberish;
625
+ fee: BigNumberish;
626
+ fees_accrued: BigNumberish;
627
+ timestamp: TimeInput;
628
+ };
629
+ export type SessionProlongedOutput = {
630
+ account: ContractIdOutput;
631
+ session_id: BN;
632
+ period: ProlongPeriodOutput;
633
+ times: BN;
634
+ seconds: BN;
635
+ trigger: ProlongTriggerOutput;
636
+ new_expires_at: BN;
637
+ new_credit_line: BN;
638
+ fee: BN;
639
+ fees_accrued: BN;
640
+ timestamp: TimeOutput;
641
+ };
642
+ export type SessionRolledOverInput = {
643
+ account: ContractIdInput;
644
+ session_id: BigNumberish;
645
+ rollovers_used: BigNumberish;
646
+ max_rollovers: BigNumberish;
647
+ anchor: BigNumberish;
648
+ profit_required: BigNumberish;
649
+ new_expires_at: BigNumberish;
650
+ timestamp: TimeInput;
651
+ };
652
+ export type SessionRolledOverOutput = {
653
+ account: ContractIdOutput;
654
+ session_id: BN;
655
+ rollovers_used: BN;
656
+ max_rollovers: BN;
657
+ anchor: BN;
658
+ profit_required: BN;
659
+ new_expires_at: BN;
660
+ timestamp: TimeOutput;
661
+ };
662
+ export type SessionSeizedInput = {
663
+ account: ContractIdInput;
664
+ session_id: BigNumberish;
665
+ reason: SettlementReasonInput;
666
+ liquidator: IdentityInput;
667
+ holdings: Vec<[AssetIdInput, BigNumberish]>;
668
+ debt: Vec<[AssetIdInput, BigNumberish]>;
669
+ transferred: Vec<[AssetIdInput, BigNumberish]>;
670
+ timestamp: TimeInput;
671
+ };
672
+ export type SessionSeizedOutput = {
673
+ account: ContractIdOutput;
674
+ session_id: BN;
675
+ reason: SettlementReasonOutput;
676
+ liquidator: IdentityOutput;
677
+ holdings: Vec<[AssetIdOutput, BN]>;
678
+ debt: Vec<[AssetIdOutput, BN]>;
679
+ transferred: Vec<[AssetIdOutput, BN]>;
680
+ timestamp: TimeOutput;
681
+ };
682
+ export type SessionViewInput = {
683
+ session_id: BigNumberish;
684
+ tier_id: BigNumberish;
685
+ tier_version: BigNumberish;
686
+ parent: IdentityInput;
687
+ collateral: BigNumberish;
688
+ credit_line: BigNumberish;
689
+ started_at: BigNumberish;
690
+ expires_at: BigNumberish;
691
+ drawn_quote: BigNumberish;
692
+ fees_accrued: BigNumberish;
693
+ auto_prolong: Option<ProlongPeriodInput>;
694
+ capitalised: BigNumberish;
695
+ decapitalised: BigNumberish;
696
+ };
697
+ export type SessionViewOutput = {
698
+ session_id: BN;
699
+ tier_id: BN;
700
+ tier_version: number;
701
+ parent: IdentityOutput;
702
+ collateral: BN;
703
+ credit_line: BN;
704
+ started_at: BN;
705
+ expires_at: BN;
706
+ drawn_quote: BN;
707
+ fees_accrued: BN;
708
+ auto_prolong: Option<ProlongPeriodOutput>;
709
+ capitalised: BN;
710
+ decapitalised: BN;
711
+ };
712
+ export type SettlementReceivedInput = {
713
+ account: ContractIdInput;
714
+ session_id: BigNumberish;
715
+ asset_id: AssetIdInput;
716
+ amount: BigNumberish;
717
+ received_total: BigNumberish;
718
+ timestamp: TimeInput;
719
+ };
720
+ export type SettlementReceivedOutput = {
721
+ account: ContractIdOutput;
722
+ session_id: BN;
723
+ asset_id: AssetIdOutput;
724
+ amount: BN;
725
+ received_total: BN;
726
+ timestamp: TimeOutput;
727
+ };
728
+ export type TicketSettledInput = {
729
+ account: ContractIdInput;
730
+ session_id: BigNumberish;
731
+ ticket: BigNumberish;
732
+ to_platform: BigNumberish;
733
+ absorbed_by_pool: BigNumberish;
734
+ timestamp: TimeInput;
735
+ };
736
+ export type TicketSettledOutput = {
737
+ account: ContractIdOutput;
738
+ session_id: BN;
739
+ ticket: BN;
740
+ to_platform: BN;
741
+ absorbed_by_pool: BN;
742
+ timestamp: TimeOutput;
743
+ };
744
+ export type TierBooksAddedInput = {
745
+ tier_id: BigNumberish;
746
+ version: BigNumberish;
747
+ books: Vec<ContractIdInput>;
748
+ new_assets: Vec<AssetIdInput>;
749
+ timestamp: TimeInput;
750
+ };
751
+ export type TierBooksAddedOutput = {
752
+ tier_id: BN;
753
+ version: number;
754
+ books: Vec<ContractIdOutput>;
755
+ new_assets: Vec<AssetIdOutput>;
756
+ timestamp: TimeOutput;
757
+ };
758
+ export type TierEnabledChangedInput = {
759
+ tier_id: BigNumberish;
760
+ enabled: boolean;
761
+ timestamp: TimeInput;
762
+ };
763
+ export type TierEnabledChangedOutput = {
764
+ tier_id: BN;
765
+ enabled: boolean;
766
+ timestamp: TimeOutput;
767
+ };
768
+ export type TierParamsInput = {
769
+ line: BigNumberish;
770
+ leverage: BigNumberish;
771
+ duration: BigNumberish;
772
+ maintenance_bps: BigNumberish;
773
+ open_buffer_bps: BigNumberish;
774
+ liq_price_factor: BigNumberish;
775
+ prolong_fee: [BigNumberish, BigNumberish, BigNumberish, BigNumberish];
776
+ max_credit_line_bps: BigNumberish;
777
+ max_price_age: BigNumberish;
778
+ open_fee: BigNumberish;
779
+ profit_share_bps: BigNumberish;
780
+ price_band_bps: BigNumberish;
781
+ };
782
+ export type TierParamsOutput = {
783
+ line: BN;
784
+ leverage: BN;
785
+ duration: BN;
786
+ maintenance_bps: BN;
787
+ open_buffer_bps: BN;
788
+ liq_price_factor: BN;
789
+ prolong_fee: [BN, BN, BN, BN];
790
+ max_credit_line_bps: BN;
791
+ max_price_age: BN;
792
+ open_fee: BN;
793
+ profit_share_bps: BN;
794
+ price_band_bps: BN;
795
+ };
796
+ export type TierVersionPublishedInput = {
797
+ tier_id: BigNumberish;
798
+ version: BigNumberish;
799
+ params: TierParamsInput;
800
+ required_collateral: BigNumberish;
801
+ k: BigNumberish;
802
+ maintenance: BigNumberish;
803
+ open_buffer: BigNumberish;
804
+ threshold_floor: BigNumberish;
805
+ base_repay_fee_ppm: BigNumberish;
806
+ prolong_seconds: [BigNumberish, BigNumberish, BigNumberish, BigNumberish];
807
+ auto_prolong_periods: Vec<ProlongPeriodInput>;
808
+ books: Vec<ContractIdInput>;
809
+ assets: Vec<AssetIdInput>;
810
+ timestamp: TimeInput;
811
+ };
812
+ export type TierVersionPublishedOutput = {
813
+ tier_id: BN;
814
+ version: number;
815
+ params: TierParamsOutput;
816
+ required_collateral: BN;
817
+ k: BN;
818
+ maintenance: BN;
819
+ open_buffer: BN;
820
+ threshold_floor: BN;
821
+ base_repay_fee_ppm: BN;
822
+ prolong_seconds: [BN, BN, BN, BN];
823
+ auto_prolong_periods: Vec<ProlongPeriodOutput>;
824
+ books: Vec<ContractIdOutput>;
825
+ assets: Vec<AssetIdOutput>;
826
+ timestamp: TimeOutput;
827
+ };
828
+ export type TierVersionPublishedV2Input = {
829
+ tier_id: BigNumberish;
830
+ version: BigNumberish;
831
+ params: TierParamsInput;
832
+ terms: TurboTermsInput;
833
+ required_collateral: BigNumberish;
834
+ k: BigNumberish;
835
+ maintenance: BigNumberish;
836
+ open_buffer: BigNumberish;
837
+ threshold_floor: BigNumberish;
838
+ base_repay_fee_ppm: BigNumberish;
839
+ term_seconds: BigNumberish;
840
+ rollover_window_seconds: BigNumberish;
841
+ books: Vec<ContractIdInput>;
842
+ assets: Vec<AssetIdInput>;
843
+ timestamp: TimeInput;
844
+ };
845
+ export type TierVersionPublishedV2Output = {
846
+ tier_id: BN;
847
+ version: number;
848
+ params: TierParamsOutput;
849
+ terms: TurboTermsOutput;
850
+ required_collateral: BN;
851
+ k: BN;
852
+ maintenance: BN;
853
+ open_buffer: BN;
854
+ threshold_floor: BN;
855
+ base_repay_fee_ppm: BN;
856
+ term_seconds: BN;
857
+ rollover_window_seconds: BN;
858
+ books: Vec<ContractIdOutput>;
859
+ assets: Vec<AssetIdOutput>;
860
+ timestamp: TimeOutput;
861
+ };
862
+ export type TimeInput = {
863
+ unix: BigNumberish;
864
+ };
865
+ export type TimeOutput = {
866
+ unix: BN;
867
+ };
868
+ export type TurboTermsInput = {
869
+ max_loss_bps: [BigNumberish, BigNumberish, BigNumberish, BigNumberish];
870
+ rollover_profit_bps: BigNumberish;
871
+ max_rollovers: BigNumberish;
872
+ };
873
+ export type TurboTermsOutput = {
874
+ max_loss_bps: [BN, BN, BN, BN];
875
+ rollover_profit_bps: BN;
876
+ max_rollovers: BN;
877
+ };
878
+ export type UnpauseEventInput = {
879
+ caller: IdentityInput;
880
+ };
881
+ export type UnpauseEventOutput = {
882
+ caller: IdentityOutput;
883
+ };
884
+ export type UserDiscountInput = {
885
+ discount_bps: BigNumberish;
886
+ scope: DiscountScopeInput;
887
+ };
888
+ export type UserDiscountOutput = {
889
+ discount_bps: BN;
890
+ scope: DiscountScopeOutput;
891
+ };
892
+ export type UserDiscountChangedInput = {
893
+ user: IdentityInput;
894
+ tier_id: Option<BigNumberish>;
895
+ discount: Option<UserDiscountInput>;
896
+ timestamp: TimeInput;
897
+ };
898
+ export type UserDiscountChangedOutput = {
899
+ user: IdentityOutput;
900
+ tier_id: Option<BN>;
901
+ discount: Option<UserDiscountOutput>;
902
+ timestamp: TimeOutput;
903
+ };
904
+ export type UserDiscountsRemovedInput = {
905
+ user: IdentityInput;
906
+ tier_id: Option<BigNumberish>;
907
+ removed: boolean;
908
+ timestamp: TimeInput;
909
+ };
910
+ export type UserDiscountsRemovedOutput = {
911
+ user: IdentityOutput;
912
+ tier_id: Option<BN>;
913
+ removed: boolean;
914
+ timestamp: TimeOutput;
915
+ };
916
+ export type PropMarginPoolConfigurables = Partial<{
917
+ INITIAL_ADMIN: IdentityInput;
918
+ INITIAL_REGISTRY: ContractIdInput;
919
+ INITIAL_PRICE_FEED: ContractIdInput;
920
+ INITIAL_PLATFORM_PAYOUT: IdentityInput;
921
+ INITIAL_LIQUIDATOR: IdentityInput;
922
+ COLLATERAL_ASSET: AssetIdInput;
923
+ COLLATERAL_DECIMALS: BigNumberish;
924
+ MAX_TIER_BOOKS: BigNumberish;
925
+ BASE_REPAY_FEE_PPM: BigNumberish;
926
+ }>;
927
+ export declare class PropMarginPoolInterface extends Interface {
928
+ constructor();
929
+ functions: {
930
+ add_books: FunctionFragment;
931
+ add_collateral: FunctionFragment;
932
+ auto_prolong_session: FunctionFragment;
933
+ borrow: FunctionFragment;
934
+ collateral_asset: FunctionFragment;
935
+ collateral_decimals: FunctionFragment;
936
+ current_tier_version: FunctionFragment;
937
+ draw: FunctionFragment;
938
+ expire_or_rollover: FunctionFragment;
939
+ expire_session: FunctionFragment;
940
+ expiry_cosigner: FunctionFragment;
941
+ get_bad_debt: FunctionFragment;
942
+ get_debt: FunctionFragment;
943
+ get_rollover: FunctionFragment;
944
+ get_session: FunctionFragment;
945
+ get_session_lines: FunctionFragment;
946
+ get_tier: FunctionFragment;
947
+ get_turbo_terms: FunctionFragment;
948
+ get_user_discount: FunctionFragment;
949
+ has_debts: FunctionFragment;
950
+ has_session: FunctionFragment;
951
+ initialize: FunctionFragment;
952
+ is_call_allowed: FunctionFragment;
953
+ is_initialized: FunctionFragment;
954
+ is_tier_enabled: FunctionFragment;
955
+ liquidate: FunctionFragment;
956
+ liquidator: FunctionFragment;
957
+ max_tier_books: FunctionFragment;
958
+ min_sellable: FunctionFragment;
959
+ open_session: FunctionFragment;
960
+ platform_payout: FunctionFragment;
961
+ price_feed: FunctionFragment;
962
+ prolong_session: FunctionFragment;
963
+ publish_tier_v2: FunctionFragment;
964
+ publish_tier_version: FunctionFragment;
965
+ receive_settlement: FunctionFragment;
966
+ registry: FunctionFragment;
967
+ remove_user_discount: FunctionFragment;
968
+ repay: FunctionFragment;
969
+ repay_base_from_collateral: FunctionFragment;
970
+ repay_from_collateral: FunctionFragment;
971
+ resolve_user_discount: FunctionFragment;
972
+ return_quote: FunctionFragment;
973
+ session_assets: FunctionFragment;
974
+ session_books: FunctionFragment;
975
+ session_turbo_terms: FunctionFragment;
976
+ set_auto_prolong: FunctionFragment;
977
+ set_expiry_cosigner: FunctionFragment;
978
+ set_liquidator: FunctionFragment;
979
+ set_platform_payout: FunctionFragment;
980
+ set_price_feed: FunctionFragment;
981
+ set_registry: FunctionFragment;
982
+ set_tier_enabled: FunctionFragment;
983
+ set_user_discount: FunctionFragment;
984
+ settle_session: FunctionFragment;
985
+ tier_assets: FunctionFragment;
986
+ tier_books: FunctionFragment;
987
+ withdraw: FunctionFragment;
988
+ get_roles: FunctionFragment;
989
+ grant_role: FunctionFragment;
990
+ has_role: FunctionFragment;
991
+ revoke_role: FunctionFragment;
992
+ is_paused: FunctionFragment;
993
+ pause: FunctionFragment;
994
+ unpause: FunctionFragment;
995
+ };
996
+ }
997
+ export declare class PropMarginPool extends __Contract {
998
+ static readonly abi: {
999
+ programType: string;
1000
+ specVersion: string;
1001
+ encodingVersion: string;
1002
+ concreteTypes: ({
1003
+ type: string;
1004
+ concreteTypeId: string;
1005
+ metadataTypeId?: undefined;
1006
+ typeArguments?: undefined;
1007
+ } | {
1008
+ type: string;
1009
+ concreteTypeId: string;
1010
+ metadataTypeId: number;
1011
+ typeArguments?: undefined;
1012
+ } | {
1013
+ type: string;
1014
+ concreteTypeId: string;
1015
+ metadataTypeId: number;
1016
+ typeArguments: string[];
1017
+ })[];
1018
+ metadataTypes: ({
1019
+ type: string;
1020
+ metadataTypeId: number;
1021
+ components?: undefined;
1022
+ typeParameters?: undefined;
1023
+ } | {
1024
+ type: string;
1025
+ metadataTypeId: number;
1026
+ components: ({
1027
+ name: string;
1028
+ typeId: string;
1029
+ } | {
1030
+ name: string;
1031
+ typeId: number;
1032
+ })[];
1033
+ typeParameters: number[];
1034
+ } | {
1035
+ type: string;
1036
+ metadataTypeId: number;
1037
+ components: ({
1038
+ name: string;
1039
+ typeId: number;
1040
+ typeArguments?: undefined;
1041
+ } | {
1042
+ name: string;
1043
+ typeId: string;
1044
+ typeArguments?: undefined;
1045
+ } | {
1046
+ name: string;
1047
+ typeId: number;
1048
+ typeArguments: {
1049
+ name: string;
1050
+ typeId: number;
1051
+ }[];
1052
+ })[];
1053
+ typeParameters?: undefined;
1054
+ } | {
1055
+ type: string;
1056
+ metadataTypeId: number;
1057
+ components: ({
1058
+ name: string;
1059
+ typeId: number;
1060
+ typeArguments?: undefined;
1061
+ } | {
1062
+ name: string;
1063
+ typeId: number;
1064
+ typeArguments: {
1065
+ name: string;
1066
+ typeId: string;
1067
+ }[];
1068
+ } | {
1069
+ name: string;
1070
+ typeId: number;
1071
+ typeArguments: {
1072
+ name: string;
1073
+ typeId: number;
1074
+ }[];
1075
+ })[];
1076
+ typeParameters?: undefined;
1077
+ } | {
1078
+ type: string;
1079
+ metadataTypeId: number;
1080
+ components: ({
1081
+ name: string;
1082
+ typeId: number;
1083
+ typeArguments?: undefined;
1084
+ } | {
1085
+ name: string;
1086
+ typeId: number;
1087
+ typeArguments: {
1088
+ name: string;
1089
+ typeId: string;
1090
+ }[];
1091
+ } | {
1092
+ name: string;
1093
+ typeId: string;
1094
+ typeArguments?: undefined;
1095
+ })[];
1096
+ typeParameters?: undefined;
1097
+ } | {
1098
+ type: string;
1099
+ metadataTypeId: number;
1100
+ components: ({
1101
+ name: string;
1102
+ typeId: number;
1103
+ typeArguments: {
1104
+ name: string;
1105
+ typeId: number;
1106
+ }[];
1107
+ } | {
1108
+ name: string;
1109
+ typeId: string;
1110
+ typeArguments?: undefined;
1111
+ })[];
1112
+ typeParameters: number[];
1113
+ })[];
1114
+ functions: ({
1115
+ name: string;
1116
+ inputs: {
1117
+ name: string;
1118
+ concreteTypeId: string;
1119
+ }[];
1120
+ output: string;
1121
+ attributes: {
1122
+ name: string;
1123
+ arguments: string[];
1124
+ }[];
1125
+ } | {
1126
+ name: string;
1127
+ inputs: never[];
1128
+ output: string;
1129
+ attributes: null;
1130
+ })[];
1131
+ loggedTypes: {
1132
+ logId: string;
1133
+ concreteTypeId: string;
1134
+ }[];
1135
+ messagesTypes: never[];
1136
+ configurables: {
1137
+ name: string;
1138
+ concreteTypeId: string;
1139
+ offset: number;
1140
+ indirect: boolean;
1141
+ }[];
1142
+ errorCodes: {};
1143
+ panickingCalls: {};
1144
+ };
1145
+ static readonly storageSlots: StorageSlot[];
1146
+ interface: PropMarginPoolInterface;
1147
+ functions: {
1148
+ add_books: InvokeFunction<[tier_id: BigNumberish, books: Vec<ContractIdInput>], void>;
1149
+ add_collateral: InvokeFunction<[account: ContractIdInput], void>;
1150
+ auto_prolong_session: InvokeFunction<[account: ContractIdInput], void>;
1151
+ borrow: InvokeFunction<[asset: AssetIdInput, amount: BigNumberish], void>;
1152
+ collateral_asset: InvokeFunction<[], AssetIdOutput>;
1153
+ collateral_decimals: InvokeFunction<[], number>;
1154
+ current_tier_version: InvokeFunction<[tier_id: BigNumberish], Option<number>>;
1155
+ draw: InvokeFunction<[amount: BigNumberish], void>;
1156
+ expire_or_rollover: InvokeFunction<[account: ContractIdInput, cleanups: Vec<PropOrderBookCleanupInput>, outside: BigNumberish, roll: boolean, cosigner_signature: SignatureInput], void>;
1157
+ expire_session: InvokeFunction<[account: ContractIdInput, cleanups: Vec<PropOrderBookCleanupInput>], void>;
1158
+ expiry_cosigner: InvokeFunction<[], Option<AddressOutput>>;
1159
+ get_bad_debt: InvokeFunction<[], BN>;
1160
+ get_debt: InvokeFunction<[account: ContractIdInput, asset: AssetIdInput], BN>;
1161
+ get_rollover: InvokeFunction<[account: ContractIdInput], Option<RolloverViewOutput>>;
1162
+ get_session: InvokeFunction<[account: ContractIdInput], Option<SessionViewOutput>>;
1163
+ get_session_lines: InvokeFunction<[account: ContractIdInput], SessionLinesOutput>;
1164
+ get_tier: InvokeFunction<[tier_id: BigNumberish, version: BigNumberish], Option<TierParamsOutput>>;
1165
+ get_turbo_terms: InvokeFunction<[tier_id: BigNumberish, version: BigNumberish], Option<TurboTermsOutput>>;
1166
+ get_user_discount: InvokeFunction<[user: IdentityInput, tier_id?: Option<BigNumberish>], Option<UserDiscountOutput>>;
1167
+ has_debts: InvokeFunction<[account: ContractIdInput], boolean>;
1168
+ has_session: InvokeFunction<[account: ContractIdInput], boolean>;
1169
+ initialize: InvokeFunction<[], void>;
1170
+ is_call_allowed: InvokeFunction<[account: ContractIdInput, target: ContractIdInput], boolean>;
1171
+ is_initialized: InvokeFunction<[], boolean>;
1172
+ is_tier_enabled: InvokeFunction<[tier_id: BigNumberish], boolean>;
1173
+ liquidate: InvokeFunction<[account: ContractIdInput, cleanups: Vec<PropOrderBookCleanupInput>], void>;
1174
+ liquidator: InvokeFunction<[], IdentityOutput>;
1175
+ max_tier_books: InvokeFunction<[], BN>;
1176
+ min_sellable: InvokeFunction<[account: ContractIdInput, asset: AssetIdInput], Option<BN>>;
1177
+ open_session: InvokeFunction<[tier_id: BigNumberish, period: ProlongPeriodInput], void>;
1178
+ platform_payout: InvokeFunction<[], IdentityOutput>;
1179
+ price_feed: InvokeFunction<[], ContractIdOutput>;
1180
+ prolong_session: InvokeFunction<[period: ProlongPeriodInput, times: BigNumberish], void>;
1181
+ publish_tier_v2: InvokeFunction<[tier_id: BigNumberish, params: TierParamsInput, terms: TurboTermsInput, books: Vec<ContractIdInput>], number>;
1182
+ publish_tier_version: InvokeFunction<[tier_id: BigNumberish, params: TierParamsInput, books: Vec<ContractIdInput>], number>;
1183
+ receive_settlement: InvokeFunction<[], void>;
1184
+ registry: InvokeFunction<[], ContractIdOutput>;
1185
+ remove_user_discount: InvokeFunction<[user: IdentityInput, tier_id?: Option<BigNumberish>], void>;
1186
+ repay: InvokeFunction<[], void>;
1187
+ repay_base_from_collateral: InvokeFunction<[asset: AssetIdInput, amount: BigNumberish], void>;
1188
+ repay_from_collateral: InvokeFunction<[amount: BigNumberish], void>;
1189
+ resolve_user_discount: InvokeFunction<[user: IdentityInput, tier_id: BigNumberish], Option<UserDiscountOutput>>;
1190
+ return_quote: InvokeFunction<[], void>;
1191
+ session_assets: InvokeFunction<[account: ContractIdInput], Vec<AssetIdOutput>>;
1192
+ session_books: InvokeFunction<[account: ContractIdInput], Vec<ContractIdOutput>>;
1193
+ session_turbo_terms: InvokeFunction<[account: ContractIdInput], Option<TurboTermsOutput>>;
1194
+ set_auto_prolong: InvokeFunction<[period?: Option<ProlongPeriodInput>], void>;
1195
+ set_expiry_cosigner: InvokeFunction<[cosigner: AddressInput], void>;
1196
+ set_liquidator: InvokeFunction<[new_liquidator: IdentityInput], void>;
1197
+ set_platform_payout: InvokeFunction<[new_platform_payout: IdentityInput], void>;
1198
+ set_price_feed: InvokeFunction<[new_price_feed: ContractIdInput], void>;
1199
+ set_registry: InvokeFunction<[new_registry: ContractIdInput], void>;
1200
+ set_tier_enabled: InvokeFunction<[tier_id: BigNumberish, enabled: boolean], void>;
1201
+ set_user_discount: InvokeFunction<[user: IdentityInput, tier_id?: Option<BigNumberish>, discount?: Option<UserDiscountInput>], void>;
1202
+ settle_session: InvokeFunction<[cleanups: Vec<PropOrderBookCleanupInput>], void>;
1203
+ tier_assets: InvokeFunction<[tier_id: BigNumberish, version: BigNumberish], Vec<AssetIdOutput>>;
1204
+ tier_books: InvokeFunction<[tier_id: BigNumberish, version: BigNumberish], Vec<ContractIdOutput>>;
1205
+ withdraw: InvokeFunction<[asset: AssetIdInput, amount: BigNumberish], void>;
1206
+ get_roles: InvokeFunction<[account: IdentityInput], BN>;
1207
+ grant_role: InvokeFunction<[role: BigNumberish, account: IdentityInput], void>;
1208
+ has_role: InvokeFunction<[role: BigNumberish, account: IdentityInput], boolean>;
1209
+ revoke_role: InvokeFunction<[role: BigNumberish, account: IdentityInput], void>;
1210
+ is_paused: InvokeFunction<[], boolean>;
1211
+ pause: InvokeFunction<[], void>;
1212
+ unpause: InvokeFunction<[], void>;
1213
+ };
1214
+ constructor(id: string | Address, accountOrProvider: Account | Provider);
1215
+ }
1216
+ //# sourceMappingURL=PropMarginPool.d.ts.map