import { AuthConfiguration } from "./types";
import { Client, DeviceFlowHandle, TokenSet } from "openid-client";
export declare class ApiKeyAuth implements AuthConfiguration {
    apiKey: string;
    constructor(apiKey: string);
    getAuthHeader(): Promise<string>;
}
export declare class DeviceAuth implements AuthConfiguration {
    apiKey: string | undefined;
    auth0Domain: string;
    clientId: string;
    scope: string;
    audience: string;
    auth0Client: Client | undefined;
    tokens: TokenSet | undefined;
    constructor(apiKey?: string);
    private loadTokensFromConfig;
    getAuthHeader(): Promise<string>;
    saveTokens(): Promise<void>;
    initClient(): Promise<void>;
    getDeviceCode(): Promise<DeviceFlowHandle>;
    requestDeviceActivation(deviceCodeHandle: DeviceFlowHandle): Promise<void>;
    refreshTokens(): Promise<void>;
}
