﻿/**
* DevExpress HTML/JS Reporting (designer\localization\localizationService.d.ts)
* Version:  26.1.3
* Build date: Jun 16, 2026
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
* License: https://www.devexpress.com/Support/EULAs/universal.xml
*/
/// <reference types="jquery" />
import { DxDeferred, DxPromise } from '@devexpress/analytics-core/analytics-internal';
interface ITranslationResult {
    name: string;
    texts: string[];
}
declare class TranslationFactory {
    private _services;
    getFirstRegistered(): string;
    getService(name: string): ITranslationService;
    getTranslations(texts: string[], destinationLanguage: string): DxDeferred<ITranslationResult[]>;
    translate(name: string, texts: string[], destinationLanguage: string, destinationLanguageText?: string): DxPromise<ITranslationResult>;
    register(name: string, service: ITranslationService): void;
    unregister(name: string): void;
}
export declare const _translationFactory: TranslationFactory;
export interface ITranslationService {
    onRequest: (texts: string[], destinationLanguage: string, destinationLanguageText?: string) => JQueryAjaxSettings | DxPromise;
    onResponse: (result: any) => string[];
    _icon?: string;
    _iconClass?: string;
}
export declare function registerTranslationService(name: string, service: ITranslationService): void;
export declare function _unregisterAITranslationService(): void;
export declare function _registerAITranslationService(): void;
export declare function unregisterTranslationService(name: string): void;
export {};
