import { Awaitable } from '@blackglory/prelude'; import { IRunnable } from 'extra-runnable'; export type RunnableConsumer = IRunnable; export type RunnableConsumerFactory = () => Awaitable>; export type Consumer = (signal: AbortSignal, params: Params) => Awaitable; export interface IConsumerModule { default: Consumer; init?: () => Awaitable; final?: (error?: Error) => Awaitable; }