123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- //
- // GMSOpeningHours.h
- // Google Places SDK for iOS
- //
- // Copyright 2018 Google LLC
- //
- // Usage of this SDK is subject to the Google Maps/Google Earth APIs Terms of
- // Service: https://developers.google.com/maps/terms
- //
- #import <Foundation/Foundation.h>
- NS_ASSUME_NONNULL_BEGIN
- /**
- * \defgroup OpenNowStatus GMSOpenNowStatus
- * @{
- */
- /**
- * Describes the current open status of a place.
- */
- typedef NS_ENUM(NSInteger, GMSOpenNowStatus) {
- /** The place is open now. */
- GMSOpenNowStatusYes,
- /** The place is not open now. */
- GMSOpenNowStatusNo,
- /** Whether the place is open now is unknown. */
- GMSOpenNowStatusUnknown,
- };
- /**@}*/
- /**
- * \defgroup DayOfWeek GMSDayOfWeek
- * @{
- */
- /**
- * The fields represent individual days of the week. Matches NSDateComponents.weekday index.
- * Refer to https://developer.apple.com/documentation/foundation/nsdatecomponents/1410442-weekday
- */
- typedef NS_ENUM(NSUInteger, GMSDayOfWeek) {
- GMSDayOfWeekSunday = 1,
- GMSDayOfWeekMonday = 2,
- GMSDayOfWeekTuesday = 3,
- GMSDayOfWeekWednesday = 4,
- GMSDayOfWeekThursday = 5,
- GMSDayOfWeekFriday = 6,
- GMSDayOfWeekSaturday = 7,
- };
- /**@}*/
- /**
- * A class representing time in hours and minutes in a 24hr clock.
- */
- @interface GMSTime : NSObject
- /**
- * The hour representation of time in a day. (Range is between 0-23).
- */
- @property(nonatomic, readonly, assign) NSUInteger hour;
- /**
- * The minute representation of time in a 1 hr period. (Range is between 0-59).
- */
- @property(nonatomic, readonly, assign) NSUInteger minute;
- @end
- /**
- * A class representing a open/close event in |GMSPeriod|.
- */
- @interface GMSEvent : NSObject
- /**
- * Day of week the associated with the event.
- */
- @property(nonatomic, readonly, assign) GMSDayOfWeek day;
- /**
- * The representation of time of the event in 24hr clock.
- */
- @property(nonatomic, readonly, strong) GMSTime *time;
- @end
- /**
- * A class representing a period of time where the place is operating for a |GMSPlace|.
- * It contains an open |GMSEvent| and an optional close |GMSEvent|. The close event will be nil
- * if the period is open 24hrs.
- */
- @interface GMSPeriod : NSObject
- /**
- * The open event of this period.
- * Each |GMSPeriod| is guaranteed to have an open event.
- * If the period is representing open 24hrs, it will only have the openEvent with time as "0000".
- */
- @property(nonatomic, readonly, strong) GMSEvent *openEvent;
- /**
- * The close event of this period.
- * Can be nil if period is open 24hrs.
- */
- @property(nullable, nonatomic, readonly, strong) GMSEvent *closeEvent;
- @end
- /**
- * A class to handle storing and accessing opening hours information for |GMSPlace|.
- */
- @interface GMSOpeningHours : NSObject
- /**
- * Contains all |GMSPeriod|s of open and close events for the week.
- *
- * Note: Multiple periods can be associated with a day (eg. Monday 7am - Monday 2pm,
- * Monday 5pm - Monday 10pm).
- *
- * Periods may also span multiple days (eg Friday 7pm - Saturday 2am).
- */
- @property(nullable, nonatomic, readonly, strong) NSArray<GMSPeriod *> *periods;
- /**
- * Contains localized strings of the daily opening hours for the week.
- *
- * Note: The order of the text depends on the language and may begin on Monday or Sunday.
- * Do not use the GMSDayOfWeek enum to index into the array.
- */
- @property(nullable, nonatomic, readonly, strong) NSArray<NSString *> *weekdayText;
- @end
- NS_ASSUME_NONNULL_END
|