@naturalcycles/js-lib
Version:
Standard library for universal (browser + Node.js) javascript
27 lines (26 loc) • 627 B
TypeScript
/**
* Implements a Simple Moving Average algorithm.
*/
export declare class SimpleMovingAverage {
readonly size: number;
readonly data: number[];
constructor(size: number, data?: number[]);
/**
* Next index of array to push to
*/
private nextIndex;
/**
* Current average (calculated on the fly).
* Returns 0 (not undefined) for empty data.
*/
get avg(): number;
/**
* Push new value.
* Returns newly calculated average (using newly pushed value).
*/
pushGetAvg(n: number): number;
/**
* Push new value.
*/
push(n: number): void;
}