import { ACPAgent, type ACPAgentProps, type ACPAgentSourceFile } from "../acp-agent.js"; import type { RipplingSDK } from "../../../client.js"; import type { RequestOptions } from "../../../internal/request-options.js"; import type { SessionCreateParams, SessionListParams, SessionCreateResponse, SessionListResponse, SessionListResponsesPageCursorURL } from "../../../resources/agents/sessions/sessions.js"; import type { AgentRetrieveResponse } from "../../../resources/agents/agents.js"; import type { APIPromise } from "../../../core/api-promise.js"; import type { PagePromise } from "../../../core/pagination.js"; export type DefinedAgentProps = { apiName: `${string}__c`; } & ((ACPAgentProps & { source?: never; }) | (Omit & { source: URL; files?: never; entrypoint?: never; })); /** Authenticated agent resources supplied per call. */ export interface AgentOperationsContext { readonly agents: { readonly retrieve: RipplingSDK['agents']['retrieve']; readonly sessions: Pick; }; } export interface AgentSessions { create(ctx: AgentOperationsContext, params: Omit, options?: RequestOptions): APIPromise; list(ctx: AgentOperationsContext, params?: SessionListParams, options?: RequestOptions): PagePromise; } export interface AgentOperations { retrieve(ctx: AgentOperationsContext, options?: RequestOptions): APIPromise; sessions: AgentSessions; } export interface AgentClient { retrieve(options?: RequestOptions): APIPromise; sessions: { create(params: Omit, options?: RequestOptions): APIPromise; list(params?: SessionListParams, options?: RequestOptions): PagePromise; }; } export declare function defineAgent(props: DefinedAgentProps): DefinedAgent; export declare class DefinedAgent extends ACPAgent { private _source; readonly retrieve: (ctx: AgentOperationsContext, options?: RequestOptions) => APIPromise; readonly sessions: AgentSessions; constructor(props: DefinedAgentProps); get source(): URL | undefined; /** Replaces inline files or a file-backed source with the supplied files and entrypoint. */ setSource(files: ACPAgentSourceFile[], entrypoint: string): this; } /** @internal Forward client helpers to the definition operations. */ export declare function createAgentClient(ctx: AgentOperationsContext, definition: ACPAgent): AgentClient; //# sourceMappingURL=agent.d.ts.map