From 0c717541d80116f51bc2d9c0a4a2d731b0a50edb Mon Sep 17 00:00:00 2001 From: "Dylan R. E. Moonfire" Date: Mon, 7 Dec 2015 13:00:05 -0600 Subject: [PATCH 1/2] Added an interface to tokenizers to make it easier to pass into functinos. --- natural/natural.d.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/natural/natural.d.ts b/natural/natural.d.ts index d559f38012..249caf901d 100644 --- a/natural/natural.d.ts +++ b/natural/natural.d.ts @@ -8,24 +8,27 @@ declare module "natural" { import events = require("events"); - class WordTokenizer { + interface Tokenizer { tokenize(text: string): string[]; } - class AggressiveTokenizer { + class WordTokenizer implements Tokenizer { tokenize(text: string): string[]; } - class TreebankWordTokenizer { + class AggressiveTokenizer implements Tokenizer { + tokenize(text: string): string[]; + } + class TreebankWordTokenizer implements Tokenizer { tokenize(text: string): string[]; } interface RegexTokenizerOptions { pattern: RegExp; discardEmpty?: boolean; } - class RegexpTokenizer { + class RegexpTokenizer implements Tokenizer { constructor(options: RegexTokenizerOptions); tokenize(text: string): string[]; } - class WordPunctTokenizer { + class WordPunctTokenizer implements Tokenizer { tokenize(text: string): string[]; } @@ -74,6 +77,10 @@ declare module "natural" { static restore(classifier: any, stemmer?: Stemmer): BayesClassifier; } + interface Phonetic { + compare(stringA: string, stringB: string): boolean; + process(token: string, maxLength?: number): string; + } var Metaphone: { compare(stringA: string, stringB: string): boolean; process(token: string, maxLength?: number): string; From 412522a8d49a6d557d79ea4e5485a5c097afad52 Mon Sep 17 00:00:00 2001 From: "Dylan R. E. Moonfire" Date: Mon, 7 Dec 2015 13:00:19 -0600 Subject: [PATCH 2/2] Added missing LancasterStemmer. --- natural/natural.d.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/natural/natural.d.ts b/natural/natural.d.ts index 249caf901d..aaf3305a01 100644 --- a/natural/natural.d.ts +++ b/natural/natural.d.ts @@ -63,6 +63,9 @@ declare module "natural" { var PorterStemmerPt: { stem(token: string): string; } + var LancasterStemmer: { + stem(token: string): string; + } interface BayesClassifierCallback { (err: any, classifier: any): void } class BayesClassifier {