import { FrameworkConfiguration } from "aurelia-framework";
import { AuthConfig } from "./config";
import "./locales/common-fr.json";
import "./locales/common-nl.json";
import "./locales/common-en.json";
import { HttpClientConfiguration } from 'aurelia-fetch-client';
export declare enum UIResources {
    Buttons = "buttons"
}
type httpClientConfigurationFn = (config: HttpClientConfiguration) => void;
export declare class UIFrameworkConfig {
    private auConfig;
    private resources;
    get AuConfig(): FrameworkConfiguration;
    DefaultLang: string;
    ApplicationConfigImplementation: Function;
    BreezeModelImplementation: Function;
    AuthServiceImplemententation: Function;
    FileStorageServiceImplemententation: Function;
    HttpClientConfiguration: httpClientConfigurationFn;
    constructor(auConfig: FrameworkConfiguration, loadResources: (callback: () => Promise<void>) => void);
    setDefaultLang(lang: string): UIFrameworkConfig;
    setApplicationConfigImplementation(configModule: any): UIFrameworkConfig;
    setBreezeModelImplementation(breezeModelModule: any): UIFrameworkConfig;
    setAuthServiceImplementation(authserviceModule: any): UIFrameworkConfig;
    setFileStorageServiceImplementation(fileStorageService?: any): UIFrameworkConfig;
    setHttpClientConfiguration(configurationFn: httpClientConfigurationFn): UIFrameworkConfig;
    autoDetectAuthServiceImplementation(authConfig: AuthConfig): UIFrameworkConfig;
    checkPrerequisites(): void;
    useStandardResources(): void;
    useResource(resource: UIResources): this;
    private loadResources;
}
export declare function configure(auConfig: FrameworkConfiguration, configCallback: (config: UIFrameworkConfig) => void): Promise<void>;
export * from './exports';
