UNPKG

zod-form-kit

Version:

UI-agnostic form generation library based on Zod schemas with extensible adapter pattern

20 lines (19 loc) 1.21 kB
import { FieldType, FieldRendererComponent, UIAdapter, SchemaPatternMatcher, SchemaPatternRenderer } from '../types/plugin-system'; import { z } from 'zod'; /** * React hook for accessing the plugin system functionality */ export declare function usePluginSystem(): { registerFieldRenderer: (fieldType: FieldType, component: FieldRendererComponent) => void; registerUIAdapter: (adapter: UIAdapter) => void; getRegisteredRenderer: (fieldType: FieldType) => FieldRendererComponent | undefined; getUIAdapter: (adapterName: string) => UIAdapter | undefined; getDefaultAdapter: () => UIAdapter | undefined; setDefaultAdapter: (adapterName: string) => void; registerSchemaPatternRenderer: (id: string, matcher: SchemaPatternMatcher | z.ZodTypeAny, component: SchemaPatternRenderer, priority?: number) => void; getMatchingPatternRenderer: (zodSchema: z.ZodTypeAny, parsedField: any, formValue?: any) => SchemaPatternRenderer | undefined; removeSchemaPatternRenderer: (id: string) => boolean; getAllPatternRenderers: () => import("..").PatternRegistryEntry[]; clearPatternRenderers: () => void; registry: import("../utils/plugin-registry").PluginRegistryManager; };