interface Options { /** Use word mode? */ words: boolean; /** Order, default = 3 */ order: number; /** Prior value, default = 0.001 */ prior: number; } declare type Events = { [key: string]: number; }; /** * @class (Markov process)-based string generator. * Copied from a RogueBasin article. * Offers configurable order and prior. */ export default class StringGenerator { _options: Options; _boundary: string; _suffix: string; _prefix: string[]; _priorValues: { [key: string]: number; }; _data: { [key: string]: Events; }; constructor(options: Partial); /** * Remove all learning data */ clear(): void; /** * @returns {string} Generated string */ generate(): string; /** * Observe (learn) a string from a training set */ observe(string: string): void; getStats(): string; /** * @param {string} * @returns {string[]} */ _split(str: string): string[]; /** * @param {string[]} * @returns {string} */ _join(arr: string[]): string; /** * @param {string[]} context * @param {string} event */ _observeEvent(context: string[], event: string): void; /** * @param {string[]} * @returns {string} */ _sample(context: string[]): string; /** * @param {string[]} * @returns {string[]} */ _backoff(context: string[]): string[]; } export {};