UNPKG

ts-trueskill

Version:

Port of python trueskill package in TypeScript

51 lines (50 loc) 1.95 kB
import { SkillGaussian } from './mathematics.js'; import type { Rating } from './rating.js'; export declare class Variable extends SkillGaussian { messages: Record<string, SkillGaussian>; setVal(val: Variable | SkillGaussian): number; delta(other: Variable | SkillGaussian): number; updateMessage(factor: LikelihoodFactor | SumFactor | PriorFactor, pi?: number, tau?: number, message?: SkillGaussian): number; updateValue(factor: TruncateFactor | PriorFactor, pi?: number, tau?: number, value?: SkillGaussian): number; toString(): string; } export declare class Factor { vars: Variable[]; readonly uuid: string; constructor(vars: Variable[]); down(): number; up(): number; get v(): Variable; toString(): string; } export declare class PriorFactor extends Factor { readonly val: Rating; readonly dynamic: number; constructor(v: Variable, val: Rating, dynamic?: number); down(): number; } export declare class LikelihoodFactor extends Factor { readonly mean: Variable; readonly value: Variable; readonly variance: number; constructor(mean: Variable, value: Variable, variance: number); calcA(v: SkillGaussian): number; down(): number; up(): number; } export declare class SumFactor extends Factor { readonly sum: Variable; readonly terms: Variable[]; readonly coeffs: number[]; constructor(sum: Variable, terms: Variable[], coeffs: number[]); down(): number; up(index?: number): number; update(v: Variable, vals: Variable[], msgs: SkillGaussian[], coeffs: number[]): number; } export declare class TruncateFactor extends Factor { readonly vFunc: (a: number, b: number) => number; readonly wFunc: (a: number, b: number) => number; readonly drawMargin: number; constructor(v: Variable, vFunc: (a: number, b: number) => number, wFunc: (a: number, b: number) => number, drawMargin: number); up(): number; }