/**
 * Centralized Environment Configuration
 *
 * This module provides type-safe access to environment variables with validation.
 * All environment variables should be accessed through this module rather than
 * directly via process.env to ensure type safety and validation.
 *
 * Usage:
 * ```typescript
 * import { env } from './config/env';
 * const token = env.GITHUB_TOKEN;  // Type: string
 * ```
 */
import { z } from 'zod';
/**
 * Environment variable schema with validation
 */
declare const envSchema: z.ZodObject<{
    NODE_ENV: z.ZodDefault<z.ZodEnum<{
        test: "test";
        development: "development";
        production: "production";
    }>>;
    GITHUB_TOKEN: z.ZodOptional<z.ZodString>;
    GITHUB_USERNAME: z.ZodOptional<z.ZodString>;
    GITHUB_REPOSITORY: z.ZodOptional<z.ZodString>;
    GITHUB_TEST_TOKEN: z.ZodOptional<z.ZodString>;
    GITHUB_TEST_USERNAME: z.ZodOptional<z.ZodString>;
    GITHUB_TEST_REPOSITORY: z.ZodOptional<z.ZodString>;
    PORT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    LOG_LEVEL: z.ZodDefault<z.ZodEnum<{
        error: "error";
        debug: "debug";
        info: "info";
        warn: "warn";
    }>>;
    TEST_BASE_DIR: z.ZodOptional<z.ZodString>;
    TEST_PERSONAS_DIR: z.ZodOptional<z.ZodString>;
    TEST_CACHE_DIR: z.ZodOptional<z.ZodString>;
    TEST_CONFIG_DIR: z.ZodOptional<z.ZodString>;
    DOLLHOUSE_AUTO_SUBMIT_TO_COLLECTION: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    ENABLE_DEBUG: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    TEST_VERBOSE_LOGGING: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    MCP_INTERFACE_MODE: z.ZodDefault<z.ZodEnum<{
        discrete: "discrete";
        mcpaql: "mcpaql";
    }>>;
    MCP_AQL_ENDPOINT_MODE: z.ZodDefault<z.ZodEnum<{
        single: "single";
        crude: "crude";
    }>>;
    MCP_AQL_MODE: z.ZodOptional<z.ZodEnum<{
        single: "single";
        crude: "crude";
    }>>;
    DOLLHOUSE_LOG_DIR: z.ZodDefault<z.ZodString>;
    DOLLHOUSE_LOG_FORMAT: z.ZodDefault<z.ZodEnum<{
        text: "text";
        jsonl: "jsonl";
    }>>;
    DOLLHOUSE_LOG_RETENTION_DAYS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_SECURITY_RETENTION_DAYS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_FLUSH_INTERVAL_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_BUFFER_SIZE: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MEMORY_CAPACITY: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MEMORY_APP_CAPACITY: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MEMORY_SECURITY_CAPACITY: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MEMORY_PERF_CAPACITY: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MEMORY_TELEMETRY_CAPACITY: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MAX_ENTRY_SIZE: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_IMMEDIATE_FLUSH_RATE: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_FILE_MAX_SIZE: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MAX_DIR_SIZE_BYTES: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_LOG_MAX_FILES_PER_CATEGORY: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_PERMISSION_SERVER: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_WEB_CONSOLE: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_WEB_CONSOLE_PORT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_WEB_AUTH_ENABLED: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_CONSOLE_TOKEN_FILE: z.ZodOptional<z.ZodString>;
    DOLLHOUSE_CONSOLE_LEADER_LOCK_FILE: z.ZodOptional<z.ZodString>;
    DOLLHOUSE_CONSOLE_BIND_RETRY_DELAYS: z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<number[] | undefined, string | undefined>>;
    DOLLHOUSE_CONSOLE_MAX_FORWARD_FAILURES: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_CONSOLE_ROTATION_REQUIRE_CONFIRMATION: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_GATEKEEPER_ENABLED: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_GATEKEEPER_ELEMENT_POLICY_OVERRIDES: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_POLICY_EXPORT_ENABLED: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_SCAN_COOLDOWN_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_INDEX_DEBOUNCE_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_ELEMENT_CACHE_TTL_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_PATH_CACHE_TTL_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_TOOL_CACHE_TTL_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_GLOBAL_CACHE_MEMORY_MB: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_CLI_APPROVAL_MAX: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_CLI_APPROVAL_TTL_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_PERMISSION_PROMPT_RATE_LIMIT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_CLI_APPROVAL_RATE_LIMIT: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_PERMISSION_RATE_WINDOW_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_METRICS_ENABLED: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_METRICS_COLLECTION_INTERVAL_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_METRICS_MAX_SNAPSHOT_SIZE: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_METRICS_COLLECTOR_FAILURE_THRESHOLD: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_METRICS_COLLECTION_DURATION_WARN_MS: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_METRICS_MEMORY_SNAPSHOT_CAPACITY: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
    DOLLHOUSE_DISABLE_ENCRYPTION: z.ZodDefault<z.ZodCoercedBoolean<unknown>>;
    DOLLHOUSE_ENCRYPTION_SECRET: z.ZodOptional<z.ZodString>;
    DOLLHOUSE_ENCRYPTION_SALT: z.ZodOptional<z.ZodString>;
    DOLLHOUSE_TOKEN_SECRET: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
/**
 * Validated environment variables
 * Type is automatically inferred from the schema
 */
export declare const env: {
    NODE_ENV: "test" | "development" | "production";
    PORT: number;
    LOG_LEVEL: "error" | "debug" | "info" | "warn";
    DOLLHOUSE_AUTO_SUBMIT_TO_COLLECTION: boolean;
    ENABLE_DEBUG: boolean;
    TEST_VERBOSE_LOGGING: boolean;
    MCP_INTERFACE_MODE: "discrete" | "mcpaql";
    MCP_AQL_ENDPOINT_MODE: "single" | "crude";
    DOLLHOUSE_LOG_DIR: string;
    DOLLHOUSE_LOG_FORMAT: "text" | "jsonl";
    DOLLHOUSE_LOG_RETENTION_DAYS: number;
    DOLLHOUSE_LOG_SECURITY_RETENTION_DAYS: number;
    DOLLHOUSE_LOG_FLUSH_INTERVAL_MS: number;
    DOLLHOUSE_LOG_BUFFER_SIZE: number;
    DOLLHOUSE_LOG_MEMORY_CAPACITY: number;
    DOLLHOUSE_LOG_MEMORY_APP_CAPACITY: number;
    DOLLHOUSE_LOG_MEMORY_SECURITY_CAPACITY: number;
    DOLLHOUSE_LOG_MEMORY_PERF_CAPACITY: number;
    DOLLHOUSE_LOG_MEMORY_TELEMETRY_CAPACITY: number;
    DOLLHOUSE_LOG_MAX_ENTRY_SIZE: number;
    DOLLHOUSE_LOG_IMMEDIATE_FLUSH_RATE: number;
    DOLLHOUSE_LOG_FILE_MAX_SIZE: number;
    DOLLHOUSE_LOG_MAX_DIR_SIZE_BYTES: number;
    DOLLHOUSE_LOG_MAX_FILES_PER_CATEGORY: number;
    DOLLHOUSE_PERMISSION_SERVER: boolean;
    DOLLHOUSE_WEB_CONSOLE: boolean;
    DOLLHOUSE_WEB_CONSOLE_PORT: number;
    DOLLHOUSE_WEB_AUTH_ENABLED: boolean;
    DOLLHOUSE_CONSOLE_BIND_RETRY_DELAYS: number[] | undefined;
    DOLLHOUSE_CONSOLE_MAX_FORWARD_FAILURES: number;
    DOLLHOUSE_CONSOLE_ROTATION_REQUIRE_CONFIRMATION: boolean;
    DOLLHOUSE_GATEKEEPER_ENABLED: boolean;
    DOLLHOUSE_GATEKEEPER_ELEMENT_POLICY_OVERRIDES: boolean;
    DOLLHOUSE_POLICY_EXPORT_ENABLED: boolean;
    DOLLHOUSE_SCAN_COOLDOWN_MS: number;
    DOLLHOUSE_INDEX_DEBOUNCE_MS: number;
    DOLLHOUSE_ELEMENT_CACHE_TTL_MS: number;
    DOLLHOUSE_PATH_CACHE_TTL_MS: number;
    DOLLHOUSE_TOOL_CACHE_TTL_MS: number;
    DOLLHOUSE_GLOBAL_CACHE_MEMORY_MB: number;
    DOLLHOUSE_CLI_APPROVAL_MAX: number;
    DOLLHOUSE_CLI_APPROVAL_TTL_MS: number;
    DOLLHOUSE_PERMISSION_PROMPT_RATE_LIMIT: number;
    DOLLHOUSE_CLI_APPROVAL_RATE_LIMIT: number;
    DOLLHOUSE_PERMISSION_RATE_WINDOW_MS: number;
    DOLLHOUSE_METRICS_ENABLED: boolean;
    DOLLHOUSE_METRICS_COLLECTION_INTERVAL_MS: number;
    DOLLHOUSE_METRICS_MAX_SNAPSHOT_SIZE: number;
    DOLLHOUSE_METRICS_COLLECTOR_FAILURE_THRESHOLD: number;
    DOLLHOUSE_METRICS_COLLECTION_DURATION_WARN_MS: number;
    DOLLHOUSE_METRICS_MEMORY_SNAPSHOT_CAPACITY: number;
    DOLLHOUSE_DISABLE_ENCRYPTION: boolean;
    GITHUB_TOKEN?: string | undefined;
    GITHUB_USERNAME?: string | undefined;
    GITHUB_REPOSITORY?: string | undefined;
    GITHUB_TEST_TOKEN?: string | undefined;
    GITHUB_TEST_USERNAME?: string | undefined;
    GITHUB_TEST_REPOSITORY?: string | undefined;
    TEST_BASE_DIR?: string | undefined;
    TEST_PERSONAS_DIR?: string | undefined;
    TEST_CACHE_DIR?: string | undefined;
    TEST_CONFIG_DIR?: string | undefined;
    MCP_AQL_MODE?: "single" | "crude" | undefined;
    DOLLHOUSE_CONSOLE_TOKEN_FILE?: string | undefined;
    DOLLHOUSE_CONSOLE_LEADER_LOCK_FILE?: string | undefined;
    DOLLHOUSE_ENCRYPTION_SECRET?: string | undefined;
    DOLLHOUSE_ENCRYPTION_SALT?: string | undefined;
    DOLLHOUSE_TOKEN_SECRET?: string | undefined;
};
/**
 * Environment type (inferred from schema)
 */
export type Env = z.infer<typeof envSchema>;
/**
 * Convenience helpers for environment detection
 */
export declare const isTest: boolean;
export declare const isDevelopment: boolean;
export declare const isProduction: boolean;
export {};
//# sourceMappingURL=env.d.ts.map