/**
 * This file is part of the NocoBase (R) project.
 * Copyright (c) 2020-2024 NocoBase Co., Ltd.
 * Authors: NocoBase Team.
 *
 * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
 * For more information, please refer to: https://www.nocobase.com/agreement.
 */
import { ChatDeepSeek } from '@langchain/deepseek';
import { AIMessageChunk, BaseMessage } from '@langchain/core/messages';
import { LLMProvider } from './provider';
import { LLMProviderMeta } from '../manager/ai-manager';
import { Model } from '@nocobase/database';
import type OpenAI from 'openai';
import { AttachmentModel } from '@nocobase/plugin-file-manager';
declare class ReasoningDeepSeek extends ChatDeepSeek {
    _generate(messages: BaseMessage[], options: any, runManager?: any): Promise<import("@langchain/core/dist/outputs").ChatResult>;
    _streamResponseChunks(messages: BaseMessage[], options: any, runManager?: any): AsyncGenerator<import("@langchain/core/dist/outputs").ChatGenerationChunk, void, unknown>;
    completionWithRetry(request: OpenAI.Chat.ChatCompletionCreateParamsStreaming, requestOptions?: OpenAI.RequestOptions): Promise<AsyncIterable<OpenAI.Chat.Completions.ChatCompletionChunk>>;
    completionWithRetry(request: OpenAI.Chat.ChatCompletionCreateParamsNonStreaming, requestOptions?: OpenAI.RequestOptions): Promise<OpenAI.Chat.Completions.ChatCompletion>;
}
export declare class DeepSeekProvider extends LLMProvider {
    chatModel: ChatDeepSeek;
    get baseURL(): string;
    createModel(): ReasoningDeepSeek;
    parseResponseMessage(message: Model): {
        key: any;
        content: any;
        role: any;
    };
    parseReasoningContent(chunk: AIMessageChunk): {
        status: string;
        content: string;
    };
    protected isApiSupportedAttachment(attachment: AttachmentModel): boolean;
}
export declare const deepseekProviderOptions: LLMProviderMeta;
export {};
