import { Router } from 'aurelia-router';
import { EntityManager } from './entity-manager';
import { CustomLogger } from '../modules/custom-logger';
import { UserProfile, Language } from '../model/common-model';
import { Config } from '../config';
import { HttpClient } from 'aurelia-fetch-client';
import { I18N } from 'aurelia-i18n';
import { EventAggregator } from 'aurelia-event-aggregator';
export declare class Datacontext {
    private entityManager;
    private logger;
    private config;
    private router;
    private httpClient;
    private i18n;
    private eventAggregator;
    constructor(entityManager: EntityManager, logger: CustomLogger, config: Config, router: Router, httpClient: HttpClient, i18n: I18N, eventAggregator: EventAggregator);
    currentLanguage: Language;
    get translatePropertyName(): string;
    primeData(): Promise<void>;
    changeCurrentLangage(): Promise<void>;
    private corePrimeData;
    getDistinctPropertyValues(tableName: string, propertyName: string, includeNullValue?: boolean): Promise<any>;
    getCurrentUserProfile(): Promise<UserProfile>;
    private queryFailed;
    private log;
    private logError;
    saveUserSettings(userProfile: UserProfile): Promise<void>;
    saveUserLanguage(): Promise<void>;
}
