site/node_modules/speech-rule-engine/js/semantic_tree/semantic_skeleton.d.ts
2024-10-14 08:09:33 +02:00

35 lines
1.3 KiB
TypeScript

import { SemanticNode } from './semantic_node';
import { SemanticTree } from './semantic_tree';
export declare type Sexp = number | Sexp[];
export declare class SemanticSkeleton {
array: Sexp;
parents: {
[key: number]: number[];
};
levelsMap: {
[key: number]: Sexp[];
};
static fromTree(tree: SemanticTree): SemanticSkeleton;
static fromNode(node: SemanticNode): SemanticSkeleton;
static fromString(skel: string): SemanticSkeleton;
static simpleCollapseStructure(strct: Sexp): boolean;
static contentCollapseStructure(strct: Sexp): boolean;
static interleaveIds(first: Sexp, second: Sexp): Sexp;
static collapsedLeafs(...args: Sexp[]): number[];
static fromStructure(mml: Element, tree: SemanticTree): SemanticSkeleton;
static combineContentChildren<T>(semantic: SemanticNode, content: T[], children: T[]): T[];
private static makeSexp_;
private static fromString_;
private static fromNode_;
private static tree_;
private static addOwns_;
private static realLeafs_;
constructor(skeleton: Sexp);
populate(): void;
toString(): string;
private populate_;
isRoot(id: number): boolean;
directChildren(id: number): number[];
subtreeNodes(id: number): number[];
}