@atproto/repo
Version:
atproto repo and MST implementation
37 lines • 1.7 kB
TypeScript
import * as crypto from '@atproto/crypto';
import { Cid } from '@atproto/lex-data';
import { BlockMap } from './block-map.js';
import { CidSet } from './cid-set.js';
import { MST } from './mst/index.js';
import { ReadableRepo } from './readable-repo.js';
import { RepoStorage } from './storage/index.js';
import { Commit, CommitData, RecordCreateOp, RecordWriteOp } from './types.js';
type Params = {
storage: RepoStorage;
data: MST;
commit: Commit;
cid: Cid;
};
export declare class Repo extends ReadableRepo {
storage: RepoStorage;
constructor(params: Params);
static formatInitCommit(storage: RepoStorage, did: string, keypair: crypto.Keypair, initialWrites?: RecordCreateOp[], revOverride?: string): Promise<CommitData>;
static createFromCommit(storage: RepoStorage, commit: CommitData): Promise<Repo>;
static create(storage: RepoStorage, did: string, keypair: crypto.Keypair, initialWrites?: RecordCreateOp[]): Promise<Repo>;
static load(storage: RepoStorage, cid?: Cid): Promise<Repo>;
formatCommit(toWrite: RecordWriteOp | RecordWriteOp[], keypair: crypto.Keypair): Promise<CommitData>;
applyCommit(commitData: CommitData): Promise<Repo>;
applyWrites(toWrite: RecordWriteOp | RecordWriteOp[], keypair: crypto.Keypair): Promise<Repo>;
formatResignCommit(rev: string, keypair: crypto.Keypair): Promise<{
cid: Cid<0 | 1, number, number>;
rev: string;
since: null;
prev: null;
newBlocks: BlockMap;
relevantBlocks: BlockMap;
removedCids: CidSet;
}>;
resignCommit(rev: string, keypair: crypto.Keypair): Promise<Repo>;
}
export default Repo;
//# sourceMappingURL=repo.d.ts.map