/**
 * Navitaire GDS adapter with HTTP request/response mapping
 *
 * Real HTTP: POST /api/nsk/v4/availability/search/simple (search)
 *            POST /api/nsk/v4/fare/price (price)
 *            POST /api/nsk/v4/booking (book)
 *            DELETE /api/nsk/v4/booking/:id (cancel)
 *            GET /api/nsk/v4/booking/:id (retrieve)
 *
 * Falls back to stub data when no credentials configured.
 */
import type { AdapterHealth, AuthConfig, GdsAdapter, GdsRequest, GdsResponse, Logger } from "../adapter.ts";
export interface NavitaireAdapterConfig {
    /** API base URL (e.g. "https://playground.api.tui") */
    baseUrl?: string;
    /** API key */
    apiKey?: string;
    /** Auth method (api-key or oauth2) */
    auth?: AuthConfig;
    /** Request timeout in ms */
    timeoutMs?: number;
    /** Logger */
    logger?: Logger;
}
export declare class NavitaireAdapter implements GdsAdapter {
    readonly providerName = "navitaire";
    readonly supportedCarriers: readonly ["JQ", "VA", "U2", "D7", "AK", "TR", "NK"];
    private config;
    private readonly rateLimiter;
    private readonly circuitBreaker;
    private authenticated;
    logger?: Logger;
    constructor(config?: NavitaireAdapterConfig);
    supportsCarrier(carrier: string): boolean;
    authenticate(): Promise<void>;
    isAuthenticated(): Promise<boolean>;
    execute(request: GdsRequest): Promise<GdsResponse>;
    private buildRequest;
    private parseResponse;
    health(): Promise<AdapterHealth>;
}
//# sourceMappingURL=navitaire.d.ts.map