import type { Readable } from 'node:stream'; import { check } from '@atproto/common-web'; import { Cid, LexMap } from '@atproto/lex-data'; import { BlockMap } from '../block-map'; import { CommitData } from '../types'; export interface RepoStorage { getRoot(): Promise; putBlock(cid: Cid, block: Uint8Array, rev: string): Promise; putMany(blocks: BlockMap, rev: string): Promise; updateRoot(cid: Cid, rev: string): Promise; applyCommit(commit: CommitData): any; getBytes(cid: Cid): Promise; has(cid: Cid): Promise; getBlocks(cids: Cid[]): Promise<{ blocks: BlockMap; missing: Cid[]; }>; attemptRead(cid: Cid, def: check.Def): Promise<{ obj: T; bytes: Uint8Array; } | null>; readObjAndBytes(cid: Cid, def: check.Def): Promise<{ obj: T; bytes: Uint8Array; }>; readObj(cid: Cid, def: check.Def): Promise; attemptReadRecord(cid: Cid): Promise; readRecord(cid: Cid): Promise; } export interface BlobStore { putTemp(bytes: Uint8Array | Readable): Promise; makePermanent(key: string, cid: Cid): Promise; putPermanent(cid: Cid, bytes: Uint8Array | Readable): Promise; quarantine(cid: Cid): Promise; unquarantine(cid: Cid): Promise; getBytes(cid: Cid): Promise; getStream(cid: Cid): Promise; hasTemp(key: string): Promise; hasStored(cid: Cid): Promise; delete(cid: Cid): Promise; deleteMany(cid: Cid[]): Promise; } export declare class BlobNotFoundError extends Error { } //# sourceMappingURL=types.d.ts.map