narraleaf-react
Version:
A React visual novel player framework
33 lines (32 loc) • 868 B
TypeScript
import { Action } from "./action";
import { ActionHistoryManager } from "./actionHistory";
type GameHistoryAction = {
token: string;
action: Action;
isPending?: boolean;
};
type GameElementHistory = {
type: "say";
text: string;
voice: string | null;
character: string | null;
} | {
type: "menu";
text: string | null;
selected: string | null;
};
export type GameHistory = GameHistoryAction & {
element: GameElementHistory;
};
export declare class GameHistoryManager {
private history;
private actionHistoryMgr;
constructor(actionHistoryMgr: ActionHistoryManager);
push(action: GameHistory): this;
getHistory(): GameHistory[];
reset(): void;
updateByToken(id: string, handler: (result: GameHistory | null) => void): void;
resolvePending(id: string): void;
private crossFilter;
}
export {};