AI-generated Key Takeaways
- 
          This documentation lists globally available enumerations for the Google Maps SDK for iOS Navigation. 
- 
          These enumerations control aspects like navigation behavior, camera settings, route preferences, and UI elements. 
- 
          Each enumeration is defined in both Swift and Objective-C with a brief description of its purpose. 
- 
          Developers can use these enumerations to customize the functionality and appearance of their navigation experience. 
Enumerations
The following enumerations are available globally.
- 
                  
                  A GMSNavigationDelayCategoryis a category that represents the delay category of a route or a a path.DeclarationSwift enum GMSNavigationDelayCategory : Int, @unchecked SendableObjective-C enum GMSNavigationDelayCategory : NSInteger {}
- 
                  
                  The image size which GMSNavigationStepInfoimages will be generated.DeclarationSwift enum GMSNavigationManeuverImageSize : Int, @unchecked SendableObjective-C enum GMSNavigationManeuverImageSize : NSInteger {}
- 
                  
                  The camera mode which determines the camera following behavior. DeclarationSwift enum GMSNavigationCameraMode : Int, @unchecked SendableObjective-C enum GMSNavigationCameraMode : NSInteger {}
- 
                  
                  The different camera perspectives that can be set when following the user location. DeclarationSwift enum GMSNavigationCameraPerspective : Int, @unchecked SendableObjective-C enum GMSNavigationCameraPerspective : NSInteger {}
- 
                  
                  The different travel modes that can be used for navigation. DeclarationSwift enum GMSNavigationTravelMode : Int, @unchecked SendableObjective-C enum GMSNavigationTravelMode : NSInteger {}
- 
                  
                  Determines whether voice guidance is played under certain circumstances. DeclarationSwift enum GMSNavigationVoiceGuidance : Int, @unchecked SendableObjective-C enum GMSNavigationVoiceGuidance : NSInteger {}
- 
                  
                  Determines what type of audio devices voice guidance may be played through. DeclarationSwift enum GMSVoiceGuidanceAudioDeviceType : Int, @unchecked SendableObjective-C enum GMSVoiceGuidanceAudioDeviceType : NSInteger {}
- 
                  
                  A GMSRouteStatusis a status code that represents the result of a route request.DeclarationSwift enum GMSRouteStatus : Int, @unchecked SendableObjective-C enum GMSRouteStatus : NSInteger {}
- 
                  
                  Lighting mode is used to specify different color schemes based on available light. DeclarationSwift enum GMSNavigationLightingMode : Int, @unchecked SendableObjective-C enum GMSNavigationLightingMode : NSInteger {}
- 
                  
                  The routing strategy specifies how routes are ranked, which affects the route when it is chosen and during re-routing. The default value is GMSNavigationRoutingStrategyDefaultBest.DeclarationSwift enum GMSNavigationRoutingStrategy : Int, @unchecked SendableObjective-C enum GMSNavigationRoutingStrategy : NSInteger {}
- 
                  
                  The format specifies whether to show distance or ETA information in route callouts. DeclarationSwift enum GMSNavigationRouteCalloutFormat : Int, @unchecked SendableObjective-C enum GMSNavigationRouteCalloutFormat : NSInteger {}
- 
                  
                  Indicates the maximum number of alternate routes that can be requested. DeclarationSwift enum GMSNavigationAlternateRoutesStrategy : Int, @unchecked SendableObjective-C enum GMSNavigationAlternateRoutesStrategy : NSInteger {}
- 
                  
                  DeclarationSwift enum GMSNavigationSpeedAlertSeverity : Int, @unchecked SendableObjective-C NS_ENUM(NSInteger, GMSNavigationSpeedAlertSeverity) { /** Either speed or speed limit could not be determined. */ GMSNavigationSpeedAlertSeverityUnknown = -2, /** No speeding is occurring. */ GMSNavigationSpeedAlertSeverityNotSpeeding = -1, /** Minor speed alert. */ GMSNavigationSpeedAlertSeverityMinor = 0, /** Major speed alert. */ GMSNavigationSpeedAlertSeverityMajor, }
- 
                  
                  The state of navigation. DeclarationSwift enum GMSNavigationNavState : Int, @unchecked SendableObjective-C enum GMSNavigationNavState : NSInteger {}
- 
                  
                  Whether this step is on a drive-on-right or drive-on-left route. May be unspecified. DeclarationSwift enum GMSNavigationDrivingSide : UInt, @unchecked SendableObjective-C enum GMSNavigationDrivingSide : NSUInteger {}
- 
                  
                  A set of values that specify the navigation action to take. DeclarationSwift enum GMSNavigationManeuver : UInt, @unchecked SendableObjective-C enum GMSNavigationManeuver : NSUInteger {}
- 
                  
                  A set of values describing the shape of a lane. DeclarationSwift enum GMSNavigationLaneShape : Int, @unchecked SendableObjective-C enum GMSNavigationLaneShape : NSInteger {}
- 
                  
                  How markers interact with other markers and regular labels. Defaults to GMSCollisionBehaviorRequired.Marker collisions occur when coordinates intersect. Priority is defined as: 1) Required > Optional 2) zIndex: higher zIndex > lower zIndex Beyond this, it is undefined which marker will show if both are optional and have the same zIndex. Regular map labels are the lowest priority. DeclarationSwift enum GMSCollisionBehavior : Int, @unchecked SendableObjective-C enum GMSCollisionBehavior : NSInteger {}
- 
                  
                  GMSGeocodererror codes, embedded in NSError.DeclarationSwift enum GMSGeocoderErrorCode : Int, @unchecked SendableObjective-C enum GMSGeocoderErrorCode : NSInteger {}
- 
                  
                  Flags that represent conditionally-available map capabilities (ones that require a mapID or some other map setting) that can be used to indicate availability. DeclarationSwift struct GMSMapCapabilityFlags : OptionSet, @unchecked SendableObjective-C enum GMSMapCapabilityFlags : NSUInteger {}
- 
                  
                  Display types for GMSMapView.DeclarationSwift enum GMSMapViewType : UInt, @unchecked SendableObjective-C enum GMSMapViewType : NSUInteger {}
- 
                  
                  Rendering frame rates for GMSMapView.DeclarationSwift enum GMSFrameRate : UInt, @unchecked SendableObjective-C enum GMSFrameRate : NSUInteger {}
- 
                  
                  Constants indicating how safe area insets are added to padding. DeclarationSwift enum GMSMapViewPaddingAdjustmentBehavior : UInt, @unchecked SendableObjective-C enum GMSMapViewPaddingAdjustmentBehavior : NSUInteger {}
- 
                  
                  Animation types for GMSMarker. DeclarationSwift enum GMSMarkerAnimation : UInt, @unchecked SendableObjective-C enum GMSMarkerAnimation : NSUInteger {}
- 
                  
                  Source types for Panoramas. Used to specify the source of a StreetView Panorama. This API is experimental. Results may not always match expectations. DeclarationSwift enum GMSPanoramaSource : UInt, @unchecked SendableObjective-C enum GMSPanoramaSource : NSUInteger {}
- 
                  
                  GMSLengthKindindicates the type of a length value, which can be geodesic (in meters), rhumb length (in meters) and projected length (inGMSMapPointunits).DeclarationSwift enum GMSLengthKind : UInt, @unchecked SendableObjective-C enum GMSLengthKind : NSUInteger {}