@flowlab/all
Version:
A cool library focusing on handling various flows
19 lines (17 loc) • 820 B
text/typescript
// src/streaming/interfaces.ts (can merge into core/interfaces.ts later if preferred)
import { PipelineContext, IStreamProcessor, StreamProcessingConfig } from '../core/interfaces';
import { Logger } from 'pino';
export interface IStreamSourceAdapter {
initialize(config: any, logger: Logger): Promise<void>;
// Method to start consuming messages and pass them to the processor
consume(processor: IStreamProcessor<any, any>, context: PipelineContext): Promise<void>;
shutdown(): Promise<void>;
}
// --- FlowLab Node Placeholder for Streaming ---
export interface IStreamingFlowNode { // extends IFlowLabNode ?
readonly id: string;
readonly type: '@flowlab/data:stream-processor';
configure(config: StreamProcessingConfig): void;
start(): Promise<void>;
stop(): Promise<void>;
}