import { OpenAPIV3 } from 'openapi-types'; import { z } from 'zod'; import { ApiInfo, ApiInfoPartialRest, Arrayable, DataDescription, DataValue, ModelInstance, PrimaryKeyType, PropertyConfig, CanBeNullableType, PropertyValidatorComponent, PropertyValidatorComponentTypeAdvanced } from './types.js'; import HttpMethods = OpenAPIV3.HttpMethods; declare const NULL_ENDPOINT = "NULL"; declare const NULL_METHOD = HttpMethods.HEAD; declare const getValueForReferencedModel: (modelInstance: ModelInstance, path: string) => Promise; declare const getValueForModelInstance: (modelInstance: ModelInstance, path: string) => Promise; declare const isReferencedProperty: (modelInstance: ModelInstance, key: string) => () => import("./types.js").Maybe; declare const getCommonTextValidators: = string>(config: PropertyConfig) => readonly PropertyValidatorComponent[]; declare const getValidatorFromConfigElseEmpty: (input: TValue | undefined, validatorGetter: (t: TValue) => PropertyValidatorComponent) => PropertyValidatorComponent; declare const getCommonNumberValidators: = number>(config: PropertyConfig) => readonly PropertyValidatorComponent[]; declare const mergeValidators: > = Arrayable>(config: PropertyConfig | undefined, ...validators: readonly (PropertyValidatorComponent | PropertyValidatorComponentTypeAdvanced)[]) => PropertyValidatorComponent[]; declare const isModelInstance: (obj: any) => obj is ModelInstance; declare const getModelName: (namespace: string, pluralName: string) => string; declare const parseModelName: (modelName: string) => { namespace: string; pluralName: string | undefined; }; declare const buildValidEndpoint: (...components: readonly string[]) => string; declare const populateApiInformation: (pluralName: string, namespace: string, partial: Partial | undefined) => Readonly>; /** * Create a zod schema generator for a property given its type and config. * Returns a function that when called produces the zod schema. */ declare const createZodForProperty: (propertyType: any, config?: PropertyConfig) => () => z.ZodType>; export { isReferencedProperty, getValueForModelInstance, getValueForReferencedModel, getCommonTextValidators, getValidatorFromConfigElseEmpty, getCommonNumberValidators, mergeValidators, isModelInstance, getModelName, buildValidEndpoint, populateApiInformation, NULL_ENDPOINT, NULL_METHOD, createZodForProperty, parseModelName, };