@win-trader/bindings 0.0.2 → 0.0.3

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.
@@ -101,11 +101,25 @@ export class Client extends ContractClient {
101
101
  "AAAAAAAAAAAAAAANc2V0X3B1Ymxpc2hlcgAAAAAAAAIAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAANbmV3X3B1Ymxpc2hlcgAAAAAAABMAAAAA",
102
102
  "AAAAAAAAAAAAAAAOY2FuY2VsX3VwZ3JhZGUAAAAAAAEAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAA=",
103
103
  "AAAAAAAAAAAAAAAPcHJvcG9zZV91cGdyYWRlAAAAAAIAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAAJd2FzbV9oYXNoAAAAAAAD7gAAACAAAAAA",
104
- "AAAAAQAAADVSZXByZXNlbnRzIGEgc2luZ2xlIHRyYWRlcidzIG9wZW4gbGV2ZXJhZ2VkIHBvc2l0aW9uLgAAAAAAAAAAAAAIUG9zaXRpb24AAAAKAAAAKFVTREMgY29sbGF0ZXJhbCBkZXBvc2l0ZWQgYnkgdGhlIHRyYWRlci4AAAAKY29sbGF0ZXJhbAAAAAAACwAAAEVHbG9iYWwgYm9ycm93IGFjY3VtdWxhdG9yIGluZGV4IGF0IHBvc2l0aW9uIG9wZW4gKGZvciBsYXp5IGZlZSBjYWxjKS4AAAAAAAASZW50cnlfYm9ycm93X2luZGV4AAAAAAALAAAARkdsb2JhbCBmdW5kaW5nIGFjY3VtdWxhdG9yIGluZGV4IGF0IHBvc2l0aW9uIG9wZW4gKGZvciBsYXp5IGZlZSBjYWxjKS4AAAAAABNlbnRyeV9mdW5kaW5nX2luZGV4AAAAAAsAAABBT3JhY2xlIHByaWNlIGF0IHRoZSB0aW1lIHRoZSBwb3NpdGlvbiB3YXMgb3BlbmVkIChzY2FsZWQgYnkgMWU3KS4AAAAAAAALZW50cnlfcHJpY2UAAAAACwAAAIxGbGF0IFVTREMgZmVlIGVzY3Jvd2VkIHdoZW4gVFAgb3IgU0wgaXMgc2V0LiBQYWlkIHRvIGV4ZWN1dG9yIG9uIHRyaWdnZXIsIHJlZnVuZGVkIG9uIHVzZXIgY2xvc2UgLyBBREwsIGZvcmZlaXRlZCB0byByZXZlbnVlIG9uIGxpcXVpZGF0aW9uLgAAABRleGVjdXRpb25fZmVlX2VzY3JvdwAAAAsAAAAsVHJ1ZSBmb3IgYSBsb25nIHBvc2l0aW9uLCBmYWxzZSBmb3IgYSBzaG9ydC4AAAAHaXNfbG9uZwAAAAABAAAAT0Jsb2NrIHRpbWVzdGFtcCB3aGVuIHRoZSBwb3NpdGlvbiB3YXMgbGFzdCBpbmNyZWFzZWQgKGFudGktZnJvbnQtcnVubmluZyBsb2NrKS4AAAAAE2xhc3RfaW5jcmVhc2VkX3RpbWUAAAAABgAAACZOb3Rpb25hbCBzaXplIG9mIHRoZSBwb3NpdGlvbiBpbiBVU0RDLgAAAAAABHNpemUAAAALAAAALVN0b3AtbG9zcyBwcmljZSAoc2NhbGVkIGJ5IDFlNykuIDAgPSBub3Qgc2V0LgAAAAAAAAlzdG9wX2xvc3MAAAAAAAALAAAAL1Rha2UtcHJvZml0IHByaWNlIChzY2FsZWQgYnkgMWU3KS4gMCA9IG5vdCBzZXQuAAAAAAt0YWtlX3Byb2ZpdAAAAAAL",
105
- "AAAAAQAAADhHbG9iYWwgbWFya2V0IHN0YXRlIGZvciBhIHNpbmdsZSB0cmFkZWFibGUgYXNzZXQgc3ltYm9sLgAAAAAAAAAKTWFya2V0SW5mbwAAAAAABwAAADxDdW11bGF0aXZlIGJvcnJvdyBmZWUgaW5kZXggKGdyb3dzIG1vbm90b25pY2FsbHkgd2l0aCB0aW1lKS4AAAAQYWNjX2JvcnJvd19pbmRleAAAAAsAAABEQ3VtdWxhdGl2ZSBmdW5kaW5nIHJhdGUgaW5kZXggKHNpZ25lZDsgcG9zaXRpdmUgPSBsb25ncyBwYXkgc2hvcnRzKS4AAAARYWNjX2Z1bmRpbmdfaW5kZXgAAAAAAAALAAAAQVZvbHVtZS13ZWlnaHRlZCBhdmVyYWdlIGVudHJ5IHByaWNlIG9mIGFsbCBhY3RpdmUgbG9uZyBwb3NpdGlvbnMuAAAAAAAAFWdsb2JhbF9sb25nX2F2Z19wcmljZQAAAAAAAAsAAABCVm9sdW1lLXdlaWdodGVkIGF2ZXJhZ2UgZW50cnkgcHJpY2Ugb2YgYWxsIGFjdGl2ZSBzaG9ydCBwb3NpdGlvbnMuAAAAAAAWZ2xvYmFsX3Nob3J0X2F2Z19wcmljZQAAAAAACwAAACpUaW1lc3RhbXAgb2YgdGhlIGxhc3Qga2VlcGVyIGluZGV4IHVwZGF0ZS4AAAAAABFsYXN0X2luZGV4X3VwZGF0ZQAAAAAAAAYAAAAvVG90YWwgbm90aW9uYWwgc2l6ZSBvZiBhbGwgb3BlbiBsb25nIHBvc2l0aW9ucy4AAAAAEmxvbmdfb3Blbl9pbnRlcmVzdAAAAAAACwAAADBUb3RhbCBub3Rpb25hbCBzaXplIG9mIGFsbCBvcGVuIHNob3J0IHBvc2l0aW9ucy4AAAATc2hvcnRfb3Blbl9pbnRlcmVzdAAAAAAL",
106
- "AAAAAQAAAC5HbG9iYWwgc2FmZXR5IHRocmVzaG9sZHMgZm9yIHByaWNlIHZhbGlkYXRpb24uAAAAAAAAAAAADE9yYWNsZUNvbmZpZwAAAAQAAAEkSG93IGxvbmcgYSBjYWNoZWQgYWdncmVnYXRlZCBwcmljZSByZW1haW5zIHZhbGlkIChpbiBzZWNvbmRzKS4gQQpgZ2V0X3ByaWNlYCBjYWxsIHdpdGhpbiB0aGlzIHdpbmRvdyBvZiB0aGUgbGFzdCBmZXRjaCByZXR1cm5zIHRoZQpjYWNoZWQgdmFsdWUgd2l0aG91dCByZS1xdWVyeWluZyBzb3VyY2VzLiBNdXN0IGJlID4gMCBhbmQKPD0gYHN0YWxlbmVzc190aHJlc2hvbGRgIChvdGhlcndpc2UgdGhlIGNhY2hlIGNvdWxkIG91dGxpdmUgYSBmcmVzaApzb3VyY2UgcHJpY2UgYW5kIHNlcnZlIHN0YWxlIGRhdGEpLgAAAA5jYWNoZV9kdXJhdGlvbgAAAAAABgAAAIpNYXhpbXVtIGFsbG93ZWQgc3ByZWFkIGJldHdlZW4gb3JhY2xlIHNvdXJjZXMgaW4gYmFzaXMgcG9pbnRzCihlLmcuLCAxMDAgPSAxJSkuIEJvdW5kZWQgYXQgYHNoYXJlZDo6Y29uc3RhbnRzOjpNQVhfREVWSUFUSU9OX0JQU19DRUlMSU5HYC4AAAAAABFtYXhfZGV2aWF0aW9uX2JwcwAAAAAAAAsAAADjTWluaW11bSBudW1iZXIgb2Ygc291cmNlIHJlc3BvbnNlcyB0aGF0IG11c3QgYWdyZWUgd2l0aGluCmBtYXhfZGV2aWF0aW9uX2Jwc2AgZm9yIE9yYWNsZVJvdXRlciB0byByZXR1cm4gYSBwcmljZS4gRmxvb3JlZCBhdApgc2hhcmVkOjpjb25zdGFudHM6Ok1JTl9SRVFVSVJFRF9TT1VSQ0VTX0ZMT09SYCwgY2VpbGluZ2VkIGF0CmBzaGFyZWQ6OmNvbnN0YW50czo6TUFYX09SQUNMRV9TT1VSQ0VTYC4AAAAAFG1pbl9yZXF1aXJlZF9zb3VyY2VzAAAABAAAAFlNYXhpbXVtIGFnZSBvZiBhbiBleHRlcm5hbCBTRVAtNDAgcHJpY2UgZmVlZCBiZWZvcmUgaXQgaXMgcmVqZWN0ZWQKYXMgc3RhbGUgKGluIHNlY29uZHMpLgAAAAAAABNzdGFsZW5lc3NfdGhyZXNob2xkAAAAAAY=",
104
+ "AAAAAQAAAY9BdXRob3JpdGF0aXZlIHBlci1tYXJrZXQgc3RhdGU6IHRoZSBzaWRlIGFnZ3JlZ2F0ZXMsIHRoZSBmdW5kaW5nIGluZGljZXMsCnRoZSBjdXJyZW50IGZ1bmRpbmcgZmxvd3MsIGFuZCB0aGUgbWFya2V0IGNvbmZpZ3VyYXRpb24uCgpTb3JvYmFuIGxpbWl0cyBVRFQgZmllbGQgbmFtZXMgdG8gMzAgY2hhcmFjdGVycywgc28gd2hlcmUgYSBkb2MgZ2xvc3NhcnkKdGVybSBpcyBsb25nZXIgdGhlIGZpZWxkIGRyb3BzIHRoZSByZWR1bmRhbnQgcXVhbGlmaWVyIGFuZCBpdHMgZG9jCmNvbW1lbnQgY2FycmllcyB0aGUgZnVsbCB0ZXJtIChlLmcuIGByZWNlaXZlcl9iYWNrZWRfaW5kZXhfbG9uZ2AgaXMgdGhlCmRvYydzIGByZWNlaXZlcl9iYWNrZWRfcGF5ZXJfaW5kZXhgIGZvciB0aGUgbG9uZyBzaWRlKS4AAAAAAAAAAAZNYXJrZXQAAAAAABIAAAAAAAAABmNvbmZpZwAAAAAH0AAAAAxNYXJrZXRDb25maWcAAABFYElOREVYX1BSRUNJU0lPTmAtc2NhbGVkIGJwcy9kYXkgcGF5ZXIgcmF0ZSBmb3IgdGhlIGN1cnJlbnQgaW50ZXJ2YWwuAAAAAAAAEmN1cnJlbnRfcGF5ZXJfcmF0ZQAAAAAACwAAAAAAAAASY3VycmVudF9wYXllcl9zaWRlAAAAAAfQAAAACVBheWVyU2lkZQAAAAAAAAAAAAAXbGFzdF9mdW5kaW5nX2NoZWNrcG9pbnQAAAAABgAAAAAAAAAEbG9uZwAAB9AAAAAKTWFya2V0U2lkZQAAAAAAXUN1bXVsYXRpdmUgcGF5ZXIgZmVlIHBlciB1bml0IG9mIGRvbWluYW50LXNpZGUgc2l6ZSB0aGF0IGlzIExQCnJldmVudWUgb24gY29sbGVjdGlvbiAowqc4LjIpLgAAAAAAABRscF9iYWNrZWRfaW5kZXhfbG9uZwAAAAsAAAAAAAAAFWxwX2JhY2tlZF9pbmRleF9zaG9ydAAAAAAAAAsAAABTTFAtYWxsb2NhdGVkIHJlbWFpbmRlciBvZiB0aGUgcGF5ZXIgZmxvdywgY2FzaC9zZWNvbmQgYXQKYElOREVYX1BSRUNJU0lPTmAgKMKnOC4xKS4AAAAAEmxwX2Zsb3dfcGVyX3NlY29uZAAAAAAACwAAAAAAAAASbHBfcGF5ZXJfcmVtYWluZGVyAAAAAAALAAAAhUN1bXVsYXRpdmUgcGF5ZXIgZmVlIHBlciB1bml0IG9mIGRvbWluYW50LXNpZGUgc2l6ZSB3aG9zZSBjb2xsZWN0aW9uCnJlc3RvcmVzIGNhc2ggYmFja2luZyBhbiBhbHJlYWR5LWFjY3J1ZWQgcmVjZWl2ZXIgY2xhaW0gKMKnOC4yKS4AAAAAAAAacmVjZWl2ZXJfYmFja2VkX2luZGV4X2xvbmcAAAAAAAsAAAAAAAAAG3JlY2VpdmVyX2JhY2tlZF9pbmRleF9zaG9ydAAAAAALAAAAVVJlY2VpdmVyLWFsbG9jYXRlZCBzaGFyZSBvZiB0aGUgcGF5ZXIgZmxvdywgY2FzaC9zZWNvbmQgYXQKYElOREVYX1BSRUNJU0lPTmAgKMKnOC4xKS4AAAAAAAAYcmVjZWl2ZXJfZmxvd19wZXJfc2Vjb25kAAAACwAAAAAAAAAXcmVjZWl2ZXJfZmxvd19yZW1haW5kZXIAAAAACwAAAD5DdW11bGF0aXZlIGZ1bmRpbmcgY3JlZGl0IHBlciB1bml0IG9mIGxpZ2h0LXNpZGUgc2l6ZSAowqc4LjIpLgAAAAAAE3JlY2VpdmVyX2luZGV4X2xvbmcAAAAACwAAAAAAAAAYcmVjZWl2ZXJfaW5kZXhfcmVtYWluZGVyAAAACwAAAAAAAAAUcmVjZWl2ZXJfaW5kZXhfc2hvcnQAAAALAAAAAAAAABhyZWNlaXZlcl9wYXllcl9yZW1haW5kZXIAAAALAAAAAAAAAAVzaG9ydAAAAAAAB9AAAAAKTWFya2V0U2lkZQAA",
105
+ "AAAAAQAAAAAAAAAAAAAACExwQ29uZmlnAAAAAwAAAAAAAAAQbHBfcmVxdWVzdF9kZWxheQAAAAYAAAAAAAAAHG1heF93aXRoZHJhd191dGlsaXphdGlvbl9icHMAAAAEAAAAAAAAABptaW5fZGVwb3NpdF9uYXZfZmFjdG9yX2JwcwAAAAAABA==",
106
+ "AAAAAQAAADVSZXByZXNlbnRzIGEgc2luZ2xlIHRyYWRlcidzIG9wZW4gbGV2ZXJhZ2VkIHBvc2l0aW9uLgAAAAAAAAAAAAAIUG9zaXRpb24AAAAQAAAAIUFzc2V0IHVuaXRzIGF0IGBQUklDRV9QUkVDSVNJT05gLgAAAAAAAA1iYXNlX2V4cG9zdXJlAAAAAAAACwAAAAAAAAALYm9ycm93X2RlYnQAAAAACwAAAClDYXNoIG93bmVkIGJ5IGFuIG9wdGlvbmFsLW9yZGVyIGV4ZWN1dG9yLgAAAAAAABBleGVjdXRpb25fYnVkZ2V0AAAACwAAAAAAAAAYZnVuZGluZ19wYWlkX3RvX2xwc19kZWJ0AAAACwAAAAAAAAAeZnVuZGluZ19wYWlkX3RvX3JlY2VpdmVyc19kZWJ0AAAAAAALAAAAAAAAABVmdW5kaW5nX3JlY2VpdmVkX2RlYnQAAAAAAAALAAAAAAAAAAJpZAAAAAAABgAAAAAAAAAHaXNfbG9uZwAAAAABAAAAAAAAABNsYXN0X2luY3JlYXNlZF90aW1lAAAAAAYAAAAAAAAABm1hcmtldAAAAAAAEQAAAAAAAAAFb3duZXIAAAAAAAATAAAALkZpeGVkIGdyb3NzIGNhcGFjaXR5IGFzc2lnbmVkIHdoZW4gcmlzayBvcGVucy4AAAAAAApyaXNrX3VuaXRzAAAAAAALAAAAIlVTRCBub3Rpb25hbCBhdCBgUFJJQ0VfUFJFQ0lTSU9OYC4AAAAAAARzaXplAAAACwAAADtUcmlnZ2VyIHByaWNlIGZvciB0aGUgb3B0aW9uYWwgc3RvcC1sb3NzIG9yZGVyOyBgMGAgPSBub25lLgAAAAAJc3RvcF9sb3NzAAAAAAAACwAAAMpUcmFkZXItb3duZWQgY29sbGF0ZXJhbCByZWNvcmRlZCBpbiBjb250cmFjdCBzdGF0ZSAodGhlIGRvYydzCiJzdG9yZWQgY29sbGF0ZXJhbCIpLiBFZmZlY3RpdmUgY29sbGF0ZXJhbCDigJQgc3RvcmVkIGNvbGxhdGVyYWwgYWZ0ZXIKcGVuZGluZyBmZWVzIGFuZCBmdW5kaW5nIGNyZWRpdHMg4oCUIGlzIGFsd2F5cyBkZXJpdmVkLCBuZXZlciBzdG9yZWQuAAAAAAARc3RvcmVkX2NvbGxhdGVyYWwAAAAAAAALAAAAPVRyaWdnZXIgcHJpY2UgZm9yIHRoZSBvcHRpb25hbCB0YWtlLXByb2ZpdCBvcmRlcjsgYDBgID0gbm9uZS4AAAAAAAALdGFrZV9wcm9maXQAAAAACw==",
107
+ "AAAAAQAAAAAAAAAAAAAACUxwUmVxdWVzdAAAAAAAAAcAAAAAAAAABmFtb3VudAAAAAAACwAAAAAAAAANZXhlY3V0ZV9hZnRlcgAAAAAAAAYAAAAAAAAAAmlkAAAAAAAGAAAAAAAAAARraW5kAAAH0AAAAA1McFJlcXVlc3RLaW5kAAAAAAAAAAAAAAVvd25lcgAAAAAAABMAAAAAAAAADHJlcXVlc3RfdGltZQAAAAYAAAAAAAAABnN0YXR1cwAAAAAH0AAAAA9McFJlcXVlc3RTdGF0dXMA",
108
+ "AAAAAgAAAHlXaGljaCBzaWRlIGN1cnJlbnRseSBwYXlzIGZ1bmRpbmcgKMKnOC4xOiB0aGUgc2lkZSB3aXRoIG1vcmUgYmFzZQpleHBvc3VyZSkuIGBOb25lYCB3aGVuIHRoZSBtYXJrZXQgaXMgYmFsYW5jZWQgb3IgZW1wdHkuAAAAAAAAAAAAAAlQYXllclNpZGUAAAAAAAADAAAAAAAAAAAAAAAETm9uZQAAAAAAAAAAAAAABExvbmcAAAAAAAAAAAAAAAVTaG9ydAAAAA==",
109
+ "AAAAAgAAAAAAAAAAAAAACVJpc2tTdGF0ZQAAAAAAAAQAAAAAAAAAAAAAAAZOb3JtYWwAAAAAAAAAAAAAAAAAB1dhcm5pbmcAAAAAAAAAAAAAAAADQWRsAAAAAAAAAAAAAAAAB0hhcmRDYXAA",
110
+ "AAAAAQAAAAAAAAAAAAAACk1hcmtldFNpZGUAAAAAAAUAAAAAAAAADWJhc2VfZXhwb3N1cmUAAAAAAAALAAAAAAAAAApyaXNrX3N0YXRlAAAAAAfQAAAACVJpc2tTdGF0ZQAAAAAAAAAAAAAKcmlza191bml0cwAAAAAACwAAAAAAAAASc2l6ZV9vcGVuX2ludGVyZXN0AAAAAAALAAAAAAAAABdzdG9yZWRfY29sbGF0ZXJhbF90b3RhbAAAAAAL",
111
+ "AAAAAQAAAAAAAAAAAAAAClJvdW5kUHJpY2UAAAAAAAIAAAAAAAAABXByaWNlAAAAAAAACwAAAAAAAAAGc3ltYm9sAAAAAAAR",
112
+ "AAAAAQAAAAAAAAAAAAAAC09yYWNsZVJvdW5kAAAAAAUAAAAAAAAAAmlkAAAAAAAGAAAAAAAAAAtwcmV2aW91c19pZAAAAAAGAAAAAAAAABJwcmV2aW91c190aW1lc3RhbXAAAAAAAAYAAAAAAAAABnByaWNlcwAAAAAD6gAAB9AAAAAKUm91bmRQcmljZQAAAAAAAAAAAAl0aW1lc3RhbXAAAAAAAAAG",
113
+ "AAAAAQAAAAAAAAAAAAAADEdsb2JhbENvbmZpZwAAAAsAAAAAAAAAGGJhc2VfYm9ycm93X3JhdGVfYnBzX2RheQAAAAsAAAAAAAAAGWhhcmRfY2FwX2ZhY3Rvcl9saW1pdF9icHMAAAAAAAAEAAAAAAAAABRscF9yZXZlbnVlX3NoYXJlX2JwcwAAAAQAAAAAAAAAEm1heF9hY3RpdmVfbWFya2V0cwAAAAAABAAAAAAAAAAObWF4X2FkbF9yZXdhcmQAAAAAAAsAAAAAAAAAGm1heF9pbnNvbHZlbnRfdG91Y2hfcmV3YXJkAAAAAAALAAAAAAAAABttYXhfdmFyaWFibGVfYm9ycm93X2Jwc19kYXkAAAAACwAAAAAAAAAObWluX2NvbGxhdGVyYWwAAAAAAAsAAAAAAAAAFW1pbl9wb3NpdGlvbl9saWZldGltZQAAAAAAAAYAAAAAAAAAF3Jpc2tfY2FwYWNpdHlfbGltaXRfYnBzAAAAAAQAAAAAAAAAHXJpc2tfa2VlcGVyX3JldmVudWVfc2hhcmVfYnBzAAAAAAAABA==",
114
+ "AAAAAQAAAAAAAAAAAAAADE1hcmtldENvbmZpZwAAAA8AAAAAAAAAEmFkbF9wbmxfZmFjdG9yX2JwcwAAAAAABAAAAAAAAAAOYWRsX3Jld2FyZF9icHMAAAAAAAQAAAAAAAAAF2hhcmRfY2FwX3BubF9mYWN0b3JfYnBzAAAAAAQAAAAAAAAAFmxpcXVpZGF0aW9uX3Jld2FyZF9icHMAAAAAAAQAAAAAAAAAFm1haW50ZW5hbmNlX21hcmdpbl9icHMAAAAAAAQAAAAAAAAAFm1hcmtldF9yaXNrX2ZhY3Rvcl9icHMAAAAAAAQAAAAAAAAAGG1heF9mdW5kaW5nX3JhdGVfYnBzX2RheQAAAAsAAAAAAAAAFm1heF9sb25nX2Jhc2VfZXhwb3N1cmUAAAAAAAsAAAAAAAAAG21heF9sb25nX3NpemVfb3Blbl9pbnRlcmVzdAAAAAALAAAAAAAAABdtYXhfc2hvcnRfYmFzZV9leHBvc3VyZQAAAAALAAAAAAAAABxtYXhfc2hvcnRfc2l6ZV9vcGVuX2ludGVyZXN0AAAACwAAAAAAAAARb3Blbl9mZWVfaGlnaF9icHMAAAAAAAAEAAAAAAAAABBvcGVuX2ZlZV9sb3dfYnBzAAAABAAAAAAAAAAXcmVjb3ZlcnlfcG5sX2ZhY3Rvcl9icHMAAAAABAAAAAAAAAAWd2FybmluZ19wbmxfZmFjdG9yX2JwcwAAAAAABA==",
115
+ "AAAAAQAAAC5HbG9iYWwgc2FmZXR5IHRocmVzaG9sZHMgZm9yIHByaWNlIHZhbGlkYXRpb24uAAAAAAAAAAAADE9yYWNsZUNvbmZpZwAAAAQAAADzSG93IGxvbmcgYSBjYWNoZWQgYWdncmVnYXRlZCBwcmljZSByZW1haW5zIHZhbGlkIGFmdGVyIHRoZSByb3V0ZXIKZmV0Y2ggKGluIHNlY29uZHMpLiBBIGNhY2hlIGhpdCBhbHNvIHJlcXVpcmVzIGV2ZXJ5IHNvdXJjZSB0aW1lc3RhbXAKdXNlZCBmb3IgdGhlIGNhY2hlZCBtZWRpYW4gdG8gcmVtYWluIHdpdGhpbiBgc3RhbGVuZXNzX3RocmVzaG9sZGAuCk11c3QgYmUgPiAwIGFuZCA8PSBgc3RhbGVuZXNzX3RocmVzaG9sZGAuAAAAAA5jYWNoZV9kdXJhdGlvbgAAAAAABgAAAIlNYXhpbXVtIGFsbG93ZWQgc3ByZWFkIGJldHdlZW4gb3JhY2xlIHNvdXJjZXMgaW4gYmFzaXMgcG9pbnRzCihlLmcuLCAxMDAgPSAxJSkuIEJvdW5kZWQgYXQgYGNyYXRlOjpjb25zdGFudHM6Ok1BWF9ERVZJQVRJT05fQlBTX0NFSUxJTkdgLgAAAAAAABFtYXhfZGV2aWF0aW9uX2JwcwAAAAAAAAsAAADhTWluaW11bSBudW1iZXIgb2Ygc291cmNlIHJlc3BvbnNlcyB0aGF0IG11c3QgYWdyZWUgd2l0aGluCmBtYXhfZGV2aWF0aW9uX2Jwc2AgZm9yIE9yYWNsZVJvdXRlciB0byByZXR1cm4gYSBwcmljZS4gRmxvb3JlZCBhdApgY3JhdGU6OmNvbnN0YW50czo6TUlOX1JFUVVJUkVEX1NPVVJDRVNfRkxPT1JgLCBjZWlsaW5nZWQgYXQKYGNyYXRlOjpjb25zdGFudHM6Ok1BWF9PUkFDTEVfU09VUkNFU2AuAAAAAAAAFG1pbl9yZXF1aXJlZF9zb3VyY2VzAAAABAAAAFlNYXhpbXVtIGFnZSBvZiBhbiBleHRlcm5hbCBTRVAtNDAgcHJpY2UgZmVlZCBiZWZvcmUgaXQgaXMgcmVqZWN0ZWQKYXMgc3RhbGUgKGluIHNlY29uZHMpLgAAAAAAABNzdGFsZW5lc3NfdGhyZXNob2xkAAAAAAY=",
116
+ "AAAAAgAAAAAAAAAAAAAADUxwUmVxdWVzdEtpbmQAAAAAAAACAAAAAAAAAAAAAAAHRGVwb3NpdAAAAAAAAAAAAAAAAApXaXRoZHJhd2FsAAA=",
107
117
  "AAAAAQAAAEtEYXRhIHJlcXVpcmVkIGR1cmluZyBhIFdBU00gbWlncmF0aW9uLiBTaW5nbGUgZGVmaW5pdGlvbiBmb3IgYWxsIGNvbnRyYWN0cy4AAAAAAAAAAA1NaWdyYXRpb25EYXRhAAAAAAAAAQAAAAAAAAAHdmVyc2lvbgAAAAAE",
108
- "AAAAAQAAAb5QZW5kaW5nIFdBU00gdXBncmFkZSDigJQgc2V0IGJ5IGBwcm9wb3NlX3VwZ3JhZGVgLCBjb25zdW1lZCBieSBgdXBncmFkZWAKKGNsZWFyZWQgYXRvbWljYWxseSBvbiBhIHN1Y2Nlc3NmdWwgaW5zdGFsbCksIG9yIGNsZWFyZWQgYnkgYGNhbmNlbF91cGdyYWRlYC4KU2luZ2xlIHNoYXBlIGFjcm9zcyBldmVyeSBwcm90b2NvbCBjb250cmFjdDsgYWxsIGZvdXIgY29udHJhY3RzIHN0b3JlIGl0IGF0CnRoZSBzaGFyZWQgYHBlbmRpbmdfdXBncmFkZWAgU3ltYm9sIGtleSBpbiB0aGVpciBvd24gaW5zdGFuY2Ugc3RvcmFnZSAoc2VlCmBpbnRlcmZhY2VzOjp1cGdyYWRlOjpwZW5kaW5nX3VwZ3JhZGVfa2V5YCkuIGB1cGdyYWRlYCByZWZ1c2VzIHRvIGluc3RhbGwKdW5sZXNzIGBwZW5kaW5nLndhc21faGFzaGAgbWF0Y2hlcyB0aGUgc3VwcGxpZWQgaGFzaCBhbmQgYG5vdyA+PSBldGFgLgAAAAAAAAAAAA5QZW5kaW5nVXBncmFkZQAAAAAAAgAAAAAAAAADZXRhAAAAAAYAAAAAAAAACXdhc21faGFzaAAAAAAAA+4AAAAg",
118
+ "AAAAAQAAAbBQZW5kaW5nIFdBU00gdXBncmFkZSDigJQgc2V0IGJ5IGBwcm9wb3NlX3VwZ3JhZGVgLCBjb25zdW1lZCBieSBgdXBncmFkZWAKKGNsZWFyZWQgYXRvbWljYWxseSBvbiBhIHN1Y2Nlc3NmdWwgaW5zdGFsbCksIG9yIGNsZWFyZWQgYnkgYGNhbmNlbF91cGdyYWRlYC4KU2luZ2xlIHNoYXBlIGFjcm9zcyBldmVyeSBwcm90b2NvbCBjb250cmFjdC4gQ29udHJhY3RzIHN0b3JlIGl0IGF0CnRoZSBzaGFyZWQgYHBlbmRpbmdfdXBncmFkZWAgU3ltYm9sIGtleSBpbiB0aGVpciBvd24gaW5zdGFuY2Ugc3RvcmFnZSAoc2VlCmBjcmF0ZTo6dXBncmFkZTo6cGVuZGluZ191cGdyYWRlX2tleWApLiBgdXBncmFkZWAgcmVmdXNlcyB0byBpbnN0YWxsCnVubGVzcyBgcGVuZGluZy53YXNtX2hhc2hgIG1hdGNoZXMgdGhlIHN1cHBsaWVkIGhhc2ggYW5kIGBub3cgPj0gZXRhYC4AAAAAAAAADlBlbmRpbmdVcGdyYWRlAAAAAAACAAAAAAAAAANldGEAAAAABgAAAAAAAAAJd2FzbV9oYXNoAAAAAAAD7gAAACA=",
119
+ "AAAAAgAAAAAAAAAAAAAAD0xwUmVxdWVzdFN0YXR1cwAAAAAEAAAAAAAAAAAAAAAHUGVuZGluZwAAAAAAAAAAAAAAAAdTZXR0bGVkAAAAAAAAAAAAAAAABkZhaWxlZAAAAAAAAAAAAAAAAAAHRXhwaXJlZAA=",
120
+ "AAAAAQAAAAAAAAAAAAAAEFNldHRsZW1lbnRSZXN1bHQAAAACAAAAPFNoYXJlcyBtaW50ZWQgZm9yIGEgZGVwb3NpdCBvciBhc3NldHMgcGFpZCBmb3IgYSB3aXRoZHJhd2FsLgAAAAZhbW91bnQAAAAAAAsAAAAAAAAABnN0YXR1cwAAAAAH0AAAABBTZXR0bGVtZW50U3RhdHVz",
121
+ "AAAAAgAAAAAAAAAAAAAAEFNldHRsZW1lbnRTdGF0dXMAAAACAAAAAAAAAAAAAAAHU2V0dGxlZAAAAAAAAAAAAAAAAAZGYWlsZWQAAA==",
122
+ "AAAAAQAAAAAAAAAAAAAAEkFjY291bnRpbmdTbmFwc2hvdAAAAAAACgAAAAAAAAAOY2FzaF9scF9lcXVpdHkAAAAAAAsAAAAAAAAADmNhc2hfc2hvcnRmYWxsAAAAAAALAAAAAAAAAA9mcmVlX2xwX2NhcGl0YWwAAAAACwAAAAAAAAAVbHBfYmxvY2tlZF9zaWRlX2NvdW50AAAAAAAABAAAAAAAAAANbm9uX2xwX2NsYWltcwAAAAAAAAsAAAAAAAAAE29wZW5fcG9zaXRpb25fY291bnQAAAAABgAAAAAAAAANcGh5c2ljYWxfY2FzaAAAAAAAAAsAAAAAAAAAFXJlcXVpcmVkX3Jpc2tfYmFja2luZwAAAAAAAAsAAAAAAAAAEHRvdGFsX3Jpc2tfdW5pdHMAAAALAAAAAAAAAAl2YXVsdF9uYXYAAAAAAAAL",
109
123
  "AAAABQAAALVFbWl0dGVkIGJ5IGBwcm9wb3NlX3VwZ3JhZGVgLiBPZmYtY2hhaW4gbW9uaXRvcmluZyByZWNvcmRzIHRoZSBwcm9wb3NlZApgd2FzbV9oYXNoYCArIGBldGFgIGFuZCBmbGFncyBhbnkgc3Vic2VxdWVudCBgdXBncmFkZSgpYCBjYWxsIHdob3NlIGhhc2gKZGl2ZXJnZXMgb3IgdGhhdCBmaXJlcyBiZWZvcmUgYGV0YWAuAAAAAAAAAAAAAA9VcGdyYWRlUHJvcG9zZWQAAAAAAQAAAAZ1cGdwcnAAAAAAAAIAAAAAAAAACXdhc21faGFzaAAAAAAAA+4AAAAgAAAAAAAAAAAAAAADZXRhAAAAAAYAAAAAAAAAAQ==",
110
124
  "AAAABQAAAC9FbWl0dGVkIGJ5IGBjYW5jZWxfdXBncmFkZWAgKFBBVVNFUiB2ZXRvIHBhdGgpLgAAAAAAAAAAEFVwZ3JhZGVDYW5jZWxsZWQAAAABAAAABnVwZ2NhbgAAAAAAAQAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAAE=",
111
125
  "AAAABAAAAAAAAAAAAAAAEFVwZ3JhZGVhYmxlRXJyb3IAAAABAAAAQVdoZW4gbWlncmF0aW9uIGlzIGF0dGVtcHRlZCBidXQgbm90IGFsbG93ZWQgZHVlIHRvIHVwZ3JhZGUgc3RhdGUuAAAAAAAAE01pZ3JhdGlvbk5vdEFsbG93ZWQAAAAETA==",
@@ -119,11 +133,7 @@ export class Client extends ContractClient {
119
133
  "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGNvbnRyYWN0IGlzIHBhdXNlZC4AAAAAAAAAAAAGUGF1c2VkAAAAAAABAAAABnBhdXNlZAAAAAAAAAAAAAI=",
120
134
  "AAAABQAAACxFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGNvbnRyYWN0IGlzIHVucGF1c2VkLgAAAAAAAAAIVW5wYXVzZWQAAAABAAAACHVucGF1c2VkAAAAAAAAAAI=",
121
135
  "AAAABAAAAAAAAAAAAAAADVBhdXNhYmxlRXJyb3IAAAAAAAACAAAANFRoZSBvcGVyYXRpb24gZmFpbGVkIGJlY2F1c2UgdGhlIGNvbnRyYWN0IGlzIHBhdXNlZC4AAAANRW5mb3JjZWRQYXVzZQAAAAAAA+gAAAA4VGhlIG9wZXJhdGlvbiBmYWlsZWQgYmVjYXVzZSB0aGUgY29udHJhY3QgaXMgbm90IHBhdXNlZC4AAAANRXhwZWN0ZWRQYXVzZQAAAAAAA+k=",
122
- "AAAAAgAAACJTdG9yYWdlIGtleSBmb3IgdGhlIHBhdXNhYmxlIHN0YXRlAAAAAAAAAAAAElBhdXNhYmxlU3RvcmFnZUtleQAAAAAAAQAAAAAAAAAySW5kaWNhdGVzIHdoZXRoZXIgdGhlIGNvbnRyYWN0IGlzIGluIHBhdXNlZCBzdGF0ZS4AAAAAAAZQYXVzZWQAAA==",
123
- "AAAAAQAAAL1FeGVjdXRpb24tYm91bnR5IGFuZCBvcGVuLWZlZSBwYXJhbWV0ZXJzIGNoYXJnZWQgdG8gdHJhZGVycy4KYG9wZW5fZmVlX2Jwc2AgYW5kIGBsaXF1aWRhdGlvbl9ib3VudHlfYnBzYCBhcmUgaW4gYmFzaXMgcG9pbnRzOwpgdHBfc2xfZXhlY3V0aW9uX2ZlZWAgaXMgYSBmbGF0IFVTREMgYW1vdW50IGF0IFBSRUNJU0lPTiBzY2FsZS4AAAAAAAAAAAAACUZlZUNvbmZpZwAAAAAAAAMAAAAAAAAAFmxpcXVpZGF0aW9uX2JvdW50eV9icHMAAAAAAAQAAAAAAAAADG9wZW5fZmVlX2JwcwAAAAQAAAAAAAAAE3RwX3NsX2V4ZWN1dGlvbl9mZWUAAAAACw==",
124
- "AAAAAQAAAHBEZWZpbmVzIGhvdyBwcm90b2NvbCByZXZlbnVlIGlzIHNwbGl0IGJldHdlZW4gcGFydGllcy4KQWxsIHZhbHVlcyBhcmUgaW4gYmFzaXMgcG9pbnRzIChicHMpLiBNdXN0IHN1bSB0byAxMF8wMDAuAAAAAAAAAAlGZWVTcGxpdHMAAAAAAAADAAAAAAAAAAdkZXZfYnBzAAAAAAQAAAAAAAAABmxwX2JwcwAAAAAABAAAAAAAAAAKc3Rha2VyX2JwcwAAAAAABA==",
125
- "AAAAAQAAACtHbG9iYWwgcHJvdG9jb2wgcmlzayBhbmQgdGltaW5nIHBhcmFtZXRlcnMuAAAAAAAAAAAOUHJvdG9jb2xMaW1pdHMAAAAAAAgAAAAAAAAAC2FkbF9wbmxfYnBzAAAAAAQAAAAAAAAAE2FkbF91dGlsaXphdGlvbl9icHMAAAAABAAAAAAAAAARY29vbGRvd25fZHVyYXRpb24AAAAAAAAGAAAAAAAAAA9mdW5kaW5nX2N1dF9icHMAAAAABAAAAAAAAAAZbGlxdWlkYXRpb25fdGhyZXNob2xkX2JwcwAAAAAAAAQAAAAAAAAAFW1heF91dGlsaXphdGlvbl9yYXRpbwAAAAAAAAsAAAAAAAAADm1pbl9jb2xsYXRlcmFsAAAAAAALAAAAAAAAABVtaW5fcG9zaXRpb25fbGlmZXRpbWUAAAAAAAAG",
126
- "AAAAAQAAAElCb3Jyb3cgcmF0ZSBraW5rIGN1cnZlIGFuZCBmdW5kaW5nIHJhdGUgcGFyYW1ldGVycyAoYWxsIGluIGJhc2lzIHBvaW50cykuAAAAAAAAAAAAABBCb3Jyb3dSYXRlQ29uZmlnAAAABQAAAAAAAAAUYmFzZV9ib3Jyb3dfcmF0ZV9icHMAAAALAAAAAAAAABViYXNlX2Z1bmRpbmdfcmF0ZV9icHMAAAAAAAALAAAAAAAAABdvcHRpbWFsX3V0aWxpemF0aW9uX2JwcwAAAAALAAAAAAAAAApzbG9wZTFfYnBzAAAAAAALAAAAAAAAAApzbG9wZTJfYnBzAAAAAAAL"]), options);
136
+ "AAAAAgAAACJTdG9yYWdlIGtleSBmb3IgdGhlIHBhdXNhYmxlIHN0YXRlAAAAAAAAAAAAElBhdXNhYmxlU3RvcmFnZUtleQAAAAAAAQAAAAAAAAAySW5kaWNhdGVzIHdoZXRoZXIgdGhlIGNvbnRyYWN0IGlzIGluIHBhdXNlZCBzdGF0ZS4AAAAAAAZQYXVzZWQAAA=="]), options);
127
137
  this.options = options;
128
138
  }
129
139
  fromJSON = {
@@ -95,6 +95,15 @@ export declare const OracleRouterError: {
95
95
  16: {
96
96
  message: string;
97
97
  };
98
+ 17: {
99
+ message: string;
100
+ };
101
+ 18: {
102
+ message: string;
103
+ };
104
+ 19: {
105
+ message: string;
106
+ };
98
107
  };
99
108
  export type StorageKey = {
100
109
  tag: "Initialized";
@@ -105,125 +114,246 @@ export type StorageKey = {
105
114
  } | {
106
115
  tag: "OracleConfig";
107
116
  values: void;
117
+ } | {
118
+ tag: "ConfigVersion";
119
+ values: void;
108
120
  } | {
109
121
  tag: "Sources";
110
122
  values: readonly [string];
111
123
  } | {
112
124
  tag: "CachedPrice";
113
125
  values: readonly [string];
126
+ } | {
127
+ tag: "CachedPriceV2";
128
+ values: readonly [string, u64];
114
129
  } | {
115
130
  tag: "Version";
116
131
  values: void;
132
+ } | {
133
+ tag: "PositionManager";
134
+ values: void;
135
+ } | {
136
+ tag: "LatestRoundId";
137
+ values: void;
138
+ } | {
139
+ tag: "Round";
140
+ values: readonly [u64];
117
141
  };
118
142
  /**
119
- * Cached aggregated median price for a symbol — produced by
120
- * `fetch_and_validate_price` on a cache miss, consumed by the cache-hit
121
- * branch on subsequent calls within `cache_duration` seconds.
143
+ * Cached aggregated median price for a symbol. `fetched_at` bounds router
144
+ * cache duration; `oldest_source_update` ensures the cached median is not
145
+ * served after any source response used to compute it has gone stale.
122
146
  */
123
147
  export interface CachedPrice {
124
- last_update: u64;
148
+ fetched_at: u64;
149
+ oldest_source_update: u64;
125
150
  price: i128;
126
151
  }
127
152
  /**
128
- * Represents a single trader's open leveraged position.
153
+ * Authoritative per-market state: the side aggregates, the funding indices,
154
+ * the current funding flows, and the market configuration.
155
+ *
156
+ * Soroban limits UDT field names to 30 characters, so where a doc glossary
157
+ * term is longer the field drops the redundant qualifier and its doc
158
+ * comment carries the full term (e.g. `receiver_backed_index_long` is the
159
+ * doc's `receiver_backed_payer_index` for the long side).
129
160
  */
130
- export interface Position {
131
- /**
132
- * USDC collateral deposited by the trader.
133
- */
134
- collateral: i128;
161
+ export interface Market {
162
+ config: MarketConfig;
135
163
  /**
136
- * Global borrow accumulator index at position open (for lazy fee calc).
164
+ * `INDEX_PRECISION`-scaled bps/day payer rate for the current interval.
137
165
  */
138
- entry_borrow_index: i128;
166
+ current_payer_rate: i128;
167
+ current_payer_side: PayerSide;
168
+ last_funding_checkpoint: u64;
169
+ long: MarketSide;
139
170
  /**
140
- * Global funding accumulator index at position open (for lazy fee calc).
171
+ * Cumulative payer fee per unit of dominant-side size that is LP
172
+ * revenue on collection (§8.2).
141
173
  */
142
- entry_funding_index: i128;
174
+ lp_backed_index_long: i128;
175
+ lp_backed_index_short: i128;
143
176
  /**
144
- * Oracle price at the time the position was opened (scaled by 1e7).
177
+ * LP-allocated remainder of the payer flow, cash/second at
178
+ * `INDEX_PRECISION` (§8.1).
145
179
  */
146
- entry_price: i128;
180
+ lp_flow_per_second: i128;
181
+ lp_payer_remainder: i128;
147
182
  /**
148
- * Flat USDC fee escrowed when TP or SL is set. Paid to executor on trigger, refunded on user close / ADL, forfeited to revenue on liquidation.
183
+ * Cumulative payer fee per unit of dominant-side size whose collection
184
+ * restores cash backing an already-accrued receiver claim (§8.2).
149
185
  */
150
- execution_fee_escrow: i128;
151
- /**
152
- * True for a long position, false for a short.
153
- */
154
- is_long: boolean;
155
- /**
156
- * Block timestamp when the position was last increased (anti-front-running lock).
157
- */
158
- last_increased_time: u64;
159
- /**
160
- * Notional size of the position in USDC.
161
- */
162
- size: i128;
186
+ receiver_backed_index_long: i128;
187
+ receiver_backed_index_short: i128;
163
188
  /**
164
- * Stop-loss price (scaled by 1e7). 0 = not set.
189
+ * Receiver-allocated share of the payer flow, cash/second at
190
+ * `INDEX_PRECISION` (§8.1).
165
191
  */
166
- stop_loss: i128;
192
+ receiver_flow_per_second: i128;
193
+ receiver_flow_remainder: i128;
167
194
  /**
168
- * Take-profit price (scaled by 1e7). 0 = not set.
195
+ * Cumulative funding credit per unit of light-side size (§8.2).
169
196
  */
170
- take_profit: i128;
197
+ receiver_index_long: i128;
198
+ receiver_index_remainder: i128;
199
+ receiver_index_short: i128;
200
+ receiver_payer_remainder: i128;
201
+ short: MarketSide;
202
+ }
203
+ export interface LpConfig {
204
+ lp_request_delay: u64;
205
+ max_withdraw_utilization_bps: u32;
206
+ min_deposit_nav_factor_bps: u32;
171
207
  }
172
208
  /**
173
- * Global market state for a single tradeable asset symbol.
209
+ * Represents a single trader's open leveraged position.
174
210
  */
175
- export interface MarketInfo {
211
+ export interface Position {
176
212
  /**
177
- * Cumulative borrow fee index (grows monotonically with time).
213
+ * Asset units at `PRICE_PRECISION`.
178
214
  */
179
- acc_borrow_index: i128;
215
+ base_exposure: i128;
216
+ borrow_debt: i128;
180
217
  /**
181
- * Cumulative funding rate index (signed; positive = longs pay shorts).
218
+ * Cash owned by an optional-order executor.
182
219
  */
183
- acc_funding_index: i128;
220
+ execution_budget: i128;
221
+ funding_paid_to_lps_debt: i128;
222
+ funding_paid_to_receivers_debt: i128;
223
+ funding_received_debt: i128;
224
+ id: u64;
225
+ is_long: boolean;
226
+ last_increased_time: u64;
227
+ market: string;
228
+ owner: string;
184
229
  /**
185
- * Volume-weighted average entry price of all active long positions.
230
+ * Fixed gross capacity assigned when risk opens.
186
231
  */
187
- global_long_avg_price: i128;
232
+ risk_units: i128;
188
233
  /**
189
- * Volume-weighted average entry price of all active short positions.
234
+ * USD notional at `PRICE_PRECISION`.
190
235
  */
191
- global_short_avg_price: i128;
236
+ size: i128;
192
237
  /**
193
- * Timestamp of the last keeper index update.
238
+ * Trigger price for the optional stop-loss order; `0` = none.
194
239
  */
195
- last_index_update: u64;
240
+ stop_loss: i128;
196
241
  /**
197
- * Total notional size of all open long positions.
242
+ * Trader-owned collateral recorded in contract state (the doc's
243
+ * "stored collateral"). Effective collateral — stored collateral after
244
+ * pending fees and funding credits — is always derived, never stored.
198
245
  */
199
- long_open_interest: i128;
246
+ stored_collateral: i128;
200
247
  /**
201
- * Total notional size of all open short positions.
248
+ * Trigger price for the optional take-profit order; `0` = none.
202
249
  */
203
- short_open_interest: i128;
250
+ take_profit: i128;
251
+ }
252
+ export interface LpRequest {
253
+ amount: i128;
254
+ execute_after: u64;
255
+ id: u64;
256
+ kind: LpRequestKind;
257
+ owner: string;
258
+ request_time: u64;
259
+ status: LpRequestStatus;
260
+ }
261
+ /**
262
+ * Which side currently pays funding (§8.1: the side with more base
263
+ * exposure). `None` when the market is balanced or empty.
264
+ */
265
+ export type PayerSide = {
266
+ tag: "None";
267
+ values: void;
268
+ } | {
269
+ tag: "Long";
270
+ values: void;
271
+ } | {
272
+ tag: "Short";
273
+ values: void;
274
+ };
275
+ export type RiskState = {
276
+ tag: "Normal";
277
+ values: void;
278
+ } | {
279
+ tag: "Warning";
280
+ values: void;
281
+ } | {
282
+ tag: "Adl";
283
+ values: void;
284
+ } | {
285
+ tag: "HardCap";
286
+ values: void;
287
+ };
288
+ export interface MarketSide {
289
+ base_exposure: i128;
290
+ risk_state: RiskState;
291
+ risk_units: i128;
292
+ size_open_interest: i128;
293
+ stored_collateral_total: i128;
294
+ }
295
+ export interface RoundPrice {
296
+ price: i128;
297
+ symbol: string;
298
+ }
299
+ export interface OracleRound {
300
+ id: u64;
301
+ previous_id: u64;
302
+ previous_timestamp: u64;
303
+ prices: Array<RoundPrice>;
304
+ timestamp: u64;
305
+ }
306
+ export interface GlobalConfig {
307
+ base_borrow_rate_bps_day: i128;
308
+ hard_cap_factor_limit_bps: u32;
309
+ lp_revenue_share_bps: u32;
310
+ max_active_markets: u32;
311
+ max_adl_reward: i128;
312
+ max_insolvent_touch_reward: i128;
313
+ max_variable_borrow_bps_day: i128;
314
+ min_collateral: i128;
315
+ min_position_lifetime: u64;
316
+ risk_capacity_limit_bps: u32;
317
+ risk_keeper_revenue_share_bps: u32;
318
+ }
319
+ export interface MarketConfig {
320
+ adl_pnl_factor_bps: u32;
321
+ adl_reward_bps: u32;
322
+ hard_cap_pnl_factor_bps: u32;
323
+ liquidation_reward_bps: u32;
324
+ maintenance_margin_bps: u32;
325
+ market_risk_factor_bps: u32;
326
+ max_funding_rate_bps_day: i128;
327
+ max_long_base_exposure: i128;
328
+ max_long_size_open_interest: i128;
329
+ max_short_base_exposure: i128;
330
+ max_short_size_open_interest: i128;
331
+ open_fee_high_bps: u32;
332
+ open_fee_low_bps: u32;
333
+ recovery_pnl_factor_bps: u32;
334
+ warning_pnl_factor_bps: u32;
204
335
  }
205
336
  /**
206
337
  * Global safety thresholds for price validation.
207
338
  */
208
339
  export interface OracleConfig {
209
340
  /**
210
- * How long a cached aggregated price remains valid (in seconds). A
211
- * `get_price` call within this window of the last fetch returns the
212
- * cached value without re-querying sources. Must be > 0 and
213
- * <= `staleness_threshold` (otherwise the cache could outlive a fresh
214
- * source price and serve stale data).
341
+ * How long a cached aggregated price remains valid after the router
342
+ * fetch (in seconds). A cache hit also requires every source timestamp
343
+ * used for the cached median to remain within `staleness_threshold`.
344
+ * Must be > 0 and <= `staleness_threshold`.
215
345
  */
216
346
  cache_duration: u64;
217
347
  /**
218
348
  * Maximum allowed spread between oracle sources in basis points
219
- * (e.g., 100 = 1%). Bounded at `shared::constants::MAX_DEVIATION_BPS_CEILING`.
349
+ * (e.g., 100 = 1%). Bounded at `crate::constants::MAX_DEVIATION_BPS_CEILING`.
220
350
  */
221
351
  max_deviation_bps: i128;
222
352
  /**
223
353
  * Minimum number of source responses that must agree within
224
354
  * `max_deviation_bps` for OracleRouter to return a price. Floored at
225
- * `shared::constants::MIN_REQUIRED_SOURCES_FLOOR`, ceilinged at
226
- * `shared::constants::MAX_ORACLE_SOURCES`.
355
+ * `crate::constants::MIN_REQUIRED_SOURCES_FLOOR`, ceilinged at
356
+ * `crate::constants::MAX_ORACLE_SOURCES`.
227
357
  */
228
358
  min_required_sources: u32;
229
359
  /**
@@ -232,6 +362,13 @@ export interface OracleConfig {
232
362
  */
233
363
  staleness_threshold: u64;
234
364
  }
365
+ export type LpRequestKind = {
366
+ tag: "Deposit";
367
+ values: void;
368
+ } | {
369
+ tag: "Withdrawal";
370
+ values: void;
371
+ };
235
372
  /**
236
373
  * Data required during a WASM migration. Single definition for all contracts.
237
374
  */
@@ -241,15 +378,54 @@ export interface MigrationData {
241
378
  /**
242
379
  * Pending WASM upgrade — set by `propose_upgrade`, consumed by `upgrade`
243
380
  * (cleared atomically on a successful install), or cleared by `cancel_upgrade`.
244
- * Single shape across every protocol contract; all four contracts store it at
381
+ * Single shape across every protocol contract. Contracts store it at
245
382
  * the shared `pending_upgrade` Symbol key in their own instance storage (see
246
- * `interfaces::upgrade::pending_upgrade_key`). `upgrade` refuses to install
383
+ * `crate::upgrade::pending_upgrade_key`). `upgrade` refuses to install
247
384
  * unless `pending.wasm_hash` matches the supplied hash and `now >= eta`.
248
385
  */
249
386
  export interface PendingUpgrade {
250
387
  eta: u64;
251
388
  wasm_hash: Buffer;
252
389
  }
390
+ export type LpRequestStatus = {
391
+ tag: "Pending";
392
+ values: void;
393
+ } | {
394
+ tag: "Settled";
395
+ values: void;
396
+ } | {
397
+ tag: "Failed";
398
+ values: void;
399
+ } | {
400
+ tag: "Expired";
401
+ values: void;
402
+ };
403
+ export interface SettlementResult {
404
+ /**
405
+ * Shares minted for a deposit or assets paid for a withdrawal.
406
+ */
407
+ amount: i128;
408
+ status: SettlementStatus;
409
+ }
410
+ export type SettlementStatus = {
411
+ tag: "Settled";
412
+ values: void;
413
+ } | {
414
+ tag: "Failed";
415
+ values: void;
416
+ };
417
+ export interface AccountingSnapshot {
418
+ cash_lp_equity: i128;
419
+ cash_shortfall: i128;
420
+ free_lp_capital: i128;
421
+ lp_blocked_side_count: u32;
422
+ non_lp_claims: i128;
423
+ open_position_count: u64;
424
+ physical_cash: i128;
425
+ required_risk_backing: i128;
426
+ total_risk_units: i128;
427
+ vault_nav: i128;
428
+ }
253
429
  export declare const UpgradeableError: {
254
430
  /**
255
431
  * When migration is attempted but not allowed due to upgrade state.
@@ -356,48 +532,6 @@ export type PausableStorageKey = {
356
532
  tag: "Paused";
357
533
  values: void;
358
534
  };
359
- /**
360
- * Execution-bounty and open-fee parameters charged to traders.
361
- * `open_fee_bps` and `liquidation_bounty_bps` are in basis points;
362
- * `tp_sl_execution_fee` is a flat USDC amount at PRECISION scale.
363
- */
364
- export interface FeeConfig {
365
- liquidation_bounty_bps: u32;
366
- open_fee_bps: u32;
367
- tp_sl_execution_fee: i128;
368
- }
369
- /**
370
- * Defines how protocol revenue is split between parties.
371
- * All values are in basis points (bps). Must sum to 10_000.
372
- */
373
- export interface FeeSplits {
374
- dev_bps: u32;
375
- lp_bps: u32;
376
- staker_bps: u32;
377
- }
378
- /**
379
- * Global protocol risk and timing parameters.
380
- */
381
- export interface ProtocolLimits {
382
- adl_pnl_bps: u32;
383
- adl_utilization_bps: u32;
384
- cooldown_duration: u64;
385
- funding_cut_bps: u32;
386
- liquidation_threshold_bps: u32;
387
- max_utilization_ratio: i128;
388
- min_collateral: i128;
389
- min_position_lifetime: u64;
390
- }
391
- /**
392
- * Borrow rate kink curve and funding rate parameters (all in basis points).
393
- */
394
- export interface BorrowRateConfig {
395
- base_borrow_rate_bps: i128;
396
- base_funding_rate_bps: i128;
397
- optimal_utilization_bps: i128;
398
- slope1_bps: i128;
399
- slope2_bps: i128;
400
- }
401
535
  export interface Client {
402
536
  /**
403
537
  * Construct and simulate a migrate 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.
@@ -419,12 +553,28 @@ export interface Client {
419
553
  get_price: ({ symbol }: {
420
554
  symbol: string;
421
555
  }, options?: MethodOptions) => Promise<AssembledTransaction<i128>>;
556
+ /**
557
+ * Construct and simulate a get_round 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.
558
+ */
559
+ get_round: ({ round_id }: {
560
+ round_id: u64;
561
+ }, options?: MethodOptions) => Promise<AssembledTransaction<OracleRound>>;
562
+ /**
563
+ * Construct and simulate a publish_round 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.
564
+ */
565
+ publish_round: ({ caller }: {
566
+ caller: string;
567
+ }, options?: MethodOptions) => Promise<AssembledTransaction<u64>>;
422
568
  /**
423
569
  * Construct and simulate a cancel_upgrade 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.
424
570
  */
425
571
  cancel_upgrade: ({ caller }: {
426
572
  caller: string;
427
573
  }, options?: MethodOptions) => Promise<AssembledTransaction<null>>;
574
+ /**
575
+ * Construct and simulate a latest_round_id 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.
576
+ */
577
+ latest_round_id: (options?: MethodOptions) => Promise<AssembledTransaction<u64>>;
428
578
  /**
429
579
  * Construct and simulate a propose_upgrade 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.
430
580
  */
@@ -455,6 +605,13 @@ export interface Client {
455
605
  symbol: string;
456
606
  sources: Array<string>;
457
607
  }, options?: MethodOptions) => Promise<AssembledTransaction<null>>;
608
+ /**
609
+ * Construct and simulate a set_position_manager 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.
610
+ */
611
+ set_position_manager: ({ caller, position_manager }: {
612
+ caller: string;
613
+ position_manager: string;
614
+ }, options?: MethodOptions) => Promise<AssembledTransaction<null>>;
458
615
  }
459
616
  export declare class Client extends ContractClient {
460
617
  readonly options: ContractClientOptions;
@@ -477,11 +634,15 @@ export declare class Client extends ContractClient {
477
634
  migrate: (json: string) => AssembledTransaction<null>;
478
635
  upgrade: (json: string) => AssembledTransaction<null>;
479
636
  get_price: (json: string) => AssembledTransaction<bigint>;
637
+ get_round: (json: string) => AssembledTransaction<OracleRound>;
638
+ publish_round: (json: string) => AssembledTransaction<bigint>;
480
639
  cancel_upgrade: (json: string) => AssembledTransaction<null>;
640
+ latest_round_id: (json: string) => AssembledTransaction<bigint>;
481
641
  propose_upgrade: (json: string) => AssembledTransaction<null>;
482
642
  bump_oracle_state: (json: string) => AssembledTransaction<null>;
483
643
  get_oracle_config: (json: string) => AssembledTransaction<OracleConfig>;
484
644
  set_oracle_config: (json: string) => AssembledTransaction<null>;
485
645
  set_oracle_sources: (json: string) => AssembledTransaction<null>;
646
+ set_position_manager: (json: string) => AssembledTransaction<null>;
486
647
  };
487
648
  }