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