{"version":3,"file":"CollateralPdasClient.mjs","sources":["../../../../src/plugins/collateralModule/CollateralPdasClient.ts"],"sourcesContent":["import { Buffer } from 'buffer';\n\nimport type { Convergence } from '../../Convergence';\nimport { Pda, Program, PublicKey } from '../../types';\n\n/**\n * This client allows you to build PDAs related to the Collateral module.\n *\n * @see {@link CollateralClient}\n * @group Module Pdas\n */\nexport class CollateralPdasClient {\n  constructor(protected readonly convergence: Convergence) {}\n\n  /** Finds the PDA of a given user collateral token. */\n  collateralToken({ user, programs }: CollateralTokenInput): Pda {\n    const programId = this.programId(programs);\n    return Pda.find(programId, [\n      Buffer.from('collateral_token', 'utf8'),\n      user.toBuffer(),\n    ]);\n  }\n\n  /** Finds the PDA of a given user token info. */\n  collateralInfo({ user, programs }: CollateralInfoInput): Pda {\n    const programId = this.programId(programs);\n    return Pda.find(programId, [\n      Buffer.from('collateral_info', 'utf8'),\n      user.toBuffer(),\n    ]);\n  }\n\n  private programId(programs?: Program[]) {\n    return this.convergence.programs().getRfq(programs).address;\n  }\n}\n\ntype CollateralTokenInput = {\n  /** The address of the user account. */\n  user: PublicKey;\n\n  /** An optional set of programs that override the registered ones. */\n  programs?: Program[];\n};\n\ntype CollateralInfoInput = {\n  /** The address of the user account. */\n  user: PublicKey;\n\n  /** An optional set of programs that override the registered ones. */\n  programs?: Program[];\n};\n"],"names":["CollateralPdasClient","convergence","_classCallCheck","_createClass","key","value","collateralToken","_ref","user","programs","programId","Pda","find","Buffer","from","toBuffer","collateralInfo","_ref2","getRfq","address"],"mappings":";;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA,IAAaA,oBAAoB,gBAAA,YAAA;EAC/B,SAAAA,oBAAAA,CAA+BC,WAAwB,EAAE;AAAAC,IAAAA,eAAA,OAAAF,oBAAA,CAAA,CAAA;IAAA,IAA1BC,CAAAA,WAAwB,GAAxBA,WAAwB,CAAA;AAAG,GAAA;;AAE1D;AAAAE,EAAAA,YAAA,CAAAH,oBAAA,EAAA,CAAA;IAAAI,GAAA,EAAA,iBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAC,eAAAC,CAAAA,IAAA,EAA+D;AAAA,MAAA,IAA7CC,IAAI,GAAAD,IAAA,CAAJC,IAAI;QAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ,CAAA;AAC9B,MAAA,IAAMC,SAAS,GAAG,IAAI,CAACA,SAAS,CAACD,QAAQ,CAAC,CAAA;MAC1C,OAAOE,GAAG,CAACC,IAAI,CAACF,SAAS,EAAE,CACzBG,MAAM,CAACC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,EACvCN,IAAI,CAACO,QAAQ,EAAE,CAChB,CAAC,CAAA;AACJ,KAAA;;AAEA;AAAA,GAAA,EAAA;IAAAX,GAAA,EAAA,gBAAA;AAAAC,IAAAA,KAAA,EACA,SAAAW,cAAAC,CAAAA,KAAA,EAA6D;AAAA,MAAA,IAA5CT,IAAI,GAAAS,KAAA,CAAJT,IAAI;QAAEC,QAAQ,GAAAQ,KAAA,CAARR,QAAQ,CAAA;AAC7B,MAAA,IAAMC,SAAS,GAAG,IAAI,CAACA,SAAS,CAACD,QAAQ,CAAC,CAAA;MAC1C,OAAOE,GAAG,CAACC,IAAI,CAACF,SAAS,EAAE,CACzBG,MAAM,CAACC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,EACtCN,IAAI,CAACO,QAAQ,EAAE,CAChB,CAAC,CAAA;AACJ,KAAA;AAAC,GAAA,EAAA;IAAAX,GAAA,EAAA,WAAA;AAAAC,IAAAA,KAAA,EAED,SAAAK,SAAkBD,CAAAA,QAAoB,EAAE;AACtC,MAAA,OAAO,IAAI,CAACR,WAAW,CAACQ,QAAQ,EAAE,CAACS,MAAM,CAACT,QAAQ,CAAC,CAACU,OAAO,CAAA;AAC7D,KAAA;AAAC,GAAA,CAAA,CAAA,CAAA;AAAA,EAAA,OAAAnB,oBAAA,CAAA;AAAA,CAAA;;;;"}