co-share
Version:
A Javascript framework for easily building shared applications such as chats and games
15 lines (14 loc) • 477 B
TypeScript
export declare type TimeStep<T> = (current: Readonly<T>) => T;
export declare class History<T> {
private onChange;
private presenceHistoryEntry;
get presence(): T;
constructor(presence: T, onChange: (presence: T) => void);
private pNext;
next(timeStep: TimeStep<T>): void;
/**
* @returns a function that allows to remove or keep the time step
*/
maybeNext(timeStep: TimeStep<T>): (keep: boolean) => void;
logStableChain(): void;
}