import { CrowdinApi, DownloadLink, PaginationOptions, PatchRequest, PlainObject, ResponseList, ResponseObject, Status } from '../core';
export declare class Ai extends CrowdinApi {
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param options request options
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.custom.placeholders.getMany
     */
    listAiOrganizationCustomPlaceholders(options?: PaginationOptions): Promise<ResponseList<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.settings.custom-placeholders.post
     */
    addAiOrganizationCustomPlaceholder(request: AiModel.AddCustomPlaceholderRequest): Promise<ResponseObject<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param aiCustomPlaceholderId ai custom placeholder identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.settings.custom-placeholders.get
     */
    getAiOrganizationCustomPlaceholder(aiCustomPlaceholderId: number): Promise<ResponseObject<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param aiCustomPlaceholderId ai custom placeholder identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.settings.custom-placeholders.delete
     */
    deleteAiOrganizationCustomPlaceholder(aiCustomPlaceholderId: number): Promise<void>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param aiCustomPlaceholderId ai custom placeholder identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.settings.custom-placeholders.patch
     */
    editAiOrganizationCustomPlaceholder(aiCustomPlaceholderId: number, request: PatchRequest[]): Promise<ResponseObject<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param aiPromptId ai prompt identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.datasets.post
     */
    generateAiOrganizationPromptFineTuningDataset(aiPromptId: number, request: AiModel.GenerateFineTuningDataset): Promise<ResponseObject<Status<AiModel.FineTuningDataset>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.datasets.get
     */
    getAiOrganizationPromptFineTuningDatasetStatus(aiPromptId: number, jobIdentifier: string): Promise<ResponseObject<Status<AiModel.FineTuningDataset>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @param options request options
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.events.getMany
     */
    listAiOrganizationPromptFineTuningEvents(aiPromptId: number, jobIdentifier: string, options?: PaginationOptions): Promise<ResponseList<AiModel.PromptFineTuningEvent>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param options request options
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.getMany
     */
    listAiOrganizationPromptFineTuningJobs(options?: AiModel.ListPromptFineTuningJobsOptions): Promise<ResponseList<Status<AiModel.FineTuningJob>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param aiPromptId ai prompt identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.post
     */
    createAiOrganizationPromptFineTuningJob(aiPromptId: number, request: AiModel.GenerateFineTuningJob): Promise<ResponseObject<Status<AiModel.FineTuningJob>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.get
     */
    getAiOrganizationPromptFineTuningJobStatus(aiPromptId: number, jobIdentifier: string): Promise<ResponseObject<Status<AiModel.FineTuningJob>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.get
     */
    downloadAiOrganizationPromptFineTuningDataset(aiPromptId: number, jobIdentifier: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param aiPromptId ai prompt identifier
     * @param request request body
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.prompts.clones.post
     */
    cloneAiOrganizationPrompt(aiPromptId: number, request?: {
        name?: string;
    }): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param options optional parameters for the request
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.prompts.getMany
     */
    listAiOrganizationPrompts(options?: AiModel.ListAiPromptsOptions): Promise<ResponseList<AiModel.AiPromptResponse>>;
    /**
     * @param request request body
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.prompts.post
     */
    addAiOrganizationPrompt(request: AiModel.AddAiPromptRequest): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param aiPromptId ai Prompt identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.completions.post
     */
    generateAiOrganizationPromptCompletion(aiPromptId: number, request: AiModel.GenerateAiPromptCompletionRequest): Promise<ResponseObject<Status<AiModel.AiPromptCompletionAttribute>>>;
    /**
     * @param aiPromptId ai Prompt identifier
     * @param completionId completion identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.completions.get
     */
    getAiOrganizationPromptCompletionStatus(aiPromptId: number, completionId: string): Promise<ResponseObject<Status<AiModel.AiPromptCompletionAttribute>>>;
    /**
     * @param aiPromptId ai Prompt identifier
     * @param completionId completion identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.completions.delete
     */
    cancelAiOrganizationPromptCompletion(aiPromptId: number, completionId: string): Promise<void>;
    /**
     * @param aiPromptId ai Prompt identifier
     * @param completionId completion identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.prompts.completions.download.download
     */
    downloadAiOrganizationPromptCompletion(aiPromptId: number, completionId: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param aiPromptId ai Prompt identifier.
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.prompts.get
     */
    getAiOrganizationPrompt(aiPromptId: number): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param aiPromptId ai Prompt identifier
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.prompts.delete
     */
    deleteAiOrganizationPrompt(aiPromptId: number): Promise<void>;
    /**
     * @param aiPromptId ai Prompt identifier
     * @param request request body
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.prompts.patch
     */
    editAiOrganizationPrompt(aiPromptId: number, request: PatchRequest[]): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param options optional parameters for the request
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.providers.getMany
     */
    listAiOrganizationProviders(options?: PaginationOptions): Promise<ResponseList<AiModel.AiProviderResponse>>;
    /**
     * @param request request body
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.providers.post
     */
    addAiOrganizationProvider(request: AiModel.AddAiProviderRequest): Promise<ResponseObject<AiModel.AiProviderResponse>>;
    /**
     * @param aiProviderId ai Provider identifier.
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.providers.get
     */
    getAiOrganizationProvider(aiProviderId: number): Promise<ResponseObject<AiModel.AiProviderResponse>>;
    /**
     * @param aiProviderId ai Provider identifier.
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.providers.delete
     */
    deleteAiOrganizationProvider(aiProviderId: number): Promise<void>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param request request body
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.providers.patch
     */
    editAiOrganizationProvider(aiProviderId: number, request: PatchRequest[]): Promise<ResponseObject<AiModel.AiProviderResponse>>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param options optional parameters for the request
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.providers.models.getMany
     */
    listAiOrganizationProviderModels(aiProviderId: number, options?: PaginationOptions): Promise<ResponseList<AiModel.AiProviderModelResponse>>;
    /**
     * @param options optional parameters for the request
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.providers.models.enterprise.getMany
     */
    listAiOrganizationAllProviderModels(options?: PaginationOptions): Promise<ResponseList<AiModel.AiProviderModelResponse>>;
    /**
     * @param options optional parameters for the request
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.providers.supported-models.enterprise.getMany
     */
    listAiOrganizationSupportedProviderModels(options?: AiModel.ListSupportedProviderModelsOptions): Promise<ResponseList<AiModel.AiSupportedProviderModelResponse>>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param request request body
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.providers.chat.completions.post
     */
    createAiOrganizationProxyChatCompletion(aiProviderId: number, request?: AiModel.OtherChatCompletionRequest | AiModel.GoogleGeminiChatCompletionRequest): Promise<ResponseObject<AiModel.AiProviderProxyResponseData>>;
    /**
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.reports.post
     */
    generateAiOrganizationReport(request: AiModel.AiReport): Promise<ResponseObject<Status<AiModel.AiReport>>>;
    /**
     * @param aiReportId report identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.reports.get
     */
    checkAiOrganizationReportStatus(aiReportId: string): Promise<ResponseObject<Status<AiModel.AiReport>>>;
    /**
     * @param aiReportId report identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.reports.download.download
     */
    downloadAiOrganizationReport(aiReportId: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.settings.get
     */
    getAiOrganizationSettings(): Promise<ResponseObject<AiModel.AiSettings>>;
    /**
     * @param request request body
     * @see https://developer.crowdin.com/enterprise/api/v2/#operation/api.ai.settings.patch
     */
    editAiOrganizationSettings(request: PatchRequest[]): Promise<ResponseObject<AiModel.AiSettings>>;
    /**
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.translate.strings.post
     */
    translateAiOrganizationStrings(request: AiModel.AiTranslateStringsRequest): Promise<ResponseObject<AiModel.AiTranslateStringsResponse>>;
    /**
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.file-translations.post
     */
    startAiOrganizationFileTranslation(request: AiModel.AiFileTranslationRequest): Promise<ResponseObject<Status<AiModel.AiFileTranslationAttribute>>>;
    /**
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.file-translations.get
     */
    getAiOrganizationFileTranslationStatus(jobIdentifier: string): Promise<ResponseObject<Status<AiModel.AiFileTranslationAttribute>>>;
    /**
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.file-translations.delete
     */
    cancelAiOrganizationFileTranslation(jobIdentifier: string): Promise<void>;
    /**
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.file-translations.download
     */
    downloadAiOrganizationFileTranslation(jobIdentifier: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI/operation/api.ai.file-translations.download-strings
     */
    downloadAiOrganizationFileTranslationStrings(jobIdentifier: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.enterprise.get
     */
    organizationAiGatewayGet(aiProviderId: number, path: string): Promise<ResponseObject<PlainObject>>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.enterprise.post
     */
    organizationAiGatewayPost(aiProviderId: number, path: string, request?: PlainObject): Promise<ResponseObject<PlainObject>>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.enterprise.put
     */
    organizationAiGatewayPut(aiProviderId: number, path: string, request?: PlainObject): Promise<ResponseObject<PlainObject>>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @param request request body
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.enterprise.patch
     */
    organizationAiGatewayPatch(aiProviderId: number, path: string, request?: PlainObject): Promise<ResponseObject<PlainObject>>;
    /**
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @see https://support.crowdin.com/developer/enterprise/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.enterprise.delete
     */
    organizationAiGatewayDelete(aiProviderId: number, path: string): Promise<ResponseObject<PlainObject>>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param userId user identifier
     * @param options request options
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.prompt.custom.placeholders.getMany
     */
    listAiUserCustomPlaceholders(userId: number, options?: PaginationOptions): Promise<ResponseList<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param userId user identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.settings.custom-placeholders.post
     */
    addAiUserCustomPlaceholder(userId: number, request: AiModel.AddCustomPlaceholderRequest): Promise<ResponseObject<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param userId user identifier
     * @param aiCustomPlaceholderId ai custom placeholder identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.settings.custom-placeholders.get
     */
    getAiUserCustomPlaceholder(userId: number, aiCustomPlaceholderId: number): Promise<ResponseObject<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param userId user identifier
     * @param aiCustomPlaceholderId ai custom placeholder identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.settings.custom-placeholders.delete
     */
    deleteAiUserCustomPlaceholder(userId: number, aiCustomPlaceholderId: number): Promise<void>;
    /**
     * @deprecated AI Custom Placeholders APIs are deprecated.
     * @param userId user identifier
     * @param aiCustomPlaceholderId ai custom placeholder identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.settings.custom-placeholders.patch
     */
    editAiUserCustomPlaceholder(userId: number, aiCustomPlaceholderId: number, request: PatchRequest[]): Promise<ResponseObject<AiModel.CustomPlaceholder>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param userId user identifier
     * @param aiPromptId ai prompt identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.datasets.post
     */
    generateAiUserPromptFineTuningDataset(userId: number, aiPromptId: number, request: AiModel.GenerateFineTuningDataset): Promise<ResponseObject<Status<AiModel.FineTuningDataset>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param userId user identifier
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.prompts.fine-tuning.datasets.get
     */
    getAiUserPromptFineTuningDatasetStatus(userId: number, aiPromptId: number, jobIdentifier: string): Promise<ResponseObject<Status<AiModel.FineTuningDataset>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param userId user identifier
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @param options request options
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.events.getMany
     */
    listAiUserPromptFineTuningEvents(userId: number, aiPromptId: number, jobIdentifier: string, options?: PaginationOptions): Promise<ResponseList<AiModel.PromptFineTuningEvent>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param userId user identifier
     * @param options request options
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.getMany
     */
    listAiUserPromptFineTuningJobs(userId: number, options?: AiModel.ListPromptFineTuningJobsOptions): Promise<ResponseList<Status<AiModel.FineTuningJob>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param userId user identifier
     * @param aiPromptId ai prompt identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.prompts.fine-tuning.jobs.post
     */
    createAiUserPromptFineTuningJob(userId: number, aiPromptId: number, request: AiModel.GenerateFineTuningJob): Promise<ResponseObject<Status<AiModel.FineTuningJob>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param userId user identifier
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.prompts.fine-tuning.jobs.get
     */
    getAiUserPromptFineTuningJobStatus(userId: number, aiPromptId: number, jobIdentifier: string): Promise<ResponseObject<Status<AiModel.FineTuningJob>>>;
    /**
     * @deprecated Fine-tuning APIs are deprecated.
     * @param userId user identifier
     * @param aiPromptId ai prompt identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.prompts.fine-tuning.datasets.download.get
     */
    downloadAiUserPromptFineTuningDataset(userId: number, aiPromptId: number, jobIdentifier: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai prompt identifier
     * @param request request body
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.prompts.clones.post
     */
    cloneAiUserPrompt(userId: number, aiPromptId: number, request?: {
        name?: string;
    }): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param userId user identifier
     * @param options optional parameters for the request
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.prompts.post
     */
    listAiUserPrompts(userId: number, options?: AiModel.ListAiPromptsOptions): Promise<ResponseList<AiModel.AiPromptResponse>>;
    /**
     * @param userId user identifier
     * @param request request body
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.prompts.post
     */
    addAiUserPrompt(userId: number, request: AiModel.AddAiPromptRequest): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai Prompt identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.prompts.completions.post
     */
    generateAiUserPromptCompletion(userId: number, aiPromptId: number, request: AiModel.GenerateAiPromptCompletionRequest): Promise<ResponseObject<Status<AiModel.AiPromptCompletionAttribute>>>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai Prompt identifier
     * @param completionId completion identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.prompts.completions.get
     */
    getAiUserPromptCompletionStatus(userId: number, aiPromptId: number, completionId: string): Promise<ResponseObject<Status<AiModel.AiPromptCompletionAttribute>>>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai Prompt identifier
     * @param completionId completion identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.prompts.completions.delete
     */
    cancelAiUserPromptCompletion(userId: number, aiPromptId: number, completionId: string): Promise<void>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai Prompt identifier
     * @param completionId completion identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.prompts.completions.download.download
     */
    downloadAiUserPromptCompletion(userId: number, aiPromptId: number, completionId: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai Prompt identifier.
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.prompts.get
     */
    getAiUserPrompt(userId: number, aiPromptId: number): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai Prompt identifier.
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.prompts.delete
     */
    deleteAiUserPrompt(userId: number, aiPromptId: number): Promise<void>;
    /**
     * @param userId user identifier
     * @param aiPromptId ai Prompt identifier
     * @param request request body
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.prompts.patch
     */
    editAiUserPrompt(userId: number, aiPromptId: number, request: PatchRequest[]): Promise<ResponseObject<AiModel.AiPromptResponse>>;
    /**
     * @param userId user identifier
     * @param options optional parameters for the request
     * @see https://developer.crowdin.com/api/v2/#operation/api.ai.providers.getMany
     */
    listAiUserProviders(userId: number, options?: PaginationOptions): Promise<ResponseList<AiModel.AiProviderResponse>>;
    /**
     * @param userId user identifier
     * @param request request body
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.providers.post
     */
    addAiUserProvider(userId: number, request: AiModel.AddAiProviderRequest): Promise<ResponseObject<AiModel.AiProviderResponse>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier.
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.providers.get
     */
    getAiUserProvider(userId: number, aiProviderId: number): Promise<ResponseObject<AiModel.AiProviderResponse>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier.
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.providers.delete
     */
    deleteAiUserProvider(userId: number, aiProviderId: number): Promise<void>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier
     * @param request request body
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.providers.patch
     */
    editAiUserProvider(userId: number, aiProviderId: number, request: PatchRequest[]): Promise<ResponseObject<AiModel.AiProviderResponse>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier
     * @param options optional parameters for the request
     * @see https://developer.crowdin.com/api/v2/#operation/api.ai.providers.models.getMany
     */
    listAiUserProviderModels(userId: number, aiProviderId: number, options?: PaginationOptions): Promise<ResponseList<AiModel.AiProviderModelResponse>>;
    /**
     * @param userId user identifier
     * @param options optional parameters for the request
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.providers.models.crowdin.getMany
     *
     */
    listAiUserAllProviderModels(userId: number, options?: PaginationOptions): Promise<ResponseList<AiModel.AiProviderModelResponse>>;
    /**
     * @param userId user identifier
     * @param options optional parameters for the request
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.ai.providers.supported-models.crowdin.getMany
     */
    listAiUserSupportedProviderModels(userId: number, options?: AiModel.ListSupportedProviderModelsOptions): Promise<ResponseList<AiModel.AiSupportedProviderModelResponse>>;
    /**
     * @param userId user Identifier
     * @param aiProviderId ai Provider identifier
     * @param request request body
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.providers.chat.completions.post
     */
    createAiUserProxyChatCompletion(userId: number, aiProviderId: number, request?: AiModel.OtherChatCompletionRequest | AiModel.GoogleGeminiChatCompletionRequest): Promise<ResponseObject<AiModel.AiProviderProxyResponseData>>;
    /**
     * @param userId user identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.reports.post
     */
    generateAiUserReport(userId: number, request: AiModel.AiReport): Promise<ResponseObject<Status<AiModel.AiReport>>>;
    /**
     * @param userId user identifier
     * @param aiReportId report identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.reports.get
     */
    checkAiUserReportStatus(userId: number, aiReportId: string): Promise<ResponseObject<Status<AiModel.AiReport>>>;
    /**
     * @param userId user identifier
     * @param aiReportId report identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.reports.download.download
     */
    downloadAiUserReport(userId: number, aiReportId: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param userId user Identifier
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.settings.get
     */
    getAiUserSettings(userId: number): Promise<ResponseObject<AiModel.AiSettings>>;
    /**
     * @param userId user Identifier
     * @param request request body
     * @see https://developer.crowdin.com/api/v2/#operation/api.users.ai.settings.patch
     */
    editAiUserSettings(userId: number, request: PatchRequest[]): Promise<ResponseObject<AiModel.AiSettings>>;
    /**
     * @param userId user identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.translate.strings.post
     */
    translateAiUserStrings(userId: number, request: AiModel.AiTranslateStringsRequest): Promise<ResponseObject<AiModel.AiTranslateStringsResponse>>;
    /**
     * @param userId user identifier
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.file-translations.post
     */
    startAiUserFileTranslation(userId: number, request: AiModel.AiFileTranslationRequest): Promise<ResponseObject<Status<AiModel.AiFileTranslationAttribute>>>;
    /**
     * @param userId user identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.file-translations.get
     */
    getAiUserFileTranslationStatus(userId: number, jobIdentifier: string): Promise<ResponseObject<Status<AiModel.AiFileTranslationAttribute>>>;
    /**
     * @param userId user identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.file-translations.delete
     */
    cancelAiUserFileTranslation(userId: number, jobIdentifier: string): Promise<void>;
    /**
     * @param userId user identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.file-translations.download
     */
    downloadAiUserFileTranslation(userId: number, jobIdentifier: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param userId user identifier
     * @param jobIdentifier job identifier
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI/operation/api.users.ai.file-translations.download-strings
     */
    downloadAiUserFileTranslationStrings(userId: number, jobIdentifier: string): Promise<ResponseObject<DownloadLink>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.crowdin.get
     */
    userAiGatewayGet(userId: number, aiProviderId: number, path: string): Promise<ResponseObject<PlainObject>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.crowdin.post
     */
    userAiGatewayPost(userId: number, aiProviderId: number, path: string, request?: PlainObject): Promise<ResponseObject<PlainObject>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.crowdin.put
     */
    userAiGatewayPut(userId: number, aiProviderId: number, path: string, request?: PlainObject): Promise<ResponseObject<PlainObject>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @param request request body
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.crowdin.patch
     */
    userAiGatewayPatch(userId: number, aiProviderId: number, path: string, request?: PlainObject): Promise<ResponseObject<PlainObject>>;
    /**
     * @param userId user identifier
     * @param aiProviderId ai Provider identifier
     * @param path raw provider API path after `/gateway/`
     * @see https://support.crowdin.com/developer/api/v2/#tag/AI-Gateway/operation/api.ai.providers.gateway.crowdin.delete
     */
    userAiGatewayDelete(userId: number, aiProviderId: number, path: string): Promise<ResponseObject<PlainObject>>;
}
export declare namespace AiModel {
    interface CustomPlaceholder {
        id: number;
        description: string;
        placeholder: string;
        value: string;
        createdAt: string;
        updatedAt: string;
    }
    interface AddCustomPlaceholderRequest {
        description: string;
        placeholder: string;
        value: string;
    }
    interface FineTuningDataset {
        projectIds: number[];
        tmIds: number[];
        purpose: 'training' | 'validation';
        dateFrom: string;
        dateTo: string;
        maxFileSize: number;
        minExamplesCount: number;
        maxExamplesCount: number;
    }
    interface GenerateFineTuningDataset {
        projectIds?: number[];
        tmIds?: number[];
        purpose?: 'training' | 'validation';
        dateFrom?: string;
        dateTo?: string;
        maxFileSize?: number;
        minExamplesCount?: number;
        maxExamplesCount?: number;
    }
    interface GenerateFineTuningJob {
        dryRun?: boolean;
        hyperparameters?: {
            batchSize: number;
            learningRateMultiplier: number;
            nEpochs: number;
        };
        trainingOptions: Omit<GenerateFineTuningDataset, 'purpose'>;
        validationOptions?: Omit<GenerateFineTuningDataset, 'purpose'>;
    }
    interface FineTuningJob {
        dryRun: boolean;
        aiPromptId: number;
        hyperparameters: {
            batchSize: number;
            learningRateMultiplier: number;
            nEpochs: number;
        };
        trainingOptions: Omit<GenerateFineTuningDataset, 'purpose'>;
        validationOptions: Omit<GenerateFineTuningDataset, 'purpose'>;
        baseModel: string;
        fineTunedModel: string;
        trainedTokensCount: number;
        trainingDatasetUrl: string;
        validationDatasetUrl: string;
        metadata: PlainObject;
    }
    interface PromptFineTuningEvent {
        id: string;
        type: string;
        message: string;
        data: {
            step: number;
            totalSteps: number;
            trainingLoss: number;
            validationLoss: number;
            fullValidationLoss: number;
        };
        createdAt: string;
    }
    interface ListPromptFineTuningJobsOptions extends PaginationOptions {
        statuses: string;
        orderBy: string;
    }
    interface ListAiPromptsOptions extends PaginationOptions {
        projectId?: number;
        action?: Action;
    }
    interface AiPromptResponse {
        id: number;
        name: string;
        action: Action;
        aiProviderId: number;
        aiModelId: string;
        isEnabled: boolean;
        enabledProjectIds: number[];
        config: AiModel.AiPromptConfigBasicPreTranslate | AiModel.AiPromptConfigBasicAssistAction | AiModel.AiPromptConfigBasicAligmentAction | AiModel.AiPromptConfigAdvanced | AiModel.AiPromptConfigExternal;
        promptPreview: string;
        isFineTuningAvailable: boolean;
        createdAt: string;
        updatedAt: string;
    }
    interface AiPromptConfigBasicOtherLanguageTranslations {
        isEnabled?: boolean;
        languageIds?: string[];
    }
    interface AiPromptConfigBasicPreTranslate {
        mode: 'basic';
        /**
         * @deprecated
         */
        companyDescription?: string;
        /**
         * @deprecated
         */
        projectDescription?: string;
        /**
         * @deprecated
         */
        audienceDescription?: string;
        customPlaceholders?: string[];
        otherLanguageTranslations?: AiModel.AiPromptConfigBasicOtherLanguageTranslations;
        glossaryTerms?: boolean;
        tmSuggestions?: boolean;
        /**
         * @deprecated
         */
        fileContent?: boolean;
        fileContext?: boolean;
        screenshots?: boolean;
        publicProjectDescription?: boolean;
        siblingsStrings?: boolean;
    }
    interface AiPromptConfigBasicAssistAction {
        mode: 'basic';
        /**
         * @deprecated
         */
        companyDescription?: string;
        /**
         * @deprecated
         */
        projectDescription?: string;
        /**
         * @deprecated
         */
        audienceDescription?: string;
        otherLanguageTranslations?: AiModel.AiPromptConfigBasicOtherLanguageTranslations;
        glossaryTerms?: boolean;
        tmSuggestions?: boolean;
        fileContext?: boolean;
        screenshots?: boolean;
        publicProjectDescription?: boolean;
        siblingsStrings?: boolean;
        filteredStrings?: boolean;
    }
    interface AiPromptConfigBasicAligmentAction {
        mode: 'basic';
        customPlaceholders?: string[];
        publicProjectDescription?: boolean;
    }
    interface AiPromptConfigAdvanced {
        mode: 'advanced';
        screenshots?: boolean;
        prompt: string;
        otherLanguageTranslations?: AiModel.AiPromptConfigBasicOtherLanguageTranslations;
    }
    interface AiPromptConfigExternal {
        mode: 'external';
        identifier: string;
        key: string;
        options?: any;
    }
    interface AddAiPromptRequest {
        name: string;
        action: Action;
        aiProviderId?: number;
        aiModelId?: string;
        isEnabled?: boolean;
        enabledProjectIds?: number[];
        config: AiModel.AiPromptConfigBasicPreTranslate | AiModel.AiPromptConfigBasicAssistAction | AiModel.AiPromptConfigBasicAligmentAction | AiModel.AiPromptConfigAdvanced | AiPromptConfigExternal;
    }
    interface GenerateAiPromptCompletionRequest {
        resources: AiModel.AiPromptResourceWithPreTranslate | AiModel.AiPromptResourceWithAssist | AiModel.AiPromptResourceWithAlignment | AiModel.AiPromptResourceWithCustom;
        tools?: {
            tool: {
                type: 'function';
                function: {
                    description?: string;
                    name: string;
                    parameters?: PlainObject;
                };
            };
        }[];
        tool_choice?: string | PlainObject;
    }
    interface AiPromptCompletionAttribute {
        aiPromptId: number;
    }
    interface AiPromptResourceWithPreTranslate {
        projectId: number;
        sourceLanguageId?: string;
        targetLanguageId?: string;
        stringIds?: number[];
        overridePromptValues?: OverridePromptValues;
    }
    interface AiPromptResourceWithAlignment {
        projectId: number;
        sourceLanguageId?: string;
        targetLanguageId?: string;
        stringIds?: number[];
        overridePromptValues?: OverridePromptValues;
    }
    interface AiPromptResourceWithAssist {
        projectId: number;
        sourceLanguageId?: string;
        targetLanguageId?: string;
        stringIds?: number[];
        filteredStringsIds?: number[];
        overridePromptValues?: OverridePromptValues;
    }
    interface AiPromptResourceWithCustom {
        projectId: number;
        sourceLanguageId?: string;
        targetLanguageId?: string;
        stringIds?: number[];
        overridePromptValues?: OverridePromptValues;
        customInstruction?: string;
    }
    interface OverridePromptValues {
        [key: string]: any;
    }
    interface AiProviderResponse {
        id: number;
        name: string;
        type: ProviderType;
        credentials: AiModel.AiProviderCredentialsBasic | AiModel.AiProviderCredentialsAzureOpenAi | AiProviderCredentialsGoogleGemini | AiProviderCredentialsCustom;
        config: AiModel.AiProviderConfig;
        isEnabled: boolean;
        useSystemCredentials: boolean;
        createdAt: string;
        updatedAt: string;
        promptsCount: string;
    }
    interface AiProviderCredentialsBasic {
        apiKey: string;
    }
    interface AiProviderCredentialsAzureOpenAi extends AiProviderCredentialsBasic {
        resourceName: string;
        deploymentName: string;
        apiVersion: string;
    }
    interface AiProviderCredentialsGoogleGemini {
        project: string;
        region: string;
        serviceAccountKey: string;
    }
    interface AiProviderCredentialsWatsonx {
        apiKey: string;
        projectId: string;
        region: string;
    }
    interface AiProviderCredentialsCustom {
        identifier: string;
        key: string;
    }
    interface AiProviderConfig {
        actionRules?: AiModel.AiProviderConfigActionRule[];
    }
    interface AiProviderConfigActionRule {
        action?: 'pre_translate' | 'assist';
        availableAiModelIds?: string[];
    }
    interface AddAiProviderRequest {
        name: string;
        type: ProviderType;
        credentials?: AiModel.AiProviderCredentialsBasic | AiModel.AiProviderCredentialsAzureOpenAi | AiProviderCredentialsGoogleGemini | AiProviderCredentialsWatsonx | AiProviderCredentialsCustom;
        config?: AiModel.AiProviderConfig;
        isEnabled?: boolean;
        useSystemCredentials?: boolean;
    }
    interface AiProviderModelResponse {
        id: string;
    }
    interface AiSupportedProviderModelResponse {
        providerId: number | null;
        providerType: string;
        providerName: string;
        id: string;
        displayName: string;
        supportReasoning: boolean;
        intelligence: number;
        speed: number;
        price: {
            input: number;
            output: number;
        };
        modalities: {
            input: {
                text: boolean;
                image: boolean;
                audio: boolean;
            };
            output: {
                text: boolean;
                image: boolean;
                audio: boolean;
            };
        };
        contextWindow: number;
        maxOutputTokens: number;
        knowledgeCutoff: string | null;
        releaseDate: string | null;
        features: {
            streaming: boolean;
            structuredOutput: boolean;
            functionCalling: boolean;
        };
    }
    interface ListSupportedProviderModelsOptions extends PaginationOptions {
        providerType?: ProviderType;
        enabled?: boolean;
        orderBy?: string;
    }
    interface AiProviderProxyResponseData {
        data: object;
    }
    interface OtherChatCompletionRequest {
        stream?: boolean;
        [key: string]: any;
    }
    interface GoogleGeminiChatCompletionRequest extends OtherChatCompletionRequest {
        model: string;
    }
    type AiReport = AiReportTokenUsage;
    interface AiReportTokenUsage {
        type: 'tokens-usage-raw-data';
        schema: AiReportGeneralSchema;
    }
    interface AiReportGeneralSchema {
        dateFrom: string;
        dateTo: string;
        format?: 'json' | 'csv';
        projectIds?: number[];
        promptIds?: number[];
        userIds?: number[];
    }
    interface AiSettings {
        assistActionAiPromptId: number;
        showSuggestion: boolean;
        shortcuts: {
            name: string;
            prompt: string;
            enabled: boolean;
        }[];
    }
    interface AiFileTranslationRequest {
        storageId: number;
        targetLanguageId: string;
        sourceLanguageId?: string;
        type?: string;
        parserVersion?: number;
        tmIds?: number[];
        glossaryIds?: number[];
        aiPromptId?: number;
        aiProviderId?: number;
        aiModelId?: string;
        instructions?: string[];
        attachmentIds?: number[];
    }
    interface AiFileTranslationAttribute {
        stage: string;
        error: {
            stage: string;
            message: string;
        } | null;
        downloadName: string | null;
        sourceLanguageId: string | null;
        targetLanguageId: string;
        originalFileName: string;
        detectedType: string | null;
        parserVersion: number | null;
    }
    interface AiTranslateStringsRequest {
        strings: string[];
        targetLanguageId: string;
        sourceLanguageId?: string;
        tmIds?: number[];
        glossaryIds?: number[];
        aiPromptId?: number;
        aiProviderId?: number;
        aiModelId?: string;
        instructions?: string[];
        attachmentIds?: number[];
    }
    interface AiTranslateStringsResponse {
        sourceLanguageId: string;
        targetLanguageId: string;
        translations: string[];
    }
    type Action = 'pre_translate' | 'assist';
    type ProviderType = 'open_ai' | 'azure_open_ai' | 'google_gemini' | 'mistral_ai' | 'anthropic' | 'custom_ai' | 'x_ai' | 'deepseek' | 'watsonx';
}
