import { Cid } from '@atproto/lex-data'; import { BlockMap } from './block-map'; import { CarBlock } from './types'; export declare function writeCarStream(root: Cid | null, blocks: AsyncIterable): AsyncIterable; export declare function blocksToCarFile(root: Cid | null, blocks: BlockMap): Promise; export declare const blocksToCarStream: (root: Cid | null, blocks: BlockMap) => AsyncIterable; export type ReadCarOptions = { /** * When true, does not verify CID-to-content mapping within CAR. */ skipCidVerification?: boolean; }; export declare const readCar: (bytes: Uint8Array, opts?: ReadCarOptions) => Promise<{ roots: Cid[]; blocks: BlockMap; }>; export declare const readCarWithRoot: (bytes: Uint8Array, opts?: ReadCarOptions) => Promise<{ root: Cid; blocks: BlockMap; }>; export type CarBlockIterable = AsyncGenerator & { dump: () => Promise; }; export declare const readCarStream: (car: Iterable | AsyncIterable, opts?: ReadCarOptions) => Promise<{ roots: Cid[]; blocks: CarBlockIterable; }>; export declare const readCarReader: (reader: BytesReader, opts?: ReadCarOptions) => Promise<{ roots: Cid[]; blocks: CarBlockIterable; }>; export declare function verifyIncomingCarBlocks(car: AsyncIterable): AsyncGenerator; interface BytesReader { isDone: boolean; read(bytesToRead: number): Promise; close(): Promise; } export {}; //# sourceMappingURL=car.d.ts.map