@cobaltx/sdk-v2
Version:
An SDK for building applications on top of CobaltX.
2 lines • 2.55 kB
JavaScript
import{PublicKey as w}from"@solana/web3.js";import g,{isBN as we}from"bn.js";import{bits as T,BitStructure as A,blob as h,Blob as D,cstr as C,f32 as N,f32be as E,f64 as I,f64be as q,greedy as V,Layout as S,ns64 as v,ns64be as K,nu64 as R,nu64be as F,offset as z,s16 as M,s16be as O,s24 as G,s24be as Q,s32 as j,s32be as Y,s40 as H,s40be as J,s48 as W,s48be as X,s8 as Z,seq as $,struct as ee,Structure as B,u16 as te,u16be as ne,u24 as re,u24be as oe,u32 as _,u32be as se,u40 as ue,u40be as ae,u48 as ie,u48be as ce,u8 as ye,UInt as pe,union as de,Union as Pe,unionLayoutDiscriminator as xe,utf8 as be}from"@solana/buffer-layout";var i=S,m=B;var p=_;var a=h;var d=T;var P=class extends i{constructor(e,n,r){super(e,r);this.blob=a(e),this.signed=n}decode(e,n=0){let r=new g(this.blob.decode(e,n),10,"le");return this.signed?r.fromTwos(this.span*8).clone():r}encode(e,n,r=0){return typeof e=="number"&&(e=new g(e)),this.signed&&(e=e.toTwos(this.span*8)),this.blob.encode(e.toArrayLike(Buffer,"le",this.span),n,r)}},c=class extends i{constructor(e){super(8,e);this._lower=d(p(),!1),this._upper=d(p(),!1)}addBoolean(e){this._lower.fields.length<32?this._lower.addBoolean(e):this._upper.addBoolean(e)}decode(e,n=0){let r=this._lower.decode(e,n),y=this._upper.decode(e,n+this._lower.span);return{...r,...y}}encode(e,n,r=0){return this._lower.encode(e,n,r)+this._upper.encode(e,n,r+this._lower.span)}};function s(o){return new P(8,!1,o)}var x=class extends i{constructor(e,n,r,y){super(e.span,y);this.layout=e,this.decoder=n,this.encoder=r}decode(e,n){return this.decoder(this.layout.decode(e,n))}encode(e,n,r){return this.layout.encode(this.encoder(e),n,r)}getSpan(e,n){return this.layout.getSpan(e,n)}};function u(o){return new x(a(32),t=>new w(t),t=>t.toBuffer(),o)}var b=class extends m{decode(t,e){return super.decode(t,e)}};function L(o,t,e){return new b(o,t,e)}function U(o="accountFlags"){let t=new c(o);return t.addBoolean("initialized"),t.addBoolean("market"),t.addBoolean("openOrders"),t.addBoolean("requestQueue"),t.addBoolean("eventQueue"),t.addBoolean("bids"),t.addBoolean("asks"),t}var Ce=L([a(5),U("accountFlags"),u("ownAddress"),s("vaultSignerNonce"),u("baseMint"),u("quoteMint"),u("baseVault"),s("baseDepositsTotal"),s("baseFeesAccrued"),u("quoteVault"),s("quoteDepositsTotal"),s("quoteFeesAccrued"),s("quoteDustThreshold"),u("requestQueue"),u("eventQueue"),u("bids"),u("asks"),s("baseLotSize"),s("quoteLotSize"),s("feeRateBps"),s("referrerRebatesAccrued"),a(7)]);export{Ce as MARKET_STATE_LAYOUT_V2};
//# sourceMappingURL=layout.mjs.map