import type { RequestHandler } from 'express';
import type { Logger } from 'pino';
/**
 * Простой request-id middleware. Принимает существующий `X-Request-Id`, либо
 * генерирует новый UUIDv4. Кладёт в `req.headers['x-request-id']`, чтобы
 * downstream middleware (auth) могли подхватить его в context.
 *
 * Также ставит response header `X-Request-Id` для клиента (полезно при триаже).
 *
 * Если передан base logger — добавляем `req.log = base.child({...})`
 * с per-request полями (`requestId`, `sessionId`). Downstream middleware
 * (auth, errorHandler) могут использовать `req.log` для лучшей корреляции.
 */
export interface RequestIdOptions {
    /** Базовый pino-логгер. Если задан — каждому запросу создаётся child. */
    logger?: Logger;
}
export declare function requestId(opts?: RequestIdOptions): RequestHandler;
//# sourceMappingURL=requestId.d.ts.map