import { AxiosInstance } from "axios";
import { ProductCategoryDTO, ProductCollectionDTO, ProductDTO, ShippingOptionDTO } from "@medusajs/framework/types";
import { TolgeeAdminOptions, SupportedModels } from "../../common";
export type TolgeeModuleConfig = {
    projectId: string;
    apiKey: string;
    baseURL: string;
    keys?: {
        [key in SupportedModels]?: string[];
    };
};
type TolgeeModuleConfigInternal = Omit<TolgeeModuleConfig, "keys"> & {
    keys: Required<TolgeeModuleConfig["keys"]>;
};
declare class TolgeeModuleService {
    protected client_: AxiosInstance;
    protected defaultLanguage: TolgeeAdminOptions["defaultLanguage"];
    protected availableLanguages: TolgeeAdminOptions["availableLanguages"];
    readonly options_: TolgeeModuleConfigInternal;
    constructor({}: {}, options: TolgeeModuleConfig);
    getOptions(): Promise<TolgeeAdminOptions>;
    getNamespaceKeys(id: string | string[]): Promise<string[]>;
    getKeyName(keyId: string): Promise<string>;
    getProductTranslationKeys(ids: string | string[]): Promise<string[]>;
    list(filter: {
        id: string | string[];
        context?: {
            country_code: string;
        };
    }): Promise<any[]>;
    createNewKeyWithTranslation(keys: {
        id: string;
        keyName: string;
        translation: string;
    }[]): Promise<any>;
    createModelTranslations(models: (ProductDTO | ProductCategoryDTO | ProductCollectionDTO | ShippingOptionDTO)[], type: SupportedModels): Promise<string[]>;
    deleteTranslation(id: string): Promise<void>;
}
export default TolgeeModuleService;
