UNPKG

minotor

Version:

A lightweight client-side transit routing library.

126 lines (125 loc) 4.32 kB
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; export declare const protobufPackage = "minotor.timetable"; export declare enum TransferType { RECOMMENDED_TRANSFER_POINT = 0, TIMED_TRANSFER = 1, REQUIRES_MINIMAL_TIME = 2, IN_SEAT_TRANSFER = 3, UNRECOGNIZED = -1 } export declare function transferTypeFromJSON(object: any): TransferType; export declare function transferTypeToJSON(object: TransferType): string; export declare enum RouteType { TRAM = 0, SUBWAY = 1, RAIL = 2, BUS = 3, FERRY = 4, CABLE_TRAM = 5, AERIAL_LIFT = 6, FUNICULAR = 7, TROLLEYBUS = 8, MONORAIL = 9, UNRECOGNIZED = -1 } export declare function routeTypeFromJSON(object: any): RouteType; export declare function routeTypeToJSON(object: RouteType): string; export interface Route { /** * Arrivals and departures encoded as a 32 bit uint array. * Format: [arrival1, departure1, arrival2, departure2, etc.] */ stopTimes: Uint8Array; /** * PickUp and DropOff types represented as an 8 bit uint array. * Values: * 0: REGULAR * 1: NOT_AVAILABLE * 2: MUST_PHONE_AGENCY * 3: MUST_COORDINATE_WITH_DRIVER * Format: [pickupTypeStop1, dropOffTypeStop1, pickupTypeStop2, dropOffTypeStop2, etc.] */ pickUpDropOffTypes: Uint8Array; /** * Stops encoded as a 32 bit uint array. * Format: [stop1, stop2, stop3, etc.] */ stops: Uint8Array; serviceRouteId: string; } export interface RoutesAdjacency { routes: { [key: string]: Route; }; } export interface RoutesAdjacency_RoutesEntry { key: string; value: Route | undefined; } export interface Transfer { destination: number; type: TransferType; minTransferTime?: number | undefined; } export interface StopsAdjacency { stops: { [key: string]: StopsAdjacency_StopAdjacency; }; } export interface StopsAdjacency_StopAdjacency { transfers: Transfer[]; routes: string[]; } export interface StopsAdjacency_StopsEntry { key: string; value: StopsAdjacency_StopAdjacency | undefined; } export interface ServiceRoute { type: RouteType; name: string; } export interface ServiceRoutesMap { routes: { [key: string]: ServiceRoute; }; } export interface ServiceRoutesMap_RoutesEntry { key: string; value: ServiceRoute | undefined; } export interface Timetable { version: string; stopsAdjacency: StopsAdjacency | undefined; routesAdjacency: RoutesAdjacency | undefined; routes: ServiceRoutesMap | undefined; } export declare const Route: MessageFns<Route>; export declare const RoutesAdjacency: MessageFns<RoutesAdjacency>; export declare const RoutesAdjacency_RoutesEntry: MessageFns<RoutesAdjacency_RoutesEntry>; export declare const Transfer: MessageFns<Transfer>; export declare const StopsAdjacency: MessageFns<StopsAdjacency>; export declare const StopsAdjacency_StopAdjacency: MessageFns<StopsAdjacency_StopAdjacency>; export declare const StopsAdjacency_StopsEntry: MessageFns<StopsAdjacency_StopsEntry>; export declare const ServiceRoute: MessageFns<ServiceRoute>; export declare const ServiceRoutesMap: MessageFns<ServiceRoutesMap>; export declare const ServiceRoutesMap_RoutesEntry: MessageFns<ServiceRoutesMap_RoutesEntry>; export declare const Timetable: MessageFns<Timetable>; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]>; } : Partial<T>; type KeysOfUnion<T> = T extends T ? keyof T : never; export type Exact<P, I extends P> = P extends Builtin ? P : P & { [K in keyof P]: Exact<P[K], I[K]>; } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never; }; export interface MessageFns<T> { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create<I extends Exact<DeepPartial<T>, I>>(base?: I): T; fromPartial<I extends Exact<DeepPartial<T>, I>>(object: I): T; } export {};