63 lines
2.3 KiB
TypeScript
63 lines
2.3 KiB
TypeScript
/// <reference types="node" />
|
|
export declare const ERROR_TIMEOUT_REACHED: Error;
|
|
export declare function killProcessTree(pid: number, signal?: string | number): Promise<void>;
|
|
/**
|
|
* Creates an alternative implementation of `process.env` object.
|
|
*
|
|
* On a Windows shell, `process.env` is a magic object that offers
|
|
* case-insensitive environment variable access. On other platforms, case
|
|
* sensitivity matters. This method creates an empty "`process.env`" object
|
|
* type that works for all platforms.
|
|
*/
|
|
export declare function createProcessEnv(...sources: {
|
|
[key: string]: string | undefined;
|
|
}[]): NodeJS.ProcessEnv;
|
|
/**
|
|
* Split a PATH string into path parts.
|
|
*/
|
|
export declare function getPathParts(envpath?: string): string[];
|
|
/**
|
|
* Resolves when the given amount of milliseconds has passed.
|
|
*/
|
|
export declare function sleep(ms: number): Promise<void>;
|
|
/**
|
|
* Resolves when a given predicate is true or a timeout is reached.
|
|
*
|
|
* Configure `interval` to set how often the `predicate` is called.
|
|
*
|
|
* By default, `timeout` is Infinity. If given a value (in ms), and that
|
|
* timeout value is reached, this function will reject with
|
|
* the `ERROR_TIMEOUT_REACHED` error.
|
|
*/
|
|
export declare function sleepUntil(predicate: () => boolean, { interval, timeout }: {
|
|
interval?: number;
|
|
timeout?: number;
|
|
}): Promise<void>;
|
|
/**
|
|
* Never resolves and keeps Node running.
|
|
*/
|
|
export declare function sleepForever(): Promise<never>;
|
|
/**
|
|
* Register a synchronous function to be called once the process exits.
|
|
*/
|
|
export declare function onExit(fn: () => void): void;
|
|
export declare type ExitFn = () => Promise<void>;
|
|
/**
|
|
* Register an asynchronous function to be called when the process wants to
|
|
* exit.
|
|
*
|
|
* A handler will be registered for the 'SIGINT', 'SIGTERM', 'SIGHUP',
|
|
* 'SIGBREAK' signals. If any of the signal events is emitted, `fn` will be
|
|
* called exactly once, awaited upon, and then the process will exit once all
|
|
* registered functions are resolved.
|
|
*/
|
|
export declare function onBeforeExit(fn: ExitFn): void;
|
|
/**
|
|
* Remove a function that was registered with `onBeforeExit`.
|
|
*/
|
|
export declare function offBeforeExit(fn: ExitFn): void;
|
|
/**
|
|
* Asynchronous `process.exit()`, for running functions registered with
|
|
* `onBeforeExit`.
|
|
*/
|
|
export declare function processExit(exitCode?: number): Promise<void>;
|