import type { CID } from 'multiformats/cid'; import { AnchorValidator, CommitData, Context, InternalOpts, LogEntry, StreamState, StreamStateHolder } from '@dustil/common'; import { Dispatcher } from './dispatcher.js'; import { CommitID, StreamID } from '@dustil/streamid'; import { HandlersMap } from './handlers-map.js'; export declare function pickLogToAccept(state1: StreamState, state2: StreamState): Promise; export declare class HistoryLog { private readonly dispatcher; readonly items: LogEntry[]; readonly streamId: StreamID; static fromState(dispatcher: Dispatcher, state: StreamState): HistoryLog; constructor(dispatcher: Dispatcher, items: LogEntry[], streamId: StreamID); get length(): number; includes(cid: CID): boolean; get last(): CID; findIndex(cid: CID): number; slice(start?: number, end?: number): HistoryLog; toCommitData(): Promise; } export declare function fetchLog(dispatcher: Dispatcher, cid: CID, stateLog: HistoryLog, unappliedCommits?: CommitData[], timestamp?: number): Promise; export declare function commitAtTime(stateHolder: StreamStateHolder, timestamp: number): CommitID; export declare class ConflictResolution { anchorValidator: AnchorValidator; private readonly dispatcher; private readonly context; private readonly handlers; constructor(anchorValidator: AnchorValidator, dispatcher: Dispatcher, context: Context, handlers: HandlersMap); private applyCommitDataToState; private applyLogToState; private _applyLogToState_noCacaoVerification; private applyLog; applyTip(initialState: StreamState, tip: CID, opts: InternalOpts): Promise; snapshotAtCommit(initialState: StreamState, commitId: CommitID): Promise; } //# sourceMappingURL=conflict-resolution.d.ts.map