import { AsyncAPIDocumentInterface } from '@asyncapi/parser'; import { GenericCodegenContext } from '../../types'; import { z } from 'zod'; import { OpenAPIV3, OpenAPIV2, OpenAPIV3_1 } from 'openapi-types'; import { JsonSchemaDocument } from '../../inputs/jsonschema'; export interface CustomContext extends GenericCodegenContext { inputType: 'asyncapi' | 'openapi' | 'jsonschema'; asyncapiDocument?: AsyncAPIDocumentInterface; openapiDocument?: OpenAPIV3.Document | OpenAPIV2.Document | OpenAPIV3_1.Document; jsonSchemaDocument?: JsonSchemaDocument; generator: CustomGenerator; } export declare const zodCustomGenerator: z.ZodObject<{ id: z.ZodDefault>; dependencies: z.ZodDefault>>; preset: z.ZodDefault>; options: z.ZodDefault>; outputPath: z.ZodDefault>; language: z.ZodDefault>>; renderFunction: z.ZodDefault>; asyncapiDocument: z.ZodAny; openapiDocument: z.ZodAny; jsonSchemaDocument: z.ZodAny; generator: z.ZodAny; dependencyOutputs: z.ZodDefault>; }, "strip", z.ZodTypeAny, { inputType: "asyncapi" | "openapi" | "jsonschema"; dependencyOutputs: Record; generator?: any; asyncapiDocument?: any; openapiDocument?: any; jsonSchemaDocument?: any; }, { inputType?: "asyncapi" | "openapi" | "jsonschema" | undefined; generator?: any; asyncapiDocument?: any; openapiDocument?: any; dependencyOutputs?: Record | undefined; jsonSchemaDocument?: any; }>>, z.ZodDefault>], z.ZodUnknown>, z.ZodAny>>>; }, "strip", z.ZodTypeAny, { preset: "custom"; id: string; dependencies: string[]; language: "typescript"; outputPath: string; renderFunction: (args_0: { inputType?: "asyncapi" | "openapi" | "jsonschema" | undefined; generator?: any; asyncapiDocument?: any; openapiDocument?: any; dependencyOutputs?: Record | undefined; jsonSchemaDocument?: any; } | undefined, args_1: any, ...args_2: unknown[]) => any; options?: any; }, { options?: any; preset?: "custom" | undefined; id?: string | undefined; dependencies?: string[] | undefined; language?: "typescript" | undefined; outputPath?: string | undefined; renderFunction?: ((args_0: { inputType: "asyncapi" | "openapi" | "jsonschema"; dependencyOutputs: Record; generator?: any; asyncapiDocument?: any; openapiDocument?: any; jsonSchemaDocument?: any; }, args_1: any, ...args_2: unknown[]) => any) | undefined; }>; export type CustomGenerator = z.input; export type CustomGeneratorInternal = z.infer; export declare const defaultCustomGenerator: CustomGeneratorInternal;