UNPKG

fsrs-browser

Version:

FSRS for the browser, including Optimizer and Scheduler

146 lines (139 loc) 7.2 kB
/* tslint:disable */ /* eslint-disable */ export function start(): void; export function initThreadPool(num_threads: number): Promise<any>; export function wbg_rayon_start_worker(receiver: number): void; export class Fsrs { free(): void; constructor(parameters?: Float32Array | null); /** * `minute_offset` should be the `user's timezone offset from UTC` minus `Anki's "next day starts at"`, in minutes. */ computeParametersAnki(minute_offset: number, cids: BigInt64Array, eases: Uint8Array, ids: BigInt64Array, types: Uint8Array, progress: Progress | null | undefined, enable_short_term: boolean): Float32Array; computeParameters(ratings: Uint32Array, delta_ts: Uint32Array, lengths: Uint32Array, progress: Progress | null | undefined, enable_short_term: boolean): Float32Array; /** * Returns an array of 2 elements: `[stability, difficulty]` */ memoryState(ratings: Uint32Array, delta_ts: Uint32Array): Float32Array; /** * `minute_offset` should be the `user's timezone offset from UTC` minus `Anki's "next day starts at"`, in minutes. * Returns an array of 2 elements: `[stability, difficulty]` */ memoryStateAnki(minute_offset: number, cids: BigInt64Array, eases: Uint8Array, ids: BigInt64Array, types: Uint8Array): Float32Array | undefined; nextInterval(stability: number | null | undefined, desired_retention: number, rating: number): number; nextStates(stability: number | null | undefined, difficulty: number | null | undefined, desired_retention: number, days_elapsed: number): NextStates; } export class ItemState { private constructor(); free(): void; memory: MemoryState; interval: number; } export class MemoryState { private constructor(); free(): void; stability: number; difficulty: number; } export class NextStates { private constructor(); free(): void; again: ItemState; hard: ItemState; good: ItemState; easy: ItemState; } export class Progress { private constructor(); free(): void; static new(): Progress; /** * Memory will hold [items_processed, items_total] */ pointer(): number; } export class wbg_rayon_PoolBuilder { private constructor(); free(): void; numThreads(): number; receiver(): number; build(): void; } export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module; export interface InitOutput { readonly __wbg_fsrs_free: (a: number, b: number) => void; readonly fsrs_new: (a: number, b: number) => number; readonly fsrs_computeParametersAnki: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number, k: number, l: number) => [number, number]; readonly fsrs_computeParameters: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number]; readonly fsrs_memoryState: (a: number, b: number, c: number, d: number, e: number) => [number, number]; readonly fsrs_memoryStateAnki: (a: number, b: number, c: number, d: number, e: any, f: number, g: number, h: number, i: number, j: number, k: number) => [number, number]; readonly fsrs_nextInterval: (a: number, b: number, c: number, d: number) => number; readonly fsrs_nextStates: (a: number, b: number, c: number, d: number, e: number) => number; readonly start: () => void; readonly __wbg_memorystate_free: (a: number, b: number) => void; readonly __wbg_get_memorystate_stability: (a: number) => number; readonly __wbg_set_memorystate_stability: (a: number, b: number) => void; readonly __wbg_get_memorystate_difficulty: (a: number) => number; readonly __wbg_set_memorystate_difficulty: (a: number, b: number) => void; readonly __wbg_nextstates_free: (a: number, b: number) => void; readonly __wbg_get_nextstates_again: (a: number) => number; readonly __wbg_set_nextstates_again: (a: number, b: number) => void; readonly __wbg_get_nextstates_hard: (a: number) => number; readonly __wbg_set_nextstates_hard: (a: number, b: number) => void; readonly __wbg_get_nextstates_good: (a: number) => number; readonly __wbg_set_nextstates_good: (a: number, b: number) => void; readonly __wbg_get_nextstates_easy: (a: number) => number; readonly __wbg_set_nextstates_easy: (a: number, b: number) => void; readonly __wbg_itemstate_free: (a: number, b: number) => void; readonly __wbg_get_itemstate_memory: (a: number) => number; readonly __wbg_set_itemstate_memory: (a: number, b: number) => void; readonly __wbg_get_itemstate_interval: (a: number) => number; readonly __wbg_set_itemstate_interval: (a: number, b: number) => void; readonly __wbg_progress_free: (a: number, b: number) => void; readonly progress_new: () => number; readonly progress_pointer: (a: number) => number; readonly __wbg_wbg_rayon_poolbuilder_free: (a: number, b: number) => void; readonly wbg_rayon_poolbuilder_numThreads: (a: number) => number; readonly wbg_rayon_poolbuilder_receiver: (a: number) => number; readonly wbg_rayon_poolbuilder_build: (a: number) => void; readonly initThreadPool: (a: number) => any; readonly wbg_rayon_start_worker: (a: number) => void; readonly __wbindgen_exn_store: (a: number) => void; readonly __externref_table_alloc: () => number; readonly __wbindgen_export_2: WebAssembly.Table; readonly __wbindgen_free: (a: number, b: number, c: number) => void; readonly memory: WebAssembly.Memory; readonly __wbindgen_malloc: (a: number, b: number) => number; readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number; readonly __wbindgen_thread_destroy: (a?: number, b?: number, c?: number) => void; readonly __wbindgen_start: (a: number) => void; } export type SyncInitInput = BufferSource | WebAssembly.Module; /** * Instantiates the given `module`, which can either be bytes or * a precompiled `WebAssembly.Module`. * * @param {{ module: SyncInitInput, memory?: WebAssembly.Memory, thread_stack_size?: number }} module - Passing `SyncInitInput` directly is deprecated. * @param {WebAssembly.Memory} memory - Deprecated. * * @returns {InitOutput} */ export function initSync(module: { module: SyncInitInput, memory?: WebAssembly.Memory, thread_stack_size?: number } | SyncInitInput, memory?: WebAssembly.Memory): InitOutput; /** * If `module_or_path` is {RequestInfo} or {URL}, makes a request and * for everything else, calls `WebAssembly.instantiate` directly. * * @param {{ module_or_path: InitInput | Promise<InitInput>, memory?: WebAssembly.Memory, thread_stack_size?: number }} module_or_path - Passing `InitInput` directly is deprecated. * @param {WebAssembly.Memory} memory - Deprecated. * * @returns {Promise<InitOutput>} */ export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput>, memory?: WebAssembly.Memory, thread_stack_size?: number } | InitInput | Promise<InitInput>, memory?: WebAssembly.Memory): Promise<InitOutput>; /** * Do not use this function after the completion of `computeParameters` or `computeParametersAnki`. * Data returned after completion will be random! */ export function getProgress(wasmMemoryBuffer: ArrayBuffer, pointer: number): { itemsProcessed: number; itemsTotal: number; };