import type { IOps, IStream } from '../stream/index.js'; /** * Behavior is a stream paired with a composition function */ export type IBehavior = [IStream, IComposeBehavior]; type ISampler = (source: IStream) => IStream; /** * Variadic function composition interface for behavior streams * Supports function composition with proper type flow */ export interface IComposeBehavior { (): ISampler; (o1: IOps): ISampler; (o1: IOps, o2: IOps): ISampler; (o1: IOps, o2: IOps, o3: IOps): ISampler; (o1: IOps, o2: IOps, o3: IOps, o4: IOps): ISampler; (o1: IOps, o2: IOps, o3: IOps, o4: IOps, o5: IOps): ISampler; (o1: IOps, o2: IOps, o3: IOps, o4: IOps, o5: IOps, o6: IOps): ISampler; (o1: IOps, o2: IOps, o3: IOps, o4: IOps, o5: IOps, o6: IOps, o7: IOps): ISampler; (o1: IOps, o2: IOps, o3: IOps, o4: IOps, o5: IOps, o6: IOps, o7: IOps, o8: IOps): ISampler; (o1: IOps, o2: IOps, o3: IOps, o4: IOps, o5: IOps, o6: IOps, o7: IOps, o8: IOps, o9: IOps): ISampler; } export {};