@libxai/board 1.9.44 → 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.cts 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
  /**
@@ -489,6 +514,11 @@ interface GanttConfig {
489
514
  defaultVisibleColumns?: ColumnType$1[];
490
515
  /** 1.9.43 · texto del buscador de la app: oculta (sin tocar datos) las tareas que no coinciden por nombre. */
491
516
  searchQuery?: string;
517
+ /** 1.9.45 · pinta una fila «+ Add task» al final de la rejilla; la app decide qué hace al pulsarla. */
518
+ addTaskRow?: {
519
+ label: string;
520
+ onClick: () => void;
521
+ };
492
522
  templates?: GanttTemplates;
493
523
  permissions?: GanttPermissions;
494
524
  disableScrollSync?: boolean;
@@ -589,6 +619,8 @@ interface GanttConfig {
589
619
  * @default false
590
620
  */
591
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;
592
624
  /**
593
625
  * v3.0.0: Gantt view mode — Execution (actual) vs Oracle (baseline comparison)
594
626
  * Controls the Execution/Oracle toggle in the Chronos toolbar
@@ -601,12 +633,23 @@ interface GanttConfig {
601
633
  * When provided, replaces hardcoded placeholder values with real metrics
602
634
  */
603
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;
604
641
  /**
605
642
  * Oculta la barra interna del pronóstico (Forecast HUD) aunque se pase
606
643
  * projectForecast. Útil cuando el consumidor muestra el pronóstico en su propia
607
644
  * barra (p. ej. una barra de áreas del proyecto) y no quiere duplicarlo.
608
645
  */
609
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;
610
653
  /**
611
654
  * Callback for "Copy Snapshot Link" in the Share dropdown
612
655
  * When provided, shows the option in the export/share menu
@@ -680,7 +723,8 @@ interface GanttConfig {
680
723
  * Sets task status to 'in-progress'
681
724
  */
682
725
  onTaskSetInProgress?: (task: Task) => void;
683
- 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;
684
728
  onDependencyDelete?: (taskId: string, dependencyId: string) => void;
685
729
  onBeforeTaskAdd?: (task: Task) => boolean | void | Promise<boolean | void>;
686
730
  onAfterTaskAdd?: (task: Task) => void;
@@ -692,6 +736,14 @@ interface GanttConfig {
692
736
  onTaskDelete?: (taskId: string) => void;
693
737
  onMultiTaskDelete?: (taskIds: string[]) => void;
694
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;
695
747
  onTaskMove?: (taskId: string, direction: 'up' | 'down') => void;
696
748
  onTaskIndent?: (taskId: string) => void;
697
749
  onTaskOutdent?: (taskId: string) => void;
@@ -1759,8 +1811,11 @@ interface KanbanToolbarProps {
1759
1811
  toolbarRightContent?: React.ReactNode;
1760
1812
  /** v2.5.0: Render content just before the Create Task button (e.g., share/export dropdown) */
1761
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;
1762
1817
  }
1763
- 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;
1764
1819
 
1765
1820
  /**
1766
1821
  * AddColumnButton Component
@@ -1817,8 +1872,14 @@ interface UserAssignmentSelectorProps {
1817
1872
  onChange: (users: User[]) => void;
1818
1873
  className?: string;
1819
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;
1820
1881
  }
1821
- 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;
1822
1883
 
1823
1884
  interface AddCardData {
1824
1885
  /** Task name (required) */
@@ -2102,8 +2163,10 @@ interface AttachmentUploaderProps {
2102
2163
  allowedTypes?: string[];
2103
2164
  /** Max number of files */
2104
2165
  maxFiles?: number;
2166
+ /** QA Asakaa 2.1: idioma de los textos (por defecto, inglés). */
2167
+ locale?: 'es' | 'en';
2105
2168
  }
2106
- 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;
2107
2170
 
2108
2171
  interface VelocityDataPoint {
2109
2172
  /** Period name (e.g., "Week 1", "Sprint 3") */
@@ -2855,6 +2918,8 @@ interface GanttToolbarProps {
2855
2918
  onViewModeChange?: (mode: 'execution' | 'oracle') => void;
2856
2919
  projectForecast?: ProjectForecast;
2857
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;
2858
2923
  onExportPNG?: () => Promise<void>;
2859
2924
  onExportPDF?: () => Promise<void>;
2860
2925
  onExportExcel?: () => Promise<void>;
@@ -2886,7 +2951,7 @@ declare function GanttToolbar({ enCabecera, theme, timeScale, onTimeScaleChange,
2886
2951
  showCreateTaskButton, createTaskLabel, // v0.15.0: Will use translations if not provided
2887
2952
  onCreateTask, taskFilter, // v0.17.300: Task filter
2888
2953
  onTaskFilterChange, hideCompleted, // v0.18.0: Hide completed toggle
2889
- 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;
2890
2955
 
2891
2956
  interface TaskGridProps {
2892
2957
  tasks: Task[];
@@ -2920,7 +2985,14 @@ interface TaskGridProps {
2920
2985
  onTaskDuplicate?: (taskIds: string[]) => void;
2921
2986
  onTaskCreate?: (afterTaskId: string, direction: 'above' | 'below') => void;
2922
2987
  onTaskRename?: (taskId: string, newName: string) => void;
2988
+ /** 1.9.45 · fila «+ Add task» al final de la rejilla (la app decide qué hace). */
2989
+ addTaskRow?: {
2990
+ label: string;
2991
+ onClick: () => void;
2992
+ };
2923
2993
  onCreateSubtask?: (parentTaskId: string) => void;
2994
+ /** 1.9.47 · QA Asakaa E14: «Dependencias…» en el menú contextual. */
2995
+ onTaskDependencies?: (task: Task) => void;
2924
2996
  onOpenTaskModal?: (task: Task) => void;
2925
2997
  /** v1.9.6: ahora recibe TODOS los ids a borrar (bulk desde el menú contextual
2926
2998
  * con multi-selección) + una etiqueta para el modal de confirmación. */
@@ -2932,15 +3004,22 @@ interface TaskGridProps {
2932
3004
  allTasks?: Task[];
2933
3005
  scrollContainerRef?: React.RefObject<HTMLElement>;
2934
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;
2935
3013
  }
2936
3014
  declare function TaskGrid({ tasks, theme, rowHeight: ROW_HEIGHT, availableUsers, templates: _templates, // TODO: Use templates for custom rendering
2937
3015
  onTaskClick, onTaskSelectionChange, selectedTaskId, onTaskDblClick, // v0.8.0
2938
3016
  onTaskContextMenu, // v0.8.0
2939
- onTaskToggle, scrollTop: _scrollTop, columns, onToggleColumn, onColumnResize, onTaskUpdate, onBulkFill, onTaskIndent, onTaskOutdent, onTaskMove, onMultiTaskDelete, onTaskDuplicate, onTaskCreate, onTaskRename, 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
2940
3018
  onTaskReparent, // v0.17.68
2941
3019
  allTasks, // v1.9.10: árbol completo para traducir posición con filtros activos
2942
3020
  scrollContainerRef, // v0.18.15
2943
- showCriticalPath, }: TaskGridProps): react_jsx_runtime.JSX.Element;
3021
+ showCriticalPath, // v5.1.0
3022
+ v6, resumenV6, onContraerTodo, }: TaskGridProps): react_jsx_runtime.JSX.Element;
2944
3023
 
2945
3024
  /**
2946
3025
  * Optional working-days configuration so the tooltip Duration reflects the
@@ -2955,6 +3034,15 @@ interface WorkingDaysConfig {
2955
3034
  }
2956
3035
 
2957
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;
2958
3046
  tasks: Task[];
2959
3047
  theme: any;
2960
3048
  rowHeight: number;
@@ -2970,7 +3058,7 @@ interface TimelineProps {
2970
3058
  onTaskDblClick?: (task: Task) => void;
2971
3059
  onTaskContextMenu?: (task: Task, event: React__default.MouseEvent) => void;
2972
3060
  onTaskDateChange?: (task: Task, newStart: Date, newEnd: Date) => void;
2973
- onDependencyCreate?: (fromTask: Task, toTaskId: string) => void;
3061
+ onDependencyCreate?: (fromTask: Task, toTaskId: string, tipo?: 'FS' | 'SS' | 'FF' | 'SF') => void;
2974
3062
  onDependencyDelete?: (taskId: string, dependencyId: string) => void;
2975
3063
  /** v3.0.0: Show baseline ghost bars behind actual bars (Oracle view) */
2976
3064
  showBaseline?: boolean;
@@ -2985,6 +3073,12 @@ interface TimelineProps {
2985
3073
  onTaskProgressDrag?: (task: Task, newProgress: number) => void;
2986
3074
  /** v4.3.0: Workspace working-day config for the tooltip Duration field. */
2987
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;
2988
3082
  }
2989
3083
  interface TaskPosition {
2990
3084
  id: string;
@@ -2997,7 +3091,96 @@ declare function Timeline({ tasks, theme, rowHeight: ROW_HEIGHT, timeScale, star
2997
3091
  templates, dependencyLineStyle, // v0.17.310
2998
3092
  showTaskBarLabels, onTaskClick, onTaskDblClick, // v0.8.0
2999
3093
  onTaskContextMenu, // v0.8.0
3000
- 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[];
3001
3184
 
3002
3185
  interface TaskTooltipData {
3003
3186
  task: Task;
@@ -3023,7 +3206,8 @@ interface TaskBarProps {
3023
3206
  onDoubleClick?: (task: Task) => void;
3024
3207
  onContextMenu?: (task: Task, event: React.MouseEvent) => void;
3025
3208
  onDateChange?: (task: Task, newStart: Date, newEnd: Date) => void;
3026
- 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;
3027
3211
  allTaskPositions?: TaskPosition[];
3028
3212
  onDragMove?: (taskId: string, daysDelta: number, isDragging: boolean) => void;
3029
3213
  onHoverChange?: (tooltipData: TaskTooltipData | null) => void;
@@ -3032,13 +3216,19 @@ interface TaskBarProps {
3032
3216
  showCriticalPath?: boolean;
3033
3217
  readOnly?: boolean;
3034
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;
3035
3225
  }
3036
3226
  declare function TaskBar({ task, x, y, width, theme, dayWidth, startDate, templates, onClick, onDoubleClick, // v0.8.0
3037
3227
  onContextMenu, // v0.8.0
3038
3228
  onDateChange, onDependencyCreate, allTaskPositions, onDragMove, // v0.13.0
3039
3229
  onHoverChange, // v0.17.76
3040
3230
  showBaseline, // v3.0.0
3041
- showTaskBarLabels, showCriticalPath, readOnly, onProgressChange, }: TaskBarProps): react_jsx_runtime.JSX.Element;
3231
+ showTaskBarLabels, showCriticalPath, readOnly, onProgressChange, v6, alturaBarra, duracionV6, }: TaskBarProps): react_jsx_runtime.JSX.Element;
3042
3232
 
3043
3233
  interface DependencyLineProps {
3044
3234
  x1: number;
@@ -3054,6 +3244,10 @@ interface DependencyLineProps {
3054
3244
  colorOverride?: string;
3055
3245
  strokeWidthOverride?: number;
3056
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;
3057
3251
  }
3058
3252
  /**
3059
3253
  * v0.17.364: TRUE ClickUp-style dependency line routing
@@ -3073,16 +3267,18 @@ interface DependencyLineProps {
3073
3267
  * The vertical segment must still be LEFT of destination: turnX = x2 - OFFSET
3074
3268
  * Path: right → horizontal past source → down/up → LEFT back to destination
3075
3269
  */
3076
- 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;
3077
3271
 
3078
3272
  interface MilestoneProps {
3079
3273
  task: Task;
3080
3274
  x: number;
3081
3275
  y: number;
3082
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;
3083
3279
  onClick?: (task: Task) => void;
3084
3280
  }
3085
- 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;
3086
3282
 
3087
3283
  interface ColumnManagerProps {
3088
3284
  columns: GanttColumn[];
@@ -3126,6 +3322,7 @@ declare const MenuIcons: {
3126
3322
  Settings: react_jsx_runtime.JSX.Element;
3127
3323
  Split: react_jsx_runtime.JSX.Element;
3128
3324
  Duplicate: react_jsx_runtime.JSX.Element;
3325
+ Milestone: react_jsx_runtime.JSX.Element;
3129
3326
  MarkIncomplete: react_jsx_runtime.JSX.Element;
3130
3327
  SetInProgress: react_jsx_runtime.JSX.Element;
3131
3328
  MarkComplete: react_jsx_runtime.JSX.Element;
@@ -3202,7 +3399,7 @@ interface GanttAIAssistantProps {
3202
3399
  /** Callback for task deletion */
3203
3400
  onTaskDelete?: (taskId: string) => void;
3204
3401
  /** Callback for dependency creation */
3205
- onDependencyCreate?: (fromTaskId: string, toTaskId: string) => void;
3402
+ onDependencyCreate?: (fromTaskId: string, toTaskId: string, tipo?: 'FS' | 'SS' | 'FF' | 'SF') => void;
3206
3403
  /** Callback for dependency deletion */
3207
3404
  onDependencyDelete?: (taskId: string, dependencyId: string) => void;
3208
3405
  }
@@ -3724,6 +3921,8 @@ interface GanttTranslations {
3724
3921
  duplicateTask: string;
3725
3922
  splitTask: string;
3726
3923
  deleteTask: string;
3924
+ /** 1.9.47 · QA Asakaa E14 */
3925
+ dependencies?: string;
3727
3926
  };
3728
3927
  actions: {
3729
3928
  edit: string;
@@ -3862,7 +4061,7 @@ type SortDirection = 'asc' | 'desc';
3862
4061
  * - v1.2.0: effortMinutes, timeLoggedMinutes, soldEffortMinutes
3863
4062
  * - Custom: text, number, date, dropdown, checkbox
3864
4063
  */
3865
- 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';
3866
4065
  /**
3867
4066
  * Table column configuration for dynamic columns
3868
4067
  */
@@ -4056,11 +4255,18 @@ interface ProjectHealthData {
4056
4255
  /** v2.6.0 — Travel/per-diem portion of the executed cost (for breakdown tooltip) */
4057
4256
  totalExecutedTravel?: number;
4058
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;
4059
4263
  }
4060
4264
  /**
4061
4265
  * ListView configuration
4062
4266
  */
4063
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;
4064
4270
  /**
4065
4271
  * v1.9.25 — Hide financial indicators entirely, not just blur them.
4066
4272
  *
@@ -4129,6 +4335,12 @@ interface ListViewConfig {
4129
4335
  healthSidebar?: {
4130
4336
  enabled: boolean;
4131
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';
4132
4344
  };
4133
4345
  /** Aggregate child hours into parent row hoursBar cell (default: false) */
4134
4346
  aggregateParentHours?: boolean;
@@ -4150,6 +4362,12 @@ interface ListViewConfig {
4150
4362
  hourlyRate?: number;
4151
4363
  /** Per-user hourly rate map (userId → rate). When provided, uses the task assignee's rate instead of the global hourlyRate */
4152
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;
4153
4371
  /** Show a sticky "TOTAL PROJECT" row at the bottom of the list */
4154
4372
  showProjectTotals?: boolean;
4155
4373
  /**
@@ -4241,6 +4459,7 @@ interface ListViewTranslations {
4241
4459
  tags?: string;
4242
4460
  scheduleVariance?: string;
4243
4461
  hoursBar?: string;
4462
+ costBar?: string;
4244
4463
  teamLoad?: string;
4245
4464
  blockers?: string;
4246
4465
  weight?: string;
@@ -4650,6 +4869,11 @@ interface Props {
4650
4869
  /** 'light' aplica la paleta clara; cualquier otro = oscuro. */
4651
4870
  themeMode?: 'dark' | 'light';
4652
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;
4653
4877
  /**
4654
4878
  * ═══ EL FILTRO DE FASES ═════════════════════════════════════════════════
4655
4879
  *
@@ -4713,7 +4937,7 @@ interface Props {
4713
4937
  /** 1.9.42 · `false`: ni horas ni coste en las barras. */
4714
4938
  showValues?: boolean;
4715
4939
  }
4716
- 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;
4717
4941
 
4718
4942
  /**
4719
4943
  * Simulación de reprogramación con CPM (Calendario, Sprint 3, regla C5).
@@ -4775,6 +4999,10 @@ interface BuildOpts {
4775
4999
  hourlyRate: number;
4776
5000
  /** id de proyecto de las tareas (el calendario es por proyecto en S1). */
4777
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;
4778
5006
  }
4779
5007
  interface BuiltCalendar {
4780
5008
  calTasks: CalTask[];
@@ -6902,4 +7130,4 @@ declare const themes: Record<ThemeName, Theme>;
6902
7130
  */
6903
7131
  declare const defaultTheme: ThemeName;
6904
7132
 
6905
- 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 };