@sarahisweird/hmoog
Version:
Out-of-game automation for Hackmud
29 lines (28 loc) • 678 B
TypeScript
export declare enum NodeType {
TEXT = 0,
COLOR = 1,
END_TAG = 2
}
export type TextNode = {
type: NodeType.TEXT;
text: string;
};
export type Rgba = [number, number, number, number];
export type ColorNode = {
type: NodeType.COLOR;
colorHex: string;
colorRgba: Rgba;
children: Node[];
};
export type EndTag = {
type: NodeType.END_TAG;
name: string;
};
export type Node = TextNode | ColorNode;
export type ParseNode = Node | EndTag;
export declare abstract class NodeVisitor {
visitAll(nodes: Node[]): void;
visit(node: Node): void;
abstract visitText(node: TextNode): void;
abstract visitColor(node: ColorNode): void;
}