import type { AnonCredsRevocationRegistryState } from './AnonCredsRevocationRegistryDefinitionPrivateRecord' import type { AgentContext } from '@aries-framework/core' import { Repository, InjectionSymbols, StorageService, EventEmitter, injectable, inject } from '@aries-framework/core' import { AnonCredsRevocationRegistryDefinitionPrivateRecord } from './AnonCredsRevocationRegistryDefinitionPrivateRecord' @injectable() export class AnonCredsRevocationRegistryDefinitionPrivateRepository extends Repository { public constructor( @inject(InjectionSymbols.StorageService) storageService: StorageService, eventEmitter: EventEmitter ) { super(AnonCredsRevocationRegistryDefinitionPrivateRecord, storageService, eventEmitter) } public async getByRevocationRegistryDefinitionId(agentContext: AgentContext, revocationRegistryDefinitionId: string) { return this.getSingleByQuery(agentContext, { revocationRegistryDefinitionId }) } public async findByRevocationRegistryDefinitionId( agentContext: AgentContext, revocationRegistryDefinitionId: string ) { return this.findSingleByQuery(agentContext, { revocationRegistryDefinitionId }) } public async findAllByCredentialDefinitionIdAndState( agentContext: AgentContext, credentialDefinitionId: string, state?: AnonCredsRevocationRegistryState ) { return this.findByQuery(agentContext, { credentialDefinitionId, state }) } }