@outbuild-company/schedule-core 1.28.0 → 1.29.0

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
@@ -212,6 +212,11 @@ declare const NOT_STARTED_PROGRESS = 0;
212
212
  /** Progress percentage representing a completed activity. */
213
213
  declare const COMPLETED_PROGRESS = 100;
214
214
 
215
+ /** Confirmation kind raised when a leaf activity that has lookahead tasks would become a parent. */
216
+ declare const LOOKAHEAD_CONFIRMATION_KIND: {
217
+ readonly HAS_LOOKAHEAD_TASKS: "has_lookahead_tasks";
218
+ };
219
+
215
220
  /** Discriminators for commands accepted by {@link ScheduleCore.dispatch}. */
216
221
  declare const DISPATCH_ACTION_KIND: {
217
222
  readonly ACTIVITY_CLIPBOARD_CLEAR: "activity-clipboard-clear";
@@ -918,6 +923,21 @@ type DispatchAction = {
918
923
  type ActivityCreationOverrides = Omit<CreationOverrides, 'durationHours'> & {
919
924
  readonly durationDays?: number;
920
925
  };
926
+ /**
927
+ * Returned with `reason: 'confirmation_required'` when a change would turn a
928
+ * leaf activity that has lookahead tasks into a parent. Re-dispatch the same
929
+ * intent with `confirmedLookaheadParentIds` listing every parent the user
930
+ * confirmed to apply it.
931
+ */
932
+ interface LookaheadConfirmationRequest {
933
+ readonly kind: typeof LOOKAHEAD_CONFIRMATION_KIND.HAS_LOOKAHEAD_TASKS;
934
+ /** First parent that has lookahead tasks. */
935
+ readonly activityId: string;
936
+ /** Every such parent, present only when more than one blocks the change. */
937
+ readonly activityIds?: readonly string[];
938
+ }
939
+ /** A confirmation request raised by a data date edit or by a lookahead guard. */
940
+ type DispatchConfirmationRequest = ConfirmationRequest | LookaheadConfirmationRequest;
921
941
  /** One ordered input accepted by {@link ScheduleCore.dispatchMany}. */
922
942
  type DispatchManyAction = DispatchAction | ActivityBatchAction;
923
943
  /** Per-operation derived-work controls; both default to `false`. */
@@ -928,7 +948,25 @@ interface DispatchOptions {
928
948
  skipCriticalPath?: boolean;
929
949
  /** Rejects create/update commands that touch an activity with children. */
930
950
  rejectParentLinkMutations?: boolean;
951
+ /** Confirmation kinds the caller grants for this operation. */
931
952
  confirmations?: readonly ConfirmationKind[];
953
+ /**
954
+ * IDs of the leaf parents with lookahead tasks that the user confirmed
955
+ * turning into parents. The lookahead confirmation rule passes a parent
956
+ * only when its ID is in this list, so one confirmed parent never covers
957
+ * another one in the same operation. `confirmations` does not confirm a
958
+ * lookahead parent.
959
+ */
960
+ confirmedLookaheadParentIds?: readonly string[];
961
+ /**
962
+ * Fresh `hasLookaheadTasks` facts keyed by activity ID. The lookahead
963
+ * confirmation rule reads the fact for a parent when the key is present
964
+ * and falls back to the stored `hasLookaheadTasks` flag otherwise. The
965
+ * facts never change the schedule state. With `dispatchMany` the rule
966
+ * reads the same map for every action and the stored flag of a parent as
967
+ * the earlier actions of the batch left it.
968
+ */
969
+ lookaheadTasksByActivityId?: Readonly<Record<string, boolean>>;
932
970
  }
933
971
  /**
934
972
  * Complete accepted or rejected command result returned unchanged by public APIs.
@@ -947,7 +985,7 @@ type DispatchResult = {
947
985
  ok: false;
948
986
  reason: string;
949
987
  alertKey?: string | undefined;
950
- confirmation?: ConfirmationRequest;
988
+ confirmation?: DispatchConfirmationRequest;
951
989
  };
952
990
  /** Ordered per-command results plus the single deferred finalization payload. */
953
991
  interface DispatchManyResult {
@@ -1988,6 +2026,32 @@ interface ScheduleActivitiesApi {
1988
2026
  * @param ids - Activities being considered for indentation.
1989
2027
  */
1990
2028
  indentTargetParentIds(ids: ReadonlyArray<ActivityId | string>): readonly string[];
2029
+ /**
2030
+ * Lists the leaf activities the actions would turn into parents.
2031
+ *
2032
+ * Covers create, move, indent, paste and append-batch actions. A move into
2033
+ * its own branch lists nothing. Each action
2034
+ * is checked against the current state, not against the state left by the
2035
+ * actions before it. The result does not depend on `hasLookaheadTasks`.
2036
+ *
2037
+ * @param actions - Actions the caller is about to dispatch.
2038
+ * @returns Unique activity IDs, in the order the actions reach them.
2039
+ */
2040
+ leafParentIdsPromotedBy(actions: ReadonlyArray<DispatchManyAction>): readonly string[];
2041
+ /**
2042
+ * Returns the lookahead confirmation a dispatch of the actions would
2043
+ * return, or `null` when none is needed.
2044
+ *
2045
+ * It runs the dispatch rule and changes nothing. Pass the same `confirmedLookaheadParentIds`
2046
+ * and `lookaheadTasksByActivityId` the dispatch would receive. It checks each
2047
+ * action against the current state, so a parent that an earlier action of
2048
+ * the batch promotes is not covered; dispatch still enforces the rule.
2049
+ *
2050
+ * @param actions - Actions the caller is about to dispatch.
2051
+ * @param options - Fresh lookahead facts and granted confirmations.
2052
+ * @returns The confirmation request, or `null`.
2053
+ */
2054
+ lookaheadConfirmationFor(actions: ReadonlyArray<DispatchManyAction>, options?: DispatchOptions): LookaheadConfirmationRequest | null;
1991
2055
  /**
1992
2056
  * Checks custom-ID uniqueness while optionally excluding the current value.
1993
2057
  *
@@ -2100,10 +2164,14 @@ interface ScheduleActivitiesApi {
2100
2164
  * Pastes copied activities after a sibling.
2101
2165
  *
2102
2166
  * @param afterSiblingId - Placement anchor.
2167
+ * Pasting under a leaf with lookahead tasks returns `confirmation_required`;
2168
+ * repeat the call with `options.confirmedLookaheadParentIds` to apply it.
2169
+ *
2103
2170
  * @param context - Optional consumer event source.
2171
+ * @param options - Confirmed lookahead parents the caller already collected.
2104
2172
  * @returns The complete dispatch result.
2105
2173
  */
2106
- paste(afterSiblingId: ActivityId, context?: MutationContext): Promise<DispatchResult>;
2174
+ paste(afterSiblingId: ActivityId, context?: MutationContext, options?: DispatchOptions): Promise<DispatchResult>;
2107
2175
  /**
2108
2176
  * Duplicates activities in place, each one landing next to itself.
2109
2177
  *
@@ -3011,6 +3079,26 @@ declare class ScheduleCore {
3011
3079
  * @param activityIds - Activities considered for indentation.
3012
3080
  */
3013
3081
  getIndentTargetParentIds(activityIds: ReadonlyArray<ActivityId | string>): readonly string[];
3082
+ /**
3083
+ * Lists the leaf activities the actions would turn into parents.
3084
+ *
3085
+ * Each action is checked against the current state, not against the state
3086
+ * left by the actions before it.
3087
+ *
3088
+ * @param actions - Actions the caller is about to dispatch.
3089
+ */
3090
+ getLeafParentIdsPromotedBy(actions: readonly DispatchManyAction[]): readonly string[];
3091
+ /**
3092
+ * Returns the lookahead confirmation the dispatch rule would raise for the
3093
+ * actions, or `null` when none is needed. The rule code is the dispatch rule
3094
+ * and nothing changes in the schedule. Like
3095
+ * {@link ScheduleCore.getLeafParentIdsPromotedBy}, it checks each action
3096
+ * against the current state.
3097
+ *
3098
+ * @param actions - Actions the caller is about to dispatch.
3099
+ * @param options - The `confirmedLookaheadParentIds` and `lookaheadTasksByActivityId` the dispatch would receive.
3100
+ */
3101
+ getLookaheadConfirmation(actions: readonly DispatchManyAction[], options?: DispatchOptions): LookaheadConfirmationRequest | null;
3014
3102
  /**
3015
3103
  * Reads defensive direct-child snapshots in correlative order.
3016
3104
  *
@@ -3698,7 +3786,6 @@ declare function allowedSecondaryConstraintTypes(primary: ConstraintType | null)
3698
3786
  /** Consumer creation contexts recognized by schedule integrations. */
3699
3787
  declare const CREATION_KIND: {
3700
3788
  readonly CHILD: "child";
3701
- readonly CHILD_CONFIRMED: "child-confirmed";
3702
3789
  readonly LINE: "line";
3703
3790
  readonly ROOT: "root";
3704
3791
  };
@@ -3754,4 +3841,4 @@ declare const DISPATCH_TRACK_EVENT: {
3754
3841
  /** Consumer analytics event name emitted by a schedule mutation. */
3755
3842
  type DispatchTrackEvent = (typeof DISPATCH_TRACK_EVENT)[keyof typeof DISPATCH_TRACK_EVENT];
3756
3843
 
3757
- export { ACTIVITY_BATCH_ACTION_KIND, ACTIVITY_BATCH_MODE, ACTIVITY_DATE_EDGE, ACTIVITY_FIELD, ACTIVITY_PONDERATOR_CRITERION, ACTIVITY_PROGRESS_ORIGIN, ACTIVITY_TYPE, type ActivityBaselineSnapshot, type ActivityBatchAction, type ActivityBatchInput, type ActivityBatchItem, type ActivityBatchItemInput, type ActivityBatchLinkInput$1 as ActivityBatchLinkInput, type ActivityBatchMode, type ActivityBatchParentReference, type ActivityBatchReference, type ActivityBulkEdit, type ActivityClipboardEntry, type ActivityClipboardReferences, type ActivityClipboardSnapshot, type ActivityCreateInput, type ActivityCreationOverrides, type ActivityCreter, type ActivityDateEdge, type ActivityDateEdit, type ActivityField, type ActivityFieldEdit, type ActivityFieldValue, type ActivityId, type ActivityLookaheadSyncInput, type ActivityMoveInput, type ActivityStatus, type ActivityType, type ApplyLookaheadConversionInput, type BackendActivityInput, type BackendCalendarExceptionInput, type BackendCalendarInput, type BackendLinkInput, type BackendScheduleInput, type BackendSectorInput, type BackendShiftInput, type BaselinePoint, type BaselineVersion, type BranchOrderChange, CALENDAR_UNIT, CHANGE_SET_SOURCE_KIND, COLUMN, COMPLETED_PROGRESS, CONFIRMATION_KIND, CONSTRAINT_TYPE, CONSTRAINT_TYPE_TO_LABEL, CONSTRAINT_WARNING_KIND, CREATION_KIND, type Calendar, type CalendarId, type CalendarLike, type CalendarReaderInput, type CalendarUnit, type CalendarWorktime, type ChangeSet, type ChangeSetSource, type ColumnName, type ConfirmationAlternative, type ConfirmationKind, type ConfirmationRequest, type ConstraintType, type ConstraintWarning, type CoreActivity, type CoreBaselinePoint, type CreationKind, type CriticalPathResult, P6_PROPERTY_CONTRACT as DATA_DATE_PROPERTY_CONTRACT, DATE_GESTURE_KIND, DEFAULT_HOURS_PER_DAY, DISPATCH_ACTION_KIND, DISPATCH_ACTION_KINDS, DISPATCH_LINK_OPERATION_KIND, DISPATCH_TRACK_EVENT, type P6ActivityCalculationInputs as DataDateActivityCalculationInputs, type P6ActivityColumnKey as DataDateActivityColumnKey, type P6ActivityData as DataDateActivityData, type P6ActivityDraftState as DataDateActivityDraftState, type P6ActivityInputPatch as DataDateActivityInputPatch, type P6ActivityState as DataDateActivityState, type P6ActivityType as DataDateActivityType, P6CapabilityError as DataDateCapabilityError, type P6CapabilityErrorCode as DataDateCapabilityErrorCode, type P6DependencyReference as DataDateDependencyReference, type P6DiagnosticProjectIdentity as DataDateDiagnosticProjectIdentity, type P6DiagnosticRelationship as DataDateDiagnosticRelationship, type P6DiagnosticRelationshipType as DataDateDiagnosticRelationshipType, type P6DurationType as DataDateDurationType, type P6EndingActivityOption as DataDateEndingActivityOption, type P6EndingActivityPage as DataDateEndingActivityPage, type P6EndingActivitySearch as DataDateEndingActivitySearch, type P6MappedScheduleOptions as DataDateMappedScheduleOptions, type P6MissingActivityInput as DataDateMissingActivityInput, type P6OutOfSequencePolicy as DataDateOutOfSequencePolicy, type P6ProjectPlannedStartChange as DataDateProjectPlannedStartChange, type P6ProjectState as DataDateProjectState, type P6PropertyContractRow as DataDatePropertyContractRow, type P6PropertyEdgeCases as DataDatePropertyEdgeCases, type P6RawProjectOptions as DataDateRawProjectOptions, type P6RawScheduleOptions as DataDateRawScheduleOptions, type P6RequiredHistoricalField as DataDateRequiredHistoricalField, type P6ResourceAssignment as DataDateResourceAssignment, type P6ScheduleDiagnostic as DataDateScheduleDiagnostic, type P6ScheduleDiagnosticCode as DataDateScheduleDiagnosticCode, type P6ScheduleInput as DataDateScheduleInput, type P6ScheduleReadiness as DataDateScheduleReadiness, type P6ScheduleResult as DataDateScheduleResult, type P6ScheduleRunLog as DataDateScheduleRunLog, type P6ScheduleSettings as DataDateScheduleSettings, type P6ScheduleWarning as DataDateScheduleWarning, type P6SettingsChange as DataDateSettingsChange, type DateGesture, type DateGestureKind, type DateGesturePreview, type DatesBatchVerdict, type DeletedActivitySnapshot, type DeletedLinkSnapshot, type DispatchAction, type DispatchActionKind, type DispatchManyAction, type DispatchManyChangeSetSource, type DispatchManyResult, type DispatchOptions, type DispatchRejectReason, type DispatchResult, type DispatchTrackEvent, EDIT_ALERT_KEY, EDIT_DENIAL_REASON, ENTITY_CHANGE_KIND, type EditAlertKey, type EditDenialReason, type EditResult, type EditableColumnName, type EffectiveGraphAudit, type EntityChange, type ActivityBatchLinkInput as ErgonomicActivityBatchLinkInput, type ExpectedProgressAdapter, FILTER_FIELD, FILTER_LOGIC, FILTER_OPERATOR, FILTER_REJECTION_REASON, FILTER_VALUE_KIND, FLAT_WBS_DEPTH, type FilterCriterion, type FilterCriterionGroup, type FilterCriterionValue, type FilterDateRange, type FilterField, type FilterLogic, type FilterOperator, type FilterRejection, type FilterState, type FilterValueKind, GROUP_ID_PREFIX, GROUP_ID_SEPARATOR, type GroupCriterion, type GroupCriterionInput, type GroupLevelWindow, type GroupState, type GroupStateInput, type ImpactRequestSyncInput, LINK_BATCH_OPERATION_KIND, LINK_CODE, LINK_CODE_TO_TYPE, LINK_REJECTION_REASON, LINK_RELATIONSHIP, LINK_TYPE, LINK_TYPE_CODE, type Link, type LinkBatchOperationKind, type LinkBatchRequest, type LinkBatchVerdict, type LinkCreateRequest, type LinkId, type LinkPatchRequest, type LinkRejection, type LinkRelationship, type LinkType, type LinkTypeCode, type LinkUpdateAction, type LinksBatchOperation, type LoadDiagnostic, type LoadDiagnosticCode, type LookaheadActualIntent, LookaheadActualTransitionError, type LookaheadActualTransitionErrorCode, type LookaheadConversionFormerParent, type LookaheadConversionGroup, type LookaheadConversionInput, type LookaheadConversionMilestoneMove, type LookaheadConversionPlan, type LookaheadConversionResult, type LookaheadDerivedCalendars, type LookaheadDerivedFields, type LookaheadDerivedFieldsResolver, type LookaheadDerivedInput, type LookaheadProgressActualActivityState, type LookaheadProgressActualInput, type LookaheadProgressActualPlan, MINIMUM_GROUP_DEPTH, MINIMUM_GROUP_LEVEL, type MutationContext, NEW_ACTIVITY_DEFAULTS, NOT_STARTED_PROGRESS, ORDER_DIRECTION, ORDER_MODE, type OrderDirection, type OrderMode, type OrderRule, type OrderState, type ParsedInput, type PendingRequest, type PersistableActivityField, type PersistedEntityIdentity, type PersistenceCheckpoint, type PipelineColumnName, type ProjectWorkHours, REJECTION_REASON, ROOT_PARENT_ID, SCHEDULE_CORE_STATUS, SCHEDULE_EFFECT_KIND, SIR_AUTO_REJECT_REASON, STATUS, STATUS_CRITERIA, type ScheduleActivitiesApi, type ScheduleApiNamespaces, type ScheduleAutoScheduleAction, type ScheduleBaselinesApi, type ScheduleCalendarsApi, type ScheduleCellsApi, ScheduleCore, type ScheduleCoreInput, type ScheduleCoreReporter, type ScheduleCoreStatus, type ScheduleCriticalPathApi, type ScheduleP6Api as ScheduleDataDatesApi, type ScheduleDiagnosticsApi, type ScheduleEffect, type ScheduleHistoryApi, type ScheduleImpactRequestsApi, type ScheduleLinksApi, type SchedulePersistenceApi, type ScheduleProjectionApi, type ScheduleSelectionApi, type ScheduleViewApi, type SectorMetadata, type SelectionToggleInput, type StandaloneCalendar, type StandaloneCalendarReader, type StaticActivityDefaults, type StatusCriteria, type TrackingEvent, UNASSIGNED_GROUP_LABEL, UNASSIGNED_VALUE_ID, type UndoOptions, VIEW_ATTRIBUTE_KIND, VISUAL_ROW_KIND, type ViewAttributeAssignmentInput, type ViewAttributeCatalogInput, type ViewAttributeFilterCriterion, type ViewAttributeOrderRule, type ViewAttributeValueInput, type ViewFilterInput, type ViewStateChange, type ViewStatePropChange, type VisualRow, WORK_TIME_DIRECTION, type WbsDepth, type WithProplannerId, type WorkTimeDirection, allowedSecondaryConstraintTypes, appendGroupRowId, buildGroupRowId, checkNoUpdatedLinks, computeExpectedProgress, createCalendarReader, createLookaheadDerivedFields, createOutbuildP6ScheduleSettings as createOutbuildDataDateScheduleSettings, createSchedule, expectedProgressFromBaseline, formatUtcAsP6WallDate, getActiveBaseline, getUnsavedActivities, isRootParent, isViewAttributeCriterion, isViewAttributeOrderRule, mapP6ScheduleOptions as mapDataDateScheduleOptions, normalizeParentKey, parseFromBackend, parseP6DayAsCalendarStart, parseP6WallDateAsUtc, planLookaheadProgressActuals, prepareLookaheadProgressActuals, resolveExpectedFinishDateSelection, resolveLookaheadActualDateSelection, willRunCriticalPath, yieldToBrowser };
3844
+ export { ACTIVITY_BATCH_ACTION_KIND, ACTIVITY_BATCH_MODE, ACTIVITY_DATE_EDGE, ACTIVITY_FIELD, ACTIVITY_PONDERATOR_CRITERION, ACTIVITY_PROGRESS_ORIGIN, ACTIVITY_TYPE, type ActivityBaselineSnapshot, type ActivityBatchAction, type ActivityBatchInput, type ActivityBatchItem, type ActivityBatchItemInput, type ActivityBatchLinkInput$1 as ActivityBatchLinkInput, type ActivityBatchMode, type ActivityBatchParentReference, type ActivityBatchReference, type ActivityBulkEdit, type ActivityClipboardEntry, type ActivityClipboardReferences, type ActivityClipboardSnapshot, type ActivityCreateInput, type ActivityCreationOverrides, type ActivityCreter, type ActivityDateEdge, type ActivityDateEdit, type ActivityField, type ActivityFieldEdit, type ActivityFieldValue, type ActivityId, type ActivityLookaheadSyncInput, type ActivityMoveInput, type ActivityStatus, type ActivityType, type ApplyLookaheadConversionInput, type BackendActivityInput, type BackendCalendarExceptionInput, type BackendCalendarInput, type BackendLinkInput, type BackendScheduleInput, type BackendSectorInput, type BackendShiftInput, type BaselinePoint, type BaselineVersion, type BranchOrderChange, CALENDAR_UNIT, CHANGE_SET_SOURCE_KIND, COLUMN, COMPLETED_PROGRESS, CONFIRMATION_KIND, CONSTRAINT_TYPE, CONSTRAINT_TYPE_TO_LABEL, CONSTRAINT_WARNING_KIND, CREATION_KIND, type Calendar, type CalendarId, type CalendarLike, type CalendarReaderInput, type CalendarUnit, type CalendarWorktime, type ChangeSet, type ChangeSetSource, type ColumnName, type ConfirmationAlternative, type ConfirmationKind, type ConfirmationRequest, type ConstraintType, type ConstraintWarning, type CoreActivity, type CoreBaselinePoint, type CreationKind, type CriticalPathResult, P6_PROPERTY_CONTRACT as DATA_DATE_PROPERTY_CONTRACT, DATE_GESTURE_KIND, DEFAULT_HOURS_PER_DAY, DISPATCH_ACTION_KIND, DISPATCH_ACTION_KINDS, DISPATCH_LINK_OPERATION_KIND, DISPATCH_TRACK_EVENT, type P6ActivityCalculationInputs as DataDateActivityCalculationInputs, type P6ActivityColumnKey as DataDateActivityColumnKey, type P6ActivityData as DataDateActivityData, type P6ActivityDraftState as DataDateActivityDraftState, type P6ActivityInputPatch as DataDateActivityInputPatch, type P6ActivityState as DataDateActivityState, type P6ActivityType as DataDateActivityType, P6CapabilityError as DataDateCapabilityError, type P6CapabilityErrorCode as DataDateCapabilityErrorCode, type P6DependencyReference as DataDateDependencyReference, type P6DiagnosticProjectIdentity as DataDateDiagnosticProjectIdentity, type P6DiagnosticRelationship as DataDateDiagnosticRelationship, type P6DiagnosticRelationshipType as DataDateDiagnosticRelationshipType, type P6DurationType as DataDateDurationType, type P6EndingActivityOption as DataDateEndingActivityOption, type P6EndingActivityPage as DataDateEndingActivityPage, type P6EndingActivitySearch as DataDateEndingActivitySearch, type P6MappedScheduleOptions as DataDateMappedScheduleOptions, type P6MissingActivityInput as DataDateMissingActivityInput, type P6OutOfSequencePolicy as DataDateOutOfSequencePolicy, type P6ProjectPlannedStartChange as DataDateProjectPlannedStartChange, type P6ProjectState as DataDateProjectState, type P6PropertyContractRow as DataDatePropertyContractRow, type P6PropertyEdgeCases as DataDatePropertyEdgeCases, type P6RawProjectOptions as DataDateRawProjectOptions, type P6RawScheduleOptions as DataDateRawScheduleOptions, type P6RequiredHistoricalField as DataDateRequiredHistoricalField, type P6ResourceAssignment as DataDateResourceAssignment, type P6ScheduleDiagnostic as DataDateScheduleDiagnostic, type P6ScheduleDiagnosticCode as DataDateScheduleDiagnosticCode, type P6ScheduleInput as DataDateScheduleInput, type P6ScheduleReadiness as DataDateScheduleReadiness, type P6ScheduleResult as DataDateScheduleResult, type P6ScheduleRunLog as DataDateScheduleRunLog, type P6ScheduleSettings as DataDateScheduleSettings, type P6ScheduleWarning as DataDateScheduleWarning, type P6SettingsChange as DataDateSettingsChange, type DateGesture, type DateGestureKind, type DateGesturePreview, type DatesBatchVerdict, type DeletedActivitySnapshot, type DeletedLinkSnapshot, type DispatchAction, type DispatchActionKind, type DispatchConfirmationRequest, type DispatchManyAction, type DispatchManyChangeSetSource, type DispatchManyResult, type DispatchOptions, type DispatchRejectReason, type DispatchResult, type DispatchTrackEvent, EDIT_ALERT_KEY, EDIT_DENIAL_REASON, ENTITY_CHANGE_KIND, type EditAlertKey, type EditDenialReason, type EditResult, type EditableColumnName, type EffectiveGraphAudit, type EntityChange, type ActivityBatchLinkInput as ErgonomicActivityBatchLinkInput, type ExpectedProgressAdapter, FILTER_FIELD, FILTER_LOGIC, FILTER_OPERATOR, FILTER_REJECTION_REASON, FILTER_VALUE_KIND, FLAT_WBS_DEPTH, type FilterCriterion, type FilterCriterionGroup, type FilterCriterionValue, type FilterDateRange, type FilterField, type FilterLogic, type FilterOperator, type FilterRejection, type FilterState, type FilterValueKind, GROUP_ID_PREFIX, GROUP_ID_SEPARATOR, type GroupCriterion, type GroupCriterionInput, type GroupLevelWindow, type GroupState, type GroupStateInput, type ImpactRequestSyncInput, LINK_BATCH_OPERATION_KIND, LINK_CODE, LINK_CODE_TO_TYPE, LINK_REJECTION_REASON, LINK_RELATIONSHIP, LINK_TYPE, LINK_TYPE_CODE, LOOKAHEAD_CONFIRMATION_KIND, type Link, type LinkBatchOperationKind, type LinkBatchRequest, type LinkBatchVerdict, type LinkCreateRequest, type LinkId, type LinkPatchRequest, type LinkRejection, type LinkRelationship, type LinkType, type LinkTypeCode, type LinkUpdateAction, type LinksBatchOperation, type LoadDiagnostic, type LoadDiagnosticCode, type LookaheadActualIntent, LookaheadActualTransitionError, type LookaheadActualTransitionErrorCode, type LookaheadConfirmationRequest, type LookaheadConversionFormerParent, type LookaheadConversionGroup, type LookaheadConversionInput, type LookaheadConversionMilestoneMove, type LookaheadConversionPlan, type LookaheadConversionResult, type LookaheadDerivedCalendars, type LookaheadDerivedFields, type LookaheadDerivedFieldsResolver, type LookaheadDerivedInput, type LookaheadProgressActualActivityState, type LookaheadProgressActualInput, type LookaheadProgressActualPlan, MINIMUM_GROUP_DEPTH, MINIMUM_GROUP_LEVEL, type MutationContext, NEW_ACTIVITY_DEFAULTS, NOT_STARTED_PROGRESS, ORDER_DIRECTION, ORDER_MODE, type OrderDirection, type OrderMode, type OrderRule, type OrderState, type ParsedInput, type PendingRequest, type PersistableActivityField, type PersistedEntityIdentity, type PersistenceCheckpoint, type PipelineColumnName, type ProjectWorkHours, REJECTION_REASON, ROOT_PARENT_ID, SCHEDULE_CORE_STATUS, SCHEDULE_EFFECT_KIND, SIR_AUTO_REJECT_REASON, STATUS, STATUS_CRITERIA, type ScheduleActivitiesApi, type ScheduleApiNamespaces, type ScheduleAutoScheduleAction, type ScheduleBaselinesApi, type ScheduleCalendarsApi, type ScheduleCellsApi, ScheduleCore, type ScheduleCoreInput, type ScheduleCoreReporter, type ScheduleCoreStatus, type ScheduleCriticalPathApi, type ScheduleP6Api as ScheduleDataDatesApi, type ScheduleDiagnosticsApi, type ScheduleEffect, type ScheduleHistoryApi, type ScheduleImpactRequestsApi, type ScheduleLinksApi, type SchedulePersistenceApi, type ScheduleProjectionApi, type ScheduleSelectionApi, type ScheduleViewApi, type SectorMetadata, type SelectionToggleInput, type StandaloneCalendar, type StandaloneCalendarReader, type StaticActivityDefaults, type StatusCriteria, type TrackingEvent, UNASSIGNED_GROUP_LABEL, UNASSIGNED_VALUE_ID, type UndoOptions, VIEW_ATTRIBUTE_KIND, VISUAL_ROW_KIND, type ViewAttributeAssignmentInput, type ViewAttributeCatalogInput, type ViewAttributeFilterCriterion, type ViewAttributeOrderRule, type ViewAttributeValueInput, type ViewFilterInput, type ViewStateChange, type ViewStatePropChange, type VisualRow, WORK_TIME_DIRECTION, type WbsDepth, type WithProplannerId, type WorkTimeDirection, allowedSecondaryConstraintTypes, appendGroupRowId, buildGroupRowId, checkNoUpdatedLinks, computeExpectedProgress, createCalendarReader, createLookaheadDerivedFields, createOutbuildP6ScheduleSettings as createOutbuildDataDateScheduleSettings, createSchedule, expectedProgressFromBaseline, formatUtcAsP6WallDate, getActiveBaseline, getUnsavedActivities, isRootParent, isViewAttributeCriterion, isViewAttributeOrderRule, mapP6ScheduleOptions as mapDataDateScheduleOptions, normalizeParentKey, parseFromBackend, parseP6DayAsCalendarStart, parseP6WallDateAsUtc, planLookaheadProgressActuals, prepareLookaheadProgressActuals, resolveExpectedFinishDateSelection, resolveLookaheadActualDateSelection, willRunCriticalPath, yieldToBrowser };
package/dist/index.d.ts CHANGED
@@ -212,6 +212,11 @@ declare const NOT_STARTED_PROGRESS = 0;
212
212
  /** Progress percentage representing a completed activity. */
213
213
  declare const COMPLETED_PROGRESS = 100;
214
214
 
215
+ /** Confirmation kind raised when a leaf activity that has lookahead tasks would become a parent. */
216
+ declare const LOOKAHEAD_CONFIRMATION_KIND: {
217
+ readonly HAS_LOOKAHEAD_TASKS: "has_lookahead_tasks";
218
+ };
219
+
215
220
  /** Discriminators for commands accepted by {@link ScheduleCore.dispatch}. */
216
221
  declare const DISPATCH_ACTION_KIND: {
217
222
  readonly ACTIVITY_CLIPBOARD_CLEAR: "activity-clipboard-clear";
@@ -918,6 +923,21 @@ type DispatchAction = {
918
923
  type ActivityCreationOverrides = Omit<CreationOverrides, 'durationHours'> & {
919
924
  readonly durationDays?: number;
920
925
  };
926
+ /**
927
+ * Returned with `reason: 'confirmation_required'` when a change would turn a
928
+ * leaf activity that has lookahead tasks into a parent. Re-dispatch the same
929
+ * intent with `confirmedLookaheadParentIds` listing every parent the user
930
+ * confirmed to apply it.
931
+ */
932
+ interface LookaheadConfirmationRequest {
933
+ readonly kind: typeof LOOKAHEAD_CONFIRMATION_KIND.HAS_LOOKAHEAD_TASKS;
934
+ /** First parent that has lookahead tasks. */
935
+ readonly activityId: string;
936
+ /** Every such parent, present only when more than one blocks the change. */
937
+ readonly activityIds?: readonly string[];
938
+ }
939
+ /** A confirmation request raised by a data date edit or by a lookahead guard. */
940
+ type DispatchConfirmationRequest = ConfirmationRequest | LookaheadConfirmationRequest;
921
941
  /** One ordered input accepted by {@link ScheduleCore.dispatchMany}. */
922
942
  type DispatchManyAction = DispatchAction | ActivityBatchAction;
923
943
  /** Per-operation derived-work controls; both default to `false`. */
@@ -928,7 +948,25 @@ interface DispatchOptions {
928
948
  skipCriticalPath?: boolean;
929
949
  /** Rejects create/update commands that touch an activity with children. */
930
950
  rejectParentLinkMutations?: boolean;
951
+ /** Confirmation kinds the caller grants for this operation. */
931
952
  confirmations?: readonly ConfirmationKind[];
953
+ /**
954
+ * IDs of the leaf parents with lookahead tasks that the user confirmed
955
+ * turning into parents. The lookahead confirmation rule passes a parent
956
+ * only when its ID is in this list, so one confirmed parent never covers
957
+ * another one in the same operation. `confirmations` does not confirm a
958
+ * lookahead parent.
959
+ */
960
+ confirmedLookaheadParentIds?: readonly string[];
961
+ /**
962
+ * Fresh `hasLookaheadTasks` facts keyed by activity ID. The lookahead
963
+ * confirmation rule reads the fact for a parent when the key is present
964
+ * and falls back to the stored `hasLookaheadTasks` flag otherwise. The
965
+ * facts never change the schedule state. With `dispatchMany` the rule
966
+ * reads the same map for every action and the stored flag of a parent as
967
+ * the earlier actions of the batch left it.
968
+ */
969
+ lookaheadTasksByActivityId?: Readonly<Record<string, boolean>>;
932
970
  }
933
971
  /**
934
972
  * Complete accepted or rejected command result returned unchanged by public APIs.
@@ -947,7 +985,7 @@ type DispatchResult = {
947
985
  ok: false;
948
986
  reason: string;
949
987
  alertKey?: string | undefined;
950
- confirmation?: ConfirmationRequest;
988
+ confirmation?: DispatchConfirmationRequest;
951
989
  };
952
990
  /** Ordered per-command results plus the single deferred finalization payload. */
953
991
  interface DispatchManyResult {
@@ -1988,6 +2026,32 @@ interface ScheduleActivitiesApi {
1988
2026
  * @param ids - Activities being considered for indentation.
1989
2027
  */
1990
2028
  indentTargetParentIds(ids: ReadonlyArray<ActivityId | string>): readonly string[];
2029
+ /**
2030
+ * Lists the leaf activities the actions would turn into parents.
2031
+ *
2032
+ * Covers create, move, indent, paste and append-batch actions. A move into
2033
+ * its own branch lists nothing. Each action
2034
+ * is checked against the current state, not against the state left by the
2035
+ * actions before it. The result does not depend on `hasLookaheadTasks`.
2036
+ *
2037
+ * @param actions - Actions the caller is about to dispatch.
2038
+ * @returns Unique activity IDs, in the order the actions reach them.
2039
+ */
2040
+ leafParentIdsPromotedBy(actions: ReadonlyArray<DispatchManyAction>): readonly string[];
2041
+ /**
2042
+ * Returns the lookahead confirmation a dispatch of the actions would
2043
+ * return, or `null` when none is needed.
2044
+ *
2045
+ * It runs the dispatch rule and changes nothing. Pass the same `confirmedLookaheadParentIds`
2046
+ * and `lookaheadTasksByActivityId` the dispatch would receive. It checks each
2047
+ * action against the current state, so a parent that an earlier action of
2048
+ * the batch promotes is not covered; dispatch still enforces the rule.
2049
+ *
2050
+ * @param actions - Actions the caller is about to dispatch.
2051
+ * @param options - Fresh lookahead facts and granted confirmations.
2052
+ * @returns The confirmation request, or `null`.
2053
+ */
2054
+ lookaheadConfirmationFor(actions: ReadonlyArray<DispatchManyAction>, options?: DispatchOptions): LookaheadConfirmationRequest | null;
1991
2055
  /**
1992
2056
  * Checks custom-ID uniqueness while optionally excluding the current value.
1993
2057
  *
@@ -2100,10 +2164,14 @@ interface ScheduleActivitiesApi {
2100
2164
  * Pastes copied activities after a sibling.
2101
2165
  *
2102
2166
  * @param afterSiblingId - Placement anchor.
2167
+ * Pasting under a leaf with lookahead tasks returns `confirmation_required`;
2168
+ * repeat the call with `options.confirmedLookaheadParentIds` to apply it.
2169
+ *
2103
2170
  * @param context - Optional consumer event source.
2171
+ * @param options - Confirmed lookahead parents the caller already collected.
2104
2172
  * @returns The complete dispatch result.
2105
2173
  */
2106
- paste(afterSiblingId: ActivityId, context?: MutationContext): Promise<DispatchResult>;
2174
+ paste(afterSiblingId: ActivityId, context?: MutationContext, options?: DispatchOptions): Promise<DispatchResult>;
2107
2175
  /**
2108
2176
  * Duplicates activities in place, each one landing next to itself.
2109
2177
  *
@@ -3011,6 +3079,26 @@ declare class ScheduleCore {
3011
3079
  * @param activityIds - Activities considered for indentation.
3012
3080
  */
3013
3081
  getIndentTargetParentIds(activityIds: ReadonlyArray<ActivityId | string>): readonly string[];
3082
+ /**
3083
+ * Lists the leaf activities the actions would turn into parents.
3084
+ *
3085
+ * Each action is checked against the current state, not against the state
3086
+ * left by the actions before it.
3087
+ *
3088
+ * @param actions - Actions the caller is about to dispatch.
3089
+ */
3090
+ getLeafParentIdsPromotedBy(actions: readonly DispatchManyAction[]): readonly string[];
3091
+ /**
3092
+ * Returns the lookahead confirmation the dispatch rule would raise for the
3093
+ * actions, or `null` when none is needed. The rule code is the dispatch rule
3094
+ * and nothing changes in the schedule. Like
3095
+ * {@link ScheduleCore.getLeafParentIdsPromotedBy}, it checks each action
3096
+ * against the current state.
3097
+ *
3098
+ * @param actions - Actions the caller is about to dispatch.
3099
+ * @param options - The `confirmedLookaheadParentIds` and `lookaheadTasksByActivityId` the dispatch would receive.
3100
+ */
3101
+ getLookaheadConfirmation(actions: readonly DispatchManyAction[], options?: DispatchOptions): LookaheadConfirmationRequest | null;
3014
3102
  /**
3015
3103
  * Reads defensive direct-child snapshots in correlative order.
3016
3104
  *
@@ -3698,7 +3786,6 @@ declare function allowedSecondaryConstraintTypes(primary: ConstraintType | null)
3698
3786
  /** Consumer creation contexts recognized by schedule integrations. */
3699
3787
  declare const CREATION_KIND: {
3700
3788
  readonly CHILD: "child";
3701
- readonly CHILD_CONFIRMED: "child-confirmed";
3702
3789
  readonly LINE: "line";
3703
3790
  readonly ROOT: "root";
3704
3791
  };
@@ -3754,4 +3841,4 @@ declare const DISPATCH_TRACK_EVENT: {
3754
3841
  /** Consumer analytics event name emitted by a schedule mutation. */
3755
3842
  type DispatchTrackEvent = (typeof DISPATCH_TRACK_EVENT)[keyof typeof DISPATCH_TRACK_EVENT];
3756
3843
 
3757
- export { ACTIVITY_BATCH_ACTION_KIND, ACTIVITY_BATCH_MODE, ACTIVITY_DATE_EDGE, ACTIVITY_FIELD, ACTIVITY_PONDERATOR_CRITERION, ACTIVITY_PROGRESS_ORIGIN, ACTIVITY_TYPE, type ActivityBaselineSnapshot, type ActivityBatchAction, type ActivityBatchInput, type ActivityBatchItem, type ActivityBatchItemInput, type ActivityBatchLinkInput$1 as ActivityBatchLinkInput, type ActivityBatchMode, type ActivityBatchParentReference, type ActivityBatchReference, type ActivityBulkEdit, type ActivityClipboardEntry, type ActivityClipboardReferences, type ActivityClipboardSnapshot, type ActivityCreateInput, type ActivityCreationOverrides, type ActivityCreter, type ActivityDateEdge, type ActivityDateEdit, type ActivityField, type ActivityFieldEdit, type ActivityFieldValue, type ActivityId, type ActivityLookaheadSyncInput, type ActivityMoveInput, type ActivityStatus, type ActivityType, type ApplyLookaheadConversionInput, type BackendActivityInput, type BackendCalendarExceptionInput, type BackendCalendarInput, type BackendLinkInput, type BackendScheduleInput, type BackendSectorInput, type BackendShiftInput, type BaselinePoint, type BaselineVersion, type BranchOrderChange, CALENDAR_UNIT, CHANGE_SET_SOURCE_KIND, COLUMN, COMPLETED_PROGRESS, CONFIRMATION_KIND, CONSTRAINT_TYPE, CONSTRAINT_TYPE_TO_LABEL, CONSTRAINT_WARNING_KIND, CREATION_KIND, type Calendar, type CalendarId, type CalendarLike, type CalendarReaderInput, type CalendarUnit, type CalendarWorktime, type ChangeSet, type ChangeSetSource, type ColumnName, type ConfirmationAlternative, type ConfirmationKind, type ConfirmationRequest, type ConstraintType, type ConstraintWarning, type CoreActivity, type CoreBaselinePoint, type CreationKind, type CriticalPathResult, P6_PROPERTY_CONTRACT as DATA_DATE_PROPERTY_CONTRACT, DATE_GESTURE_KIND, DEFAULT_HOURS_PER_DAY, DISPATCH_ACTION_KIND, DISPATCH_ACTION_KINDS, DISPATCH_LINK_OPERATION_KIND, DISPATCH_TRACK_EVENT, type P6ActivityCalculationInputs as DataDateActivityCalculationInputs, type P6ActivityColumnKey as DataDateActivityColumnKey, type P6ActivityData as DataDateActivityData, type P6ActivityDraftState as DataDateActivityDraftState, type P6ActivityInputPatch as DataDateActivityInputPatch, type P6ActivityState as DataDateActivityState, type P6ActivityType as DataDateActivityType, P6CapabilityError as DataDateCapabilityError, type P6CapabilityErrorCode as DataDateCapabilityErrorCode, type P6DependencyReference as DataDateDependencyReference, type P6DiagnosticProjectIdentity as DataDateDiagnosticProjectIdentity, type P6DiagnosticRelationship as DataDateDiagnosticRelationship, type P6DiagnosticRelationshipType as DataDateDiagnosticRelationshipType, type P6DurationType as DataDateDurationType, type P6EndingActivityOption as DataDateEndingActivityOption, type P6EndingActivityPage as DataDateEndingActivityPage, type P6EndingActivitySearch as DataDateEndingActivitySearch, type P6MappedScheduleOptions as DataDateMappedScheduleOptions, type P6MissingActivityInput as DataDateMissingActivityInput, type P6OutOfSequencePolicy as DataDateOutOfSequencePolicy, type P6ProjectPlannedStartChange as DataDateProjectPlannedStartChange, type P6ProjectState as DataDateProjectState, type P6PropertyContractRow as DataDatePropertyContractRow, type P6PropertyEdgeCases as DataDatePropertyEdgeCases, type P6RawProjectOptions as DataDateRawProjectOptions, type P6RawScheduleOptions as DataDateRawScheduleOptions, type P6RequiredHistoricalField as DataDateRequiredHistoricalField, type P6ResourceAssignment as DataDateResourceAssignment, type P6ScheduleDiagnostic as DataDateScheduleDiagnostic, type P6ScheduleDiagnosticCode as DataDateScheduleDiagnosticCode, type P6ScheduleInput as DataDateScheduleInput, type P6ScheduleReadiness as DataDateScheduleReadiness, type P6ScheduleResult as DataDateScheduleResult, type P6ScheduleRunLog as DataDateScheduleRunLog, type P6ScheduleSettings as DataDateScheduleSettings, type P6ScheduleWarning as DataDateScheduleWarning, type P6SettingsChange as DataDateSettingsChange, type DateGesture, type DateGestureKind, type DateGesturePreview, type DatesBatchVerdict, type DeletedActivitySnapshot, type DeletedLinkSnapshot, type DispatchAction, type DispatchActionKind, type DispatchManyAction, type DispatchManyChangeSetSource, type DispatchManyResult, type DispatchOptions, type DispatchRejectReason, type DispatchResult, type DispatchTrackEvent, EDIT_ALERT_KEY, EDIT_DENIAL_REASON, ENTITY_CHANGE_KIND, type EditAlertKey, type EditDenialReason, type EditResult, type EditableColumnName, type EffectiveGraphAudit, type EntityChange, type ActivityBatchLinkInput as ErgonomicActivityBatchLinkInput, type ExpectedProgressAdapter, FILTER_FIELD, FILTER_LOGIC, FILTER_OPERATOR, FILTER_REJECTION_REASON, FILTER_VALUE_KIND, FLAT_WBS_DEPTH, type FilterCriterion, type FilterCriterionGroup, type FilterCriterionValue, type FilterDateRange, type FilterField, type FilterLogic, type FilterOperator, type FilterRejection, type FilterState, type FilterValueKind, GROUP_ID_PREFIX, GROUP_ID_SEPARATOR, type GroupCriterion, type GroupCriterionInput, type GroupLevelWindow, type GroupState, type GroupStateInput, type ImpactRequestSyncInput, LINK_BATCH_OPERATION_KIND, LINK_CODE, LINK_CODE_TO_TYPE, LINK_REJECTION_REASON, LINK_RELATIONSHIP, LINK_TYPE, LINK_TYPE_CODE, type Link, type LinkBatchOperationKind, type LinkBatchRequest, type LinkBatchVerdict, type LinkCreateRequest, type LinkId, type LinkPatchRequest, type LinkRejection, type LinkRelationship, type LinkType, type LinkTypeCode, type LinkUpdateAction, type LinksBatchOperation, type LoadDiagnostic, type LoadDiagnosticCode, type LookaheadActualIntent, LookaheadActualTransitionError, type LookaheadActualTransitionErrorCode, type LookaheadConversionFormerParent, type LookaheadConversionGroup, type LookaheadConversionInput, type LookaheadConversionMilestoneMove, type LookaheadConversionPlan, type LookaheadConversionResult, type LookaheadDerivedCalendars, type LookaheadDerivedFields, type LookaheadDerivedFieldsResolver, type LookaheadDerivedInput, type LookaheadProgressActualActivityState, type LookaheadProgressActualInput, type LookaheadProgressActualPlan, MINIMUM_GROUP_DEPTH, MINIMUM_GROUP_LEVEL, type MutationContext, NEW_ACTIVITY_DEFAULTS, NOT_STARTED_PROGRESS, ORDER_DIRECTION, ORDER_MODE, type OrderDirection, type OrderMode, type OrderRule, type OrderState, type ParsedInput, type PendingRequest, type PersistableActivityField, type PersistedEntityIdentity, type PersistenceCheckpoint, type PipelineColumnName, type ProjectWorkHours, REJECTION_REASON, ROOT_PARENT_ID, SCHEDULE_CORE_STATUS, SCHEDULE_EFFECT_KIND, SIR_AUTO_REJECT_REASON, STATUS, STATUS_CRITERIA, type ScheduleActivitiesApi, type ScheduleApiNamespaces, type ScheduleAutoScheduleAction, type ScheduleBaselinesApi, type ScheduleCalendarsApi, type ScheduleCellsApi, ScheduleCore, type ScheduleCoreInput, type ScheduleCoreReporter, type ScheduleCoreStatus, type ScheduleCriticalPathApi, type ScheduleP6Api as ScheduleDataDatesApi, type ScheduleDiagnosticsApi, type ScheduleEffect, type ScheduleHistoryApi, type ScheduleImpactRequestsApi, type ScheduleLinksApi, type SchedulePersistenceApi, type ScheduleProjectionApi, type ScheduleSelectionApi, type ScheduleViewApi, type SectorMetadata, type SelectionToggleInput, type StandaloneCalendar, type StandaloneCalendarReader, type StaticActivityDefaults, type StatusCriteria, type TrackingEvent, UNASSIGNED_GROUP_LABEL, UNASSIGNED_VALUE_ID, type UndoOptions, VIEW_ATTRIBUTE_KIND, VISUAL_ROW_KIND, type ViewAttributeAssignmentInput, type ViewAttributeCatalogInput, type ViewAttributeFilterCriterion, type ViewAttributeOrderRule, type ViewAttributeValueInput, type ViewFilterInput, type ViewStateChange, type ViewStatePropChange, type VisualRow, WORK_TIME_DIRECTION, type WbsDepth, type WithProplannerId, type WorkTimeDirection, allowedSecondaryConstraintTypes, appendGroupRowId, buildGroupRowId, checkNoUpdatedLinks, computeExpectedProgress, createCalendarReader, createLookaheadDerivedFields, createOutbuildP6ScheduleSettings as createOutbuildDataDateScheduleSettings, createSchedule, expectedProgressFromBaseline, formatUtcAsP6WallDate, getActiveBaseline, getUnsavedActivities, isRootParent, isViewAttributeCriterion, isViewAttributeOrderRule, mapP6ScheduleOptions as mapDataDateScheduleOptions, normalizeParentKey, parseFromBackend, parseP6DayAsCalendarStart, parseP6WallDateAsUtc, planLookaheadProgressActuals, prepareLookaheadProgressActuals, resolveExpectedFinishDateSelection, resolveLookaheadActualDateSelection, willRunCriticalPath, yieldToBrowser };
3844
+ export { ACTIVITY_BATCH_ACTION_KIND, ACTIVITY_BATCH_MODE, ACTIVITY_DATE_EDGE, ACTIVITY_FIELD, ACTIVITY_PONDERATOR_CRITERION, ACTIVITY_PROGRESS_ORIGIN, ACTIVITY_TYPE, type ActivityBaselineSnapshot, type ActivityBatchAction, type ActivityBatchInput, type ActivityBatchItem, type ActivityBatchItemInput, type ActivityBatchLinkInput$1 as ActivityBatchLinkInput, type ActivityBatchMode, type ActivityBatchParentReference, type ActivityBatchReference, type ActivityBulkEdit, type ActivityClipboardEntry, type ActivityClipboardReferences, type ActivityClipboardSnapshot, type ActivityCreateInput, type ActivityCreationOverrides, type ActivityCreter, type ActivityDateEdge, type ActivityDateEdit, type ActivityField, type ActivityFieldEdit, type ActivityFieldValue, type ActivityId, type ActivityLookaheadSyncInput, type ActivityMoveInput, type ActivityStatus, type ActivityType, type ApplyLookaheadConversionInput, type BackendActivityInput, type BackendCalendarExceptionInput, type BackendCalendarInput, type BackendLinkInput, type BackendScheduleInput, type BackendSectorInput, type BackendShiftInput, type BaselinePoint, type BaselineVersion, type BranchOrderChange, CALENDAR_UNIT, CHANGE_SET_SOURCE_KIND, COLUMN, COMPLETED_PROGRESS, CONFIRMATION_KIND, CONSTRAINT_TYPE, CONSTRAINT_TYPE_TO_LABEL, CONSTRAINT_WARNING_KIND, CREATION_KIND, type Calendar, type CalendarId, type CalendarLike, type CalendarReaderInput, type CalendarUnit, type CalendarWorktime, type ChangeSet, type ChangeSetSource, type ColumnName, type ConfirmationAlternative, type ConfirmationKind, type ConfirmationRequest, type ConstraintType, type ConstraintWarning, type CoreActivity, type CoreBaselinePoint, type CreationKind, type CriticalPathResult, P6_PROPERTY_CONTRACT as DATA_DATE_PROPERTY_CONTRACT, DATE_GESTURE_KIND, DEFAULT_HOURS_PER_DAY, DISPATCH_ACTION_KIND, DISPATCH_ACTION_KINDS, DISPATCH_LINK_OPERATION_KIND, DISPATCH_TRACK_EVENT, type P6ActivityCalculationInputs as DataDateActivityCalculationInputs, type P6ActivityColumnKey as DataDateActivityColumnKey, type P6ActivityData as DataDateActivityData, type P6ActivityDraftState as DataDateActivityDraftState, type P6ActivityInputPatch as DataDateActivityInputPatch, type P6ActivityState as DataDateActivityState, type P6ActivityType as DataDateActivityType, P6CapabilityError as DataDateCapabilityError, type P6CapabilityErrorCode as DataDateCapabilityErrorCode, type P6DependencyReference as DataDateDependencyReference, type P6DiagnosticProjectIdentity as DataDateDiagnosticProjectIdentity, type P6DiagnosticRelationship as DataDateDiagnosticRelationship, type P6DiagnosticRelationshipType as DataDateDiagnosticRelationshipType, type P6DurationType as DataDateDurationType, type P6EndingActivityOption as DataDateEndingActivityOption, type P6EndingActivityPage as DataDateEndingActivityPage, type P6EndingActivitySearch as DataDateEndingActivitySearch, type P6MappedScheduleOptions as DataDateMappedScheduleOptions, type P6MissingActivityInput as DataDateMissingActivityInput, type P6OutOfSequencePolicy as DataDateOutOfSequencePolicy, type P6ProjectPlannedStartChange as DataDateProjectPlannedStartChange, type P6ProjectState as DataDateProjectState, type P6PropertyContractRow as DataDatePropertyContractRow, type P6PropertyEdgeCases as DataDatePropertyEdgeCases, type P6RawProjectOptions as DataDateRawProjectOptions, type P6RawScheduleOptions as DataDateRawScheduleOptions, type P6RequiredHistoricalField as DataDateRequiredHistoricalField, type P6ResourceAssignment as DataDateResourceAssignment, type P6ScheduleDiagnostic as DataDateScheduleDiagnostic, type P6ScheduleDiagnosticCode as DataDateScheduleDiagnosticCode, type P6ScheduleInput as DataDateScheduleInput, type P6ScheduleReadiness as DataDateScheduleReadiness, type P6ScheduleResult as DataDateScheduleResult, type P6ScheduleRunLog as DataDateScheduleRunLog, type P6ScheduleSettings as DataDateScheduleSettings, type P6ScheduleWarning as DataDateScheduleWarning, type P6SettingsChange as DataDateSettingsChange, type DateGesture, type DateGestureKind, type DateGesturePreview, type DatesBatchVerdict, type DeletedActivitySnapshot, type DeletedLinkSnapshot, type DispatchAction, type DispatchActionKind, type DispatchConfirmationRequest, type DispatchManyAction, type DispatchManyChangeSetSource, type DispatchManyResult, type DispatchOptions, type DispatchRejectReason, type DispatchResult, type DispatchTrackEvent, EDIT_ALERT_KEY, EDIT_DENIAL_REASON, ENTITY_CHANGE_KIND, type EditAlertKey, type EditDenialReason, type EditResult, type EditableColumnName, type EffectiveGraphAudit, type EntityChange, type ActivityBatchLinkInput as ErgonomicActivityBatchLinkInput, type ExpectedProgressAdapter, FILTER_FIELD, FILTER_LOGIC, FILTER_OPERATOR, FILTER_REJECTION_REASON, FILTER_VALUE_KIND, FLAT_WBS_DEPTH, type FilterCriterion, type FilterCriterionGroup, type FilterCriterionValue, type FilterDateRange, type FilterField, type FilterLogic, type FilterOperator, type FilterRejection, type FilterState, type FilterValueKind, GROUP_ID_PREFIX, GROUP_ID_SEPARATOR, type GroupCriterion, type GroupCriterionInput, type GroupLevelWindow, type GroupState, type GroupStateInput, type ImpactRequestSyncInput, LINK_BATCH_OPERATION_KIND, LINK_CODE, LINK_CODE_TO_TYPE, LINK_REJECTION_REASON, LINK_RELATIONSHIP, LINK_TYPE, LINK_TYPE_CODE, LOOKAHEAD_CONFIRMATION_KIND, type Link, type LinkBatchOperationKind, type LinkBatchRequest, type LinkBatchVerdict, type LinkCreateRequest, type LinkId, type LinkPatchRequest, type LinkRejection, type LinkRelationship, type LinkType, type LinkTypeCode, type LinkUpdateAction, type LinksBatchOperation, type LoadDiagnostic, type LoadDiagnosticCode, type LookaheadActualIntent, LookaheadActualTransitionError, type LookaheadActualTransitionErrorCode, type LookaheadConfirmationRequest, type LookaheadConversionFormerParent, type LookaheadConversionGroup, type LookaheadConversionInput, type LookaheadConversionMilestoneMove, type LookaheadConversionPlan, type LookaheadConversionResult, type LookaheadDerivedCalendars, type LookaheadDerivedFields, type LookaheadDerivedFieldsResolver, type LookaheadDerivedInput, type LookaheadProgressActualActivityState, type LookaheadProgressActualInput, type LookaheadProgressActualPlan, MINIMUM_GROUP_DEPTH, MINIMUM_GROUP_LEVEL, type MutationContext, NEW_ACTIVITY_DEFAULTS, NOT_STARTED_PROGRESS, ORDER_DIRECTION, ORDER_MODE, type OrderDirection, type OrderMode, type OrderRule, type OrderState, type ParsedInput, type PendingRequest, type PersistableActivityField, type PersistedEntityIdentity, type PersistenceCheckpoint, type PipelineColumnName, type ProjectWorkHours, REJECTION_REASON, ROOT_PARENT_ID, SCHEDULE_CORE_STATUS, SCHEDULE_EFFECT_KIND, SIR_AUTO_REJECT_REASON, STATUS, STATUS_CRITERIA, type ScheduleActivitiesApi, type ScheduleApiNamespaces, type ScheduleAutoScheduleAction, type ScheduleBaselinesApi, type ScheduleCalendarsApi, type ScheduleCellsApi, ScheduleCore, type ScheduleCoreInput, type ScheduleCoreReporter, type ScheduleCoreStatus, type ScheduleCriticalPathApi, type ScheduleP6Api as ScheduleDataDatesApi, type ScheduleDiagnosticsApi, type ScheduleEffect, type ScheduleHistoryApi, type ScheduleImpactRequestsApi, type ScheduleLinksApi, type SchedulePersistenceApi, type ScheduleProjectionApi, type ScheduleSelectionApi, type ScheduleViewApi, type SectorMetadata, type SelectionToggleInput, type StandaloneCalendar, type StandaloneCalendarReader, type StaticActivityDefaults, type StatusCriteria, type TrackingEvent, UNASSIGNED_GROUP_LABEL, UNASSIGNED_VALUE_ID, type UndoOptions, VIEW_ATTRIBUTE_KIND, VISUAL_ROW_KIND, type ViewAttributeAssignmentInput, type ViewAttributeCatalogInput, type ViewAttributeFilterCriterion, type ViewAttributeOrderRule, type ViewAttributeValueInput, type ViewFilterInput, type ViewStateChange, type ViewStatePropChange, type VisualRow, WORK_TIME_DIRECTION, type WbsDepth, type WithProplannerId, type WorkTimeDirection, allowedSecondaryConstraintTypes, appendGroupRowId, buildGroupRowId, checkNoUpdatedLinks, computeExpectedProgress, createCalendarReader, createLookaheadDerivedFields, createOutbuildP6ScheduleSettings as createOutbuildDataDateScheduleSettings, createSchedule, expectedProgressFromBaseline, formatUtcAsP6WallDate, getActiveBaseline, getUnsavedActivities, isRootParent, isViewAttributeCriterion, isViewAttributeOrderRule, mapP6ScheduleOptions as mapDataDateScheduleOptions, normalizeParentKey, parseFromBackend, parseP6DayAsCalendarStart, parseP6WallDateAsUtc, planLookaheadProgressActuals, prepareLookaheadProgressActuals, resolveExpectedFinishDateSelection, resolveLookaheadActualDateSelection, willRunCriticalPath, yieldToBrowser };