export interface GenericEntity { id: string; code: string; description: string; isActive: boolean; } export interface GenericEntityItem { id: string; genericEntityId: string; code: string; value: string; sortOrder: number; isActive: boolean; } export interface GenericEntitiesProps { /** * Título principal del componente */ title?: string; /** * Datos de las entidades genéricas */ entities?: GenericEntity[]; /** * Estado de carga general */ isLoading?: boolean; /** * Evento disparado al seleccionar una entidad para ver sus items */ onSelectEntity?: (entity: GenericEntity) => void; /** * Evento al guardar una creación en el modal */ onCreateEntity?: (entity: Partial, items?: GenericEntityItem[]) => void; /** * Evento al guardar en el editor */ onSaveEntity?: (entity: GenericEntity, items: GenericEntityItem[]) => void; /** * Callback para cargar los items de una entidad al entrar en modo edición. * Debe retornar un arreglo de GenericEntityItem. */ onLoadItems?: (entity: GenericEntity) => Promise; /** * Clases opcionales de CSS (Tailwind) */ className?: string; } //# sourceMappingURL=GenericEntities.types.d.ts.map