import type { GlobalConfigStore, GrowProcess } from "./config-store/global"; import type { EventBus } from "./events/events"; import type { Log } from "./logger/log-entry"; export declare function waitForExitEvent(events: EventBus, log: Log): Promise; /** * Retrieve all active processes from the global config store, * and clean up any inactive processes from the store along the way. */ export declare function getActiveProcesses(globalConfigStore: GlobalConfigStore): Promise<{ pid: number; startedAt: Date; arguments: string[]; sessionId: string | null; growRoot: string | null; configPath: string | null; command: string; }[]>; /** * Register the currently running process in the global config store, * and clean up any inactive processes from the store along the way. */ export declare function registerProcess(globalConfigStore: GlobalConfigStore, command: string, args: string[]): Promise; /** * Kills the process with the provided pid, and any of its child processes. * * `signalName` should be a POSIX kill signal, e.g. `SIGINT` or `SIGKILL` * * See: https://github.com/sindresorhus/execa/issues/96#issuecomment-776280798 */ export declare function killRecursive(signalName: "SIGINT" | "SIGTERM" | "SIGKILL", pid: number): Promise; export declare function waitForOutputFlush(): Promise;