import { z } from "zod";
import type { AirportCode } from "../iata-types/airport.ts";
export declare const MarketSchema: z.ZodEnum<{
    US: "US";
    AU: "AU";
    UK: "UK";
    EU: "EU";
    APAC: "APAC";
}>;
export type Market = z.infer<typeof MarketSchema>;
export declare const RouteCategorySchema: z.ZodEnum<{
    regional: "regional";
    capital: "capital";
    fifo: "fifo";
    international: "international";
}>;
export type RouteCategory = z.infer<typeof RouteCategorySchema>;
export declare const MockRouteSchema: z.ZodObject<{
    origin: z.ZodString;
    destination: z.ZodString;
    market: z.ZodEnum<{
        US: "US";
        AU: "AU";
        UK: "UK";
        EU: "EU";
        APAC: "APAC";
    }>;
    category: z.ZodEnum<{
        regional: "regional";
        capital: "capital";
        fifo: "fifo";
        international: "international";
    }>;
    avgBlockMinutes: z.ZodNumber;
    airlines: z.ZodArray<z.ZodString>;
    curfewOrigin: z.ZodBoolean;
    curfewDestination: z.ZodBoolean;
    biosecurity: z.ZodBoolean;
    cabotageRestricted: z.ZodBoolean;
}, z.core.$strip>;
export type MockRoute = z.infer<typeof MockRouteSchema>;
export declare const GenerateRoutesOptionsSchema: z.ZodObject<{
    market: z.ZodOptional<z.ZodEnum<{
        US: "US";
        AU: "AU";
        UK: "UK";
        EU: "EU";
        APAC: "APAC";
    }>>;
    category: z.ZodOptional<z.ZodEnum<{
        regional: "regional";
        capital: "capital";
        fifo: "fifo";
        international: "international";
    }>>;
    seed: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export type GenerateRoutesOptions = z.infer<typeof GenerateRoutesOptionsSchema>;
/**
 * Generate mock routes, optionally filtered by market and category.
 * Returns deterministic results when a seed is provided.
 */
export declare function generateRoutes(options?: GenerateRoutesOptions): MockRoute[];
/**
 * Look up a specific route from the database by origin/destination.
 */
export declare function findRoute(origin: AirportCode, destination: AirportCode): MockRoute | undefined;
/**
 * List all markets in the route database.
 */
export declare function availableMarkets(): Market[];
//# sourceMappingURL=routes.d.ts.map