@river-build/sdk
Version:
For more details, visit the following resources:
22 lines • 1.45 kB
TypeScript
import TypedEmitter from 'typed-emitter';
import { Snapshot, SyncCookie } from '@river-build/proto';
import { Stream } from './stream';
import { ParsedMiniblock, ParsedEvent, ParsedStreamResponse } from './types';
import { DLogger } from '@river-build/dlog';
import { IPersistenceStore, LoadedStream } from './persistenceStore';
import { StreamEvents } from './streamEvents';
import { ISyncedStream } from './syncedStreamsLoop';
export declare class SyncedStream extends Stream implements ISyncedStream {
log: DLogger;
isUpToDate: boolean;
readonly persistenceStore: IPersistenceStore;
constructor(userId: string, streamId: string, clientEmitter: TypedEmitter<StreamEvents>, logEmitFromStream: DLogger, persistenceStore: IPersistenceStore);
initializeFromPersistence(persistedData?: LoadedStream): Promise<boolean>;
initialize(nextSyncCookie: SyncCookie, events: ParsedEvent[], snapshot: Snapshot, miniblocks: ParsedMiniblock[], prependedMiniblocks: ParsedMiniblock[], prevSnapshotMiniblockNum: bigint, cleartexts: Record<string, Uint8Array | string> | undefined): Promise<void>;
initializeFromResponse(response: ParsedStreamResponse): Promise<void>;
appendEvents(events: ParsedEvent[], nextSyncCookie: SyncCookie, cleartexts: Record<string, Uint8Array | string> | undefined): Promise<void>;
private onMiniblockHeader;
private markUpToDate;
resetUpToDate(): void;
}
//# sourceMappingURL=syncedStream.d.ts.map