UNPKG

@firefliesai/schema-forge

Version:

Transform TypeScript classes into JSON Schema definitions with automatic support for OpenAI, Anthropic, and Google Gemini function calling (tool) formats

41 lines (40 loc) 3.55 kB
/** * Schema Forge - TypeScript to JSON Schema conversion * * Main exports for schema-forge library */ export * from './types'; export { classToJsonSchema } from './core'; export { addSchemaProperty, ToolMeta, ToolProp, updateSchemaProperty } from './decorators'; export { classToAnthropicTool, classToGeminiOldResponseSchema, classToGeminiOldTool, classToGeminiResponseSchema, classToGeminiTool, classToGeminiVertexResponseSchema, classToGeminiVertexTool, classToOpenAIResponseApiTextSchema, classToOpenAIResponseApiTool, classToOpenAIResponseFormatJsonSchema, classToOpenAITool, jsonSchemaToAnthropicTool, jsonSchemaToGeminiOldResponseSchema, jsonSchemaToGeminiOldTool, jsonSchemaToGeminiResponseSchema, jsonSchemaToGeminiTool, jsonSchemaToGeminiVertexResponseSchema, jsonSchemaToGeminiVertexTool, jsonSchemaToOpenAIResponseApiTextSchema, jsonSchemaToOpenAIResponseApiTool, jsonSchemaToOpenAIResponseFormat, jsonSchemaToOpenAITool, openAIResponseApiToolToJsonSchema, openAIToolToJsonSchema, } from './llm-formats'; export { prepareForOpenAIStructuredOutput } from './utils'; export { classToOpenAITool as classToLLMTool } from './llm-formats'; import { classToJsonSchema } from './core'; import { addSchemaProperty, ToolMeta, ToolProp, updateSchemaProperty } from './decorators'; import { classToAnthropicTool, classToGeminiResponseSchema, classToGeminiTool, classToOpenAIResponseApiTextSchema, classToOpenAIResponseApiTool, classToOpenAIResponseFormatJsonSchema, classToOpenAITool, jsonSchemaToAnthropicTool, jsonSchemaToGeminiResponseSchema, jsonSchemaToGeminiTool, jsonSchemaToOpenAIResponseApiTextSchema, jsonSchemaToOpenAIResponseApiTool, jsonSchemaToOpenAIResponseFormat, jsonSchemaToOpenAITool, openAIResponseApiToolToJsonSchema, openAIToolToJsonSchema } from './llm-formats'; import { prepareForOpenAIStructuredOutput } from './utils'; export declare const Schema: { readonly ToolMeta: typeof ToolMeta; readonly ToolProp: typeof ToolProp; readonly classToJsonSchema: typeof classToJsonSchema; readonly prepareForOpenAIStructuredOutput: typeof prepareForOpenAIStructuredOutput; readonly updateSchemaProperty: typeof updateSchemaProperty; readonly addSchemaProperty: typeof addSchemaProperty; readonly classToOpenAITool: typeof classToOpenAITool; readonly classToOpenAIResponseFormatJsonSchema: typeof classToOpenAIResponseFormatJsonSchema; readonly classToOpenAIResponseApiTool: typeof classToOpenAIResponseApiTool; readonly classToOpenAIResponseApiTextSchema: typeof classToOpenAIResponseApiTextSchema; readonly classToGeminiTool: typeof classToGeminiTool; readonly classToGeminiResponseSchema: typeof classToGeminiResponseSchema; readonly classToAnthropicTool: typeof classToAnthropicTool; readonly jsonSchemaToOpenAITool: typeof jsonSchemaToOpenAITool; readonly jsonSchemaToOpenAIResponseFormat: typeof jsonSchemaToOpenAIResponseFormat; readonly jsonSchemaToOpenAIResponseApiTool: typeof jsonSchemaToOpenAIResponseApiTool; readonly jsonSchemaToOpenAIResponseApiTextSchema: typeof jsonSchemaToOpenAIResponseApiTextSchema; readonly jsonSchemaToGeminiTool: typeof jsonSchemaToGeminiTool; readonly jsonSchemaToGeminiResponseSchema: typeof jsonSchemaToGeminiResponseSchema; readonly jsonSchemaToAnthropicTool: typeof jsonSchemaToAnthropicTool; readonly openAIToolToJsonSchema: typeof openAIToolToJsonSchema; readonly openAIResponseApiToolToJsonSchema: typeof openAIResponseApiToolToJsonSchema; readonly classToLLMTool: typeof classToOpenAITool; };