/**
 * Field Mapping Types
 *
 * Defines the mapping rules between JSON schema field types
 * and their TypeScript, Zod, and form component equivalents.
 */
import { FormComponentType } from "./template-data.interface";
/**
 * Mapping from JSON type to TypeScript type
 */
export declare const JSON_TO_TS_TYPE: Record<string, string>;
/**
 * Mapping from JSON type to Zod schema (base, without modifiers)
 */
export declare const JSON_TO_ZOD_BASE: Record<string, string>;
/**
 * Special field names that get specific form components
 */
export declare const SPECIAL_FIELD_COMPONENTS: Record<string, FormComponentType>;
/**
 * Default form component by type
 */
export declare const TYPE_TO_FORM_COMPONENT: Record<string, FormComponentType>;
/**
 * Fields that indicate the module extends Content
 */
export declare const CONTENT_INDICATOR_FIELDS: string[];
/**
 * Standard fields added to all modules
 */
export declare const STANDARD_FIELDS: string[];
/**
 * Author variant special handling
 */
export declare const AUTHOR_VARIANT = "Author";
/**
 * Zod schema for author relationships
 */
export declare const AUTHOR_ZOD_SCHEMA = "userObjectSchema";
/**
 * Zod schema for entity relationships (non-author)
 */
export declare const ENTITY_ZOD_SCHEMA = "entityObjectSchema";
/**
 * Default icon for new modules
 */
export declare const DEFAULT_MODULE_ICON = "FileTextIcon";
/**
 * Get TypeScript type for a field
 */
export declare function getTsType(jsonType: string): string;
/**
 * Get base Zod schema for a field type
 */
export declare function getZodBase(jsonType: string): string;
/**
 * Get form component for a field
 */
export declare function getFormComponent(fieldName: string, fieldType: string): FormComponentType;
/**
 * Check if a field name indicates BlockNoteEditor should be used
 */
export declare function isContentField(fieldName: string): boolean;
/**
 * Build complete Zod schema for a field
 */
export declare function buildZodSchema(fieldType: string, nullable: boolean, fieldName: string): string;
//# sourceMappingURL=field-mapping.types.d.ts.map