UNPKG

ccgjs

Version:

A combinatory categorial grammar (CCG) library for the web.

52 lines (51 loc) 1.35 kB
import { MachineReadableCCGNodeT, MachineReadableCCGNodeL } from './ccg.reader'; export declare type NodeT = MachineReadableCCGNodeT & { nIndex?: number; }; export declare type NodeL = MachineReadableCCGNodeL & { nIndex?: number; wIndex?: number; }; export declare type Node = { value: NodeT | NodeL; left?: Node; right?: Node; }; export declare type Derivation = { from: number; to: number; ccgCat: string; opr?: string; }; export declare type Metadata = { isParsed: boolean; sentence: string; words: Array<string>; ccgCats: Array<string>; derivations?: Array<Array<Derivation>>; height: number; nodes: Array<Node>; }; export declare type IndexedWordMapper = { [key: number]: Node; }; export declare type ToStringOptions = { pretty?: boolean; }; export default class Tree { root?: Node; metadata?: Metadata; mappedIndexedWords?: IndexedWordMapper; private stringBuilder?; constructor(str?: string); traverse(fn: Function): any; toString(opts?: ToStringOptions): string; buildDerivations(): Array<Array<Derivation>>; private constructTree; private buildTree; private buildTreeUtil; private toStringUtil; private isNodeT; private isNodeL; private buildDerivUtil; }