binary-decision-diagram
Version:
A library to create, minimize and optimize binary decision diagrams
23 lines (22 loc) • 821 B
TypeScript
import type { BooleanString, NonRootNode, NonLeafNode } from './types.js';
import { AbstractNode } from './abstract-node.js';
/**
* represents the branches of a single node
*/
export declare class Branches {
private node;
deleted: boolean;
data: {
[k in BooleanString]: NonRootNode;
};
constructor(node: NonLeafNode);
setBranch(which: BooleanString, branchNode: NonRootNode): void;
getKeyOfNode(node: NonRootNode): BooleanString;
getBranch(which: BooleanString): NonRootNode;
getBothBranches(): NonRootNode[];
hasBranchAsNode(node: AbstractNode): boolean;
hasNodeIdAsBranch(id: string): boolean;
areBranchesStrictEqual(): boolean;
hasEqualBranches(): boolean;
}
export declare function ensureNodesNotStrictEqual(node1: NonRootNode, node2: NonRootNode): void;