package at.procon.eventhub.esperpoc.dto;

import java.time.OffsetDateTime;
import java.util.List;
import java.util.UUID;

public record EsperOperatingPeriodResultDto(
        String tenantKey,
        UUID driverId,
        OffsetDateTime requestedFrom,
        OffsetDateTime requestedTo,
        OffsetDateTime loadedFrom,
        OffsetDateTime loadedTo,
        int rawEventCount,
        int driverCardRawEventCount,
        int vehicleUnitRawEventCount,
        int driverCardIntervalCount,
        int vehicleUnitIntervalCount,
        int resolvedKnownIntervalCount,
        int evaluationIntervalCount,
        int periodizedIntervalCount,
        int mergedIntervalCount,
        int nonDrivingIntervalCount,
        int operatingPeriodCount,
        int operatingSplitIdleHours,
        int significantDrivingMinutes,
        int mergeGapSeconds,
        int gapDetectionToleranceSeconds,
        EsperSourceSelectionMode sourceSelectionMode,
        EsperUnknownTreatmentMode unknownTreatmentMode,
        EsperOperatingPeriodEngineMode engineMode,
        List<RawActivityEventDto> rawEvents,
        List<ActivityIntervalDto> resolvedKnownIntervals,
        List<ActivityIntervalDto> evaluationIntervals,
        List<OperatingPeriodActivityIntervalDto> periodizedIntervals,
        List<OperatingPeriodActivityIntervalDto> mergedIntervals,
        List<NonDrivingIntervalDto> nonDrivingIntervals,
        List<OperatingPeriodDto> operatingPeriods,
        List<String> notes
) {
}
