import { z } from 'zod';
export declare const HashedPatternWaypointSchema: z.ZodObject<{
    drop_off_type: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
    pickup_type: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
    shape_dist_traveled: z.ZodNumber;
    stop_id: z.ZodString;
    stop_lat: z.ZodNumber;
    stop_lon: z.ZodNumber;
    stop_name: z.ZodString;
    stop_sequence: z.ZodNumber;
    timepoint: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    stop_id: string;
    drop_off_type: 0 | 1 | 2 | 3;
    pickup_type: 0 | 1 | 2 | 3;
    shape_dist_traveled: number;
    stop_sequence: number;
    timepoint: number;
    stop_lat: number;
    stop_lon: number;
    stop_name: string;
}, {
    stop_id: string;
    drop_off_type: 0 | 1 | 2 | 3;
    pickup_type: 0 | 1 | 2 | 3;
    shape_dist_traveled: number;
    stop_sequence: number;
    timepoint: number;
    stop_lat: number;
    stop_lon: number;
    stop_name: string;
}>;
export type HashedPatternWaypoint = z.infer<typeof HashedPatternWaypointSchema>;
export declare const HashedPatternSchema: 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>>;
    is_locked: z.ZodDefault<z.ZodBoolean>;
    updated_at: z.ZodEffects<z.ZodNumber, import("@tmlmobilidade/go-types-shared").UnixTimestamp, number>;
    updated_by: z.ZodOptional<z.ZodString>;
}, "created_by" | "is_locked" | "updated_by"> & {
    agency_id: z.ZodString;
    line_id: z.ZodNumber;
    line_long_name: z.ZodString;
    line_short_name: z.ZodString;
    path: z.ZodDefault<z.ZodArray<z.ZodObject<{
        drop_off_type: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
        pickup_type: z.ZodUnion<[z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>;
        shape_dist_traveled: z.ZodNumber;
        stop_id: z.ZodString;
        stop_lat: z.ZodNumber;
        stop_lon: z.ZodNumber;
        stop_name: z.ZodString;
        stop_sequence: z.ZodNumber;
        timepoint: z.ZodNumber;
    }, "strip", z.ZodTypeAny, {
        stop_id: string;
        drop_off_type: 0 | 1 | 2 | 3;
        pickup_type: 0 | 1 | 2 | 3;
        shape_dist_traveled: number;
        stop_sequence: number;
        timepoint: number;
        stop_lat: number;
        stop_lon: number;
        stop_name: string;
    }, {
        stop_id: string;
        drop_off_type: 0 | 1 | 2 | 3;
        pickup_type: 0 | 1 | 2 | 3;
        shape_dist_traveled: number;
        stop_sequence: number;
        timepoint: number;
        stop_lat: number;
        stop_lon: number;
        stop_name: string;
    }>, "many">>;
    pattern_id: z.ZodString;
    route_color: z.ZodString;
    route_id: z.ZodString;
    route_long_name: z.ZodString;
    route_short_name: z.ZodString;
    route_text_color: z.ZodString;
    trip_headsign: z.ZodString;
}, "strip", z.ZodTypeAny, {
    _id: string;
    created_at: number & {
        __brand: "UnixTimestamp";
    };
    updated_at: number & {
        __brand: "UnixTimestamp";
    };
    path: {
        stop_id: string;
        drop_off_type: 0 | 1 | 2 | 3;
        pickup_type: 0 | 1 | 2 | 3;
        shape_dist_traveled: number;
        stop_sequence: number;
        timepoint: number;
        stop_lat: number;
        stop_lon: number;
        stop_name: string;
    }[];
    agency_id: string;
    line_id: number;
    route_id: string;
    pattern_id: string;
    route_color: string;
    route_long_name: string;
    route_short_name: string;
    route_text_color: string;
    trip_headsign: string;
    line_long_name: string;
    line_short_name: string;
}, {
    _id: string;
    created_at: number;
    updated_at: number;
    agency_id: string;
    line_id: number;
    route_id: string;
    pattern_id: string;
    route_color: string;
    route_long_name: string;
    route_short_name: string;
    route_text_color: string;
    trip_headsign: string;
    line_long_name: string;
    line_short_name: string;
    path?: {
        stop_id: string;
        drop_off_type: 0 | 1 | 2 | 3;
        pickup_type: 0 | 1 | 2 | 3;
        shape_dist_traveled: number;
        stop_sequence: number;
        timepoint: number;
        stop_lat: number;
        stop_lon: number;
        stop_name: string;
    }[] | undefined;
}>;
export type HashedPattern = z.infer<typeof HashedPatternSchema>;
