@libxai/board 1.9.45 → 1.9.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -34,6 +34,15 @@ interface Task {
34
34
  }>;
35
35
  status?: string;
36
36
  dependencies?: string[];
37
+ /**
38
+ * QA Asakaa · mejora fuerte 5: el tipo (FS/SS/FF/SF) y el desfase (días hábiles) de cada
39
+ * predecesora. Un id de `dependencies` sin entrada aquí es FS sin desfase.
40
+ */
41
+ dependencyLinks?: Array<{
42
+ id: string;
43
+ type: 'FS' | 'SS' | 'FF' | 'SF';
44
+ lag: number;
45
+ }>;
37
46
  subtasks?: Task[];
38
47
  isExpanded?: boolean;
39
48
  isMilestone?: boolean;
@@ -436,7 +445,8 @@ interface GanttConfig {
436
445
  * or initial mount). Lets consumer apps render a floating "go to
437
446
  * today" affordance that only shows up when relevant.
438
447
  */
439
- onTodayVisibilityChange?: (visible: boolean) => void;
448
+ /** 1.9.47 · QA Asakaa E16: `side` dice de qué lado queda hoy cuando no se ve (para la flecha de «Hoy»). */
449
+ onTodayVisibilityChange?: (visible: boolean, side?: 'left' | 'right' | null) => void;
440
450
  /**
441
451
  * v2.8.0: Fired AFTER a successful export so the consuming app can record
442
452
  * the event in its audit log / analytics. Receives the report type that
@@ -480,6 +490,21 @@ interface GanttConfig {
480
490
  toolbarContainer?: HTMLElement | null;
481
491
  /** 1.9.35 · oculta el selector de nivel WBS (All / L1 / L2…) de la barra. */
482
492
  hideWbsLevel?: boolean;
493
+ /**
494
+ * Gantt v6 (Asakaa) · la barra de la maqueta «asakaa-gantt-v6» (BarraV6.tsx): Filtros con sus
495
+ * etiquetas, D/S/M, Densidad, «⋯» y Nueva tarea, en una fila. Va con `toolbarContainer`.
496
+ * Los colores salen de los tokens --v6-* de la app.
497
+ */
498
+ disenoV6?: boolean;
499
+ /** Gantt v6 · lo que la app añade al «⋯» de la barra (historial, pantalla completa…). */
500
+ masOpcionesDeLaBarra?: Array<{
501
+ id: string;
502
+ etiqueta: string;
503
+ icono?: ReactNode;
504
+ alPulsar: () => void;
505
+ }>;
506
+ /** Avisa del cambio de densidad (para que la app la recuerde). */
507
+ onRowDensityChange?: (density: RowDensity) => void;
483
508
  /** 1.9.36 · cabecera de la escala W: 'number' («Week 36», por defecto) o 'range' («Sep 1–7»). */
484
509
  weekHeaderFormat?: 'number' | 'range';
485
510
  /**
@@ -594,6 +619,8 @@ interface GanttConfig {
594
619
  * @default false
595
620
  */
596
621
  showBaseline?: boolean;
622
+ /** 1.9.47 · QA Asakaa E20: si se pasa, el ojo «Líneas Base» llama aquí en vez de cambiar a Vista Pulse. */
623
+ onShowBaselineChange?: (show: boolean) => void;
597
624
  /**
598
625
  * v3.0.0: Gantt view mode — Execution (actual) vs Oracle (baseline comparison)
599
626
  * Controls the Execution/Oracle toggle in the Chronos toolbar
@@ -606,12 +633,23 @@ interface GanttConfig {
606
633
  * When provided, replaces hardcoded placeholder values with real metrics
607
634
  */
608
635
  projectForecast?: ProjectForecast;
636
+ /**
637
+ * QA Asakaa · mejora fuerte 6: el fin PLANEADO del proyecto (su fecha de fin). Se marca en el
638
+ * cronograma junto al fin PREVISTO (projectForecast.expectedFinish): la distancia es el retraso.
639
+ */
640
+ finPlaneado?: Date | null;
609
641
  /**
610
642
  * Oculta la barra interna del pronóstico (Forecast HUD) aunque se pase
611
643
  * projectForecast. Útil cuando el consumidor muestra el pronóstico en su propia
612
644
  * barra (p. ej. una barra de áreas del proyecto) y no quiere duplicarlo.
613
645
  */
614
646
  hideForecastHud?: boolean;
647
+ /**
648
+ * QA Asakaa 2.2 · código de la moneda que se pinta TRAS la cifra del costo
649
+ * («$20,1 M COP»). Lo da la app (la moneda del espacio). Sin código, la cifra
650
+ * va sola: mejor que un código falso.
651
+ */
652
+ currencyCode?: string | null;
615
653
  /**
616
654
  * Callback for "Copy Snapshot Link" in the Share dropdown
617
655
  * When provided, shows the option in the export/share menu
@@ -685,7 +723,8 @@ interface GanttConfig {
685
723
  * Sets task status to 'in-progress'
686
724
  */
687
725
  onTaskSetInProgress?: (task: Task) => void;
688
- onDependencyCreate?: (fromTaskId: string, toTaskId: string) => void;
726
+ /** Mejora fuerte 5: `tipo` = el que se eligió al arrastrar (FS si no se dice). */
727
+ onDependencyCreate?: (fromTaskId: string, toTaskId: string, tipo?: 'FS' | 'SS' | 'FF' | 'SF') => void;
689
728
  onDependencyDelete?: (taskId: string, dependencyId: string) => void;
690
729
  onBeforeTaskAdd?: (task: Task) => boolean | void | Promise<boolean | void>;
691
730
  onAfterTaskAdd?: (task: Task) => void;
@@ -697,6 +736,14 @@ interface GanttConfig {
697
736
  onTaskDelete?: (taskId: string) => void;
698
737
  onMultiTaskDelete?: (taskIds: string[]) => void;
699
738
  onTaskDuplicate?: (task: Task) => void;
739
+ /** 1.9.47 · QA Asakaa E14: el menú contextual «Dependencias…» (si falta, abre onTaskEdit). */
740
+ onTaskDependencies?: (task: Task) => void;
741
+ /** 1.9.47 · QA Asakaa E14: una tarea se soltó antes de que acabe su predecesora y se ajustó al primer día posible. */
742
+ onDependencyConstraint?: (info: {
743
+ task: Task;
744
+ predecessor: Task;
745
+ earliestStart: Date;
746
+ }) => void;
700
747
  onTaskMove?: (taskId: string, direction: 'up' | 'down') => void;
701
748
  onTaskIndent?: (taskId: string) => void;
702
749
  onTaskOutdent?: (taskId: string) => void;
@@ -1764,8 +1811,11 @@ interface KanbanToolbarProps {
1764
1811
  toolbarRightContent?: React.ReactNode;
1765
1812
  /** v2.5.0: Render content just before the Create Task button (e.g., share/export dropdown) */
1766
1813
  toolbarEndContent?: React.ReactNode;
1814
+ /** QA Asakaa 2.4.8: contenido a la IZQUIERDA de la fila (p. ej. el selector de vista).
1815
+ * Antes ocupaba una fila propia encima: 41 px menos antes de la primera tarjeta. */
1816
+ toolbarLeftContent?: React.ReactNode;
1767
1817
  }
1768
- declare function KanbanToolbar({ columns, onCreateTask, createTaskLabel, theme, locale, useColumnSelector, onExportCSV, onExportJSON, onExportExcel, translations, toolbarRightContent, toolbarEndContent, }: KanbanToolbarProps): react_jsx_runtime.JSX.Element;
1818
+ declare function KanbanToolbar({ columns, onCreateTask, createTaskLabel, theme, locale, useColumnSelector, onExportCSV, onExportJSON, onExportExcel, translations, toolbarRightContent, toolbarEndContent, toolbarLeftContent, }: KanbanToolbarProps): react_jsx_runtime.JSX.Element;
1769
1819
 
1770
1820
  /**
1771
1821
  * AddColumnButton Component
@@ -1822,8 +1872,14 @@ interface UserAssignmentSelectorProps {
1822
1872
  onChange: (users: User[]) => void;
1823
1873
  className?: string;
1824
1874
  maxVisibleAvatars?: number;
1875
+ /** Gantt v6 (Asakaa): un avatar de 22 px (o un círculo discontinuo con «+» sin nadie). */
1876
+ variante?: 'v6';
1877
+ /** Gantt v6: el nombre de la tarea, para el nombre accesible del botón. */
1878
+ nombreDeLaTarea?: string;
1879
+ /** Gantt v6: español para los textos del botón. */
1880
+ es?: boolean;
1825
1881
  }
1826
- declare function UserAssignmentSelector({ assignedUsers, availableUsers, onChange, className, maxVisibleAvatars, }: UserAssignmentSelectorProps): react_jsx_runtime.JSX.Element;
1882
+ declare function UserAssignmentSelector({ assignedUsers, availableUsers, onChange, className, maxVisibleAvatars, variante, nombreDeLaTarea, es, }: UserAssignmentSelectorProps): react_jsx_runtime.JSX.Element;
1827
1883
 
1828
1884
  interface AddCardData {
1829
1885
  /** Task name (required) */
@@ -2107,8 +2163,10 @@ interface AttachmentUploaderProps {
2107
2163
  allowedTypes?: string[];
2108
2164
  /** Max number of files */
2109
2165
  maxFiles?: number;
2166
+ /** QA Asakaa 2.1: idioma de los textos (por defecto, inglés). */
2167
+ locale?: 'es' | 'en';
2110
2168
  }
2111
- declare function AttachmentUploader({ attachments, onUpload, onDelete, maxSizeMB, allowedTypes, maxFiles, }: AttachmentUploaderProps): react_jsx_runtime.JSX.Element;
2169
+ declare function AttachmentUploader({ attachments, onUpload, onDelete, maxSizeMB, allowedTypes, maxFiles, locale, }: AttachmentUploaderProps): react_jsx_runtime.JSX.Element;
2112
2170
 
2113
2171
  interface VelocityDataPoint {
2114
2172
  /** Period name (e.g., "Week 1", "Sprint 3") */
@@ -2860,6 +2918,8 @@ interface GanttToolbarProps {
2860
2918
  onViewModeChange?: (mode: 'execution' | 'oracle') => void;
2861
2919
  projectForecast?: ProjectForecast;
2862
2920
  hideForecastHud?: boolean;
2921
+ /** QA Asakaa 2.2 · código de moneda tras la cifra del costo («$20,1 M COP») */
2922
+ currencyCode?: string | null;
2863
2923
  onExportPNG?: () => Promise<void>;
2864
2924
  onExportPDF?: () => Promise<void>;
2865
2925
  onExportExcel?: () => Promise<void>;
@@ -2891,7 +2951,7 @@ declare function GanttToolbar({ enCabecera, theme, timeScale, onTimeScaleChange,
2891
2951
  showCreateTaskButton, createTaskLabel, // v0.15.0: Will use translations if not provided
2892
2952
  onCreateTask, taskFilter, // v0.17.300: Task filter
2893
2953
  onTaskFilterChange, hideCompleted, // v0.18.0: Hide completed toggle
2894
- onHideCompletedChange, toolbarRightContent, wbsLevel, onWbsLevelChange, maxWbsDepth, viewMode, onViewModeChange, projectForecast, hideForecastHud, onExportPNG, onExportPDF, onExportExcel, onExportCSV, onExportJSON, onExportMSProject, showCriticalPath, onShowCriticalPathChange, showDependencies, onShowDependenciesChange, highlightWeekends, onHighlightWeekendsChange, showBaseline, onShowBaselineChange, onCopySnapshotLink, hasDependencies, }: GanttToolbarProps): react_jsx_runtime.JSX.Element;
2954
+ onHideCompletedChange, toolbarRightContent, wbsLevel, onWbsLevelChange, maxWbsDepth, viewMode, onViewModeChange, projectForecast, hideForecastHud, currencyCode, onExportPNG, onExportPDF, onExportExcel, onExportCSV, onExportJSON, onExportMSProject, showCriticalPath, onShowCriticalPathChange, showDependencies, onShowDependenciesChange, highlightWeekends, onHighlightWeekendsChange, showBaseline, onShowBaselineChange, onCopySnapshotLink, hasDependencies, }: GanttToolbarProps): react_jsx_runtime.JSX.Element;
2895
2955
 
2896
2956
  interface TaskGridProps {
2897
2957
  tasks: Task[];
@@ -2931,6 +2991,8 @@ interface TaskGridProps {
2931
2991
  onClick: () => void;
2932
2992
  };
2933
2993
  onCreateSubtask?: (parentTaskId: string) => void;
2994
+ /** 1.9.47 · QA Asakaa E14: «Dependencias…» en el menú contextual. */
2995
+ onTaskDependencies?: (task: Task) => void;
2934
2996
  onOpenTaskModal?: (task: Task) => void;
2935
2997
  /** v1.9.6: ahora recibe TODOS los ids a borrar (bulk desde el menú contextual
2936
2998
  * con multi-selección) + una etiqueta para el modal de confirmación. */
@@ -2942,15 +3004,22 @@ interface TaskGridProps {
2942
3004
  allTasks?: Task[];
2943
3005
  scrollContainerRef?: React.RefObject<HTMLElement>;
2944
3006
  showCriticalPath?: boolean;
3007
+ /** Gantt v6 (Asakaa): la tabla de la maqueta — Tarea · Resp. · Inicio · Fin · %, cabecera de 60 px. */
3008
+ v6?: boolean;
3009
+ /** Gantt v6: «13 tareas · completadas ocultas», encima de los títulos. */
3010
+ resumenV6?: string;
3011
+ /** Gantt v6: el botón «contraer todos los grupos». */
3012
+ onContraerTodo?: () => void;
2945
3013
  }
2946
3014
  declare function TaskGrid({ tasks, theme, rowHeight: ROW_HEIGHT, availableUsers, templates: _templates, // TODO: Use templates for custom rendering
2947
3015
  onTaskClick, onTaskSelectionChange, selectedTaskId, onTaskDblClick, // v0.8.0
2948
3016
  onTaskContextMenu, // v0.8.0
2949
- onTaskToggle, scrollTop: _scrollTop, columns, onToggleColumn, onColumnResize, onTaskUpdate, onBulkFill, onTaskIndent, onTaskOutdent, onTaskMove, onMultiTaskDelete, onTaskDuplicate, onTaskCreate, onTaskRename, addTaskRow, onCreateSubtask, onOpenTaskModal, onDeleteRequest, // v0.17.34
3017
+ onTaskToggle, scrollTop: _scrollTop, columns, onToggleColumn, onColumnResize, onTaskUpdate, onBulkFill, onTaskIndent, onTaskOutdent, onTaskMove, onMultiTaskDelete, onTaskDuplicate, onTaskCreate, onTaskRename, addTaskRow, onCreateSubtask, onTaskDependencies, onOpenTaskModal, onDeleteRequest, // v0.17.34
2950
3018
  onTaskReparent, // v0.17.68
2951
3019
  allTasks, // v1.9.10: árbol completo para traducir posición con filtros activos
2952
3020
  scrollContainerRef, // v0.18.15
2953
- showCriticalPath, }: TaskGridProps): react_jsx_runtime.JSX.Element;
3021
+ showCriticalPath, // v5.1.0
3022
+ v6, resumenV6, onContraerTodo, }: TaskGridProps): react_jsx_runtime.JSX.Element;
2954
3023
 
2955
3024
  /**
2956
3025
  * Optional working-days configuration so the tooltip Duration reflects the
@@ -2965,6 +3034,15 @@ interface WorkingDaysConfig {
2965
3034
  }
2966
3035
 
2967
3036
  interface TimelineProps {
3037
+ /** Mejora fuerte 6 · la ventana visible (px) para marcar las barras fuera de vista, y adónde ir. */
3038
+ ventanaVisible?: {
3039
+ izq: number;
3040
+ der: number;
3041
+ } | null;
3042
+ onIrAFecha?: (fecha: Date) => void;
3043
+ /** Mejora fuerte 6 · fin planeado del proyecto y fin previsto (pronóstico). */
3044
+ finPlaneado?: Date | null;
3045
+ finPrevisto?: Date | null;
2968
3046
  tasks: Task[];
2969
3047
  theme: any;
2970
3048
  rowHeight: number;
@@ -2980,7 +3058,7 @@ interface TimelineProps {
2980
3058
  onTaskDblClick?: (task: Task) => void;
2981
3059
  onTaskContextMenu?: (task: Task, event: React__default.MouseEvent) => void;
2982
3060
  onTaskDateChange?: (task: Task, newStart: Date, newEnd: Date) => void;
2983
- onDependencyCreate?: (fromTask: Task, toTaskId: string) => void;
3061
+ onDependencyCreate?: (fromTask: Task, toTaskId: string, tipo?: 'FS' | 'SS' | 'FF' | 'SF') => void;
2984
3062
  onDependencyDelete?: (taskId: string, dependencyId: string) => void;
2985
3063
  /** v3.0.0: Show baseline ghost bars behind actual bars (Oracle view) */
2986
3064
  showBaseline?: boolean;
@@ -2995,6 +3073,12 @@ interface TimelineProps {
2995
3073
  onTaskProgressDrag?: (task: Task, newProgress: number) => void;
2996
3074
  /** v4.3.0: Workspace working-day config for the tooltip Duration field. */
2997
3075
  workingDaysConfig?: WorkingDaysConfig;
3076
+ /** Gantt v6: la cabecera mide lo mismo que la de la tabla (60). */
3077
+ alturaCabecera?: number;
3078
+ /** Gantt v6 (Asakaa): escala, barras y marcas de la maqueta. */
3079
+ v6?: boolean;
3080
+ /** Gantt v6: alto de la barra según la densidad (18 · 22 · 26). */
3081
+ alturaBarra?: number;
2998
3082
  }
2999
3083
  interface TaskPosition {
3000
3084
  id: string;
@@ -3007,7 +3091,96 @@ declare function Timeline({ tasks, theme, rowHeight: ROW_HEIGHT, timeScale, star
3007
3091
  templates, dependencyLineStyle, // v0.17.310
3008
3092
  showTaskBarLabels, onTaskClick, onTaskDblClick, // v0.8.0
3009
3093
  onTaskContextMenu, // v0.8.0
3010
- onTaskDateChange, onDependencyCreate, onDependencyDelete, showBaseline, showCriticalPath, showDependencies, highlightWeekends, weekHeaderFormat, canEditTask, onTaskProgressDrag, workingDaysConfig, }: TimelineProps): react_jsx_runtime.JSX.Element;
3094
+ onTaskDateChange, onDependencyCreate, onDependencyDelete, showBaseline, showCriticalPath, showDependencies, highlightWeekends, weekHeaderFormat, canEditTask, onTaskProgressDrag, workingDaysConfig, ventanaVisible, onIrAFecha, finPlaneado, finPrevisto, alturaCabecera, v6, alturaBarra, }: TimelineProps): react_jsx_runtime.JSX.Element;
3095
+
3096
+ /**
3097
+ * ═══ EL MOTOR DEL CRONOGRAMA (QA Asakaa, mejora fuerte 5) ════════════════════════
3098
+ *
3099
+ * Yesid: «Dependencias con tipo (fin-inicio, inicio-inicio…) y desfase […];
3100
+ * reprogramación automática o, como mínimo, aviso de conflicto; duraciones en días
3101
+ * hábiles con festivos y fines de semana; hitos en su fecha exacta».
3102
+ *
3103
+ * Decisiones de Arcadio (16-oct):
3104
+ * · cada enlace tiene tipo (FS, SS, FF, SF — los códigos de MS Project) y desfase en
3105
+ * DÍAS HÁBILES (negativo = adelanto);
3106
+ * · el calendario es el del espacio: sus días laborables y sus festivos;
3107
+ * · si una predecesora se atrasa, sus sucesoras se EMPUJAN lo justo; si se adelanta,
3108
+ * se quedan donde están (nunca se adelantan solas).
3109
+ *
3110
+ * Puro: sin React. Las fechas son días (la hora no cuenta). Sin calendario, todos los
3111
+ * días son hábiles — lo que hacía el Gantt hasta ahora.
3112
+ */
3113
+
3114
+ type TipoDeEnlace = 'FS' | 'SS' | 'FF' | 'SF';
3115
+ interface EnlaceDeTarea {
3116
+ /** La predecesora (la tarea de la que depende). */
3117
+ id: string;
3118
+ type: TipoDeEnlace;
3119
+ /** Días hábiles; negativo = adelanto. */
3120
+ lag: number;
3121
+ }
3122
+ interface Calendario {
3123
+ esHabil(d: Date): boolean;
3124
+ }
3125
+ /** Todos los días hábiles: el comportamiento de siempre si no hay calendario. */
3126
+ declare const TODOS_LOS_DIAS: Calendario;
3127
+ declare function calendarioDe(cfg?: GanttWorkingDaysConfig | null): Calendario;
3128
+ /** El primer día hábil desde `d` (incluido), hacia adelante o hacia atrás. */
3129
+ declare function habilDesde(d: Date, cal: Calendario, haciaAtras?: boolean): Date;
3130
+ /**
3131
+ * `d` más `n` días hábiles. Con n = 0, el propio día si es hábil (si no, el siguiente).
3132
+ * Negativo cuenta hacia atrás.
3133
+ */
3134
+ declare function sumarHabiles(d: Date, n: number, cal: Calendario): Date;
3135
+ /** Días hábiles de `inicio` a `fin`, los dos incluidos (la duración de una barra). Mínimo 1. */
3136
+ declare function habilesEntre(inicio: Date, fin: Date, cal: Calendario): number;
3137
+ /** El fin de una tarea que empieza en `inicio` y dura `dias` hábiles. */
3138
+ declare function finConDuracion(inicio: Date, dias: number, cal: Calendario): Date;
3139
+ /** Los enlaces de una tarea: los que trae con tipo, y FS sin desfase para los ids sueltos. */
3140
+ declare function enlacesDe(t: Pick<Task, 'dependencies' | 'dependencyLinks'>): EnlaceDeTarea[];
3141
+ interface Limite {
3142
+ /** Lo más pronto que puede empezar / terminar la sucesora por este enlace. */
3143
+ inicioMin?: Date;
3144
+ finMin?: Date;
3145
+ enlace: EnlaceDeTarea;
3146
+ predecesora: Task;
3147
+ }
3148
+ /** Lo que exige UN enlace a su sucesora (null si la predecesora no tiene fechas). */
3149
+ declare function limiteDelEnlace(enlace: EnlaceDeTarea, pred: Task, cal: Calendario): Limite | null;
3150
+ interface Ajuste {
3151
+ inicio: Date;
3152
+ fin: Date;
3153
+ /** El enlace que obligó a mover la tarea; null si no hubo que moverla. */
3154
+ porQue: Limite | null;
3155
+ }
3156
+ /**
3157
+ * Las fechas más cercanas a las pedidas que cumplen TODOS los enlaces de la tarea, sin
3158
+ * cambiar su duración en días hábiles. Si las pedidas ya los cumplen, se devuelven tal cual
3159
+ * (una tarea se puede poner MÁS TARDE de lo que exigen sus enlaces: no se adelanta sola).
3160
+ * Un hito ocupa un solo día: inicio = fin.
3161
+ */
3162
+ declare function fechasQueCumplen(tarea: Pick<Task, 'id' | 'dependencies' | 'dependencyLinks' | 'isMilestone'>, inicio: Date, fin: Date, todas: Task[] | Map<string, Task>, cal: Calendario): Ajuste;
3163
+ interface TareaEmpujada {
3164
+ id: string;
3165
+ startDate: Date;
3166
+ endDate: Date;
3167
+ porQue: Limite;
3168
+ }
3169
+ /**
3170
+ * Tras mover unas tareas, EMPUJA a las sucesoras que dejaron de cumplir su enlace, en
3171
+ * cadena, lo justo. Nunca adelanta a ninguna. Devuelve solo las que se movieron (con su
3172
+ * porqué); quien llama las aplica y las guarda.
3173
+ */
3174
+ declare function empujarSucesoras(todas: Task[], movidas: Iterable<string>, cal: Calendario): TareaEmpujada[];
3175
+ interface Conflicto {
3176
+ sucesora: Task;
3177
+ predecesora: Task;
3178
+ enlace: EnlaceDeTarea;
3179
+ /** Días hábiles que habría que correr la sucesora para cumplir el enlace. */
3180
+ dias: number;
3181
+ }
3182
+ /** Los enlaces que NO se cumplen hoy (para marcarlos y avisar). */
3183
+ declare function conflictosDelCronograma(todas: Task[], cal: Calendario): Conflicto[];
3011
3184
 
3012
3185
  interface TaskTooltipData {
3013
3186
  task: Task;
@@ -3033,7 +3206,8 @@ interface TaskBarProps {
3033
3206
  onDoubleClick?: (task: Task) => void;
3034
3207
  onContextMenu?: (task: Task, event: React.MouseEvent) => void;
3035
3208
  onDateChange?: (task: Task, newStart: Date, newEnd: Date) => void;
3036
- onDependencyCreate?: (fromTask: Task, toTaskId: string) => void;
3209
+ /** Mejora fuerte 5: con el TIPO que sale de los extremos elegidos al arrastrar. */
3210
+ onDependencyCreate?: (fromTask: Task, toTaskId: string, tipo?: TipoDeEnlace) => void;
3037
3211
  allTaskPositions?: TaskPosition[];
3038
3212
  onDragMove?: (taskId: string, daysDelta: number, isDragging: boolean) => void;
3039
3213
  onHoverChange?: (tooltipData: TaskTooltipData | null) => void;
@@ -3042,13 +3216,19 @@ interface TaskBarProps {
3042
3216
  showCriticalPath?: boolean;
3043
3217
  readOnly?: boolean;
3044
3218
  onProgressChange?: (task: Task, newProgress: number) => void;
3219
+ /** Gantt v6 (Asakaa): barra de contorno con su avance, «N d» a la derecha, sin trama ni rótulos. */
3220
+ v6?: boolean;
3221
+ /** Gantt v6: alto de la barra según la densidad (18 · 22 · 26). */
3222
+ alturaBarra?: number;
3223
+ /** Gantt v6: la duración en días hábiles, a la derecha de la barra («5 d»). */
3224
+ duracionV6?: string;
3045
3225
  }
3046
3226
  declare function TaskBar({ task, x, y, width, theme, dayWidth, startDate, templates, onClick, onDoubleClick, // v0.8.0
3047
3227
  onContextMenu, // v0.8.0
3048
3228
  onDateChange, onDependencyCreate, allTaskPositions, onDragMove, // v0.13.0
3049
3229
  onHoverChange, // v0.17.76
3050
3230
  showBaseline, // v3.0.0
3051
- showTaskBarLabels, showCriticalPath, readOnly, onProgressChange, }: TaskBarProps): react_jsx_runtime.JSX.Element;
3231
+ showTaskBarLabels, showCriticalPath, readOnly, onProgressChange, v6, alturaBarra, duracionV6, }: TaskBarProps): react_jsx_runtime.JSX.Element;
3052
3232
 
3053
3233
  interface DependencyLineProps {
3054
3234
  x1: number;
@@ -3064,6 +3244,10 @@ interface DependencyLineProps {
3064
3244
  colorOverride?: string;
3065
3245
  strokeWidthOverride?: number;
3066
3246
  glowFilter?: string;
3247
+ salidaPorInicio?: boolean;
3248
+ entradaPorFin?: boolean;
3249
+ /** «CC +2», «FF», «+1»…: el tipo (si no es FC) y el desfase (si no es 0). */
3250
+ etiqueta?: string;
3067
3251
  }
3068
3252
  /**
3069
3253
  * v0.17.364: TRUE ClickUp-style dependency line routing
@@ -3083,16 +3267,18 @@ interface DependencyLineProps {
3083
3267
  * The vertical segment must still be LEFT of destination: turnX = x2 - OFFSET
3084
3268
  * Path: right → horizontal past source → down/up → LEFT back to destination
3085
3269
  */
3086
- declare function DependencyLine({ x1, y1, x2, y2, theme, onDelete, lineStyle, isHoverLayer, onHoverChange, hoverOverlayOnly, colorOverride, strokeWidthOverride, glowFilter, }: DependencyLineProps): react_jsx_runtime.JSX.Element;
3270
+ declare function DependencyLine({ x1, y1, x2, y2, theme, onDelete, lineStyle, isHoverLayer, onHoverChange, hoverOverlayOnly, colorOverride, strokeWidthOverride, glowFilter, salidaPorInicio, entradaPorFin, etiqueta, }: DependencyLineProps): react_jsx_runtime.JSX.Element;
3087
3271
 
3088
3272
  interface MilestoneProps {
3089
3273
  task: Task;
3090
3274
  x: number;
3091
3275
  y: number;
3092
3276
  theme: any;
3277
+ /** QA Asakaa E17: la fecha de la etiqueta en el idioma de la app (antes, siempre en inglés). */
3278
+ locale?: string;
3093
3279
  onClick?: (task: Task) => void;
3094
3280
  }
3095
- declare function Milestone({ task, x, y, theme, onClick }: MilestoneProps): react_jsx_runtime.JSX.Element;
3281
+ declare function Milestone({ task, x, y, theme, locale, onClick }: MilestoneProps): react_jsx_runtime.JSX.Element;
3096
3282
 
3097
3283
  interface ColumnManagerProps {
3098
3284
  columns: GanttColumn[];
@@ -3136,6 +3322,7 @@ declare const MenuIcons: {
3136
3322
  Settings: react_jsx_runtime.JSX.Element;
3137
3323
  Split: react_jsx_runtime.JSX.Element;
3138
3324
  Duplicate: react_jsx_runtime.JSX.Element;
3325
+ Milestone: react_jsx_runtime.JSX.Element;
3139
3326
  MarkIncomplete: react_jsx_runtime.JSX.Element;
3140
3327
  SetInProgress: react_jsx_runtime.JSX.Element;
3141
3328
  MarkComplete: react_jsx_runtime.JSX.Element;
@@ -3212,7 +3399,7 @@ interface GanttAIAssistantProps {
3212
3399
  /** Callback for task deletion */
3213
3400
  onTaskDelete?: (taskId: string) => void;
3214
3401
  /** Callback for dependency creation */
3215
- onDependencyCreate?: (fromTaskId: string, toTaskId: string) => void;
3402
+ onDependencyCreate?: (fromTaskId: string, toTaskId: string, tipo?: 'FS' | 'SS' | 'FF' | 'SF') => void;
3216
3403
  /** Callback for dependency deletion */
3217
3404
  onDependencyDelete?: (taskId: string, dependencyId: string) => void;
3218
3405
  }
@@ -3734,6 +3921,8 @@ interface GanttTranslations {
3734
3921
  duplicateTask: string;
3735
3922
  splitTask: string;
3736
3923
  deleteTask: string;
3924
+ /** 1.9.47 · QA Asakaa E14 */
3925
+ dependencies?: string;
3737
3926
  };
3738
3927
  actions: {
3739
3928
  edit: string;
@@ -3872,7 +4061,7 @@ type SortDirection = 'asc' | 'desc';
3872
4061
  * - v1.2.0: effortMinutes, timeLoggedMinutes, soldEffortMinutes
3873
4062
  * - Custom: text, number, date, dropdown, checkbox
3874
4063
  */
3875
- type ColumnType = 'name' | 'status' | 'priority' | 'assignees' | 'startDate' | 'endDate' | 'progress' | 'tags' | 'estimatedTime' | 'quotedTime' | 'elapsedTime' | 'effortMinutes' | 'timeLoggedMinutes' | 'soldEffortMinutes' | 'scheduleVariance' | 'hoursBar' | 'teamLoad' | 'blockers' | 'weight' | 'text' | 'number' | 'date' | 'dropdown' | 'checkbox' | 'multiselect' | 'person' | 'file';
4064
+ type ColumnType = 'name' | 'status' | 'priority' | 'assignees' | 'startDate' | 'endDate' | 'progress' | 'tags' | 'estimatedTime' | 'quotedTime' | 'elapsedTime' | 'effortMinutes' | 'timeLoggedMinutes' | 'soldEffortMinutes' | 'scheduleVariance' | 'hoursBar' | 'costBar' | 'teamLoad' | 'blockers' | 'weight' | 'text' | 'number' | 'date' | 'dropdown' | 'checkbox' | 'multiselect' | 'person' | 'file';
3876
4065
  /**
3877
4066
  * Table column configuration for dynamic columns
3878
4067
  */
@@ -4066,11 +4255,18 @@ interface ProjectHealthData {
4066
4255
  /** v2.6.0 — Travel/per-diem portion of the executed cost (for breakdown tooltip) */
4067
4256
  totalExecutedTravel?: number;
4068
4257
  offeredRate?: number;
4258
+ /**
4259
+ * QA Asakaa · mejora fuerte 3: si las cifras de dinero son atípicas (margen < −100 %, costo
4260
+ * > 5× lo planeado, negativos, tarifas en escalas distintas), el porqué. Sale «⚠ revisar».
4261
+ */
4262
+ avisoRevisar?: string;
4069
4263
  }
4070
4264
  /**
4071
4265
  * ListView configuration
4072
4266
  */
4073
4267
  interface ListViewConfig {
4268
+ /** 1.9.47 · QA Asakaa E21: las fechas de inicio y fin no pueden ser anteriores a esta (el inicio del proyecto). */
4269
+ minTaskDate?: Date | string | null;
4074
4270
  /**
4075
4271
  * v1.9.25 — Hide financial indicators entirely, not just blur them.
4076
4272
  *
@@ -4139,6 +4335,12 @@ interface ListViewConfig {
4139
4335
  healthSidebar?: {
4140
4336
  enabled: boolean;
4141
4337
  data: ProjectHealthData;
4338
+ /**
4339
+ * QA Asakaa · mejora fuerte 3: la lente del PANEL, aparte de la de la tabla. Con horas y
4340
+ * costo en columnas separadas la tabla va en 'hours', y el panel sigue en 'financial'.
4341
+ * Sin ella, el panel usa `lens`.
4342
+ */
4343
+ lens?: 'hours' | 'financial';
4142
4344
  };
4143
4345
  /** Aggregate child hours into parent row hoursBar cell (default: false) */
4144
4346
  aggregateParentHours?: boolean;
@@ -4160,6 +4362,12 @@ interface ListViewConfig {
4160
4362
  hourlyRate?: number;
4161
4363
  /** Per-user hourly rate map (userId → rate). When provided, uses the task assignee's rate instead of the global hourlyRate */
4162
4364
  rateMap?: Record<string, number>;
4365
+ /**
4366
+ * QA Asakaa 2.2 · código de la moneda que se pinta TRAS la cifra
4367
+ * («$20.122.500 COP»). Lo da la app (la moneda del espacio). Sin código, la
4368
+ * cifra va sola: mejor que un código falso.
4369
+ */
4370
+ currencyCode?: string | null;
4163
4371
  /** Show a sticky "TOTAL PROJECT" row at the bottom of the list */
4164
4372
  showProjectTotals?: boolean;
4165
4373
  /**
@@ -4251,6 +4459,7 @@ interface ListViewTranslations {
4251
4459
  tags?: string;
4252
4460
  scheduleVariance?: string;
4253
4461
  hoursBar?: string;
4462
+ costBar?: string;
4254
4463
  teamLoad?: string;
4255
4464
  blockers?: string;
4256
4465
  weight?: string;
@@ -4660,6 +4869,11 @@ interface Props {
4660
4869
  /** 'light' aplica la paleta clara; cualquier otro = oscuro. */
4661
4870
  themeMode?: 'dark' | 'light';
4662
4871
  hourlyRate: number;
4872
+ /**
4873
+ * QA Asakaa 2.2 · código de la moneda que se pinta TRAS la cifra («$1,9 mil
4874
+ * COP»). Lo da la app (la moneda del espacio). Sin código, la cifra va sola.
4875
+ */
4876
+ currencyCode?: string | null;
4663
4877
  /**
4664
4878
  * ═══ EL FILTRO DE FASES ═════════════════════════════════════════════════
4665
4879
  *
@@ -4723,7 +4937,7 @@ interface Props {
4723
4937
  /** 1.9.42 · `false`: ni horas ni coste en las barras. */
4724
4938
  showValues?: boolean;
4725
4939
  }
4726
- declare function CalendarView({ tasks, projectName, projectId, projectColor, locale, themeMode, hourlyRate, money, onMoneyChange, onTaskOpen, toolbarContainer, hiddenViews, mostrarFiltroDeFases, mostrarConmutadorDeDinero, onCreateTask, canReschedule, onReschedule, members, holidayDates, timesheetSettings, onVisibleRangeChange, monthMode, showValues, openOnToday, }: Props): react_jsx_runtime.JSX.Element;
4940
+ declare function CalendarView({ tasks, projectName, projectId, projectColor, locale, themeMode, hourlyRate, money, onMoneyChange, onTaskOpen, toolbarContainer, hiddenViews, mostrarFiltroDeFases, mostrarConmutadorDeDinero, onCreateTask, canReschedule, onReschedule, members, holidayDates, timesheetSettings, onVisibleRangeChange, monthMode, showValues, openOnToday, currencyCode, }: Props): react_jsx_runtime.JSX.Element;
4727
4941
 
4728
4942
  /**
4729
4943
  * Simulación de reprogramación con CPM (Calendario, Sprint 3, regla C5).
@@ -4785,6 +4999,10 @@ interface BuildOpts {
4785
4999
  hourlyRate: number;
4786
5000
  /** id de proyecto de las tareas (el calendario es por proyecto en S1). */
4787
5001
  projectId: string;
5002
+ /** QA Asakaa 2.2 · idioma de las cifras (por defecto 'es'). */
5003
+ locale?: 'es' | 'en';
5004
+ /** QA Asakaa 2.2 · código de moneda tras la cifra; sin él, la cifra va sola. */
5005
+ currencyCode?: string | null;
4788
5006
  }
4789
5007
  interface BuiltCalendar {
4790
5008
  calTasks: CalTask[];
@@ -6912,4 +7130,4 @@ declare const themes: Record<ThemeName, Theme>;
6912
7130
  */
6913
7131
  declare const defaultTheme: ThemeName;
6914
7132
 
6915
- export { type AICallbacks, type AICommandResult, type GanttTask as AIGanttTask, type AIMessage, type AIModelKey, type AIOperation, AIUsageDashboard, type AIUsageDashboardProps, AI_FEATURES, AI_MODELS, type Activity, type ActivityType, AddCardButton, type AddCardButtonProps, type AddCardData, AddColumnButton, type AddColumnButtonProps, type AssigneeSuggestion, type Attachment, AttachmentUploader, type AttachmentUploaderProps, type AvailableUser, type Board, type BoardCallbacks, type BoardConfig, BoardProvider, type BoardProviderProps, type BorderRadiusToken, BulkOperationsToolbar, type BulkOperationsToolbarProps, BurnDownChart, type BurnDownChartProps, type BurnDownDataPoint, CUSTOM_FIELD_TYPES, type CalLayerId, type CalMoney, type CalView, CalendarView as CalendarBoard, type DailyLog as CalendarDailyLog, type TeamMember as CalendarTeamMember, Card, type CardFilter, type CardFilters, CardHistoryReplay, type CardHistoryReplayProps, CardHistoryTimeline, type CardHistoryTimelineProps, type CardProps, CardRelationshipsGraph, type CardRelationshipsGraphProps, type CardSort, type CardSortKey, CardStack, type CardStackProps, type CardStack$1 as CardStackType, type CardStatus, type CardTemplate, CardTemplateSelector, type CardTemplateSelectorProps, type CardTimeProps, type Card$1 as CardType, CircuitBreaker, Column, ColumnManager, type ColumnProps, type Column$1 as ColumnType, CommandPalette, type CommandPaletteProps, type Comment, type CommentAttachment, ConfigMenu, type ConfigMenuProps, ContextMenu, type ContextMenuAction, type ContextMenuState, type CustomFieldDefinition, type CustomFieldValue, DEFAULT_SHORTCUTS, DEFAULT_TABLE_COLUMNS, DEFAULT_TEMPLATES, type DateFilter, DateRangePicker, type DateRangePickerProps, DependenciesSelector, type DependenciesSelectorProps, DependencyLine, type DesignTokens, DistributionCharts, type DistributionChartsProps, type DistributionDataPoint, type DragData, type DropData, type DurationToken, type EasingToken, EditableColumnTitle, type EditableColumnTitleProps, ErrorBoundary, type ErrorBoundaryProps, ExportDropdown, type ExportFormat, ExportImportModal, type ExportImportModalProps, type ExportOptions, type FillColumn, FilterBar, type FilterBarProps, type FilterState, type FlattenedTask, type FontSizeToken, type FontWeightToken, GANTT_AI_SYSTEM_PROMPT, GanttAIAssistant, type GanttAIAssistantConfig, type Assignee as GanttAssignee, GanttBoard, type GanttConfig as GanttBoardConfig, type GanttBoardRef, type GanttColumn, type ColumnType$1 as GanttColumnType, type GanttConfig, GanttI18nContext, Milestone as GanttMilestone, type GanttPermissions, type Task as GanttTask, type GanttTemplates, type Theme$1 as GanttTheme, type GanttTheme as GanttThemeConfig, GanttToolbar, type GanttTranslations, GenerateGanttTasksDialog, type GenerateGanttTasksDialogProps, GeneratePlanModal, type GeneratePlanModalProps, type GeneratedPlan, type GeneratedTasksResponse, type GroupByOption, GroupBySelector, type GroupBySelectorProps, HealthBar, type HealthBarProps, type IPluginManager, type ImportResult, type Insight, type InsightSeverity, type InsightType, KanbanBoard, type KanbanBoardProps, KanbanToolbar, type KanbanToolbarProps, KanbanViewAdapter, type KanbanViewConfig, type KeyboardAction, type KeyboardShortcut, KeyboardShortcutsHelp, type KeyboardShortcutsHelpProps, type LineHeightToken, type ListColumn, type ColumnType as ListColumnType, type ListFilter, type ListSort, type ListSortColumn, ListView, type ListViewCallbacks, type ListViewConfig, type ListViewPermissions, type ListViewProps, type ListViewSupportedLocale, type ListViewTheme, type ListViewThemeName, type ListViewTranslations, MenuIcons, type MoneyMode, type OpacityToken, type PendingFile, type PersistHistoryConfig, type Plugin, type PluginContext, type PluginHooks, PluginManager, type Priority, PrioritySelector, type PrioritySelectorProps, ProfitabilityReport, type ProfitabilityReportProps, type ProjectForecast, type ProjectHealthData, QuickTaskCreate, type QuickTaskCreateData, type QuickTaskCreateProps, RATE_LIMITS, type RenderProps, type RescheduleSimulation, type RetryOptions, type RetryResult, STANDARD_FIELDS, type ShadowToken, type SortBy, type SortDirection, type SortOrder, type SortState, type SpacingToken, type StackSuggestion, type StackingConfig, type StackingStrategy, type Subtask, type SupportedLocale, type Swimlane, SwimlaneBoardView, type SwimlaneBoardViewProps, type SwimlaneConfig, type TableColumn, TagBadge, TagList, TagPicker, TaskBar, type TaskComment, TaskDetailModal, type TaskDetailModalProps, type TaskFilterType, type TaskFormData, TaskFormModal, type TaskFormModalProps, TaskGrid, type TaskPriority, type TaskTag, type Theme, type ThemeColors, type ThemeContextValue, ThemeModal, type ThemeModalProps, type ThemeName, ThemeProvider, ThemeSwitcher, type TimeEntry, TimeInputPopover, type TimeInputPopoverProps, type TimeLogInput, type TimeLogSource, TimePill, type TimePillProps, TimePopover, type TimePopoverProps, type TimeScale, type TimeTrackingBoardProps, type TimeTrackingCallbacks, type TimeTrackingSummary, Timeline, type TimerState, type ThemeColors$1 as TokenThemeColors, type TokenValue, type UsageStats, type UseAIOptions, type UseAIReturn, type UseBoardReturn as UseBoardCoreReturn, type UseBoardOptions, type UseBoardReturn$1 as UseBoardReturn, type UseCardStackingOptions, type UseCardStackingResult, type UseDragStateReturn, type UseFiltersOptions, type UseFiltersReturn, type UseKanbanStateOptions, type UseKanbanStateReturn, type UseKeyboardShortcutsOptions, type UseKeyboardShortcutsReturn, type UseMultiSelectReturn, type UseSelectionStateReturn, type User$1 as User, UserAssignmentSelector, type UserAssignmentSelectorProps, VelocityChart, type VelocityChartProps, type VelocityDataPoint, VirtualGrid, type VirtualGridProps, VirtualList, type VirtualListProps, type ZIndexToken, aiUsageTracker, borderRadius, buildCalendar, calculatePosition, cardToGanttTask, cardsToGanttTasks, cn, createKanbanView, createRetryWrapper, darkTheme, darkTheme$1 as darkTokenTheme, defaultTheme, designTokens, duration, easing, exportTokensToCSS, findTaskByName, fontSize, fontWeight, formatCost, en$1 as ganttEnTranslations, es$1 as ganttEsTranslations, ganttTaskToCardUpdate, themes$1 as ganttThemes, gantt as ganttTokens, translations as ganttTranslations, ganttUtils, generateCSSVariables, generateCompleteCSS, generateInitialPositions, generateTasksContext, generateThemeVariables, getListViewTheme, getListViewTranslations, getToken, getTranslations, kanban as kanbanTokens, lightTheme, lightTheme$1 as lightTokenTheme, lineHeight, darkTheme$2 as listViewDarkTheme, en as listViewEnTranslations, es as listViewEsTranslations, lightTheme$2 as listViewLightTheme, neutralTheme$2 as listViewNeutralTheme, listViewThemes, listViewTranslations, mergeListViewTranslations, mergeTranslations, neutralTheme, neutralTheme$1 as neutralTokenTheme, opacity, parseLocalCommand, parseNaturalDate, parseNaturalDuration, parseProgress, parseStatus, pluginManager, retrySyncOperation, retryWithBackoff, shadows, shouldVirtualizeGrid, simulateReschedule, spacing, themes, useAI, useBoard$1 as useBoard, useBoard as useBoardCore, useBoardStore, useCardStacking, useDragState, useFilteredCards, useFilters, useGanttI18n, useKanbanState, useKeyboardShortcuts, useMultiSelect, useSelectionState, useSortedCards, useTheme, useVirtualGrid, useVirtualList, validateAIResponse, withErrorBoundary, wouldCreateCircularDependency, zIndex };
7133
+ export { type AICallbacks, type AICommandResult, type GanttTask as AIGanttTask, type AIMessage, type AIModelKey, type AIOperation, AIUsageDashboard, type AIUsageDashboardProps, AI_FEATURES, AI_MODELS, type Activity, type ActivityType, AddCardButton, type AddCardButtonProps, type AddCardData, AddColumnButton, type AddColumnButtonProps, type AssigneeSuggestion, type Attachment, AttachmentUploader, type AttachmentUploaderProps, type AvailableUser, type Board, type BoardCallbacks, type BoardConfig, BoardProvider, type BoardProviderProps, type BorderRadiusToken, BulkOperationsToolbar, type BulkOperationsToolbarProps, BurnDownChart, type BurnDownChartProps, type BurnDownDataPoint, CUSTOM_FIELD_TYPES, type CalLayerId, type CalMoney, type CalView, CalendarView as CalendarBoard, type DailyLog as CalendarDailyLog, type TeamMember as CalendarTeamMember, type Calendario as CalendarioDelCronograma, Card, type CardFilter, type CardFilters, CardHistoryReplay, type CardHistoryReplayProps, CardHistoryTimeline, type CardHistoryTimelineProps, type CardProps, CardRelationshipsGraph, type CardRelationshipsGraphProps, type CardSort, type CardSortKey, CardStack, type CardStackProps, type CardStack$1 as CardStackType, type CardStatus, type CardTemplate, CardTemplateSelector, type CardTemplateSelectorProps, type CardTimeProps, type Card$1 as CardType, CircuitBreaker, Column, ColumnManager, type ColumnProps, type Column$1 as ColumnType, CommandPalette, type CommandPaletteProps, type Comment, type CommentAttachment, ConfigMenu, type ConfigMenuProps, type Conflicto as ConflictoDelCronograma, ContextMenu, type ContextMenuAction, type ContextMenuState, type CustomFieldDefinition, type CustomFieldValue, DEFAULT_SHORTCUTS, DEFAULT_TABLE_COLUMNS, DEFAULT_TEMPLATES, type DateFilter, DateRangePicker, type DateRangePickerProps, DependenciesSelector, type DependenciesSelectorProps, DependencyLine, type DesignTokens, DistributionCharts, type DistributionChartsProps, type DistributionDataPoint, type DragData, type DropData, type DurationToken, type EasingToken, EditableColumnTitle, type EditableColumnTitleProps, type EnlaceDeTarea, ErrorBoundary, type ErrorBoundaryProps, ExportDropdown, type ExportFormat, ExportImportModal, type ExportImportModalProps, type ExportOptions, type FillColumn, FilterBar, type FilterBarProps, type FilterState, type FlattenedTask, type FontSizeToken, type FontWeightToken, GANTT_AI_SYSTEM_PROMPT, GanttAIAssistant, type GanttAIAssistantConfig, type Assignee as GanttAssignee, GanttBoard, type GanttConfig as GanttBoardConfig, type GanttBoardRef, type GanttColumn, type ColumnType$1 as GanttColumnType, type GanttConfig, GanttI18nContext, Milestone as GanttMilestone, type GanttPermissions, type Task as GanttTask, type GanttTemplates, type Theme$1 as GanttTheme, type GanttTheme as GanttThemeConfig, GanttToolbar, type GanttTranslations, GenerateGanttTasksDialog, type GenerateGanttTasksDialogProps, GeneratePlanModal, type GeneratePlanModalProps, type GeneratedPlan, type GeneratedTasksResponse, type GroupByOption, GroupBySelector, type GroupBySelectorProps, HealthBar, type HealthBarProps, type IPluginManager, type ImportResult, type Insight, type InsightSeverity, type InsightType, KanbanBoard, type KanbanBoardProps, KanbanToolbar, type KanbanToolbarProps, KanbanViewAdapter, type KanbanViewConfig, type KeyboardAction, type KeyboardShortcut, KeyboardShortcutsHelp, type KeyboardShortcutsHelpProps, type LineHeightToken, type ListColumn, type ColumnType as ListColumnType, type ListFilter, type ListSort, type ListSortColumn, ListView, type ListViewCallbacks, type ListViewConfig, type ListViewPermissions, type ListViewProps, type ListViewSupportedLocale, type ListViewTheme, type ListViewThemeName, type ListViewTranslations, MenuIcons, type MoneyMode, type OpacityToken, type PendingFile, type PersistHistoryConfig, type Plugin, type PluginContext, type PluginHooks, PluginManager, type Priority, PrioritySelector, type PrioritySelectorProps, ProfitabilityReport, type ProfitabilityReportProps, type ProjectForecast, type ProjectHealthData, QuickTaskCreate, type QuickTaskCreateData, type QuickTaskCreateProps, RATE_LIMITS, type RenderProps, type RescheduleSimulation, type RetryOptions, type RetryResult, STANDARD_FIELDS, type ShadowToken, type SortBy, type SortDirection, type SortOrder, type SortState, type SpacingToken, type StackSuggestion, type StackingConfig, type StackingStrategy, type Subtask, type SupportedLocale, type Swimlane, SwimlaneBoardView, type SwimlaneBoardViewProps, type SwimlaneConfig, TODOS_LOS_DIAS, type TableColumn, TagBadge, TagList, TagPicker, type TareaEmpujada, TaskBar, type TaskComment, TaskDetailModal, type TaskDetailModalProps, type TaskFilterType, type TaskFormData, TaskFormModal, type TaskFormModalProps, TaskGrid, type TaskPriority, type TaskTag, type Theme, type ThemeColors, type ThemeContextValue, ThemeModal, type ThemeModalProps, type ThemeName, ThemeProvider, ThemeSwitcher, type TimeEntry, TimeInputPopover, type TimeInputPopoverProps, type TimeLogInput, type TimeLogSource, TimePill, type TimePillProps, TimePopover, type TimePopoverProps, type TimeScale, type TimeTrackingBoardProps, type TimeTrackingCallbacks, type TimeTrackingSummary, Timeline, type TimerState, type TipoDeEnlace, type ThemeColors$1 as TokenThemeColors, type TokenValue, type UsageStats, type UseAIOptions, type UseAIReturn, type UseBoardReturn as UseBoardCoreReturn, type UseBoardOptions, type UseBoardReturn$1 as UseBoardReturn, type UseCardStackingOptions, type UseCardStackingResult, type UseDragStateReturn, type UseFiltersOptions, type UseFiltersReturn, type UseKanbanStateOptions, type UseKanbanStateReturn, type UseKeyboardShortcutsOptions, type UseKeyboardShortcutsReturn, type UseMultiSelectReturn, type UseSelectionStateReturn, type User$1 as User, UserAssignmentSelector, type UserAssignmentSelectorProps, VelocityChart, type VelocityChartProps, type VelocityDataPoint, VirtualGrid, type VirtualGridProps, VirtualList, type VirtualListProps, type ZIndexToken, aiUsageTracker, borderRadius, buildCalendar, calculatePosition, calendarioDe, cardToGanttTask, cardsToGanttTasks, cn, conflictosDelCronograma, createKanbanView, createRetryWrapper, darkTheme, darkTheme$1 as darkTokenTheme, defaultTheme, designTokens, duration, easing, empujarSucesoras, enlacesDe, exportTokensToCSS, fechasQueCumplen, finConDuracion, findTaskByName, fontSize, fontWeight, formatCost, en$1 as ganttEnTranslations, es$1 as ganttEsTranslations, ganttTaskToCardUpdate, themes$1 as ganttThemes, gantt as ganttTokens, translations as ganttTranslations, ganttUtils, generateCSSVariables, generateCompleteCSS, generateInitialPositions, generateTasksContext, generateThemeVariables, getListViewTheme, getListViewTranslations, getToken, getTranslations, habilDesde, habilesEntre, kanban as kanbanTokens, lightTheme, lightTheme$1 as lightTokenTheme, limiteDelEnlace, lineHeight, darkTheme$2 as listViewDarkTheme, en as listViewEnTranslations, es as listViewEsTranslations, lightTheme$2 as listViewLightTheme, neutralTheme$2 as listViewNeutralTheme, listViewThemes, listViewTranslations, mergeListViewTranslations, mergeTranslations, neutralTheme, neutralTheme$1 as neutralTokenTheme, opacity, parseLocalCommand, parseNaturalDate, parseNaturalDuration, parseProgress, parseStatus, pluginManager, retrySyncOperation, retryWithBackoff, shadows, shouldVirtualizeGrid, simulateReschedule, spacing, sumarHabiles, themes, useAI, useBoard$1 as useBoard, useBoard as useBoardCore, useBoardStore, useCardStacking, useDragState, useFilteredCards, useFilters, useGanttI18n, useKanbanState, useKeyboardShortcuts, useMultiSelect, useSelectionState, useSortedCards, useTheme, useVirtualGrid, useVirtualList, validateAIResponse, withErrorBoundary, wouldCreateCircularDependency, zIndex };