import type { AgentProfile, AgentTriggers, DefinedAgent, JsonObject, ModelProvider, SandboxBackend, Schema, Skill, ToolDef } from '@fabric-harness/sdk'; import type { CapabilityPolicy, CostLimit, ApprovalOptions } from '@fabric-harness/sdk'; import type { TemporalClientHandle } from './client.js'; export interface TemporalBundleConfig { /** Temporal frontend address, e.g. `localhost:7233`. */ address?: string; /** Task queue name. */ taskQueue?: string; /** Temporal namespace. */ namespace?: string; /** Default model name for the returned model provider. */ model?: string; /** Optional workflow ID prefix. */ workflowIdPrefix?: string; /** Optional prompt workflow mode. */ promptWorkflowMode?: 'coarse' | 'hybrid'; /** Optional API key for Temporal Cloud. */ apiKey?: string; /** Optional TLS configuration. */ tls?: { enabled?: boolean; serverNameOverride?: string; serverRootCACertificate?: string; serverRootCACertificatePath?: string; clientCert?: string; clientKey?: string; clientCertPath?: string; clientKeyPath?: string; }; /** Extra tools to include in the bundle. */ tools?: ToolDef[]; /** Optional session store. */ store?: import('@fabric-harness/sdk').SessionStore; } export interface TemporalBundle { modelProvider: ModelProvider; tools: ToolDef[]; policy: import('@fabric-harness/sdk').CapabilityPolicy; store?: import('@fabric-harness/sdk').SessionStore; client: TemporalClientHandle; } export interface DefineTemporalAgentOptions { name?: string; description?: string; instructions?: string; input?: Schema; output?: Schema; model?: string; skills?: Skill[]; tools?: ToolDef[] | string[]; sandbox?: SandboxBackend; modelProvider?: ModelProvider; triggers?: AgentTriggers; target?: 'node' | 'temporal-worker'; /** Optional Temporal bundle configuration (for env-driven usage). */ temporal?: TemporalBundleConfig; profile?: AgentProfile; policy?: CapabilityPolicy; costBudget?: CostLimit; approvals?: ApprovalOptions; } export declare function defineTemporalAgent(options?: DefineTemporalAgentOptions): DefinedAgent; export declare function resolveToolRefs(bundle: TemporalBundle, refs: string[]): ToolDef[]; export declare function temporal(config: TemporalBundleConfig): Promise; //# sourceMappingURL=agent.d.ts.map