import{BaseRepository as a}from"../../../providers/database/base-repository.js";import{createDatabaseRepositoryInstance as r,InstanceCacheResolver as i}from"../../../providers/database/instance-cache-resolver.js";import{FileHashesWriteRepository as n}from"./file-hashes-write-repository.js";import{FileHashesReadRepository as l}from"./file-hashes-read-repository.js";class t extends a{static#s=new i(e=>r(e,"file hashes",t));#e;#t;constructor(e){super(e),this.#e=new l(this.databaseClient),this.#t=new n(this.databaseClient)}static async getInstance(e){return t.#s.get(e)}async getByPath(e){return this.#e.getByPath(e)}async getAllOutdated(e){return this.#e.getAllOutdated(e)}async getAllByFileType(e){return this.#e.getAllByFileType(e)}async upsertFileHash(e){return await this.#t.upsertFileHash(e)}async updateFileHashesStatus(e,s){return this.#t.updateFileHashes(e,s)}async deleteFileHashes(e){return this.#t.deleteFileHashes(e)}}export{t as FileHashesRepository};
