UNPKG

@juspay/neurolink

Version:

Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio

110 lines (109 loc) 3.69 kB
/** * Image Generation Tools * * Tool definitions for AI model use - enables AI models to generate * images as part of their response workflow. * * @packageDocumentation * @module @juspay/neurolink/image-gen * @category ImageGeneration * * @example * ```typescript * import { getImageGenTools } from '@juspay/neurolink'; * * // Get tools for AI model registration * const tools = getImageGenTools(); * * // Use with NeuroLink * const neurolink = new NeuroLink(); * neurolink.registerCustomTools(tools); * ``` */ import { ImageGenService } from "./ImageGenService.js"; import type { ImageGenConfig, ImageGenToolDefinition } from "../types/index.js"; /** * Create an image generation tool for use with AI models * * This tool allows AI models to generate images based on text prompts. * It integrates with the ImageGenService for actual generation. * * @param service - ImageGenService instance to use * @returns Tool definition compatible with MCP/AI SDK * * @example * ```typescript * const service = new ImageGenService(); * const tool = createImageGenTool(service); * * // Tool can now be registered with NeuroLink * neurolink.registerTool(tool.name, { * description: tool.description, * parameters: tool.inputSchema, * execute: tool.execute * }); * ``` */ export declare function createImageGenTool(service: ImageGenService): ImageGenToolDefinition; /** * Create an image editing/variation tool for use with AI models * * This tool allows AI models to create variations of existing images * or edit images based on reference images and prompts. * * @param service - ImageGenService instance to use * @returns Tool definition compatible with MCP/AI SDK */ export declare function createImageVariationTool(service: ImageGenService): ImageGenToolDefinition; /** * Get all image generation tools as an array * * Creates a shared ImageGenService instance and returns all * image generation tools configured to use it. * * @param config - Optional configuration for the ImageGenService * @returns Array of tool definitions * * @example * ```typescript * import { getImageGenTools, NeuroLink } from '@juspay/neurolink'; * * const tools = getImageGenTools({ * defaultProvider: 'openai', * defaultModel: 'dall-e-3' * }); * * const neurolink = new NeuroLink(); * for (const tool of tools) { * neurolink.registerTool(tool.name, { * description: tool.description, * parameters: tool.inputSchema, * execute: tool.execute * }); * } * ``` */ export declare function getImageGenTools(configOrService?: Partial<ImageGenConfig> | ImageGenService): ImageGenToolDefinition[]; /** * Get only the basic image generation tool * * @param config - Optional configuration for the ImageGenService * @returns Single tool definition for basic image generation */ export declare function getBasicImageGenTool(configOrService?: Partial<ImageGenConfig> | ImageGenService): ImageGenToolDefinition; /** * Create a custom image generation tool with specific service configuration * * @param serviceConfig - Configuration for the ImageGenService * @param toolConfig - Optional customizations for the tool definition * @returns Customized tool definition * * @example * ```typescript * const customTool = createCustomImageGenTool( * { defaultProvider: 'vertex', defaultModel: 'imagen-3.0-generate-001' }, * { name: 'vertex_generate_image', description: 'Generate images using Vertex AI Imagen' } * ); * ``` */ export declare function createCustomImageGenTool(serviceConfig?: Partial<ImageGenConfig>, toolConfig?: Partial<Pick<ImageGenToolDefinition, "name" | "description">>): ImageGenToolDefinition;