/** * @file Environment Helper Utilities * @description Centralized environment detection helpers for use throughout the library. * * IMPORTANT: Use these helpers instead of direct process.env.NODE_ENV checks. * This ensures consistent behavior and easier testing. * * @example * ```typescript * import { isDev, isProd, isTest } from '@/lib/core/config/env-helper'; * * if (isDev()) { * console.log('Development mode enabled'); * } * ``` */ /** * Check if currently in development environment * @returns true if NODE_ENV is 'development' */ export declare function isDev(): boolean; /** * Check if currently in production environment * @returns true if NODE_ENV is 'production' */ export declare function isProd(): boolean; /** * Check if currently in test environment * @returns true if NODE_ENV is 'test' */ export declare function isTest(): boolean; /** * Check if currently in staging environment * @returns true if APP_ENV is 'staging' */ export declare function isStaging(): boolean; /** * Get current environment name * @returns The current environment name */ export declare function getEnvironment(): string; /** * Conditional debug logging - only logs in development * @param message - Message to log * @param data - Optional data to include */ export declare function devLog(message: string, ...data: unknown[]): void; /** * Conditional warning logging - only logs in development * @param message - Warning message * @param data - Optional data to include */ export declare function devWarn(message: string, ...data: unknown[]): void; /** * Conditional error logging - logs in all environments * but with stack traces only in development * @param message - Error message * @param error - Optional error object */ export declare function logError(message: string, error?: unknown): void; /** * Execute callback only in development * @param callback - Function to execute in development */ export declare function inDevelopment(callback: () => void): void; /** * Execute callback only in production * @param callback - Function to execute in production */ export declare function inProduction(callback: () => void): void;