/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
export declare class NodeJsAlreadyInitializedError extends Error {
}
/**
 * Configuration for Node.js environment bootstrap.
 *
 * You may modify these values but you must do it before loading any other matter.js code that triggers environment
 * initialization.  Any other import from "@matter/nodejs" or "@matter/main" triggers this initialization.
 *
 * Note that with (non-transpiled) ESM, imports are considered "static" so you cannot load this file with any of the
 * imports mentioned above.  The easiest way to do this is to perform configuration in a separate file:
 *
 * ```
 *     import { config } from "@matter/nodejs/config";
 *
 *     config.initializeStorage = false;
 * ```
 *
 * Then ensure you import this file before any other matter.js import.  This relies on ESM's deterministic load order to
 * run the configuration logic first.
 *
 * If you require more dynamic configuration you will need to bootstrap your application logic using a dynamic import
 * after configuration.  This is typically unnecessary because most of matter.js is configurable via higher-level means
 * once the environment starts.
 */
export declare const config: {
    isInitialized: boolean;
    /**
     * The name of the default environment.  This primarily affects the default storage path.
     */
    defaultEnvironmentName: string;
    /**
     * The default storage path.  Located in the user's home directory by default.
     */
    defaultStoragePath: string | undefined;
    /**
     * The default configuration file.  Only relevant if {@link loadConfigFile} is true.  If relative, resolved from
     * {@link defaultStoragePath}.
     */
    defaultConfigFilePath: string;
    /**
     * Enables mapping of {@link process.argv} to matter.js environment variables (default: true).
     */
    loadProcessArgv: boolean;
    /**
     * Enables mapping of {@link process.argv} to matter.js environment variables (default: true).
     */
    loadProcessEnv: boolean;
    /**
     * Enables loading of configuration file into matter.js environment variables (default: true).
     */
    loadConfigFile: boolean;
    /**
     * Enables installation of native node.js crypto implementation (default: true).
     */
    installCrypto: boolean;
    /**
     * Enables installation of node.js filesystem into default environment.
     */
    installFilesystem: boolean;
    /**
     * Enables installation of node.js networking into default environment.
     */
    installNetwork: boolean;
    /**
     * Enables automatic initialization of storage on startup (default: true).
     *
     * If you disable this you must initialize environmental storage manually for components that rely on it.
     */
    initializeStorage: boolean;
    /**
     * Set storage driver to use (default: 'file').
     *
     * Built-in drivers: `"file"`, `"sqlite"` (Node.js v22+), `"wal"`, `"memory"`.
     */
    storageDriver: string;
    /**
     * Enables handling of SIGINT, SIGTERM, SIGUSR2 and SIGABRT (depending on platform; default: true).
     */
    trapProcessSignals: boolean;
    /**
     * Enables handling of unhandled errors.  This includes both uncaught exceptions and unhandled rejections.
     *
     * If this is enabled, the process will still terminate ungracefully but matter.js will attempt to ensure logging
     * of full error details beforehand.
     */
    trapUnhandledErrors: boolean;
    /**
     * Enables control of {@link process.exitCode}.  If set, matter.js will set the exit code for the process when
     * the environment terminates.
     */
    setProcessExitCodeOnError: boolean;
};
//# sourceMappingURL=config.d.ts.map