/** * Các kiểu dữ liệu cơ bản cho hệ thống gencode */ export interface PropSchema { type: string; defaultValue?: any; required?: boolean; description?: string; } export interface StyleSchema { [key: string]: string | number; } export interface EventSchema { name: string; description?: string; params?: Array<{ name: string; type: string; description?: string; }>; } export interface MethodSchema { name: string; description?: string; params?: Array<{ name: string; type: string; defaultValue?: any; description?: string; }>; returnType?: string; } export interface ComponentSchema { type: string; name: string; props: Record; children?: ComponentSchema[]; styles?: StyleSchema; events?: EventSchema[]; exposedState?: string[]; exposedMethods?: MethodSchema[]; } export interface GeneratorOptions { template: string; designSystem: string; } export interface BuilderOptions { template?: string; designSystem?: string; } export interface GeneratedCode { imports: string; props: string; body: string; exposing: string; } export interface RegistryOptions { name: string; description?: string; categories: string[]; icon: any; keywords?: string; layoutInfo?: any; } export interface RegistryIntegrationOptions { name: string; enName?: string; description?: string; categories: string[]; icon: any; keywords?: string; layoutInfo?: any; withoutLoading?: boolean; isContainer?: boolean; } export interface CLIOptions { input: string; output: string; template: string; designSystem: string; updateRegistry?: boolean; description?: string; categories?: string[]; icon?: any; keywords?: string; layoutInfo?: any; }