/**
 * @fileoverview WSF Schedule API Output Schemas for Schedules
 *
 * This module provides Zod schemas for validating responses from the WSF
 * Schedule API schedule operations.
 */
import { z } from "../../../../shared/zod";
/**
 * Schema for TerminalCombo - represents terminal combination information
 */
export declare const terminalComboSchema: z.ZodObject<{
    DepartingTerminalID: z.ZodNumber;
    DepartingTerminalName: z.ZodString;
    ArrivingTerminalID: z.ZodNumber;
    ArrivingTerminalName: z.ZodString;
    SailingNotes: z.ZodString;
    Annotations: z.ZodArray<z.ZodString>;
    Times: z.ZodArray<z.ZodObject<{
        DepartingTime: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
        ArrivingTime: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
        LoadingRule: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
        VesselID: z.ZodNumber;
        VesselName: z.ZodString;
        VesselHandicapAccessible: z.ZodBoolean;
        VesselPositionNum: z.ZodNumber;
        Routes: z.ZodArray<z.ZodNumber>;
        AnnotationIndexes: z.ZodArray<z.ZodNumber>;
    }, z.core.$strip>>;
    AnnotationsIVR: z.ZodArray<z.ZodString>;
}, z.core.$strip>;
export type TerminalCombo = z.infer<typeof terminalComboSchema>;
/**
 * Terminal Combos List Schema - represents an list of terminal combinations
 */
export declare const terminalCombosListSchema: z.ZodArray<z.ZodObject<{
    DepartingTerminalID: z.ZodNumber;
    DepartingTerminalName: z.ZodString;
    ArrivingTerminalID: z.ZodNumber;
    ArrivingTerminalName: z.ZodString;
    SailingNotes: z.ZodString;
    Annotations: z.ZodArray<z.ZodString>;
    Times: z.ZodArray<z.ZodObject<{
        DepartingTime: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
        ArrivingTime: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
        LoadingRule: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
        VesselID: z.ZodNumber;
        VesselName: z.ZodString;
        VesselHandicapAccessible: z.ZodBoolean;
        VesselPositionNum: z.ZodNumber;
        Routes: z.ZodArray<z.ZodNumber>;
        AnnotationIndexes: z.ZodArray<z.ZodNumber>;
    }, z.core.$strip>>;
    AnnotationsIVR: z.ZodArray<z.ZodString>;
}, z.core.$strip>>;
export type TerminalComboList = z.infer<typeof terminalCombosListSchema>;
/**
 * Schema for Schedule - represents schedule information
 */
export declare const scheduleSchema: z.ZodObject<{
    ScheduleID: z.ZodNumber;
    ScheduleName: z.ZodString;
    ScheduleSeason: z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
    SchedulePDFUrl: z.ZodString;
    ScheduleStart: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
    ScheduleEnd: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
    AllRoutes: z.ZodArray<z.ZodNumber>;
    TerminalCombos: z.ZodArray<z.ZodObject<{
        DepartingTerminalID: z.ZodNumber;
        DepartingTerminalName: z.ZodString;
        ArrivingTerminalID: z.ZodNumber;
        ArrivingTerminalName: z.ZodString;
        SailingNotes: z.ZodString;
        Annotations: z.ZodArray<z.ZodString>;
        Times: z.ZodArray<z.ZodObject<{
            DepartingTime: z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>;
            ArrivingTime: z.ZodNullable<z.ZodPipe<z.ZodString, z.ZodTransform<Date, string>>>;
            LoadingRule: z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
            VesselID: z.ZodNumber;
            VesselName: z.ZodString;
            VesselHandicapAccessible: z.ZodBoolean;
            VesselPositionNum: z.ZodNumber;
            Routes: z.ZodArray<z.ZodNumber>;
            AnnotationIndexes: z.ZodArray<z.ZodNumber>;
        }, z.core.$strip>>;
        AnnotationsIVR: z.ZodArray<z.ZodString>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type Schedule = z.infer<typeof scheduleSchema>;
//# sourceMappingURL=schedules.output.d.ts.map