TenantAtlas/apps/platform/.pnpm-store/v10/files/f0/381a916f6ef83e2dcfbe0d18117c896e0892c3923403d879cb9cb71672efcea21c17065e774cfa1b43b995d60be43f0b72db919ac0eb810c3d954a5ae10430
Ahmed Darrazi 9f74f7a658
Some checks failed
PR Fast Feedback / fast-feedback (pull_request) Failing after 51s
feat: compress governance operator outcomes
2026-04-19 14:15:11 +02:00

30 lines
1.1 KiB
Plaintext

import { Readable } from 'stream';
import { Command, CommandIdentifier } from '../command';
import { Logger } from '../logger';
import { FlowController } from './flow-controller';
/**
* Sends input from concurrently through to commands.
*
* Input can start with a command identifier, in which case it will be sent to that specific command.
* For instance, `0:bla` will send `bla` to command at index `0`, and `server:stop` will send `stop`
* to command with name `server`.
*
* If the input doesn't start with a command identifier, it is then always sent to the default target.
*/
export declare class InputHandler implements FlowController {
private readonly logger;
private readonly defaultInputTarget;
private readonly inputStream?;
private readonly pauseInputStreamOnFinish;
constructor({ defaultInputTarget, inputStream, pauseInputStreamOnFinish, logger, }: {
inputStream?: Readable;
logger: Logger;
defaultInputTarget?: CommandIdentifier;
pauseInputStreamOnFinish?: boolean;
});
handle(commands: Command[]): {
commands: Command[];
onFinish?: () => void | undefined;
};
}