import { Actor } from "../actors/Actor.js"; import { Auditor } from "../auditing/Auditor.js"; declare abstract class JsonStore { protected auditor: Auditor; protected collection: string; constructor(auditor: Auditor, collection?: string); create(actor: Actor, id: string, document: any): Promise; save(actor: Actor, changeDescription: string, id: string, document: any): Promise; retrieve(id: string, actor: Actor): Promise; delete(id: string, actor: Actor): Promise; list(actor: Actor, pageSize?: number, page?: number): Promise>; protected abstract saveInternal(id: string, document: any): Promise; protected abstract retrieveInternal(id: string): Promise; protected abstract deleteInternal(id: string): Promise; protected abstract listInternal(pageSize?: number, page?: number): Promise>; } declare namespace JsonStore { enum Interaction { CREATE = "CREATE", SAVE = "SAVE", READ = "READ", DELETE = "DELETE", LIST = "LIST" } } export { JsonStore }; //# sourceMappingURL=JsonStore.d.ts.map