// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../core/resource'; import * as ToolsAPI from '../tools'; import * as MessagesAPI from '../agents/messages'; import { ArrayPage, type ArrayPageParams, PagePromise } from '../../core/pagination'; import { RequestOptions } from '../../internal/request-options'; import { path } from '../../internal/utils/path'; export class Messages extends APIResource { /** * List messages for a given step. */ list( stepID: string, query: MessageListParams | null | undefined = {}, options?: RequestOptions, ): PagePromise { return this._client.getAPIList(path`/v1/steps/${stepID}/messages`, ArrayPage, { query, ...options, }); } } export type MessageListResponsesArrayPage = ArrayPage; /** * A message generated by the system. Never streamed back on a response, only used * for cursor pagination. * * Args: id (str): The ID of the message date (datetime): The date the message was * created in ISO format name (Optional[str]): The name of the sender of the * message content (str): The message content sent by the system */ export type MessageListResponse = | MessagesAPI.SystemMessage | MessagesAPI.UserMessage | MessagesAPI.ReasoningMessage | MessagesAPI.HiddenReasoningMessage | MessagesAPI.ToolCallMessage | ToolsAPI.ToolReturnMessage | MessagesAPI.AssistantMessage | MessagesAPI.ApprovalRequestMessage | MessagesAPI.ApprovalResponseMessage | MessagesAPI.SummaryMessage | MessagesAPI.EventMessage; export interface MessageListParams extends ArrayPageParams {} export declare namespace Messages { export { type MessageListResponse as MessageListResponse, type MessageListResponsesArrayPage as MessageListResponsesArrayPage, type MessageListParams as MessageListParams, }; }