UNPKG

agents

Version:

A home for your AI agents

102 lines (100 loc) 3.49 kB
import { D as ChannelInboundMessage, F as ChannelMessageSurface, U as UserIdentity, V as ChannelIdentity, a as ChannelApprovalRequestOptions, d as ChannelRoute, h as DeliveryResult, j as ChannelIngressEvent, l as ChannelDeliveryOptions, n as Channel, p as ChannelStreamOptions, s as ChannelChunkSource, u as ChannelMessage, w as ChannelEmailInput, y as ChannelApprovalResponse } from "./channel-Bnm4S7T2.js"; //#region src/channels/host/index.d.ts type ChannelMessageEvent = { channelKey: string; route: string /** Stable identity derived only from the configured Channel and eventId. */; dispatchId: string; message: ChannelInboundMessage; }; type ChannelApprovalResponseEvent = { channelKey: string; route: string /** Stable identity derived only from the configured Channel and eventId. */; dispatchId: string; response: ChannelApprovalResponse; }; type ChannelRouteEvent = { channelKey: string; event: ChannelIngressEvent; route: | string | null /** Stable identity derived only from the configured Channel and eventId. */; dispatchId: string; }; type ChannelHostOptions = { channels: Record< string, Channel > /** Used when a Channel does not provide a route. Default: event thread id. */; defaultRoute?: ChannelRoute /** Resolve an existing, explicitly linked application user. */; findUser?( identity: ChannelIdentity ): Promise<UserIdentity | null> /** Observes every valid route outcome before application dispatch. */; onRoute?(event: ChannelRouteEvent): void | Promise<void>; onMessage?(event: ChannelMessageEvent): void | Promise<void>; onApprovalResponse?( event: ChannelApprovalResponseEvent ): void | Promise<void>; }; /** * Authenticates and normalizes ingress through configured Channel adapters, * resolves outbound surfaces, and awaits the application's durable handoff. */ declare class ChannelHost { #private; constructor(options: ChannelHostOptions); handleRequest(request: Request): Promise<Response | undefined>; handleEmail(email: ChannelEmailInput): Promise<boolean>; /** Deliver through the configured Channel or composite named by the surface. */ deliver( surface: ChannelMessageSurface, message: ChannelMessage, options?: ChannelDeliveryOptions ): Promise<DeliveryResult>; /** * Deliver a progressively generated answer to the Channel or composite * named by the surface. * * A Channel that can stream consumes the stream itself. A Channel that * cannot never learns it was a stream, because the Host collects the answer * and calls `deliver` once. */ stream( surface: ChannelMessageSurface, chunks: ChannelChunkSource, options?: ChannelStreamOptions ): Promise<DeliveryResult>; /** Request approval through the Channel or composite named by the surface. */ requestApproval( surface: ChannelMessageSurface, options: ChannelApprovalRequestOptions ): Promise<DeliveryResult>; /** Return the identity's configured Channel destination, when supported. */ contactSurface(identity: ChannelIdentity): ChannelMessageSurface | null; /** Resolve whether a surface can currently be selected without delivery. */ isAvailable(surface: ChannelMessageSurface): Promise<boolean>; } //#endregion export { ChannelRouteEvent as a, ChannelMessageEvent as i, ChannelHost as n, ChannelHostOptions as r, ChannelApprovalResponseEvent as t }; //# sourceMappingURL=index-BB0kqhIz.d.ts.map