/**
 * OCAPI Authentication Client
 *
 * This module handles OAuth 2.0 authentication specifically for SFCC OCAPI requests.
 * It extends the base HTTP client with OCAPI-specific authentication logic.
 */
import { OCAPIConfig } from '../../types/types.js';
import { BaseHttpClient } from './http-client.js';
/**
 * OCAPI Authentication Client
 * Handles OAuth 2.0 Client Credentials flow for OCAPI access
 */
export declare class OCAPIAuthClient extends BaseHttpClient {
    private config;
    private tokenManager;
    constructor(config: OCAPIConfig);
    /**
     * Get authentication headers for OCAPI requests
     */
    protected getAuthHeaders(): Promise<Record<string, string>>;
    /**
     * Handle authentication errors by clearing the stored token
     */
    protected handleAuthError(): Promise<void>;
    /**
     * Get a valid OAuth access token
     */
    private getAccessToken;
    /**
     * Request a new OAuth token from SFCC
     */
    private requestNewToken;
    /**
     * Get current token expiration for debugging
     */
    getTokenExpiration(): Date | null;
    /**
     * Force refresh the token
     */
    refreshToken(): Promise<void>;
}
//# sourceMappingURL=ocapi-auth-client.d.ts.map