import { InjectionToken, Provider } from '@angular/core';
import { UaePassLanguageCode, UaePassStorageMode } from './uae-pass.enums';
export type UaePassLanguage = UaePassLanguageCode | (string & {});
export interface UaePassConfig {
    clientId: string;
    redirectUri: string;
    isProduction: boolean;
    language?: UaePassLanguage;
    clientSecret?: string;
    scope?: string;
    tokenProxyUrl?: string;
    userInfoProxyUrl?: string;
    requestTimeoutMs?: number;
    storage?: UaePassStorageMode | 'none' | 'session' | 'local';
    blockSOP1?: boolean;
    serviceProviderEnglishName?: string;
    serviceProviderArabicName?: string;
    logoutRedirectUri?: string;
    buttonLogos?: {
        english?: string;
        arabic?: string;
    };
}
export declare const UAE_PASS_CONFIG: InjectionToken<UaePassConfig>;
export declare function provideUaePass(config: UaePassConfig): Provider[];
