export interface CliArguments { verbose?: boolean; watch?: boolean; memory?: string; cwd?: string; daemon?: boolean; test?: boolean; name?: string; autorestart?: boolean; watchPaths?: string[]; [key: string]: any; } export type CommandAction = (argv: CliArguments) => Promise; export interface IpcCommandOptions { actionLabel?: string; // used in error message, e.g. "start process" keepAlive?: boolean | ((argv: CliArguments) => boolean); // true for streaming commands (don't auto-disconnect), or function to determine at runtime requireDaemon?: boolean; // default true for IPC-bound commands }