{"version":3,"file":"ProofService.mjs","names":["ProofService","config: OpenBadgesModuleConfig","jsonld: JsonLdCryptoDriver","jwt: JwtCryptoDriver"],"sources":["../../src/services/ProofService.ts"],"sourcesContent":["import { injectable, inject } from '@credo-ts/core'\nimport type { AgentContext } from '@credo-ts/core'\nimport { OpenBadgesModuleConfig } from '../OpenBadgesModuleConfig'\nimport { CryptoDriver } from './crypto/CryptoDriver'\nimport { JsonLdCryptoDriver } from './crypto/JsonLdCryptoDriver'\nimport { JwtCryptoDriver } from './crypto/JwtCryptoDriver'\n\n@injectable()\nexport class ProofService implements CryptoDriver {\n  private driver: CryptoDriver\n\n  public constructor(\n    @inject(OpenBadgesModuleConfig) config: OpenBadgesModuleConfig,\n    @inject(JsonLdCryptoDriver) jsonld: JsonLdCryptoDriver,\n    @inject(JwtCryptoDriver) jwt: JwtCryptoDriver\n  ) {\n    this.driver = config.proofType === 'jwt' ? jwt : jsonld\n  }\n\n  // eslint-disable-next-line @typescript-eslint/no-explicit-any\n  public sign(agentContext: AgentContext, document: any, keyHint?: any): Promise<any> {\n    return this.driver.sign(agentContext, document, keyHint)\n  }\n\n  // eslint-disable-next-line @typescript-eslint/no-explicit-any\n  public verify(agentContext: AgentContext, input: any) {\n    return this.driver.verify(agentContext, input)\n  }\n}\n\n"],"mappings":";;;;;;;;;;;;;AAQO,yBAAMA,eAAqC;CAGhD,AAAO,YACL,AAAgCC,QAChC,AAA4BC,QAC5B,AAAyBC,KACzB;AACA,OAAK,SAAS,OAAO,cAAc,QAAQ,MAAM;;CAInD,AAAO,KAAK,cAA4B,UAAe,SAA6B;AAClF,SAAO,KAAK,OAAO,KAAK,cAAc,UAAU,QAAQ;;CAI1D,AAAO,OAAO,cAA4B,OAAY;AACpD,SAAO,KAAK,OAAO,OAAO,cAAc,MAAM;;;;CAnBjD,YAAY;oBAKR,OAAO,uBAAuB;oBAC9B,OAAO,mBAAmB;oBAC1B,OAAO,gBAAgB"}