import { Context, Layer } from "effect"; import type { Any as AnyAgent } from "../agent/agent-closure.js"; import type { AgentPin } from "../durable/pin.js"; /** One catalog entry. The catalog never provides a target's requirements; `HandoffRequirementsMissing` reports them. */ export interface HandoffTarget { readonly name: string; readonly agent: AnyAgent; readonly pin?: AgentPin; } export declare const target: { (pin?: AgentPin): (agent: AnyAgent) => HandoffTarget; (agent: AnyAgent, pin?: AgentPin): HandoffTarget; }; export interface HandoffCatalogInterface { readonly resolve: (name: string) => HandoffTarget | undefined; readonly targets: ReadonlyMap; } declare const HandoffCatalog_base: Context.ServiceClass; export declare class HandoffCatalog extends HandoffCatalog_base { } export declare const layerCatalog: (targets: ReadonlyArray) => Layer.Layer; export {};