/** * Agent Spec Default Node Types * * Provides optional starter node type definitions for the Agent Spec format. * These are full NodeMetadata objects with visual type, category, default ports, * config schema, and icon — suitable for populating the sidebar. * * These definitions are NOT required by the adapter — the adapter uses * componentTypeDefaults.ts for import/export infrastructure. * Users can provide their own node definitions instead. * * @example * ```typescript * import { getDefaultAgentSpecNodeTypes } from '@flowdrop/flowdrop/core'; * * mountFlowDropApp(container, { * nodes: getDefaultAgentSpecNodeTypes(), // or your own definitions * }); * ``` */ import type { NodeMetadata, NodePort } from '../../types/index.js'; import type { AgentSpecNodeComponentType } from '../../types/agentspec.js'; /** * Get FlowDrop NodeMetadata for an Agent Spec component type. * * @param componentType - The Agent Spec component_type value * @returns NodeMetadata for the component type, or undefined if not found * * @example * ```typescript * const metadata = getAgentSpecNodeMetadata('llm_node'); * // Returns NodeMetadata with id='agentspec.llm_node', type='default', category='ai', etc. * ``` */ export declare function getAgentSpecNodeMetadata(componentType: AgentSpecNodeComponentType): NodeMetadata | undefined; /** * Get all default Agent Spec node types as FlowDrop NodeMetadata. * These are starter templates — users can provide their own node types instead. * * @returns Array of NodeMetadata for all 9 default Agent Spec node types */ export declare function getDefaultAgentSpecNodeTypes(): NodeMetadata[]; /** * Get a copy of the NodeMetadata for a component type with custom inputs/outputs. * Used during import to create node metadata that matches the Agent Spec definition's * actual ports rather than the defaults. * * @param componentType - The Agent Spec component_type value * @param inputs - Custom input ports * @param outputs - Custom output ports * @returns A new NodeMetadata with the custom ports merged in */ export declare function createAgentSpecNodeMetadata(componentType: AgentSpecNodeComponentType, inputs?: NodePort[], outputs?: NodePort[]): NodeMetadata | undefined;