UNPKG

@powrldgr/raydium-sdk-v2

Version:

An SDK for building applications on top of Raydium.

1 lines 1.36 kB
{"version":3,"sources":["../../src/common/owner.ts"],"sourcesContent":["import { Keypair, PublicKey, Signer } from \"@solana/web3.js\";\n\ntype _Owner = Keypair | PublicKey;\n\nexport class Owner {\n private readonly _owner: _Owner;\n\n constructor(owner: _Owner) {\n this._owner = owner;\n }\n\n get publicKey(): PublicKey {\n if (Owner.isKeyPair(this._owner)) {\n return this._owner.publicKey;\n }\n\n return this._owner;\n }\n\n get signer(): Signer | undefined {\n return Owner.isKeyPair(this._owner) ? this._owner : undefined;\n }\n\n get isKeyPair(): boolean {\n return Owner.isKeyPair(this._owner);\n }\n\n get isPublicKey(): boolean {\n return Owner.isPublicKey(this._owner);\n }\n\n static isKeyPair(owner: _Owner): owner is Keypair {\n return (owner as Keypair).secretKey !== undefined;\n }\n\n static isPublicKey(owner: _Owner): owner is PublicKey {\n return !Owner.isKeyPair(owner);\n }\n}\n"],"mappings":"AAIO,WAAY,CAGjB,YAAY,EAAe,CACzB,KAAK,OAAS,CAChB,IAEI,YAAuB,CACzB,MAAI,GAAM,UAAU,KAAK,MAAM,EACtB,KAAK,OAAO,UAGd,KAAK,MACd,IAEI,SAA6B,CAC/B,MAAO,GAAM,UAAU,KAAK,MAAM,EAAI,KAAK,OAAS,MACtD,IAEI,YAAqB,CACvB,MAAO,GAAM,UAAU,KAAK,MAAM,CACpC,IAEI,cAAuB,CACzB,MAAO,GAAM,YAAY,KAAK,MAAM,CACtC,OAEO,WAAU,EAAiC,CAChD,MAAQ,GAAkB,YAAc,MAC1C,OAEO,aAAY,EAAmC,CACpD,MAAO,CAAC,EAAM,UAAU,CAAK,CAC/B,CACF","names":[]}