/**
 * Environment Configuration
 * Type-safe access to environment variables
 *
 * Sealed namespace pattern - all exports through Env namespace
 * Safe for both Node.js and serverless runtimes (Cloudflare Workers, Deno, Lambda)
 */
import type { ProcessLike } from './type';
export type EnvSource = Record<string, unknown> | (() => Record<string, unknown>);
export declare const getProcessLike: () => ProcessLike | undefined;
export declare const dirnameFromExecPath: (execPath: string, platform?: string) => string;
export declare const get: (key: string, defaultValue?: string) => string;
export declare const getInt: (key: string, defaultValue: number) => number;
export declare const getFloat: (key: string, defaultValue?: number) => number;
export declare const getBool: (key: string, defaultValue?: boolean) => boolean;
export declare const set: (key: string, value: string) => void;
export declare const unset: (key: string) => void;
export declare const setSource: (source: EnvSource | null) => void;
export declare const snapshot: () => Record<string, string>;
export declare const getDefaultLogLevel: () => "debug" | "info" | "warn" | "error";
export declare const ZT_PROXY_TIMEOUT_MS: number;
export declare const Env: Readonly<{
    get: (key: string, defaultValue?: string) => string;
    getInt: (key: string, defaultValue: number) => number;
    getBool: (key: string, defaultValue?: boolean) => boolean;
    getFloat: (key: string, defaultValue?: number) => number;
    set: (key: string, value: string) => void;
    unset: (key: string) => void;
    setSource: (source: EnvSource | null) => void;
    snapshot: () => Record<string, string>;
    NODE_ENV: NodeJS.ProcessEnv["NODE_ENV"];
    PORT: number;
    HOST: string;
    BASE_URL: string;
    APP_NAME: string;
    APP_KEY: string;
    APP_PREVIOUS_KEYS: string;
    DB_CONNECTION: string;
    DB_HOST: string;
    DB_PORT: number;
    DB_DATABASE: string;
    DB_USERNAME: string;
    DB_PASSWORD: string;
    DB_READ_HOSTS: string;
    DB_PORT_POSTGRESQL: number;
    DB_DATABASE_POSTGRESQL: string;
    DB_USERNAME_POSTGRESQL: string;
    DB_PASSWORD_POSTGRESQL: string;
    DB_READ_HOSTS_POSTGRESQL: string;
    DB_HOST_MSSQL: string;
    DB_PORT_MSSQL: number;
    DB_DATABASE_MSSQL: string;
    DB_USERNAME_MSSQL: string;
    DB_PASSWORD_MSSQL: string;
    DB_READ_HOSTS_MSSQL: string;
    D1_DATABASE_ID: string;
    KV_NAMESPACE_ID: string;
    D1_REMOTE_URL: string;
    D1_REMOTE_KEY_ID: string;
    D1_REMOTE_SECRET: string;
    D1_REMOTE_MODE: string;
    MYSQL_PROXY_URL: string;
    MYSQL_PROXY_HOST: string;
    MYSQL_PROXY_PORT: number;
    MYSQL_PROXY_MAX_BODY_BYTES: number;
    MYSQL_PROXY_POOL_LIMIT: number;
    MYSQL_PROXY_KEY_ID: string;
    MYSQL_PROXY_SECRET: string;
    MYSQL_PROXY_TIMEOUT_MS: number;
    MYSQL_PROXY_REQUIRE_SIGNING: boolean;
    MYSQL_PROXY_SIGNING_WINDOW_MS: number;
    POSTGRES_PROXY_URL: string;
    POSTGRES_PROXY_HOST: string;
    POSTGRES_PROXY_PORT: number;
    POSTGRES_PROXY_MAX_BODY_BYTES: number;
    POSTGRES_PROXY_POOL_LIMIT: number;
    POSTGRES_PROXY_KEY_ID: string;
    POSTGRES_PROXY_SECRET: string;
    POSTGRES_PROXY_TIMEOUT_MS: number;
    POSTGRES_PROXY_REQUIRE_SIGNING: boolean;
    POSTGRES_PROXY_SIGNING_WINDOW_MS: number;
    REDIS_PROXY_URL: string;
    REDIS_PROXY_HOST: string;
    REDIS_PROXY_PORT: number;
    REDIS_PROXY_MAX_BODY_BYTES: number;
    REDIS_PROXY_KEY_ID: string;
    REDIS_PROXY_SECRET: string;
    REDIS_PROXY_TIMEOUT_MS: number;
    REDIS_PROXY_REQUIRE_SIGNING: boolean;
    REDIS_PROXY_SIGNING_WINDOW_MS: number;
    USE_REDIS_PROXY: boolean;
    SMTP_PROXY_URL: string;
    SMTP_PROXY_HOST: string;
    SMTP_PROXY_PORT: number;
    SMTP_PROXY_MAX_BODY_BYTES: number;
    SMTP_PROXY_KEY_ID: string;
    SMTP_PROXY_SECRET: string;
    SMTP_PROXY_TIMEOUT_MS: number;
    SMTP_PROXY_REQUIRE_SIGNING: boolean;
    SMTP_PROXY_SIGNING_WINDOW_MS: number;
    USE_SMTP_PROXY: boolean;
    MONGODB_PROXY_URL: string;
    MONGODB_PROXY_HOST: string;
    MONGODB_PROXY_PORT: number;
    MONGODB_PROXY_MAX_BODY_BYTES: number;
    MONGODB_PROXY_KEY_ID: string;
    MONGODB_PROXY_SECRET: string;
    MONGODB_PROXY_TIMEOUT_MS: number;
    MONGODB_PROXY_REQUIRE_SIGNING: boolean;
    MONGODB_PROXY_SIGNING_WINDOW_MS: number;
    USE_MONGODB_PROXY: boolean;
    SQLSERVER_PROXY_URL: string;
    SQLSERVER_PROXY_HOST: string;
    SQLSERVER_PROXY_PORT: number;
    SQLSERVER_PROXY_MAX_BODY_BYTES: number;
    SQLSERVER_PROXY_POOL_LIMIT: number;
    SQLSERVER_PROXY_KEY_ID: string;
    SQLSERVER_PROXY_SECRET: string;
    SQLSERVER_PROXY_TIMEOUT_MS: number;
    SQLSERVER_PROXY_REQUIRE_SIGNING: boolean;
    SQLSERVER_PROXY_SIGNING_WINDOW_MS: number;
    USE_SQLSERVER_PROXY: boolean;
    KV_REMOTE_URL: string;
    KV_REMOTE_KEY_ID: string;
    KV_REMOTE_SECRET: string;
    KV_REMOTE_NAMESPACE: string;
    ZT_PROXY_SIGNING_WINDOW_MS: number;
    ZT_PROXY_TIMEOUT_MS: number;
    CACHE_DRIVER: string;
    REDIS_HOST: string;
    REDIS_PORT: number;
    REDIS_PASSWORD: string;
    REDIS_DB: number;
    REDIS_URL: string;
    MONGO_URI: string;
    MONGO_DB: string;
    QUEUE_CONNECTION: string;
    QUEUE_DRIVER: string;
    QUEUE_HTTP_PROXY_ENABLED: boolean;
    QUEUE_HTTP_PROXY_GATEWAY_ENABLED: boolean;
    QUEUE_HTTP_PROXY_URL: string;
    QUEUE_HTTP_PROXY_PATH: string;
    QUEUE_HTTP_PROXY_KEY_ID: string;
    QUEUE_HTTP_PROXY_KEY: string;
    QUEUE_HTTP_PROXY_TIMEOUT_MS: number;
    QUEUE_HTTP_PROXY_MAX_SKEW_MS: number;
    QUEUE_HTTP_PROXY_NONCE_TTL_MS: number;
    QUEUE_HTTP_PROXY_MIDDLEWARE: string;
    RATE_LIMIT_STORE: string;
    RATE_LIMIT_DRIVER: string;
    RATE_LIMIT_KEY_PREFIX: string;
    NOTIFICATION_DRIVER: string;
    TERMII_API_KEY: string;
    TERMII_SENDER: string;
    AWS_REGION: string;
    AWS_LAMBDA_FUNCTION_NAME: string;
    AWS_LAMBDA_FUNCTION_VERSION: string;
    AWS_EXECUTION_ENV: string;
    LAMBDA_TASK_ROOT: string;
    MICROSERVICES: string;
    SERVICES: string;
    MICROSERVICES_TRACING: boolean;
    MICROSERVICES_TRACING_RATE: number;
    DATABASE_ISOLATION: string;
    SERVICE_API_KEY: string;
    SERVICE_JWT_SECRET: string;
    DEBUG: boolean;
    ENABLE_MICROSERVICES: boolean;
    TOKEN_TTL: number;
    TOKEN_LENGTH: number;
    CSRF_STORE: string;
    CSRF_DRIVER: string;
    CSRF_REDIS_DB: number;
    JWT_REVOCATION_DRIVER: string;
    JWT_REVOCATION_DB_CONNECTION: string;
    JWT_REVOCATION_DB_TABLE: string;
    JWT_REVOCATION_REDIS_DB: number;
    JWT_REVOCATION_REDIS_PREFIX: string;
    JWT_REVOCATION_KV_BINDING: string;
    JWT_REVOCATION_KV_PREFIX: string;
    ENCRYPTION_CIPHER: string;
    ENVIRONMENT: string;
    REQUEST_TIMEOUT: number;
    APP_TIMEZONE: string;
    MAX_BODY_SIZE: number;
    SHUTDOWN_TIMEOUT: number;
    SSE_HEARTBEAT_INTERVAL: number;
    SSE_SNAPSHOT_INTERVAL: number;
    LOG_LEVEL: "debug" | "info" | "warn" | "error";
    LOG_FORMAT: string;
    LOG_CHANNEL: string;
    DISABLE_LOGGING: boolean;
    LOG_HTTP_REQUEST: boolean;
    LOG_TO_FILE: boolean;
    LOG_ROTATION_SIZE: number;
    LOG_ROTATION_DAYS: number;
    CLOUDFLARE_WORKER: boolean;
    WORKER_ENABLED: boolean;
    DOCKER_WORKER: boolean;
    ZINTRUST_PROJECT_ROOT: string;
    ZINTRUST_ALLOW_POSTINSTALL: string;
    ZINTRUST_ENV_FILE: string;
    ZINTRUST_SECRETS_MANIFEST: string;
    ZINTRUST_ENV_IN_FILE: string;
    ZINTRUST_SECRETS_PROVIDER: string;
    ZINTRUST_ALLOW_AUTO_INSTALL: string;
    WORKER_SHUTDOWN_ON_APP_EXIT: boolean;
    CLOUDFLARE_ACCOUNT_ID: string;
    CLOUDFLARE_API_TOKEN: string;
    CLOUDFLARE_KV_NAMESPACE_ID: string;
    AWS_DEFAULT_REGION: string;
    AWS_ACCESS_KEY_ID: string;
    AWS_SECRET_ACCESS_KEY: string;
    AWS_SESSION_TOKEN: string;
    CI: string;
    HOME: string;
    USERPROFILE: string;
    TEMPLATE_COPYRIGHT: string;
    SERVICE_NAME: string;
    APP_MODE: string;
    APP_PORT: number;
    RUNTIME: string;
    NODE_BIN_DIR: string;
    SAFE_PATH: string;
}>;
export declare const buildRedisUrl: () => string;
//# sourceMappingURL=env.d.ts.map