/** * @license * Copyright 2024 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { Content, GenerateContentResult, GenerateContentStreamResult, Part, RequestOptions, SingleRequestOptions, StartChatParams, StartTemplateChatParams } from '../types'; import { ApiSettings } from '../types/internal'; /** * ChatSession class that enables sending chat messages and stores * history of sent and received messages so far. * * @public */ export declare class ChatSessionBase { params?: ParamsType | undefined; requestOptions?: RequestOptions | undefined; protected _history: Content[]; protected _sendPromise: Promise; constructor(params?: ParamsType | undefined, requestOptions?: RequestOptions | undefined); /** * Gets the chat history so far. Blocked prompts are not added to history. * Neither blocked candidates nor the prompts that generated them are added * to history. */ getHistory(): Promise; } /** * ChatSession class that enables sending chat messages and stores * history of sent and received messages so far. * * @public */ export declare class ChatSession extends ChatSessionBase { model: string; params?: StartChatParams | undefined; requestOptions?: RequestOptions | undefined; private _apiSettings; constructor(apiSettings: ApiSettings, model: string, params?: StartChatParams | undefined, requestOptions?: RequestOptions | undefined); /** * Sends a chat message and receives a non-streaming * {@link GenerateContentResult} */ sendMessage(request: string | Array, singleRequestOptions?: SingleRequestOptions): Promise; /** * Sends a chat message and receives the response as a * {@link GenerateContentStreamResult} containing an iterable stream * and a response promise. */ sendMessageStream(request: string | Array, singleRequestOptions?: SingleRequestOptions): Promise; } /** * ChatSession class for server-side templates that enables sending chat * messages and stores history of sent and received messages so far. * * @beta */ export declare class TemplateChatSession extends ChatSessionBase { params: StartTemplateChatParams; requestOptions?: RequestOptions | undefined; private _apiSettings; constructor(apiSettings: ApiSettings, params: StartTemplateChatParams, requestOptions?: RequestOptions | undefined); /** * Sends a chat message and receives a non-streaming * {@link GenerateContentResult} */ sendMessage(request: string | Array, singleRequestOptions?: SingleRequestOptions): Promise; /** * Sends a chat message and receives the response as a * {@link GenerateContentStreamResult} containing an iterable stream * and a response promise. */ sendMessageStream(request: string | Array, singleRequestOptions?: SingleRequestOptions): Promise; private _buildTemplateChatRequest; } //# sourceMappingURL=chat-session.d.ts.map