export enum ToolType { REST_API = 'REST_API', CLI = 'CLI', DATABASE = 'DATABASE', CUSTOM = 'CUSTOM', UTILITY = 'UTILITY', CALCULATOR = 'CALCULATOR', CONVERTER = 'CONVERTER' } export enum ParameterType { STRING = 'str', INTEGER = 'int', FLOAT = 'float', BOOLEAN = 'bool', LIST = 'list', DICTIONARY = 'dict' } export interface ParameterDefinition { id: string; name: string; type: ParameterType; description: string; required: boolean; } export interface FunctionDefinition { id: string; name: string; description: string; parameters: ParameterDefinition[]; returnType: ParameterType; returnDescription: string; } export interface ToolDefinition { name: string; type: ToolType; dependencies: string; functions: FunctionDefinition[]; } export interface GeneratedCode { setupPy: string; serverPy: string; settingsJson: string; geminiMd: string; examplesMd: string; } // Экспортируем для использования в AI промпте export const initialFunctionForPrompt: Omit = { name: 'example_function', description: 'Краткое описание того, что делает эта функция.', parameters: [ { id: 'param-id-1', // id здесь для примера, в реальности он генерируется name: 'example_param', type: ParameterType.STRING, description: 'Описание параметра.', required: true, }, ], returnType: ParameterType.STRING, returnDescription: 'Описание возвращаемого значения.', };