import { Shape } from "@metromobilite/m-ui/m-logo-lines"; /** * @interface * @name Line * @description * Represents the properties of a transport line, including its colors, identifiers, and type. */ export interface Line { /** The color of the line. */ color: string; /** A unique identifier for the line. */ gtfsId: string; /** The line ID. */ id: string; /** The full name of the line. */ longName: string; /** The mode of transport, such as `TRAM`, `BUS`. */ mode: string; /** The short name of the line. */ shortName: string; /** The color for the text displayed on the line. */ textColor: string; /** The line type, such as `PROXIMO`, `BUS`, `TEAM`, `CHRONO_PERI`. */ type: string; /**the shape of the logo, est surchagre par l'input si existant */ shape?: Shape; /**The presence of a correct timeSheet */ timeSheet: boolean; /**The presence of a pdf instead of the standard timeSheet */ pdfTimeSheet: boolean; /**The presence of a pdf Map */ pdfMap: boolean; /**The presence of a ticket link */ ticket?: boolean; /**The presence of a different link */ ticketLink?: string; } export interface Ticket { ticket?: boolean; ticketLink?: string; } export interface RouteType { type: string | string[]; name: string; description?: string; image?: string; lines?: Line[]; linesbloc?: Array; map?: boolean; isHoraire: boolean; isScolaire?: boolean; titleOtherPage?: boolean; isPlanTC?: boolean; resolutionMap?: number; reseau?: string | string[]; logo_shape?: Shape; logo_shapes?: { [key: string]: Shape; }; ticket?: Ticket; ticket_list?: { [key: string]: Ticket; }; } export interface RouteCalendar { startDate: Date; endDate: Date; calendar: string[]; }