import { VerifyCallback } from 'passport-oauth2';
import { Strategy } from '../../models';
import { AuthOptions } from '../../models/authOptions.interface';
import { OAuth2Metadata } from './OAuth2Metadata.interface';
import { XuiLogger } from '../../../common';
export declare class OAuth2 extends Strategy {
    constructor(router?: import("express-serve-static-core").Router, logger?: XuiLogger);
    /**
     * Retrieve transformed AuthOptions
     * @param authOptions
     * @return OAuth2Metadata
     */
    getOAuthOptions: (authOptions: AuthOptions) => OAuth2Metadata;
    initialiseStrategy: (authOptions: AuthOptions) => Promise<void>;
    isInitialised(): boolean;
    verify: (accessToken: string, refreshToken: string, results: any, profile: any, done: VerifyCallback) => void;
}
export declare const oauth2: OAuth2;
//# sourceMappingURL=oauth2.class.d.ts.map