import { IataCode } from "../airports/types.js"; import { StrDate } from "../date.types.js"; import { z } from "zod"; //#region source/helpers/booking.d.ts /** * Options for generating a Ryanair booking link */ declare const BookingLinkOptions: z.ZodObject<{ originIata: z.ZodString; destinationIata: z.ZodString; dateOut: z.ZodString; dateIn: z.ZodOptional; adults: z.ZodDefault; teens: z.ZodDefault; children: z.ZodDefault; infants: z.ZodDefault; isConnectedFlight: z.ZodDefault; isReturn: z.ZodDefault; discount: z.ZodDefault; promoCode: z.ZodDefault; market: z.ZodDefault; locale: z.ZodDefault; }, z.core.$strip>; type BookingLinkOptions = z.infer; /** * Generates a Ryanair booking link based on the provided flight data * * @param options - Options for generating the booking link * @returns A URL to the Ryanair booking page with the specified parameters * * @example * ```typescript * const bookingUrl = generateBookingLink({ * originIata: 'TGD', * destinationIata: 'BER', * dateOut: '2025-03-30', * adults: 1 * }); * ``` */ declare const generateBookingLink: (options: Partial) => string; /** * Generates a booking link for a one-way flight * * @param from - The IATA code of the departure airport * @param to - The IATA code of the arrival airport * @param dateOut - The departure date in YYYY-MM-DD format * @param adults - Number of adults (default: 1) * @param options - Additional booking options */ declare const generateOneWayBookingLink: (from: IataCode, to: IataCode, dateOut: StrDate, adults?: number, options?: Partial) => string; /** * Generates a booking link for a return flight * * @param from - The IATA code of the departure airport * @param to - The IATA code of the arrival airport * @param dateOut - The departure date in YYYY-MM-DD format * @param dateIn - The return date in YYYY-MM-DD format * @param adults - Number of adults (default: 1) * @param options - Additional booking options */ declare const generateReturnBookingLink: (from: IataCode, to: IataCode, dateOut: StrDate, dateIn: StrDate, adults?: number, options?: Partial) => string; //#endregion export { BookingLinkOptions, generateBookingLink, generateOneWayBookingLink, generateReturnBookingLink };