{"version":3,"file":"StatusListRepository.mjs","names":["StatusListRepository","storageService: StorageService<StatusListRecord>"],"sources":["../../src/repository/StatusListRepository.ts"],"sourcesContent":["/**\n * StatusListRepository\n *\n * Repository for managing StatusListRecord storage and retrieval.\n */\n\nimport type { StorageService } from '@credo-ts/core'\nimport { injectable, inject, InjectionSymbols, EventEmitter, Repository } from '@credo-ts/core'\nimport type { AgentContext } from '@credo-ts/core'\nimport { StatusListRecord } from './StatusListRecord'\nimport type { StatusPurpose } from '../models/StatusListCredential'\n\n@injectable()\nexport class StatusListRepository extends Repository<StatusListRecord> {\n  public constructor(\n    @inject(InjectionSymbols.StorageService) storageService: StorageService<StatusListRecord>,\n    eventEmitter: EventEmitter\n  ) {\n    super(StatusListRecord, storageService, eventEmitter)\n  }\n\n  /**\n   * Find a status list by its unique list ID\n   */\n  public async findByListId(agentContext: AgentContext, listId: string): Promise<StatusListRecord | null> {\n    return this.findSingleByQuery(agentContext, { listId })\n  }\n\n  /**\n   * Find all status lists for an issuer\n   */\n  public async findByIssuer(agentContext: AgentContext, issuerDid: string): Promise<StatusListRecord[]> {\n    return this.findByQuery(agentContext, { issuerDid })\n  }\n\n  /**\n   * Find status lists by issuer and purpose\n   */\n  public async findByIssuerAndPurpose(\n    agentContext: AgentContext,\n    issuerDid: string,\n    purpose: StatusPurpose\n  ): Promise<StatusListRecord[]> {\n    return this.findByQuery(agentContext, { issuerDid, purpose })\n  }\n}\n"],"mappings":";;;;;;;;;;;AAaO,iCAAMA,+BAA6B,WAA6B;CACrE,AAAO,YACL,AAAyCC,gBACzC,cACA;AACA,QAAM,kBAAkB,gBAAgB,aAAa;;;;;CAMvD,MAAa,aAAa,cAA4B,QAAkD;AACtG,SAAO,KAAK,kBAAkB,cAAc,EAAE,QAAQ,CAAC;;;;;CAMzD,MAAa,aAAa,cAA4B,WAAgD;AACpG,SAAO,KAAK,YAAY,cAAc,EAAE,WAAW,CAAC;;;;;CAMtD,MAAa,uBACX,cACA,WACA,SAC6B;AAC7B,SAAO,KAAK,YAAY,cAAc;GAAE;GAAW;GAAS,CAAC;;;;CA/BhE,YAAY;oBAGR,OAAO,iBAAiB,eAAe"}