UNPKG

fuzzy-rater

Version:

Tooling for fuzzily rating text according to some query

58 lines 2.86 kB
import { INormalizedNFANode } from "../NFA/_types/INormalizedNFANode"; import { INormalizedNFATemplate } from "../NFA/_types/INormalizedNFATemplate"; import { IDFANFATemplate } from "./_types/NFAconversion/IDFANFATemplate"; import { IDFANFATransition } from "./_types/NFAconversion/IDFANFATransition"; /** * Converts the nfa input to a dfa input * @param nodes The nodes for a nfa automaton * @returns The dfa equivalent automaton template */ export declare function convertNFATemplateToDFATemplate<N, T>(nodes: INormalizedNFATemplate<N, T>): IDFANFATemplate<N, T>; /** * Creates a transition, given a character and the node sets to transition from * @param template All the nfa input nodes * @param nodes The current state * @param char The character to transition on * @returns The transition for this character */ export declare function getCharacterTransition<N, T>(template: Map<string, INormalizedNFANode<N, T>>, nodes: INormalizedNFANode<N, T>[], char: string): { transition: IDFANFATransition<T>; to: INormalizedNFANode<N, T>[]; }; /** * Retrieves the transition for all characters for which no specific transition exists * @param template All the nfa input nodes * @param nodes The current state * @returns The transition for the remaining characters */ export declare function getRemainingTransition<N, T>(template: Map<string, INormalizedNFANode<N, T>>, nodes: INormalizedNFANode<N, T>[]): { transition: IDFANFATransition<T>; to: INormalizedNFANode<N, T>[]; }; /** * Retrieves the transition characters found in the given set of nodes * @param nodes The nodes in which to look for transition characters * @returns The transition character set */ export declare function getAvailableTransitionCharacter<N, T>(nodes: INormalizedNFANode<N, T>[]): string[]; /** * Checks what nodes are reachable with the given set, by using empty transitions * @param template All the nfa input nodes * @param nodes The nodes to get the closure of, (may include duplicates, which will be removed) * @returns The reach of these nodes */ export declare function getReachableNodes<N, T>(template: Map<string, INormalizedNFANode<N, T>>, nodes: INormalizedNFANode<N, T>[]): INormalizedNFANode<N, T>[]; /** * Creates an ID to uniquely define a set of nodes, no matter what the order is * @param nodes The nodes to create the ID for * @returns The created ID */ export declare function createID<N, T>(nodes: (INormalizedNFANode<N, T> | string)[]): string; /** * Retrieves nodes given the list of IDs * @param map The map of items that the nodes are in * @param IDs The IDs of the nodes to retrieve * @returns The nodes */ export declare function getNodesFromIDs<T>(map: Map<string, T>, IDs: string[]): T[]; //# sourceMappingURL=convertNFATemplateToDFATemplate.d.ts.map