import { AuthFlowParams, AuthServerMetadata, AuthWindowOptions, OAuthProvider } from '@openfin/oauth';
import { ServiceNowEntities } from '../rest-api/rest-api.types';
/**
 * @internal
 */
export declare class ServiceNowProvider extends OAuthProvider {
    protected _currentUser: ServiceNowEntities.Core.User | undefined;
    get currentUser(): ServiceNowEntities.Core.User;
    protected _instanceUrl: string | undefined;
    get instanceUrl(): string | undefined;
    protected _scope: string[] | undefined;
    get scope(): string[] | undefined;
    authorize(redirectUri: string, authFlowParams?: AuthFlowParams, authWindowOptions?: AuthWindowOptions): Promise<void>;
    close(): Promise<void>;
    getErrorMessageFromServerResponse(response: any): string | undefined;
    static init(authServerMetadata: AuthServerMetadata, instanceUrl: string, clientId: string, logPrefix: string, scope: string[]): Promise<ServiceNowProvider>;
}
