export declare enum XemaCapabilityInvocationKind { Http = "http", Connector = "connector", Workflow = "workflow", Mcp = "mcp", Inline = "inline" } export declare enum XemaCapabilityHttpMethod { Get = "GET", Post = "POST", Put = "PUT", Patch = "PATCH", Delete = "DELETE" } export declare enum XemaCapabilityHttpParameterIn { Path = "path", Query = "query", Header = "header" } export declare enum XemaCapabilityHttpBodyMode { WholeInput = "whole-input", InputPointer = "input-pointer" } export interface XemaCapabilityHttpParameterSpec { readonly name: string; readonly in: XemaCapabilityHttpParameterIn; readonly inputPointer: string; readonly required: boolean; } export interface XemaCapabilityHttpBodySpec { readonly mode: XemaCapabilityHttpBodyMode; readonly inputPointer?: string; } export interface XemaHttpCapabilityInvocationSpec { readonly kind: XemaCapabilityInvocationKind.Http; readonly serviceName?: string; readonly method: XemaCapabilityHttpMethod; readonly path: string; readonly parameters?: readonly XemaCapabilityHttpParameterSpec[]; readonly body?: XemaCapabilityHttpBodySpec; } export interface XemaConnectorCapabilityInvocationSpec { readonly kind: XemaCapabilityInvocationKind.Connector; readonly connectorKey: string; readonly operationKey: string; readonly adapterKind: string; } export interface XemaWorkflowCapabilityInvocationSpec { readonly kind: XemaCapabilityInvocationKind.Workflow; readonly workflowSlug: string; } export interface XemaMcpCapabilityInvocationSpec { readonly kind: XemaCapabilityInvocationKind.Mcp; readonly serverId: string; readonly toolName: string; } export interface XemaInlineCapabilityInvocationSpec { readonly kind: XemaCapabilityInvocationKind.Inline; readonly handlerKey: string; } export type XemaCapabilityInvocationSpec = XemaHttpCapabilityInvocationSpec | XemaConnectorCapabilityInvocationSpec | XemaWorkflowCapabilityInvocationSpec | XemaMcpCapabilityInvocationSpec | XemaInlineCapabilityInvocationSpec; export type XemaResolvedCapabilityInvocation = (Omit & { readonly serviceName: string; readonly parameters: readonly XemaCapabilityHttpParameterSpec[]; }) | XemaConnectorCapabilityInvocationSpec | XemaWorkflowCapabilityInvocationSpec | XemaMcpCapabilityInvocationSpec | XemaInlineCapabilityInvocationSpec; export declare function deriveHttpInvocationFromRoute(args: { readonly serviceName: string; readonly controllerPath: string | undefined; readonly methodPath: string | undefined; readonly httpVerb: string | undefined; }): XemaResolvedCapabilityInvocation | undefined; export declare function resolveAuthoredInvocation(spec: XemaCapabilityInvocationSpec, ownServiceName: string): XemaResolvedCapabilityInvocation; //# sourceMappingURL=capability-invocation.d.ts.map