import { validateConfigPath, validateInputPath, validateOutputPath } from 'openapi-zod-ts/config-core'; export { validateConfigPath, validateInputPath, validateOutputPath }; export interface ServerConfig { /** Path to the OpenAPI 3.1 spec file (JSON or YAML) */ input_openapi: string; /** Directory to write generated files */ output: string; /** Framework to generate a router for. Default: 'none' */ framework?: 'hono' | 'express' | 'fastify' | 'none'; /** Path to user-owned Zod schema file (same file as openapi-zod-ts's input_schema). Optional. */ input_schema?: string; /** * Optional TypeScript type name for a caller context threaded through every service method. * When set, the generated interface becomes `XService` and each method * receives a final `ctx: Ctx` argument. The generated router passes the framework's * native request/context object (Hono: c, Express: req, Fastify: req) as ctx. * * Example: `"context_type": "RequestContext"` */ context_type?: string; /** * Fastify only. When true, the generated router emits inline Zod response schema * expressions in schema.response for operations with flat inline response schemas. * Operations with $ref, allOf, oneOf, anyOf, or nested schemas fall back to z.unknown(). * * Default: false. For best coverage, wire input_schema with your Zod schema file and let * the generator use the exact schemas you own. */ emit_response_validation?: boolean; /** * Override the directory where the shared runtime folder (`_shared/`) is written. * When omitted, the generator derives the shared location automatically: * for a single project the output dir itself is used, so shared = `/_shared/`. * For multiple projects, the longest common parent directory of all output paths is used, * so shared = `/_shared/`. * * Use this override when your output dirs share no common parent or when you want * to consolidate the shared runtime at a specific location. */ shared_output?: string; } export declare function loadConfig(cwd: string, configPath?: string): Promise; /** * Load a config file and return all configs as a normalized array. * * Single-spec config: returns a one-element array. * Multi-spec config with "projects" key: returns N-element array. */ export declare function loadConfigs(cwd: string, configPath?: string): Promise; //# sourceMappingURL=config.d.ts.map