{"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":[]}