1-line-opening-hours
Version:
Simple parser for OpenStreetMap `opening_hours`
60 lines (59 loc) • 1.54 kB
TypeScript
export interface OpeningHoursData {
su: string[];
mo: string[];
tu: string[];
we: string[];
th: string[];
fr: string[];
sa: string[];
ph: string[];
}
export interface NextOpeningDay {
day: string;
opensInDay: number;
}
export interface NextReopening {
hour: string | null;
day: string;
opensInDay: number;
}
export interface FullDayStatus {
open: boolean;
openUntil: string | null;
nextReopening: NextReopening | null;
}
export declare class OpeningHours {
private MAX_CLOSE_TIME;
private MIN_OPEN_TIME;
private openingHours;
constructor(stringOpeningHours: string);
getTable(): OpeningHoursData;
private getTodayDateWithOffset;
isOpenOn(date: Date): boolean;
isOpenNow(utcOffset?: number): boolean;
private geTimeSlots;
private isCurrentlyOnNightServiceOfYesterday;
getFullStatusOfDay: (date: Date) => FullDayStatus;
getFullStatusOfToday: (utcOffset?: number) => FullDayStatus;
private openUntil;
private opensAt;
private getNextOpeningDay;
private getNextReopening;
private serializeHoursOfDay;
private parse;
private simplify;
private formatTime;
private splitHard;
private parseHardPart;
private parseDays;
private calcDayRange;
private calcRange;
private checkTime;
private checkDay;
private compareTime;
private isNightlyService;
private constructDateFromTime;
private getHoursAndMinutes;
private getTimesOfDay;
toReadableString(): string;
}