export interface DynamicField { name: string; label: string; placeholder?: string; type: 'text' | 'textarea' | 'number' | 'date' | 'select' | 'file' | 'array' | 'hidden' | 'year'; required?: boolean; options?: { label: string; value: unknown }[]; itemConfig?: DynamicField[]; yearRange?: { start?: number; end?: number; allowPresent?: boolean; valueType?: 'string' | 'number' }; }