narraleaf-react
Version:
A React visual novel player framework
18 lines (17 loc) • 790 B
TypeScript
import { LogicAction } from "../action/logicAction";
import { BaseElement } from "../action/baseElement";
import Actions = LogicAction.Actions;
import GameElement = LogicAction.GameElement;
export type Proxied<T extends Record<any, any>, U extends Record<any, any>> = T & U;
export type ChainedAction = Proxied<GameElement, Chained<LogicAction.Actions>>;
export type ChainedActions = (ChainedAction | ChainedAction[] | Actions | Actions[])[];
export declare class Chained<T, Self extends Chainable<any, any> = any> {
static isChained<T>(value: any): value is Chained<T>;
static toActions(chainedActions: ChainedActions): Actions[];
}
/**
* - T - the action type
* - U - self constructor
*/
export declare class Chainable<T, U extends Chainable<any, any>> extends BaseElement {
}