@samchon/openapi
Version:
OpenAPI definitions and converters for 'typia' and 'nestia'.
226 lines (225 loc) • 11 kB
text/typescript
import { IChatGptSchema } from "../structures/IChatGptSchema";
import { IClaudeSchema } from "../structures/IClaudeSchema";
import { IDeepSeekSchema } from "../structures/IDeepSeekSchema";
import { IGeminiSchema } from "../structures/IGeminiSchema";
import { ILlamaSchema } from "../structures/ILlamaSchema";
import { ILlmSchema } from "../structures/ILlmSchema";
import { ILlmSchemaV3 } from "../structures/ILlmSchemaV3";
import { ILlmSchemaV3_1 } from "../structures/ILlmSchemaV3_1";
import { ChatGptTypeChecker } from "../utils/ChatGptTypeChecker";
import { ClaudeTypeChecker } from "../utils/ClaudeTypeChecker";
import { GeminiTypeChecker } from "../utils/GeminiTypeChecker";
import { LlmTypeCheckerV3 } from "../utils/LlmTypeCheckerV3";
export declare namespace LlmSchemaComposer {
const parameters: <Model extends ILlmSchema.Model>(model: Model) => {
chatgpt: (props: {
config: IChatGptSchema.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema.IObject | import("..").OpenApi.IJsonSchema.IReference;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IChatGptSchema.IParameters, import("..").IOpenApiSchemaError>;
claude: (props: {
config: IClaudeSchema.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema.IObject | import("..").OpenApi.IJsonSchema.IReference;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IClaudeSchema.IParameters, import("..").IOpenApiSchemaError>;
deepseek: (props: {
config: IDeepSeekSchema.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema.IObject | import("..").OpenApi.IJsonSchema.IReference;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IDeepSeekSchema.IParameters, import("..").IOpenApiSchemaError>;
gemini: (props: {
config: IGeminiSchema.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema.IObject | import("..").OpenApi.IJsonSchema.IReference;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IGeminiSchema.IParameters, import("..").IOpenApiSchemaError>;
llama: (props: {
config: ILlamaSchema.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema.IObject | import("..").OpenApi.IJsonSchema.IReference;
}) => import("..").IResult<ILlamaSchema.IParameters, import("..").IOpenApiSchemaError>;
"3.0": (props: {
config: ILlmSchemaV3.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema.IObject | import("..").OpenApi.IJsonSchema.IReference;
validate?: (schema: import("..").OpenApi.IJsonSchema, accessor: string) => import("..").IOpenApiSchemaError.IReason[];
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<ILlmSchemaV3.IParameters, import("..").IOpenApiSchemaError>;
"3.1": (props: {
config: ILlmSchemaV3_1.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema.IObject | import("..").OpenApi.IJsonSchema.IReference;
errors?: string[];
validate?: (input: import("..").OpenApi.IJsonSchema, accessor: string) => import("..").IOpenApiSchemaError.IReason[];
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<ILlmSchemaV3_1.IParameters, import("..").IOpenApiSchemaError>;
}[Model];
const schema: <Model extends ILlmSchema.Model>(model: Model) => {
chatgpt: (props: {
config: IChatGptSchema.IConfig;
components: import("..").OpenApi.IComponents;
$defs: Record<string, IChatGptSchema>;
schema: import("..").OpenApi.IJsonSchema;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IChatGptSchema, import("..").IOpenApiSchemaError>;
claude: (props: {
config: IClaudeSchema.IConfig;
components: import("..").OpenApi.IComponents;
$defs: Record<string, IClaudeSchema>;
schema: import("..").OpenApi.IJsonSchema;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IClaudeSchema, import("..").IOpenApiSchemaError>;
deepseek: (props: {
config: IDeepSeekSchema.IConfig;
components: import("..").OpenApi.IComponents;
$defs: Record<string, IDeepSeekSchema>;
schema: import("..").OpenApi.IJsonSchema;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IDeepSeekSchema, import("..").IOpenApiSchemaError>;
gemini: (props: {
config: IGeminiSchema.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema;
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<IGeminiSchema, import("..").IOpenApiSchemaError>;
llama: (props: {
config: ILlamaSchema.IConfig;
components: import("..").OpenApi.IComponents;
$defs: Record<string, ILlamaSchema>;
schema: import("..").OpenApi.IJsonSchema;
}) => import("..").IResult<ILlamaSchema, import("..").IOpenApiSchemaError>;
"3.0": (props: {
config: ILlmSchemaV3.IConfig;
components: import("..").OpenApi.IComponents;
schema: import("..").OpenApi.IJsonSchema;
validate?: (schema: import("..").OpenApi.IJsonSchema, accessor: string) => import("..").IOpenApiSchemaError.IReason[];
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<ILlmSchemaV3, import("..").IOpenApiSchemaError>;
"3.1": (props: {
config: ILlmSchemaV3_1.IConfig;
components: import("..").OpenApi.IComponents;
$defs: Record<string, ILlmSchemaV3_1>;
schema: import("..").OpenApi.IJsonSchema;
validate?: (input: import("..").OpenApi.IJsonSchema, accessor: string) => import("..").IOpenApiSchemaError.IReason[];
accessor?: string;
refAccessor?: string;
}) => import("..").IResult<ILlmSchemaV3_1, import("..").IOpenApiSchemaError>;
}[Model];
const defaultConfig: <Model extends ILlmSchema.Model>(model: Model) => {
chatgpt: {
reference: false;
strict: false;
};
claude: {
reference: false;
};
deepseek: {
reference: false;
};
gemini: {
recursive: number;
};
llama: {
reference: false;
};
"3.0": {
constraint: true;
recursive: number;
};
"3.1": {
constraint: true;
reference: false;
};
}[Model];
const typeChecker: <Model extends ILlmSchema.Model>(model: Model) => {
chatgpt: typeof ChatGptTypeChecker;
claude: typeof ClaudeTypeChecker;
deepseek: typeof ClaudeTypeChecker;
gemini: typeof GeminiTypeChecker;
llama: typeof ClaudeTypeChecker;
"3.0": typeof LlmTypeCheckerV3;
"3.1": typeof ClaudeTypeChecker;
}[Model];
const separateParameters: <Model extends ILlmSchema.Model>(model: Model) => {
chatgpt: (props: {
parameters: IChatGptSchema.IParameters;
predicate: (schema: IChatGptSchema) => boolean;
convention?: (key: string, type: "llm" | "human") => string;
}) => import("..").ILlmFunction.ISeparated<"chatgpt">;
claude: (props: {
parameters: IClaudeSchema.IParameters;
predicate: (schema: IClaudeSchema) => boolean;
convention?: (key: string, type: "llm" | "human") => string;
}) => import("..").ILlmFunction.ISeparated<"claude">;
deepseek: (props: {
parameters: IDeepSeekSchema.IParameters;
predicate: (schema: IDeepSeekSchema) => boolean;
convention?: (key: string, type: "llm" | "human") => string;
}) => import("..").ILlmFunction.ISeparated<"deepseek">;
gemini: (props: {
predicate: (schema: IGeminiSchema) => boolean;
parameters: IGeminiSchema.IParameters;
}) => import("..").ILlmFunction.ISeparated<"gemini">;
llama: (props: {
parameters: ILlamaSchema.IParameters;
predicate: (schema: ILlamaSchema) => boolean;
convention?: (key: string, type: "llm" | "human") => string;
}) => import("..").ILlmFunction.ISeparated<"llama">;
"3.0": (props: {
predicate: (schema: ILlmSchemaV3) => boolean;
parameters: ILlmSchemaV3.IParameters;
}) => import("..").ILlmFunction.ISeparated<"3.0">;
"3.1": (props: {
parameters: ILlmSchemaV3_1.IParameters;
predicate: (schema: ILlmSchemaV3_1) => boolean;
convention?: (key: string, type: "llm" | "human") => string;
}) => import("..").ILlmFunction.ISeparated<"3.1">;
}[Model];
const invert: <Model extends ILlmSchema.Model>(model: Model) => {
chatgpt: (props: {
components: import("..").OpenApi.IComponents;
schema: IChatGptSchema;
$defs: Record<string, IChatGptSchema>;
}) => import("..").OpenApi.IJsonSchema;
claude: (props: {
components: import("..").OpenApi.IComponents;
schema: IClaudeSchema;
$defs: Record<string, IClaudeSchema>;
}) => import("..").OpenApi.IJsonSchema;
deepseek: (props: {
components: import("..").OpenApi.IComponents;
schema: IDeepSeekSchema;
$defs: Record<string, IDeepSeekSchema>;
}) => import("..").OpenApi.IJsonSchema;
gemini: (props: {
schema: IGeminiSchema;
}) => import("..").OpenApi.IJsonSchema;
llama: (props: {
components: import("..").OpenApi.IComponents;
schema: ILlamaSchema;
$defs: Record<string, ILlamaSchema>;
}) => import("..").OpenApi.IJsonSchema;
"3.0": (props: {
schema: ILlmSchemaV3;
}) => import("..").OpenApi.IJsonSchema;
"3.1": (props: {
components: import("..").OpenApi.IComponents;
schema: ILlmSchemaV3_1;
$defs: Record<string, ILlmSchemaV3_1>;
}) => import("..").OpenApi.IJsonSchema;
}[Model];
}