import { AuthProviderConfig } from '@memberjunction/core';
import { IAuthProvider } from './IAuthProvider.js';
import './providers/Auth0Provider.js';
import './providers/MSALProvider.js';
import './providers/OktaProvider.js';
import './providers/CognitoProvider.js';
import './providers/GoogleProvider.js';
export declare class AuthProviderFactory {
    private static instance;
    private providers;
    private issuerCache;
    private constructor();
    static getInstance(): AuthProviderFactory;
    static createProvider(config: AuthProviderConfig): IAuthProvider;
    register(provider: IAuthProvider): void;
    getByIssuer(issuer: string): IAuthProvider | undefined;
    getByName(name: string): IAuthProvider | undefined;
    getAllProviders(): IAuthProvider[];
    hasProviders(): boolean;
    clear(): void;
    static getRegisteredProviderTypes(): string[];
    static isProviderTypeRegistered(type: string): boolean;
}
//# sourceMappingURL=AuthProviderFactory.d.ts.map