/**
 * @file Private internals for `signal-exit/*` modules — the shared
 *   module-singleton state plus the lazy accessors that read and mutate it.
 *   Owns the emitter, signal list, and `loaded` flag. `lifecycle`
 *   (load/unload/getSignalListeners) and `intercept`
 *   (processEmit/processReallyExit) share state through this leaf. Inlined
 *   signal-exit: https://socket.dev/npm/package/signal-exit/overview/4.1.0 ISC
 *   License — Copyright (c) 2015-2023 Benjamin Coe, Isaac Z. Schlueter, and
 *   Contributors.
 */
import type { SignalExitEmitter } from './types';
export declare const globalProcess: (NodeJS.Process & {
    __signal_exit_emitter__?: import('node:events').EventEmitter;
    reallyExit?: (code?: number | undefined) => never;
}) | undefined;
export declare const originalProcessEmit: {
    (event: "beforeExit", code: number): boolean;
    (event: "disconnect"): boolean;
    (event: "exit", code: number): boolean;
    (event: "rejectionHandled", promise: Promise<unknown>): boolean;
    (event: "uncaughtException", error: Error): boolean;
    (event: "uncaughtExceptionMonitor", error: Error): boolean;
    (event: "unhandledRejection", reason: unknown, promise: Promise<unknown>): boolean;
    (event: "warning", warning: Error): boolean;
    (event: "message", message: unknown, sendHandle: import("child_process").SendHandle): NodeJS.Process & {
        __signal_exit_emitter__?: import('node:events').EventEmitter;
        reallyExit?: (code?: number | undefined) => never;
    };
    (event: NodeJS.Signals, signal?: NodeJS.Signals): boolean;
    (event: "multipleResolves", type: NodeJS.MultipleResolveType, promise: Promise<unknown>, value: unknown): NodeJS.Process & {
        __signal_exit_emitter__?: import('node:events').EventEmitter;
        reallyExit?: (code?: number | undefined) => never;
    };
    (event: "worker", listener: NodeJS.WorkerListener): NodeJS.Process & {
        __signal_exit_emitter__?: import('node:events').EventEmitter;
        reallyExit?: (code?: number | undefined) => never;
    };
} | undefined;
export declare const platform: string;
export declare const originalProcessReallyExit: ((code?: number | undefined) => never) | undefined;
export declare const WIN32: boolean;
export declare function emit(event: string, code: number | undefined, signal: string | undefined): void;
export declare function getEmitter(): SignalExitEmitter;
export declare function getEvents(): typeof import('node:events');
/**
 * Get the cached signal list. Triggers lazy init on first call; after `load()`
 * runs it returns the filtered subset of successfully registered signals
 * instead of the full default list.
 */
export declare function getSignals(): string[];
/**
 * Read the loaded flag from a sibling leaf (lifecycle / on-exit).
 *
 * @private
 */
export declare function isLoaded(): boolean;
/**
 * Set the `loaded` flag from a sibling leaf (load / unload).
 *
 * @private
 */
export declare function setLoaded(value: boolean): void;
/**
 * Replace the cached signal list (used by `load()`'s filter step).
 *
 * @private
 */
export declare function setSignals(value: string[]): void;
