import { EventStream } from "../lib/event-streams.js";
import { ClientSDK, RequestOptions } from "../lib/sdks.js";
import * as components from "../models/components/index.js";
import * as operations from "../models/operations/index.js";
export declare class Conversations extends ClientSDK {
    /**
     * List conversations
     *
     * @remarks
     * Retrieves a paginated list of conversations in your workspace. Conversations are returned sorted by creation date (newest first). Use pagination parameters to efficiently navigate through large collections.
     */
    list(limit?: number | undefined, startingAfter?: string | undefined, endingBefore?: string | undefined, entityId?: string | undefined, options?: RequestOptions): Promise<operations.ListConversationsResponseBody>;
    /**
     * Create conversation
     *
     * @remarks
     * Creates a new conversation in the workspace. Conversations serve as containers for organizing related messages and interactions. Each conversation is assigned a unique identifier and timestamps for tracking.
     */
    create(request: operations.CreateConversationRequestBody, options?: RequestOptions): Promise<operations.CreateConversationResponseBody>;
    /**
     * Generate conversation name
     *
     * @remarks
     * Generates a display name for a conversation using AI based on the provided context. Updates the conversation with the generated name and sets generatingTitle to false.
     */
    generateName(requestBody: operations.GenerateConversationNameRequestBody, conversationId: string, options?: RequestOptions): Promise<operations.GenerateConversationNameResponseBody>;
    /**
     * Retrieve conversation
     *
     * @remarks
     * Retrieves detailed information about a specific conversation identified by its unique ID. Returns the complete conversation object including metadata and timestamps.
     */
    retrieve(conversationId: string, options?: RequestOptions): Promise<components.ConversationWithMessagesResponse>;
    /**
     * Update conversation
     *
     * @remarks
     * Modifies an existing conversation's properties. Only the fields provided in the request body will be updated; all other fields remain unchanged. Changes are applied immediately.
     */
    update(requestBody: operations.UpdateConversationRequestBody, conversationId: string, options?: RequestOptions): Promise<operations.UpdateConversationResponseBody>;
    /**
     * Delete conversation
     *
     * @remarks
     * Permanently removes a conversation from the workspace
     */
    delete(conversationId: string, options?: RequestOptions): Promise<void>;
    /**
     * Create internal response
     *
     * @remarks
     * Creates a response for a freeform conversation without an agent. Uses a default model for generation.
     */
    createConversationResponse(request: operations.CreateConversationResponseRequest, options?: RequestOptions): Promise<EventStream<operations.CreateConversationResponseResponseBody>>;
}
//# sourceMappingURL=conversations.d.ts.map