import type { AgentContext } from '@aries-framework/core' import { Repository, InjectionSymbols, StorageService, EventEmitter, injectable, inject } from '@aries-framework/core' import { AnonCredsCredentialDefinitionRecord } from './AnonCredsCredentialDefinitionRecord' @injectable() export class AnonCredsCredentialDefinitionRepository extends Repository { public constructor( @inject(InjectionSymbols.StorageService) storageService: StorageService, eventEmitter: EventEmitter ) { super(AnonCredsCredentialDefinitionRecord, storageService, eventEmitter) } public async getByCredentialDefinitionId(agentContext: AgentContext, credentialDefinitionId: string) { return this.getSingleByQuery(agentContext, { $or: [ { credentialDefinitionId, }, { unqualifiedCredentialDefinitionId: credentialDefinitionId, }, ], }) } public async findByCredentialDefinitionId(agentContext: AgentContext, credentialDefinitionId: string) { return this.findSingleByQuery(agentContext, { $or: [ { credentialDefinitionId, }, { unqualifiedCredentialDefinitionId: credentialDefinitionId, }, ], }) } }