import { z } from 'zod';
export declare const EventSchema: z.ZodObject<{
    _id: z.ZodString;
    created_at: z.ZodEffects<z.ZodNumber, import("@tmlmobilidade/go-types-shared").UnixTimestamp, number>;
    created_by: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    updated_at: z.ZodEffects<z.ZodNumber, import("@tmlmobilidade/go-types-shared").UnixTimestamp, number>;
    updated_by: z.ZodOptional<z.ZodString>;
} & {
    agency_ids: z.ZodArray<z.ZodString, "many">;
    code: z.ZodString;
    dates: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">>;
    description: z.ZodDefault<z.ZodString>;
    is_locked: z.ZodDefault<z.ZodBoolean>;
    rules: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
        _id: z.ZodOptional<z.ZodString>;
        name: z.ZodOptional<z.ZodString>;
        dates: z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">;
        lines_mode: z.ZodEnum<["all", "exclude", "include"]>;
        lines_to_exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        lines_to_include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        timepoints: z.ZodOptional<z.ZodArray<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">, "many">>;
    } & {
        all_day: z.ZodBoolean;
        end_time: z.ZodDefault<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">>;
        start_time: z.ZodDefault<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">>;
        event: z.ZodObject<{
            id: z.ZodString;
            title: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            title: string;
            id: string;
        }, {
            title: string;
            id: string;
        }>;
        kind: z.ZodLiteral<"event_restriction">;
    }, "strip", z.ZodTypeAny, {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        end_time: string & z.BRAND<"HHMM">;
        start_time: string & z.BRAND<"HHMM">;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
    }, {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        end_time?: string | undefined;
        start_time?: string | undefined;
    }>, z.ZodObject<{
        _id: z.ZodOptional<z.ZodString>;
        name: z.ZodOptional<z.ZodString>;
        dates: z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">;
        lines_mode: z.ZodEnum<["all", "exclude", "include"]>;
        lines_to_exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        lines_to_include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        timepoints: z.ZodOptional<z.ZodArray<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">, "many">>;
    } & {
        event: z.ZodObject<{
            id: z.ZodString;
            title: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            title: string;
            id: string;
        }, {
            title: string;
            id: string;
        }>;
        kind: z.ZodLiteral<"event_replacement">;
        same_weekday: z.ZodOptional<z.ZodBoolean>;
        weekdays: z.ZodArray<z.ZodNativeEnum<{
            readonly Fri: 5;
            readonly Mon: 1;
            readonly Sat: 6;
            readonly Sun: 7;
            readonly Thu: 4;
            readonly Tue: 2;
            readonly Wed: 3;
        }>, "many">;
        year_period_ids: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    }, {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    }>]>, "many">>;
    title: z.ZodString;
    associated_patterns: z.ZodDefault<z.ZodArray<z.ZodObject<{
        _id: z.ZodString;
        code: z.ZodString;
        headsign: z.ZodString;
        line_id: z.ZodString;
        route_id: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        _id: string;
        code: string;
        headsign: string;
        line_id: string;
        route_id: string;
    }, {
        _id: string;
        code: string;
        headsign: string;
        line_id: string;
        route_id: string;
    }>, "many">>;
}, "strip", z.ZodTypeAny, {
    _id: string;
    created_at: number & {
        __brand: "UnixTimestamp";
    };
    created_by: string | null;
    is_locked: boolean;
    updated_at: number & {
        __brand: "UnixTimestamp";
    };
    code: string;
    description: string;
    title: string;
    agency_ids: string[];
    dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
    rules: ({
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        end_time: string & z.BRAND<"HHMM">;
        start_time: string & z.BRAND<"HHMM">;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
    } | {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    })[];
    associated_patterns: {
        _id: string;
        code: string;
        headsign: string;
        line_id: string;
        route_id: string;
    }[];
    updated_by?: string | undefined;
}, {
    _id: string;
    created_at: number;
    updated_at: number;
    code: string;
    title: string;
    agency_ids: string[];
    created_by?: string | null | undefined;
    is_locked?: boolean | undefined;
    updated_by?: string | undefined;
    description?: string | undefined;
    dates?: string[] | undefined;
    rules?: ({
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        end_time?: string | undefined;
        start_time?: string | undefined;
    } | {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    })[] | undefined;
    associated_patterns?: {
        _id: string;
        code: string;
        headsign: string;
        line_id: string;
        route_id: string;
    }[] | undefined;
}>;
export declare const CreateEventSchema: z.ZodObject<Omit<{
    _id: z.ZodString;
    created_at: z.ZodEffects<z.ZodNumber, import("@tmlmobilidade/go-types-shared").UnixTimestamp, number>;
    created_by: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    updated_at: z.ZodEffects<z.ZodNumber, import("@tmlmobilidade/go-types-shared").UnixTimestamp, number>;
    updated_by: z.ZodOptional<z.ZodString>;
} & {
    agency_ids: z.ZodArray<z.ZodString, "many">;
    code: z.ZodString;
    dates: z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">>;
    description: z.ZodDefault<z.ZodString>;
    is_locked: z.ZodDefault<z.ZodBoolean>;
    rules: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
        _id: z.ZodOptional<z.ZodString>;
        name: z.ZodOptional<z.ZodString>;
        dates: z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">;
        lines_mode: z.ZodEnum<["all", "exclude", "include"]>;
        lines_to_exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        lines_to_include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        timepoints: z.ZodOptional<z.ZodArray<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">, "many">>;
    } & {
        all_day: z.ZodBoolean;
        end_time: z.ZodDefault<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">>;
        start_time: z.ZodDefault<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">>;
        event: z.ZodObject<{
            id: z.ZodString;
            title: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            title: string;
            id: string;
        }, {
            title: string;
            id: string;
        }>;
        kind: z.ZodLiteral<"event_restriction">;
    }, "strip", z.ZodTypeAny, {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        end_time: string & z.BRAND<"HHMM">;
        start_time: string & z.BRAND<"HHMM">;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
    }, {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        end_time?: string | undefined;
        start_time?: string | undefined;
    }>, z.ZodObject<{
        _id: z.ZodOptional<z.ZodString>;
        name: z.ZodOptional<z.ZodString>;
        dates: z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">;
        lines_mode: z.ZodEnum<["all", "exclude", "include"]>;
        lines_to_exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        lines_to_include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        timepoints: z.ZodOptional<z.ZodArray<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">, "many">>;
    } & {
        event: z.ZodObject<{
            id: z.ZodString;
            title: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            title: string;
            id: string;
        }, {
            title: string;
            id: string;
        }>;
        kind: z.ZodLiteral<"event_replacement">;
        same_weekday: z.ZodOptional<z.ZodBoolean>;
        weekdays: z.ZodArray<z.ZodNativeEnum<{
            readonly Fri: 5;
            readonly Mon: 1;
            readonly Sat: 6;
            readonly Sun: 7;
            readonly Thu: 4;
            readonly Tue: 2;
            readonly Wed: 3;
        }>, "many">;
        year_period_ids: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    }, {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    }>]>, "many">>;
    title: z.ZodString;
    associated_patterns: z.ZodDefault<z.ZodArray<z.ZodObject<{
        _id: z.ZodString;
        code: z.ZodString;
        headsign: z.ZodString;
        line_id: z.ZodString;
        route_id: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        _id: string;
        code: string;
        headsign: string;
        line_id: string;
        route_id: string;
    }, {
        _id: string;
        code: string;
        headsign: string;
        line_id: string;
        route_id: string;
    }>, "many">>;
}, "_id" | "created_at" | "updated_at" | "associated_patterns">, "strip", z.ZodTypeAny, {
    created_by: string | null;
    is_locked: boolean;
    code: string;
    description: string;
    title: string;
    agency_ids: string[];
    dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
    rules: ({
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        end_time: string & z.BRAND<"HHMM">;
        start_time: string & z.BRAND<"HHMM">;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
    } | {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    })[];
    updated_by?: string | undefined;
}, {
    code: string;
    title: string;
    agency_ids: string[];
    created_by?: string | null | undefined;
    is_locked?: boolean | undefined;
    updated_by?: string | undefined;
    description?: string | undefined;
    dates?: string[] | undefined;
    rules?: ({
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        end_time?: string | undefined;
        start_time?: string | undefined;
    } | {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    })[] | undefined;
}>;
export declare const UpdateEventSchema: z.ZodObject<{
    is_locked: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
    updated_by: z.ZodOptional<z.ZodOptional<z.ZodString>>;
    code: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodDefault<z.ZodString>>;
    title: z.ZodOptional<z.ZodString>;
    agency_ids: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    dates: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">>>;
    rules: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
        _id: z.ZodOptional<z.ZodString>;
        name: z.ZodOptional<z.ZodString>;
        dates: z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">;
        lines_mode: z.ZodEnum<["all", "exclude", "include"]>;
        lines_to_exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        lines_to_include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        timepoints: z.ZodOptional<z.ZodArray<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">, "many">>;
    } & {
        all_day: z.ZodBoolean;
        end_time: z.ZodDefault<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">>;
        start_time: z.ZodDefault<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">>;
        event: z.ZodObject<{
            id: z.ZodString;
            title: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            title: string;
            id: string;
        }, {
            title: string;
            id: string;
        }>;
        kind: z.ZodLiteral<"event_restriction">;
    }, "strip", z.ZodTypeAny, {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        end_time: string & z.BRAND<"HHMM">;
        start_time: string & z.BRAND<"HHMM">;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
    }, {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        end_time?: string | undefined;
        start_time?: string | undefined;
    }>, z.ZodObject<{
        _id: z.ZodOptional<z.ZodString>;
        name: z.ZodOptional<z.ZodString>;
        dates: z.ZodArray<z.ZodEffects<z.ZodString, import("@tmlmobilidade/go-types-shared").OperationalDate, string>, "many">;
        lines_mode: z.ZodEnum<["all", "exclude", "include"]>;
        lines_to_exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        lines_to_include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        timepoints: z.ZodOptional<z.ZodArray<z.ZodBranded<z.ZodEffects<z.ZodString, string, string>, "HHMM">, "many">>;
    } & {
        event: z.ZodObject<{
            id: z.ZodString;
            title: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            title: string;
            id: string;
        }, {
            title: string;
            id: string;
        }>;
        kind: z.ZodLiteral<"event_replacement">;
        same_weekday: z.ZodOptional<z.ZodBoolean>;
        weekdays: z.ZodArray<z.ZodNativeEnum<{
            readonly Fri: 5;
            readonly Mon: 1;
            readonly Sat: 6;
            readonly Sun: 7;
            readonly Thu: 4;
            readonly Tue: 2;
            readonly Wed: 3;
        }>, "many">;
        year_period_ids: z.ZodArray<z.ZodString, "many">;
    }, "strip", z.ZodTypeAny, {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    }, {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    }>]>, "many">>>;
}, "strip", z.ZodTypeAny, {
    is_locked?: boolean | undefined;
    updated_by?: string | undefined;
    code?: string | undefined;
    description?: string | undefined;
    title?: string | undefined;
    agency_ids?: string[] | undefined;
    dates?: import("@tmlmobilidade/go-types-shared").OperationalDate[] | undefined;
    rules?: ({
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        end_time: string & z.BRAND<"HHMM">;
        start_time: string & z.BRAND<"HHMM">;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
    } | {
        event: {
            title: string;
            id: string;
        };
        dates: import("@tmlmobilidade/go-types-shared").OperationalDate[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: (string & z.BRAND<"HHMM">)[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    })[] | undefined;
}, {
    is_locked?: boolean | undefined;
    updated_by?: string | undefined;
    code?: string | undefined;
    description?: string | undefined;
    title?: string | undefined;
    agency_ids?: string[] | undefined;
    dates?: string[] | undefined;
    rules?: ({
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_restriction";
        lines_mode: "exclude" | "include" | "all";
        all_day: boolean;
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        end_time?: string | undefined;
        start_time?: string | undefined;
    } | {
        event: {
            title: string;
            id: string;
        };
        dates: string[];
        kind: "event_replacement";
        weekdays: (1 | 2 | 4 | 3 | 5 | 6 | 7)[];
        year_period_ids: string[];
        lines_mode: "exclude" | "include" | "all";
        _id?: string | undefined;
        name?: string | undefined;
        timepoints?: string[] | undefined;
        lines_to_exclude?: string[] | undefined;
        lines_to_include?: string[] | undefined;
        same_weekday?: boolean | undefined;
    })[] | undefined;
}>;
export type Event = z.infer<typeof EventSchema>;
export type CreateEventDto = z.infer<typeof CreateEventSchema>;
export type UpdateEventDto = z.infer<typeof UpdateEventSchema>;
