import type { ModuleNode } from "@supacloud/compiler"; export interface AppManifest { version: number; modules: ModuleNode[]; externalTokens: string[]; } export interface ToolSchemaProperty { type: string; description: string; additionalProperties?: boolean; } export interface ToolInputSchema { type: "object"; properties: Record; required: string[]; additionalProperties?: boolean; } export interface OpenAIToolDefinition { type: "function"; function: { name: string; description: string; parameters: ToolInputSchema; }; } export interface McpToolDefinition { name: string; description: string; inputSchema: ToolInputSchema; annotations: { readOnly: boolean; audited: boolean; permission: string; httpPath?: string; httpMethod?: string; }; } export interface ExportedToolDefinitions { openai: OpenAIToolDefinition[]; mcp: McpToolDefinition[]; } export declare function buildToolDefinitions(manifest: AppManifest): ExportedToolDefinitions;