hswidget
Version:
Helpful Scripts UI widgets
22 lines (21 loc) • 656 B
TypeScript
export interface Stateful {
getNumValues: () => number;
getValue: () => number;
setValue: (newValue: number) => number;
}
export interface Transition {
(state: Stateful, input?: any): number;
}
export declare class State implements Stateful {
protected numValues: number;
protected transition: Transition;
static transitions: {
[name: string]: Transition;
};
protected state: number;
constructor(numValues: number, initialValue?: number, transition?: Transition);
getNumValues: () => number;
getValue: () => number;
setValue: (newValue: number) => number;
advance: (input?: any) => number;
}