{"version":3,"file":"common.d.ts","names":["CallbackManagerForLLMRun","BaseMessage","ChatResult","IterableReadableStream","BaseChatModel","BaseChatModelParams","BaseWebSocketStream","WebSocketStreamOptions","XinghuoMessageRole","XinghuoMessage","ChatCompletionRequest","ChatCompletionChunk","ChatCompletionResponse","IflytekXinghuoChatInput","BaseChatIflytekXinghuo","T","Partial","Omit","Promise","AbortSignal","Record"],"sources":["../../../src/chat_models/iflytek_xinghuo/common.d.ts"],"sourcesContent":["import { CallbackManagerForLLMRun } from \"@langchain/core/callbacks/manager\";\nimport { BaseMessage } from \"@langchain/core/messages\";\nimport { ChatResult } from \"@langchain/core/outputs\";\nimport { IterableReadableStream } from \"@langchain/core/utils/stream\";\nimport { BaseChatModel, type BaseChatModelParams } from \"@langchain/core/language_models/chat_models\";\nimport { BaseWebSocketStream, WebSocketStreamOptions } from \"../../utils/iflytek_websocket_stream.js\";\n/**\n * Type representing the role of a message in the Xinghuo chat model.\n */\nexport type XinghuoMessageRole = \"assistant\" | \"user\";\n/**\n * Interface representing a message in the Xinghuo chat model.\n */\ninterface XinghuoMessage {\n    role: XinghuoMessageRole;\n    content: string;\n}\n/**\n * Interface representing a request for a chat completion.\n */\ninterface ChatCompletionRequest {\n    messages: XinghuoMessage[];\n    temperature?: number;\n    max_tokens?: number;\n    top_k?: number;\n    chat_id?: string;\n}\nexport interface ChatCompletionChunk {\n    header: {\n        code: number;\n        message: string;\n        sid: string;\n        status: number;\n    };\n    payload: {\n        choices: {\n            status: number;\n            seq: number;\n            text: {\n                content: string;\n                role: XinghuoMessageRole;\n                index: number;\n            }[];\n        };\n        usage?: {\n            text: {\n                question_tokens: number;\n                prompt_tokens: number;\n                completion_tokens: number;\n                total_tokens: number;\n            };\n        };\n    };\n}\n/**\n * Interface representing a response from a chat completion.\n */\ninterface ChatCompletionResponse {\n    result: string;\n    usage?: {\n        completion_tokens: number;\n        prompt_tokens: number;\n        total_tokens: number;\n    };\n}\ndeclare interface IflytekXinghuoChatInput {\n    /** Model version to use. Available options are: v1.1, v2.1, v3.1, v3.5, v4.0\n     * @default \"v3.1\"\n     */\n    version: string;\n    /**\n     * ID of the end-user who made requests.\n     */\n    userId?: string;\n    /**\n     * APPID to use when making requests. Defaults to the value of\n     * `IFLYTEK_APPID` environment variable.\n     */\n    iflytekAppid?: string;\n    /**\n     * API key to use when making requests. Defaults to the value of\n     * `IFLYTEK_API_KEY` environment variable.\n     */\n    iflytekApiKey?: string;\n    /**\n     * API Secret to use when making requests. Defaults to the value of\n     * `IFLYTEK_API_SECRET` environment variable.\n     */\n    iflytekApiSecret?: string;\n    /** Amount of randomness injected into the response. Ranges\n     * from 0 to 1 (0 is not included). Use temp closer to 0 for analytical /\n     * multiple choice, and temp closer to 1 for creative\n     * and generative tasks. Defaults to 0.5.\n     */\n    temperature?: number;\n    max_tokens?: number;\n    top_k?: number;\n    streaming?: boolean;\n}\n/**\n * Wrapper around IflytekXingHuo large language models that use the Chat endpoint.\n *\n * To use you should have the `IFLYTEK_API_KEY` and `IFLYTEK_API_SECRET` and `IFLYTEK_APPID`\n * environment variable set.\n *\n * @augments BaseChatModel\n * @augments IflytekXinghuoChatInput\n */\nexport declare abstract class BaseChatIflytekXinghuo extends BaseChatModel implements IflytekXinghuoChatInput {\n    static lc_name(): string;\n    get callKeys(): string[];\n    get lc_secrets(): {\n        [key: string]: string;\n    } | undefined;\n    get lc_aliases(): {\n        [key: string]: string;\n    } | undefined;\n    lc_serializable: boolean;\n    version: string;\n    iflytekAppid: string;\n    iflytekApiKey: string;\n    iflytekApiSecret: string;\n    userId?: string;\n    apiUrl: string;\n    domain: string;\n    temperature: number;\n    max_tokens: number;\n    top_k: number;\n    streaming: boolean;\n    constructor(fields?: Partial<IflytekXinghuoChatInput> & BaseChatModelParams);\n    /**\n     * Get the identifying parameters for the model\n     */\n    identifyingParams(): {\n        temperature?: number | undefined;\n        max_tokens?: number | undefined;\n        top_k?: number | undefined;\n        chat_id?: string | undefined;\n        version: string;\n        streaming: boolean;\n    };\n    /**\n     * Get the parameters used to invoke the model\n     */\n    invocationParams(): Omit<ChatCompletionRequest, \"messages\"> & {\n        streaming: boolean;\n    };\n    /**\n     * Method that retrieves the auth websocketStream for making requests to the Iflytek Xinghuo API.\n     * @returns The auth websocketStream for making requests to the Iflytek Xinghuo API.\n     */\n    abstract openWebSocketStream<T extends BaseWebSocketStream<string>>(options: WebSocketStreamOptions): Promise<T>;\n    /**\n     * Calls the Xinghuo API completion.\n     * @param request The request to send to the Xinghuo API.\n     * @param signal The signal for the API call.\n     * @returns The response from the Xinghuo API.\n     */\n    completion(request: ChatCompletionRequest, stream: true, signal?: AbortSignal): Promise<IterableReadableStream<string>>;\n    completion(request: ChatCompletionRequest, stream: false, signal?: AbortSignal): Promise<ChatCompletionResponse>;\n    _generate(messages: BaseMessage[], options: this[\"ParsedCallOptions\"], runManager?: CallbackManagerForLLMRun | undefined): Promise<ChatResult>;\n    /** @ignore */\n    _combineLLMOutput(): Record<string, any> | undefined;\n    _llmType(): string;\n}\nexport {};\n//# sourceMappingURL=common.d.ts.map"],"mappings":";;;;;;;;;;;AASA;AAIUS,KAJED,kBAAAA,GAIY,WACdA,GAAAA,MAAkB;AAAA;AAuC3B;AAI+B;AAmDhC,UA/FUC,cAAAA,CA+FoBK;EAqBGD,IAAAA,EAnHvBL,kBAmHuBK;EAARG,OAAAA,EAAAA,MAAAA;;;;;UA7GfN,qBAAAA,CAmIuEH;EAAiCQ,QAAAA,EAlIpGN,cAkIoGM,EAAAA;EAARG,WAAAA,CAAAA,EAAAA,MAAAA;EAOlFR,UAAAA,CAAAA,EAAAA,MAAAA;EAA8CS,KAAAA,CAAAA,EAAAA,MAAAA;EAAsBhB,OAAAA,CAAAA,EAAAA,MAAAA;;;;;UArGlFS,sBAAAA;;;;;;;;kBAQQC,uBAAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA2CYC,sBAAAA,SAA+BV,aAAAA,YAAyBS;;;;;;;;;;;;;;;;;;;;;uBAqB7DG,QAAQH,2BAA2BR;;;;;;;;;;;;;;;sBAepCY,KAAKP;;;;;;;yCAOcJ,sCAAsCC,yBAAyBW,QAAQH;;;;;;;sBAO1FL,8CAA8CS,cAAcD,QAAQf;sBACpEO,+CAA+CS,cAAcD,QAAQN;sBACrEX,gEAAgED,uCAAuCkB,QAAQhB;;uBAE9GkB"}