import type { AuthStrategy, FetchInit } from './types.js';
/**
 * API Key authentication strategy.
 *
 * Supports two modes:
 * - Bearer token: When headerName is 'Authorization', formats as 'Bearer {key}'
 * - Direct key: For other headers (e.g., 'x-api-key'), sets the key directly
 *
 * @example
 * // For MRT API (Bearer token)
 * const auth = new ApiKeyStrategy(apiKey, 'Authorization');
 * // Sets: Authorization: Bearer {apiKey}
 *
 * @example
 * // For custom API key header
 * const auth = new ApiKeyStrategy(apiKey, 'x-api-key');
 * // Sets: x-api-key: {apiKey}
 */
export declare class ApiKeyStrategy implements AuthStrategy {
    private readonly headerValue;
    private readonly headerName;
    constructor(key: string, headerName?: string);
    fetch(url: string, init?: FetchInit): Promise<Response>;
    /**
     * Returns the authorization header value for use with openapi-fetch middleware.
     */
    getAuthorizationHeader(): Promise<string>;
}
