import type { Method, RequestBodyData } from "@hyperttp/types"; type NormalizedHeaders = Record; /** * @ru Извлекает URL из запроса (строка, объект с url/_url или схема+хост+путь). * @en Extracts the URL from a request (string, object with url/_url, or scheme+host+path). * @param req - URL string or request-like object. * @returns The extracted URL string. */ export declare function normalizeUrl(req: unknown): string; /** * @ru Нормализует заголовки в плоский объект с нижним регистром ключей и обработкой массива/парных форматов. * @en Normalizes headers into a flat object with lowercased keys, handling array/pair formats. * @param headers - Headers in any supported format (object, array of pairs, flat array). * @param out - Optional output object (reused for pooling). * @returns Normalized headers object. */ export declare function normalizeHeaders(headers: unknown, out?: NormalizedHeaders): NormalizedHeaders; /** * @ru Возвращает undefined для GET/HEAD (тело запрещено), иначе тело как есть. * @en Returns undefined for GET/HEAD (body disallowed), otherwise the body as-is. * @param method - HTTP method. * @param body - Request body. * @returns Normalized body or undefined. */ export declare function normalizeBody(method: Method, body: RequestBodyData | undefined): RequestBodyData | undefined; /** * @ru Преобразует тело для транспорта: сериализует объекты в JSON, URLSearchParams в строку, проставляет Content-Type. * @en Transforms body for transport: serializes objects to JSON, URLSearchParams to string, sets Content-Type. * @param body - Request body. * @param headers - Headers object (may be mutated to add Content-Type). * @returns Body ready for transport. */ export declare function normalizeBodyForTransport(body: RequestBodyData, headers: Record): RequestBodyData; export {}; //# sourceMappingURL=normalize.d.ts.map