import Algorithm from './Algorithm'; import Message from './Message'; import Window from './Window'; export default abstract class BaseAlgorithm implements Algorithm { currentWindow: Window; lastWindow: Window | undefined; algorithmType: string; windowSize: string; name: string; input: string; abstract compute(content: any, window: Window): any; /** * * @param algorithmType algorithmType 算法类型 计算实时数据还是历史数据 * @param windowSize TimeSpliceSize 时间切片长度类型 [5min|30min|1h|1d|unlimited] * @param name * @param input */ constructor(algorithmType: string, windowSize: string, name: string, input: string); getName(): string; getInput(): string; /** * 算法销毁时,发出事件 */ onDestory(): void; initWindow(): void; recoverMetrics(content: string): void; startTimer(): void; archive(window: Window): void; getDeltaTime(): number; onMessage(message: Message): Promise; }