/**
 * @module @arcis/node/middleware/error-handler
 * Production-safe error handler middleware
 */
import type { Request, Response, NextFunction } from 'express';
import type { ErrorHandlerOptions } from '../core/types';
/**
 * Check if an error message contains sensitive infrastructure details.
 */
export declare function containsSensitiveInfo(message: string): boolean;
/**
 * Create Express error handler that hides sensitive details in production.
 *
 * Prevents information leakage by:
 * - Hiding stack traces in production
 * - Hiding error messages unless explicitly exposed
 * - Scrubbing database errors, connection strings, and internal IPs
 *
 * @param options - Error handler configuration (or boolean for isDev)
 * @returns Express error handling middleware
 *
 * @example
 * // Production mode (default) - hides error details
 * app.use(errorHandler());
 *
 * @example
 * // Development mode - shows error details and stack traces
 * app.use(errorHandler({ isDev: true }));
 *
 * @example
 * // With custom logger
 * app.use(errorHandler({
 *   isDev: false,
 *   logger: arcis.logger()
 * }));
 */
export declare function errorHandler(options?: ErrorHandlerOptions | boolean): (err: Error, req: Request, res: Response, next: NextFunction) => void;
/**
 * Alias for errorHandler
 * @see errorHandler
 */
export declare const createErrorHandler: typeof errorHandler;
//# sourceMappingURL=error-handler.d.ts.map