import { RawAxiosRequestConfig } from "axios";
import { Configuration } from "./configuration";
/**
 * Authentication logic for api calls
 */
export interface IAuthentication {
    /**
     * Apply authentication settings to header and query params.
     */
    applyToRequest(requestOptions: RawAxiosRequestConfig, configuration: Configuration): void;
}
/**
 * Implements OAuth authentication
 */
export declare class OAuth implements IAuthentication {
    private accessToken;
    /**
     * Apply authentication settings to header and query params
     */
    applyToRequest(requestOptions: RawAxiosRequestConfig, configuration: Configuration): Promise<void>;
    private _requestToken;
    private isTokenValid;
}
