-
-
Notifications
You must be signed in to change notification settings - Fork 400
/
index.d.ts
126 lines (115 loc) · 3.3 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
/*
* @license Apache-2.0
*
* Copyright (c) 2021 The Stdlib Authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// TypeScript Version: 2.0
/* tslint:disable:max-line-length */
/* tslint:disable:max-file-line-count */
import expandContractions = require( '@stdlib/nlp/expand-contractions' );
import lda = require( '@stdlib/nlp/lda' );
import porterStemmer = require( '@stdlib/nlp/porter-stemmer' );
import tokenize = require( '@stdlib/nlp/tokenize' );
/**
* Interface describing the `nlp` namespace.
*/
interface Namespace {
/**
* Expands all contractions to their formal equivalents.
*
* @param str - string to convert
* @returns string with expanded contractions
*
* @example
* var str = 'I won\'t be able to get y\'all out of this one.';
* var out = ns.expandContractions( str );
* // returns 'I will not be able to get you all out of this one.'
*
* @example
* var str = 'It oughtn\'t to be my fault, because, you know, I didn\'t know';
* var out = ns.expandContractions( str );
* // returns 'It ought not to be my fault, because, you know, I did not know'
*/
expandContractions: typeof expandContractions;
/**
* Latent Dirichlet Allocation via collapsed Gibbs sampling.
*
* @param documents - document corpus
* @param K - number of topics
* @param options - options object
* @param options.alpha - Dirichlet hyper-parameter of topic vector theta:
* @param options.beta - Dirichlet hyper-parameter for word vector phi
* @throws second argument must be a positive integer
* @throws must provide valid options
* @returns model object
*/
lda: typeof lda;
/**
* Extracts the stem of a given word.
*
* @param word - input word
* @returns word stem
*
* @example
* var out = ns.porterStemmer( 'walking' );
* // returns 'walk'
*
* @example
* var out = ns.porterStemmer( 'walked' );
* // returns 'walk'
*
* @example
* var out = ns.porterStemmer( 'walks' );
* // returns 'walk'
*
* @example
* var out = ns.porterStemmer( 'worldwide' );
* // returns 'worldwid'
*
* @example
* var out = ns.porterStemmer( '' );
* // returns ''
*/
porterStemmer: typeof porterStemmer;
/**
* Tokenize a string.
*
* @param str - input string
* @param keepWhitespace - boolean indicating whether whitespace characters should be returned as part of the token array (default: false)
* @returns array of tokens
*
* @example
* var str = 'Hello World!';
* var out = ns.tokenize( str );
* // returns [ 'Hello', 'World', '!' ]
*
* @example
* var str = '';
* var out = ns.tokenize( str );
* // returns []
*
* @example
* var str = 'Hello Mrs. Maple, could you call me back?';
* var out = ns.tokenize( str );
* // returns [ 'Hello', 'Mrs.', 'Maple', ',', 'could', 'you', 'call', 'me', 'back', '?' ]
*/
tokenize: typeof tokenize;
}
/**
* Natural language processing.
*/
declare var ns: Namespace;
// EXPORTS //
export = ns;