UNPKG

@tmlmobilidade/types

Version:
1,857 lines • 81.9 kB
import { z } from 'zod'; export * from './demand/index.js'; export * from './passenger-impact/index.js'; export * from './realtime/index.js'; export * from './supply/index.js'; export declare const MetricSchema: z.ZodDiscriminatedUnion<"metric", [z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ line_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; }, { line_id: string; }>; } & { metric: z.ZodLiteral<"demand_by_line_by_year">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; }; generated_at: Date; metric: "demand_by_line_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; }; generated_at: Date; metric: "demand_by_line_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ line_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; }, { line_id: string; }>; } & { metric: z.ZodLiteral<"demand_by_line_by_month">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; }; generated_at: Date; metric: "demand_by_line_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; }; generated_at: Date; metric: "demand_by_line_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; properties: z.ZodObject<{ line_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; }, { line_id: string; }>; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodEnum<["0", "1"]>; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_line_by_day">; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; }; generated_at: Date; metric: "demand_by_line_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; }; generated_at: Date; metric: "demand_by_line_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; }, { pattern_id: string; }>; } & { metric: z.ZodLiteral<"demand_by_pattern_by_year">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; }; generated_at: Date; metric: "demand_by_pattern_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; }; generated_at: Date; metric: "demand_by_pattern_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; }, { pattern_id: string; }>; } & { metric: z.ZodLiteral<"demand_by_pattern_by_month">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; }; generated_at: Date; metric: "demand_by_pattern_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; }; generated_at: Date; metric: "demand_by_pattern_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; properties: z.ZodObject<{ pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; }, { pattern_id: string; }>; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodEnum<["0", "1"]>; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_pattern_by_day">; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { pattern_id: string; }; generated_at: Date; metric: "demand_by_pattern_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { pattern_id: string; }; generated_at: Date; metric: "demand_by_pattern_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ hour: z.ZodNumber; line_id: z.ZodString; minute: z.ZodNumber; pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; pattern_id: string; hour: number; minute: number; }, { line_id: string; pattern_id: string; hour: number; minute: number; }>; } & { metric: z.ZodLiteral<"demand_by_pattern_hour_by_year">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; pattern_id: string; hour: number; minute: number; }; generated_at: Date; metric: "demand_by_pattern_hour_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; pattern_id: string; hour: number; minute: number; }; generated_at: Date; metric: "demand_by_pattern_hour_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ hour: z.ZodNumber; line_id: z.ZodString; minute: z.ZodNumber; pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; pattern_id: string; hour: number; minute: number; }, { line_id: string; pattern_id: string; hour: number; minute: number; }>; } & { metric: z.ZodLiteral<"demand_by_pattern_hour_by_month">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; pattern_id: string; hour: number; minute: number; }; generated_at: Date; metric: "demand_by_pattern_hour_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; pattern_id: string; hour: number; minute: number; }; generated_at: Date; metric: "demand_by_pattern_hour_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; properties: z.ZodObject<{ hour: z.ZodNumber; line_id: z.ZodString; minute: z.ZodNumber; pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; pattern_id: string; hour: number; minute: number; }, { line_id: string; pattern_id: string; hour: number; minute: number; }>; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodEnum<["0", "1"]>; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_pattern_hour_by_day">; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; pattern_id: string; hour: number; minute: number; }; generated_at: Date; metric: "demand_by_pattern_hour_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; pattern_id: string; hour: number; minute: number; }; generated_at: Date; metric: "demand_by_pattern_hour_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ agency_id: z.ZodString; }, "strip", z.ZodTypeAny, { agency_id: string; }, { agency_id: string; }>; } & { metric: z.ZodLiteral<"demand_by_agency_by_year">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; properties: z.ZodObject<{ agency_id: z.ZodString; }, "strip", z.ZodTypeAny, { agency_id: string; }, { agency_id: string; }>; } & { metric: z.ZodLiteral<"demand_by_agency_by_month">; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; properties: z.ZodObject<{ agency_id: z.ZodString; }, "strip", z.ZodTypeAny, { agency_id: string; }, { agency_id: string; }>; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodEnum<["0", "1"]>; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_agency_by_day">; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; properties: z.ZodObject<{ agency_id: z.ZodString; }, "strip", z.ZodTypeAny, { agency_id: string; }, { agency_id: string; }>; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodEnum<["0", "1"]>; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; products: z.ZodRecord<z.ZodString, z.ZodNumber>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; products: Record<string, number>; }, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; products: Record<string, number>; }>>; metric: z.ZodLiteral<"demand_by_agency_by_day_by_product">; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; products: Record<string, number>; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_day_by_product"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; products: Record<string, number>; }>; properties: { agency_id: string; }; generated_at: Date; metric: "demand_by_agency_by_day_by_product"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodEnum<["0", "1"]>; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_product_by_agency_by_day">; properties: z.ZodObject<{ agency_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { agency_id: string; product_id: string; }, { agency_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { agency_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_agency_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { agency_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_agency_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_product_by_agency_by_month">; properties: z.ZodObject<{ agency_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { agency_id: string; product_id: string; }, { agency_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { agency_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_agency_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { agency_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_agency_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_product_by_agency_by_year">; properties: z.ZodObject<{ agency_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { agency_id: string; product_id: string; }, { agency_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { agency_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_agency_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { agency_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_agency_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodEnum<["0", "1"]>; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_product_by_line_by_day">; properties: z.ZodObject<{ line_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; product_id: string; }, { line_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_line_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: "0" | "1"; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_line_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_product_by_line_by_month">; properties: z.ZodObject<{ line_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; product_id: string; }, { line_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_line_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_line_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_product_by_line_by_year">; properties: z.ZodObject<{ line_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; product_id: string; }, { line_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_line_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_line_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodBoolean; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_product_by_pattern_by_day">; properties: z.ZodObject<{ pattern_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; product_id: string; }, { pattern_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { pattern_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_pattern_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { pattern_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_pattern_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_product_by_pattern_by_month">; properties: z.ZodObject<{ pattern_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; product_id: string; }, { pattern_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_pattern_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_pattern_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_product_by_pattern_by_year">; properties: z.ZodObject<{ pattern_id: z.ZodString; product_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; product_id: string; }, { pattern_id: string; product_id: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_pattern_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; product_id: string; }; generated_at: Date; metric: "demand_by_product_by_pattern_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodBoolean; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_category_by_agency_by_day">; properties: z.ZodObject<{ agency_id: z.ZodString; category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; }, "strip", z.ZodTypeAny, { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_agency_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_agency_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_category_by_agency_by_month">; properties: z.ZodObject<{ agency_id: z.ZodString; category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; }, "strip", z.ZodTypeAny, { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_agency_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_agency_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_category_by_agency_by_year">; properties: z.ZodObject<{ agency_id: z.ZodString; category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; }, "strip", z.ZodTypeAny, { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_agency_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { agency_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_agency_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodBoolean; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_category_by_line_by_day">; properties: z.ZodObject<{ category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; line_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_line_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_line_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_category_by_line_by_month">; properties: z.ZodObject<{ category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; line_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_line_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_line_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_category_by_line_by_year">; properties: z.ZodObject<{ category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; line_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_line_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { line_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_line_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ day_type: z.ZodEnum<["1", "2", "3"]>; holiday: z.ZodBoolean; notes: z.ZodNullable<z.ZodString>; period: z.ZodEnum<["1", "2", "3"]>; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>>; metric: z.ZodLiteral<"demand_by_category_by_pattern_by_day">; properties: z.ZodObject<{ category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_pattern_by_day"; description?: string | undefined; }, { data: Record<string, { period: "1" | "2" | "3"; holiday: boolean; qty: number; day_type: "1" | "2" | "3"; notes: string | null; }>; properties: { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_pattern_by_day"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_category_by_pattern_by_month">; properties: z.ZodObject<{ category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_pattern_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_pattern_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; }, { qty: number; }>>; metric: z.ZodLiteral<"demand_by_category_by_pattern_by_year">; properties: z.ZodObject<{ category: z.ZodEnum<["prepaid", "subscription", "on_board_sale"]>; pattern_id: z.ZodString; }, "strip", z.ZodTypeAny, { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }, { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_pattern_by_year"; description?: string | undefined; }, { data: Record<string, { qty: number; }>; properties: { pattern_id: string; category: "prepaid" | "subscription" | "on_board_sale"; }; generated_at: Date; metric: "demand_by_category_by_pattern_by_year"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodObject<{ agencies: z.ZodRecord<z.ZodString, z.ZodObject<{ day: z.ZodObject<{ date: z.ZodString; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { date: string; qty: number; }, { date: string; qty: number; }>; month: z.ZodObject<{ date: z.ZodString; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { date: string; qty: number; }, { date: string; qty: number; }>; }, "strip", z.ZodTypeAny, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }>>; total: z.ZodObject<{ day: z.ZodObject<{ date: z.ZodString; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { date: string; qty: number; }, { date: string; qty: number; }>; month: z.ZodObject<{ date: z.ZodString; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { date: string; qty: number; }, { date: string; qty: number; }>; }, "strip", z.ZodTypeAny, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }>; }, "strip", z.ZodTypeAny, { agencies: Record<string, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }>; total: { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }; }, { agencies: Record<string, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }>; total: { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }; }>; metric: z.ZodLiteral<"top_demand_by_agency">; }, "strip", z.ZodTypeAny, { data: { agencies: Record<string, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }>; total: { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }; }; generated_at: Date; metric: "top_demand_by_agency"; description?: string | undefined; }, { data: { agencies: Record<string, { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }>; total: { day: { date: string; qty: number; }; month: { date: string; qty: number; }; }; }; generated_at: Date; metric: "top_demand_by_agency"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; properties: z.ZodObject<{ line_id: z.ZodString; }, "strip", z.ZodTypeAny, { line_id: string; }, { line_id: string; }>; } & { data: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodObject<{ avg: z.ZodOptional<z.ZodNumber>; count: z.ZodNumber; qty: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; count: number; avg?: number | undefined; }, { qty: number; count: number; avg?: number | undefined; }>>>; metric: z.ZodLiteral<"mean_demand_by_line_by_month">; }, "strip", z.ZodTypeAny, { data: Record<string, Record<string, { qty: number; count: number; avg?: number | undefined; }>>; properties: { line_id: string; }; generated_at: Date; metric: "mean_demand_by_line_by_month"; description?: string | undefined; }, { data: Record<string, Record<string, { qty: number; count: number; avg?: number | undefined; }>>; properties: { line_id: string; }; generated_at: Date; metric: "mean_demand_by_line_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; } & { data: z.ZodRecord<z.ZodString, z.ZodObject<{ increase_pct: z.ZodNumber; qty: z.ZodNumber; year_avg: z.ZodNumber; }, "strip", z.ZodTypeAny, { qty: number; increase_pct: number; year_avg: number; }, { qty: number; increase_pct: number; year_avg: number; }>>; metric: z.ZodLiteral<"top_mean_demand_by_line_by_month">; properties: z.ZodObject<{ year_month: z.ZodString; }, "strip", z.ZodTypeAny, { year_month: string; }, { year_month: string; }>; }, "strip", z.ZodTypeAny, { data: Record<string, { qty: number; increase_pct: number; year_avg: number; }>; properties: { year_month: string; }; generated_at: Date; metric: "top_mean_demand_by_line_by_month"; description?: string | undefined; }, { data: Record<string, { qty: number; increase_pct: number; year_avg: number; }>; properties: { year_month: string; }; generated_at: Date; metric: "top_mean_demand_by_line_by_month"; description?: string | undefined; }>, z.ZodObject<{ description: z.ZodOptional<z.ZodString>; generated_at: z.ZodDate; }