/**
 * @fileoverview WSF Schedule API Output Schemas for Sailings
 *
 * This module provides Zod schemas for validating responses from the WSF
 * Schedule API sailing operations.
 */
import { z } from "../../../../shared/zod";
/**
 * Schema for ActiveDateRange - represents active date range information
 */
export declare const activeDateRangeSchema: z.ZodObject<{
    DateFrom: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
    DateThru: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
    EventID: z.ZodNullable<z.ZodNumber>;
    EventDescription: z.ZodNullable<z.ZodString>;
}, z.core.$strip>;
export type ActiveDateRange = z.infer<typeof activeDateRangeSchema>;
/**
 * Active Date Ranges List Schema - represents an list of active date ranges
 */
export declare const activeDateRangesListSchema: z.ZodArray<z.ZodObject<{
    DateFrom: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
    DateThru: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
    EventID: z.ZodNullable<z.ZodNumber>;
    EventDescription: z.ZodNullable<z.ZodString>;
}, z.core.$strip>>;
export type ActiveDateRangeList = z.infer<typeof activeDateRangesListSchema>;
/**
 * Schema for Annotation - represents annotation information
 */
export declare const annotationSchema: z.ZodObject<{
    AnnotationID: z.ZodNumber;
    AnnotationText: z.ZodNullable<z.ZodString>;
    AnnotationIVRText: z.ZodNullable<z.ZodString>;
    AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
    AnnotationImg: z.ZodNullable<z.ZodString>;
    TypeDescription: z.ZodNullable<z.ZodString>;
    SortSeq: z.ZodNumber;
}, z.core.$strip>;
export type Annotation = z.infer<typeof annotationSchema>;
/**
 * Annotations List Schema - represents an list of annotations
 */
export declare const annotationsListSchema: z.ZodArray<z.ZodObject<{
    AnnotationID: z.ZodNumber;
    AnnotationText: z.ZodNullable<z.ZodString>;
    AnnotationIVRText: z.ZodNullable<z.ZodString>;
    AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
    AnnotationImg: z.ZodNullable<z.ZodString>;
    TypeDescription: z.ZodNullable<z.ZodString>;
    SortSeq: z.ZodNumber;
}, z.core.$strip>>;
export type AnnotationList = z.infer<typeof annotationsListSchema>;
/**
 * Schema for TerminalTime - represents terminal time information
 */
export declare const terminalTimeSchema: z.ZodObject<{
    JourneyTerminalID: z.ZodNumber;
    TerminalID: z.ZodNumber;
    TerminalDescription: z.ZodNullable<z.ZodString>;
    TerminalBriefDescription: z.ZodNullable<z.ZodString>;
    Time: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
    DepArrIndicator: z.ZodNullable<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
    IsNA: z.ZodBoolean;
    Annotations: z.ZodNullable<z.ZodArray<z.ZodObject<{
        AnnotationID: z.ZodNumber;
        AnnotationText: z.ZodNullable<z.ZodString>;
        AnnotationIVRText: z.ZodNullable<z.ZodString>;
        AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
        AnnotationImg: z.ZodNullable<z.ZodString>;
        TypeDescription: z.ZodNullable<z.ZodString>;
        SortSeq: z.ZodNumber;
    }, z.core.$strip>>>;
}, z.core.$strip>;
export type TerminalTime = z.infer<typeof terminalTimeSchema>;
/**
 * Terminal Times List Schema - represents an list of terminal times
 */
export declare const terminalTimesListSchema: z.ZodArray<z.ZodObject<{
    JourneyTerminalID: z.ZodNumber;
    TerminalID: z.ZodNumber;
    TerminalDescription: z.ZodNullable<z.ZodString>;
    TerminalBriefDescription: z.ZodNullable<z.ZodString>;
    Time: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
    DepArrIndicator: z.ZodNullable<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
    IsNA: z.ZodBoolean;
    Annotations: z.ZodNullable<z.ZodArray<z.ZodObject<{
        AnnotationID: z.ZodNumber;
        AnnotationText: z.ZodNullable<z.ZodString>;
        AnnotationIVRText: z.ZodNullable<z.ZodString>;
        AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
        AnnotationImg: z.ZodNullable<z.ZodString>;
        TypeDescription: z.ZodNullable<z.ZodString>;
        SortSeq: z.ZodNumber;
    }, z.core.$strip>>>;
}, z.core.$strip>>;
export type TerminalTimeList = z.infer<typeof terminalTimesListSchema>;
/**
 * Schema for Journey - represents journey information
 */
export declare const journeySchema: z.ZodObject<{
    JourneyID: z.ZodNumber;
    ReservationInd: z.ZodBoolean;
    InternationalInd: z.ZodBoolean;
    InterislandInd: z.ZodBoolean;
    VesselID: z.ZodNumber;
    VesselName: z.ZodNullable<z.ZodString>;
    VesselHandicapAccessible: z.ZodBoolean;
    VesselPositionNum: z.ZodNumber;
    TerminalTimes: z.ZodNullable<z.ZodArray<z.ZodObject<{
        JourneyTerminalID: z.ZodNumber;
        TerminalID: z.ZodNumber;
        TerminalDescription: z.ZodNullable<z.ZodString>;
        TerminalBriefDescription: z.ZodNullable<z.ZodString>;
        Time: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
        DepArrIndicator: z.ZodNullable<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
        IsNA: z.ZodBoolean;
        Annotations: z.ZodNullable<z.ZodArray<z.ZodObject<{
            AnnotationID: z.ZodNumber;
            AnnotationText: z.ZodNullable<z.ZodString>;
            AnnotationIVRText: z.ZodNullable<z.ZodString>;
            AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
            AnnotationImg: z.ZodNullable<z.ZodString>;
            TypeDescription: z.ZodNullable<z.ZodString>;
            SortSeq: z.ZodNumber;
        }, z.core.$strip>>>;
    }, z.core.$strip>>>;
}, z.core.$strip>;
export type Journey = z.infer<typeof journeySchema>;
/**
 * Journeys List Schema - represents an list of journeys
 */
export declare const journeysListSchema: z.ZodArray<z.ZodObject<{
    JourneyID: z.ZodNumber;
    ReservationInd: z.ZodBoolean;
    InternationalInd: z.ZodBoolean;
    InterislandInd: z.ZodBoolean;
    VesselID: z.ZodNumber;
    VesselName: z.ZodNullable<z.ZodString>;
    VesselHandicapAccessible: z.ZodBoolean;
    VesselPositionNum: z.ZodNumber;
    TerminalTimes: z.ZodNullable<z.ZodArray<z.ZodObject<{
        JourneyTerminalID: z.ZodNumber;
        TerminalID: z.ZodNumber;
        TerminalDescription: z.ZodNullable<z.ZodString>;
        TerminalBriefDescription: z.ZodNullable<z.ZodString>;
        Time: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
        DepArrIndicator: z.ZodNullable<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
        IsNA: z.ZodBoolean;
        Annotations: z.ZodNullable<z.ZodArray<z.ZodObject<{
            AnnotationID: z.ZodNumber;
            AnnotationText: z.ZodNullable<z.ZodString>;
            AnnotationIVRText: z.ZodNullable<z.ZodString>;
            AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
            AnnotationImg: z.ZodNullable<z.ZodString>;
            TypeDescription: z.ZodNullable<z.ZodString>;
            SortSeq: z.ZodNumber;
        }, z.core.$strip>>>;
    }, z.core.$strip>>>;
}, z.core.$strip>>;
export type JourneyList = z.infer<typeof journeysListSchema>;
/**
 * Schema for Sailing - represents sailing information
 */
export declare const sailingSchema: z.ZodObject<{
    ScheduleID: z.ZodNumber;
    SchedRouteID: z.ZodNumber;
    RouteID: z.ZodNumber;
    SailingID: z.ZodNumber;
    SailingDescription: z.ZodNullable<z.ZodString>;
    SailingNotes: z.ZodNullable<z.ZodString>;
    DisplayColNum: z.ZodNumber;
    SailingDir: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>;
    DayOpDescription: z.ZodNullable<z.ZodString>;
    DayOpUseForHoliday: z.ZodBoolean;
    ActiveDateRanges: z.ZodNullable<z.ZodArray<z.ZodObject<{
        DateFrom: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
        DateThru: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
        EventID: z.ZodNullable<z.ZodNumber>;
        EventDescription: z.ZodNullable<z.ZodString>;
    }, z.core.$strip>>>;
    Journs: z.ZodNullable<z.ZodArray<z.ZodObject<{
        JourneyID: z.ZodNumber;
        ReservationInd: z.ZodBoolean;
        InternationalInd: z.ZodBoolean;
        InterislandInd: z.ZodBoolean;
        VesselID: z.ZodNumber;
        VesselName: z.ZodNullable<z.ZodString>;
        VesselHandicapAccessible: z.ZodBoolean;
        VesselPositionNum: z.ZodNumber;
        TerminalTimes: z.ZodNullable<z.ZodArray<z.ZodObject<{
            JourneyTerminalID: z.ZodNumber;
            TerminalID: z.ZodNumber;
            TerminalDescription: z.ZodNullable<z.ZodString>;
            TerminalBriefDescription: z.ZodNullable<z.ZodString>;
            Time: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
            DepArrIndicator: z.ZodNullable<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
            IsNA: z.ZodBoolean;
            Annotations: z.ZodNullable<z.ZodArray<z.ZodObject<{
                AnnotationID: z.ZodNumber;
                AnnotationText: z.ZodNullable<z.ZodString>;
                AnnotationIVRText: z.ZodNullable<z.ZodString>;
                AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
                AnnotationImg: z.ZodNullable<z.ZodString>;
                TypeDescription: z.ZodNullable<z.ZodString>;
                SortSeq: z.ZodNumber;
            }, z.core.$strip>>>;
        }, z.core.$strip>>>;
    }, z.core.$strip>>>;
}, z.core.$strip>;
export type Sailing = z.infer<typeof sailingSchema>;
/**
 * Sailings List Schema - represents an list of sailings
 */
export declare const sailingsListSchema: z.ZodArray<z.ZodObject<{
    ScheduleID: z.ZodNumber;
    SchedRouteID: z.ZodNumber;
    RouteID: z.ZodNumber;
    SailingID: z.ZodNumber;
    SailingDescription: z.ZodNullable<z.ZodString>;
    SailingNotes: z.ZodNullable<z.ZodString>;
    DisplayColNum: z.ZodNumber;
    SailingDir: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>;
    DayOpDescription: z.ZodNullable<z.ZodString>;
    DayOpUseForHoliday: z.ZodBoolean;
    ActiveDateRanges: z.ZodNullable<z.ZodArray<z.ZodObject<{
        DateFrom: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
        DateThru: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
        EventID: z.ZodNullable<z.ZodNumber>;
        EventDescription: z.ZodNullable<z.ZodString>;
    }, z.core.$strip>>>;
    Journs: z.ZodNullable<z.ZodArray<z.ZodObject<{
        JourneyID: z.ZodNumber;
        ReservationInd: z.ZodBoolean;
        InternationalInd: z.ZodBoolean;
        InterislandInd: z.ZodBoolean;
        VesselID: z.ZodNumber;
        VesselName: z.ZodNullable<z.ZodString>;
        VesselHandicapAccessible: z.ZodBoolean;
        VesselPositionNum: z.ZodNumber;
        TerminalTimes: z.ZodNullable<z.ZodArray<z.ZodObject<{
            JourneyTerminalID: z.ZodNumber;
            TerminalID: z.ZodNumber;
            TerminalDescription: z.ZodNullable<z.ZodString>;
            TerminalBriefDescription: z.ZodNullable<z.ZodString>;
            Time: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
            DepArrIndicator: z.ZodNullable<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
            IsNA: z.ZodBoolean;
            Annotations: z.ZodNullable<z.ZodArray<z.ZodObject<{
                AnnotationID: z.ZodNumber;
                AnnotationText: z.ZodNullable<z.ZodString>;
                AnnotationIVRText: z.ZodNullable<z.ZodString>;
                AdjustedCrossingTime: z.ZodNullable<z.ZodNumber>;
                AnnotationImg: z.ZodNullable<z.ZodString>;
                TypeDescription: z.ZodNullable<z.ZodString>;
                SortSeq: z.ZodNumber;
            }, z.core.$strip>>>;
        }, z.core.$strip>>>;
    }, z.core.$strip>>>;
}, z.core.$strip>>;
export type SailingList = z.infer<typeof sailingsListSchema>;
//# sourceMappingURL=sailings.output.d.ts.map