cld3-asm
Version:
WebAssembly based Javascript bindings for google compact language detector 3
50 lines (46 loc) • 1.35 kB
text/typescript
import { BaseAsmModule } from 'emscripten-wasm-loader';
import { LanguageCode } from './languageCode';
/**
* Holds probability that Span, specified by start/end indices, is a given
* language. The langauge is not stored here; it can be found in Result, which
* holds a vector of SpanInfo.
*/
export interface SpanInfo {
start_index: number;
end_index: number;
probability: number;
}
export interface LanguageResult {
/**
* Detected language. {UnknownLanguage} if detection fails.
*/
language: LanguageCode;
/**
* Language probability.
*/
probability: number;
/**
* Whether the prediction is reliable.
*/
is_reliable: boolean;
/**
* Proportion of bytes associated with the language. If FindLanguage is
* called, this variable is set to 1.
*/
proportion: number;
/**
* Specifies the byte ranges that |language| applies to.
*/
byte_ranges: Array<SpanInfo>;
}
/**
* @internal
*
* Interface for module generated by emscripten to load wasm binary.
* https://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html
*/
export interface CldAsmModule extends Required<BaseAsmModule> {
allocateUTF8: (str: string) => number;
setValue: (ptr: number, value: any, type: 'i8' | 'i16' | 'i32' | 'i64' | 'float' | 'double' | '*') => void;
initializeRuntime(): Promise<boolean>;
}