/** * Accrual method this plan uses; the grant batch dispatches on it */ export const AccrualPlanAccrualMethod = { "FRONT_LOAD_TENURE": "FRONT_LOAD_TENURE" } as const; export type AccrualPlanAccrualMethod = (typeof AccrualPlanAccrualMethod)[keyof typeof AccrualPlanAccrualMethod]; /** * Grant provenance produced by this plan's accrual */ export const AccrualPlanGrantType = { "STATUTORY": "STATUTORY", "MANUAL": "MANUAL" } as const; export type AccrualPlanGrantType = (typeof AccrualPlanGrantType)[keyof typeof AccrualPlanGrantType]; /** * Generic gate kind: NONE = unconditional grant, MIN_WORKED_DAYS = worked-days gate */ export const AccrualPlanGrantConditionType = { "NONE": "NONE", "MIN_WORKED_DAYS": "MIN_WORKED_DAYS" } as const; export type AccrualPlanGrantConditionType = (typeof AccrualPlanGrantConditionType)[keyof typeof AccrualPlanGrantConditionType]; /** * Entitlement basis: STATUTORY (law-based annual leave), COMPENSATORY (compensatory leave), or MANUAL (discretionary) */ export const LeaveGrantGrantType = { "STATUTORY": "STATUTORY", "COMPENSATORY": "COMPENSATORY", "MANUAL": "MANUAL" } as const; export type LeaveGrantGrantType = (typeof LeaveGrantGrantType)[keyof typeof LeaveGrantGrantType]; /** * Provenance: HIRE front-load, ANNIVERSARY batch, or MANUAL administrator action */ export const LeaveGrantGrantSource = { "HIRE": "HIRE", "ANNIVERSARY": "ANNIVERSARY", "MANUAL": "MANUAL" } as const; export type LeaveGrantGrantSource = (typeof LeaveGrantGrantSource)[keyof typeof LeaveGrantGrantSource]; /** * Lifecycle status of the leave request */ export const LeaveRequestStatus = { "PENDING": "PENDING", "APPROVED": "APPROVED", "REJECTED": "REJECTED", "CANCELLED": "CANCELLED", "CANCEL_PENDING": "CANCEL_PENDING" } as const; export type LeaveRequestStatus = (typeof LeaveRequestStatus)[keyof typeof LeaveRequestStatus]; /** * How a request for this type is entered: FULL_DAY = one whole day, HALF_DAY = one day consuming 0.5, RANGE = a startDate–endDate span. Absent is treated as RANGE (back-compat). */ export const LeaveTypeRequestUnit = { "FULL_DAY": "FULL_DAY", "HALF_DAY": "HALF_DAY", "RANGE": "RANGE" } as const; export type LeaveTypeRequestUnit = (typeof LeaveTypeRequestUnit)[keyof typeof LeaveTypeRequestUnit];