/** * Normalized shift classification: NORMAL / SPLIT / THROUGH / ON_CALL / SUPPORT */ export const ShiftShiftType = { "NORMAL": "NORMAL", "SPLIT": "SPLIT", "THROUGH": "THROUGH", "ON_CALL": "ON_CALL", "SUPPORT": "SUPPORT" } as const; export type ShiftShiftType = (typeof ShiftShiftType)[keyof typeof ShiftShiftType]; /** * Normalized day-part kind: DAY / EARLY / LATE / NIGHT / ON_CALL / OFF */ export const ShiftPatternKind = { "DAY": "DAY", "EARLY": "EARLY", "LATE": "LATE", "NIGHT": "NIGHT", "ON_CALL": "ON_CALL", "OFF": "OFF" } as const; export type ShiftPatternKind = (typeof ShiftPatternKind)[keyof typeof ShiftPatternKind]; /** * Lifecycle status: ACTIVE (staffing the slot) / SUPERSEDED (replaced by a swap) / CANCELLED (released) */ export const ShiftPlacementStatus = { "ACTIVE": "ACTIVE", "SUPERSEDED": "SUPERSEDED", "CANCELLED": "CANCELLED" } as const; export type ShiftPlacementStatus = (typeof ShiftPlacementStatus)[keyof typeof ShiftPlacementStatus]; /** * Origin of this placement: GENERATED (automated placement) or MANUAL (created/overridden by a person) */ export const ShiftPlacementProvenance = { "GENERATED": "GENERATED", "MANUAL": "MANUAL" } as const; export type ShiftPlacementProvenance = (typeof ShiftPlacementProvenance)[keyof typeof ShiftPlacementProvenance]; /** * Lifecycle status: DRAFT (freely editable) / CONFIRMED (committed to workers) */ export const ShiftScheduleStatus = { "DRAFT": "DRAFT", "CONFIRMED": "CONFIRMED" } as const; export type ShiftScheduleStatus = (typeof ShiftScheduleStatus)[keyof typeof ShiftScheduleStatus];