import type * as Cohere from "../../../api/index";
import * as core from "../../../core";
import type * as serializers from "../../index";
import { ChatConnector } from "../../types/ChatConnector";
import { ChatDocument } from "../../types/ChatDocument";
import { ChatRequestCitationQuality } from "../../types/ChatRequestCitationQuality";
import { ChatRequestPromptTruncation } from "../../types/ChatRequestPromptTruncation";
import { ChatRequestSafetyMode } from "../../types/ChatRequestSafetyMode";
import { Message } from "../../types/Message";
import { ResponseFormat } from "../../types/ResponseFormat";
import { Tool } from "../../types/Tool";
import { ToolResult } from "../../types/ToolResult";
export declare const ChatRequest: core.serialization.Schema<serializers.ChatRequest.Raw, Omit<Cohere.ChatRequest, "accepts">>;
export declare namespace ChatRequest {
    interface Raw {
        message: string;
        model?: string | null;
        preamble?: string | null;
        chat_history?: Message.Raw[] | null;
        conversation_id?: string | null;
        prompt_truncation?: ChatRequestPromptTruncation.Raw | null;
        connectors?: ChatConnector.Raw[] | null;
        search_queries_only?: boolean | null;
        documents?: ChatDocument.Raw[] | null;
        citation_quality?: ChatRequestCitationQuality.Raw | null;
        temperature?: number | null;
        max_tokens?: number | null;
        max_input_tokens?: number | null;
        k?: number | null;
        p?: number | null;
        seed?: number | null;
        stop_sequences?: string[] | null;
        frequency_penalty?: number | null;
        presence_penalty?: number | null;
        raw_prompting?: boolean | null;
        tools?: Tool.Raw[] | null;
        tool_results?: ToolResult.Raw[] | null;
        force_single_step?: boolean | null;
        response_format?: ResponseFormat.Raw | null;
        safety_mode?: ChatRequestSafetyMode.Raw | null;
    }
}
