import { Doc, Domain, Ref } from './classes' import { DocInfo } from './server' /** * @public * Define a st of document + hashcode for chunk * So backup client could decide to download or not any of documents. */ export interface DocChunk { idx: number // _id => hash mapping docs: DocInfo[] finished: boolean } /** * @public */ export interface BackupClient { loadChunk: (domain: Domain, idx?: number, recheck?: boolean) => Promise closeChunk: (idx: number) => Promise loadDocs: (domain: Domain, docs: Ref[]) => Promise upload: (domain: Domain, docs: Doc[]) => Promise clean: (domain: Domain, docs: Ref[]) => Promise sendForceClose: () => Promise }