export class Repo { static isRepo(o: any): o is Repo; constructor(db: import("abstract-level/types/abstract-level.js").AbstractLevel, strategy?: MergeStrategy | Array); _db: import("abstract-level/types/abstract-level.js").AbstractLevel; allowDetached: boolean; _strategies: MergeStrategy[]; get mkKey(): typeof mkKey; _setHeadPtr(name: any, ptr: any): Promise; _setLatestPtr(name: any, ptr: any): Promise; _getTag(type: any, name: any): Promise; _getHeadPtr(name: any): Promise; _getTailPtr(name: any): Promise; _getLatestPtr(name: any): Promise; _getChainPtr(name: any): Promise; writeBlock(block: Block): Promise; readBlock(id: SignatureBin): Promise; _hasBlock(id: any): Promise; _traceOwnerOf(sig: any): Promise; resolveFeed(sig: SignatureBin, stopCallback?: any): Promise; merge(feed: Feed | Block | ArrayBuffer | Uint8Array | Array, strategy: MergeStrategy): Promise; _queryUserStrategy(block: any, inlineStrategy: any): Promise; loadHead(key: PublicKey, stopCallback?: any): Promise; loadLatest(key: PublicKey, stopCallback?: any): Promise; loadFeed(ptr: SignatureBin, stopCallback?: number | ((block: Block, stop: (after: boolean) => void) => void)): Promise; _chainLoad(next: any): AsyncGenerator; rollback(head: PublicKey | SignatureBin, stopAt?: SignatureBin | null): Promise; get headOf(): (name: any) => Promise; get tailOf(): (name: any) => Promise; get latestOf(): (name: any) => Promise; get chainload(): (next: any) => AsyncGenerator; get ownerOf(): (sig: any) => Promise; writeReg(key: any, value: any): Promise; readReg(key: any): Promise; listHeads(): Promise<{ key: Uint8Array; value: Uint8Array; }[]>; listTails(): Promise<{ key: Uint8Array; value: Uint8Array; }[]>; listLatest(): Promise<{ key: Uint8Array; value: Uint8Array; }[]>; listFeeds(): Promise<{ key: Uint8Array; value: Uint8Array; }[]>; listFeedHeads(): Promise<{ key: Uint8Array; value: Uint8Array; }[]>; _listRange(query: any): Promise<{ key: Uint8Array; value: Uint8Array; }[]>; [REPO_SYMBOL]: boolean; } export type MergeStrategy = (block: Block, self: Repo) => boolean | Promise; export type Feed = import('picofeed').Feed; export type SignatureBin = import('picofeed').SignatureBin; export type PublicKey = import('picofeed').PublicKey; export type BinaryLevel = import('abstract-level').AbstractLevel; declare function mkKey(type: any, key: any): Uint8Array; import { Block } from 'picofeed'; declare const REPO_SYMBOL: unique symbol; export {};