import { Language, IObjectMap, ILabelsProvider, ITranslatorConfigOptions } from './models';
import { LabelSaverQueue } from './queue';
/**
 * This translator service class
 */
export declare class TranslatorClientService extends LabelSaverQueue {
    private clientDomain;
    private appLanguages;
    private syncAuth;
    private customLabels;
    private labelsResponse;
    constructor(options: ITranslatorConfigOptions);
    setCustomLabels(lbs: IObjectMap<string>): void;
    init(customLabels?: IObjectMap<string>): Promise<any>;
    private setup;
    getAppLanguages(): Language[];
    getActiveLanguages(): Language[];
    setDefaultLanguage(languageSymbol: string): void;
    getlabels(segmentId: string): Promise<{
        data: ILabelsProvider;
    }>;
    private addNewSegment;
    private translate;
    private updateLabel;
    private addNewLabel;
    private pruneUnUsedlabels;
    private getLabelsForSegments;
    private groupLabelsAndSave;
    private canSync;
    private interpolate;
}
