Skip to content

DutyRule

One hours-of-work rule over a duty log, every number the caller’s. A regime is an array of rules the caller assembles and labels; nested caps are separate rules, reported separately.

import type { DutyRule } from "@northguild/gmt";
type DutyRule<S extends string = string> =
| CumulativeCapRule<S>
| ElapsedWindowRule<S>
| RequiredInterruptionRule<S>
| RollingCapRule<S>
| FixedPeriodCapRule<S>
| RestRequirementRule<S>
| FreePeriodRule<S>
| RestBeforeDutyRule<S>
| QuotaRule<S>
| DueByRule<S>
| PatternRule<S>
| OccurrenceCapRule<S>
| UsageLookbackRule<S>;

types/duty.ts