import { ApiContext } from '../types/api.interface';
/**
 * Тип функции для подготовки заголовков запроса
 */
export type PrepareHeadersFunction = (headers: Headers, context: ApiContext<any>) => Promise<Headers>;
/**
 * Подготавливает заголовки для запроса на основе контекста и пользовательских функций
 *
 * @param prepareHeadersFn - функция подготовки заголовков
 * @param context - контекст запроса
 * @returns - подготовленные заголовки
 */
export declare function prepareRequestHeaders<RequestParams extends Record<string, any>>(prepareHeadersFn?: PrepareHeadersFunction, context?: ApiContext<RequestParams>): Promise<Headers>;
/**
 * Создает комбинированную функцию для подготовки заголовков, объединяющую
 * глобальные заголовки и заголовки эндпоинта
 *
 * @param globalPrepareHeaders - функция подготовки заголовков на глобальном уровне
 * @param endpointPrepareHeaders - функция подготовки заголовков на уровне эндпоинта
 * @returns - функция для подготовки заголовков
 */
export declare function createPrepareHeaders(globalPrepareHeaders?: PrepareHeadersFunction, endpointPrepareHeaders?: PrepareHeadersFunction): PrepareHeadersFunction;
