// Generated by Apple Swift version 5.5.2 (swiftlang-1300.0.47.5 clang-1300.0.29.30)
#ifndef MAPBOXNAVIGATION_SWIFT_H
#define MAPBOXNAVIGATION_SWIFT_H
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wgcc-compat"

#if !defined(__has_include)
# define __has_include(x) 0
#endif
#if !defined(__has_attribute)
# define __has_attribute(x) 0
#endif
#if !defined(__has_feature)
# define __has_feature(x) 0
#endif
#if !defined(__has_warning)
# define __has_warning(x) 0
#endif

#if __has_include(<swift/objc-prologue.h>)
# include <swift/objc-prologue.h>
#endif

#pragma clang diagnostic ignored "-Wauto-import"
#include <Foundation/Foundation.h>
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>

#if !defined(SWIFT_TYPEDEFS)
# define SWIFT_TYPEDEFS 1
# if __has_include(<uchar.h>)
#  include <uchar.h>
# elif !defined(__cplusplus)
typedef uint_least16_t char16_t;
typedef uint_least32_t char32_t;
# endif
typedef float swift_float2  __attribute__((__ext_vector_type__(2)));
typedef float swift_float3  __attribute__((__ext_vector_type__(3)));
typedef float swift_float4  __attribute__((__ext_vector_type__(4)));
typedef double swift_double2  __attribute__((__ext_vector_type__(2)));
typedef double swift_double3  __attribute__((__ext_vector_type__(3)));
typedef double swift_double4  __attribute__((__ext_vector_type__(4)));
typedef int swift_int2  __attribute__((__ext_vector_type__(2)));
typedef int swift_int3  __attribute__((__ext_vector_type__(3)));
typedef int swift_int4  __attribute__((__ext_vector_type__(4)));
typedef unsigned int swift_uint2  __attribute__((__ext_vector_type__(2)));
typedef unsigned int swift_uint3  __attribute__((__ext_vector_type__(3)));
typedef unsigned int swift_uint4  __attribute__((__ext_vector_type__(4)));
#endif

#if !defined(SWIFT_PASTE)
# define SWIFT_PASTE_HELPER(x, y) x##y
# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
#endif
#if !defined(SWIFT_METATYPE)
# define SWIFT_METATYPE(X) Class
#endif
#if !defined(SWIFT_CLASS_PROPERTY)
# if __has_feature(objc_class_property)
#  define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
# else
#  define SWIFT_CLASS_PROPERTY(...)
# endif
#endif

#if __has_attribute(objc_runtime_name)
# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
#else
# define SWIFT_RUNTIME_NAME(X)
#endif
#if __has_attribute(swift_name)
# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
#else
# define SWIFT_COMPILE_NAME(X)
#endif
#if __has_attribute(objc_method_family)
# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
#else
# define SWIFT_METHOD_FAMILY(X)
#endif
#if __has_attribute(noescape)
# define SWIFT_NOESCAPE __attribute__((noescape))
#else
# define SWIFT_NOESCAPE
#endif
#if __has_attribute(ns_consumed)
# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
#else
# define SWIFT_RELEASES_ARGUMENT
#endif
#if __has_attribute(warn_unused_result)
# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#else
# define SWIFT_WARN_UNUSED_RESULT
#endif
#if __has_attribute(noreturn)
# define SWIFT_NORETURN __attribute__((noreturn))
#else
# define SWIFT_NORETURN
#endif
#if !defined(SWIFT_CLASS_EXTRA)
# define SWIFT_CLASS_EXTRA
#endif
#if !defined(SWIFT_PROTOCOL_EXTRA)
# define SWIFT_PROTOCOL_EXTRA
#endif
#if !defined(SWIFT_ENUM_EXTRA)
# define SWIFT_ENUM_EXTRA
#endif
#if !defined(SWIFT_CLASS)
# if __has_attribute(objc_subclassing_restricted)
#  define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
#  define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# else
#  define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
#  define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
# endif
#endif
#if !defined(SWIFT_RESILIENT_CLASS)
# if __has_attribute(objc_class_stub)
#  define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
#  define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
# else
#  define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
#  define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
# endif
#endif

#if !defined(SWIFT_PROTOCOL)
# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
#endif

#if !defined(SWIFT_EXTENSION)
# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
#endif

#if !defined(OBJC_DESIGNATED_INITIALIZER)
# if __has_attribute(objc_designated_initializer)
#  define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
# else
#  define OBJC_DESIGNATED_INITIALIZER
# endif
#endif
#if !defined(SWIFT_ENUM_ATTR)
# if defined(__has_attribute) && __has_attribute(enum_extensibility)
#  define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
# else
#  define SWIFT_ENUM_ATTR(_extensibility)
# endif
#endif
#if !defined(SWIFT_ENUM)
# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# if __has_feature(generalized_swift_name)
#  define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
# else
#  define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
# endif
#endif
#if !defined(SWIFT_UNAVAILABLE)
# define SWIFT_UNAVAILABLE __attribute__((unavailable))
#endif
#if !defined(SWIFT_UNAVAILABLE_MSG)
# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
#endif
#if !defined(SWIFT_AVAILABILITY)
# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
#endif
#if !defined(SWIFT_WEAK_IMPORT)
# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
#endif
#if !defined(SWIFT_DEPRECATED)
# define SWIFT_DEPRECATED __attribute__((deprecated))
#endif
#if !defined(SWIFT_DEPRECATED_MSG)
# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
#endif
#if __has_feature(attribute_diagnose_if_objc)
# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
#else
# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
#endif
#if !defined(IBSegueAction)
# define IBSegueAction
#endif
#if __has_feature(modules)
#if __has_warning("-Watimport-in-framework-header")
#pragma clang diagnostic ignored "-Watimport-in-framework-header"
#endif
@import AVFAudio;
@import CarPlay;
@import CoreGraphics;
@import CoreLocation;
@import Foundation;
@import ObjectiveC;
@import UIKit;
#endif

#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
#pragma clang diagnostic ignored "-Wduplicate-method-arg"
#if __has_warning("-Wpragma-clang-attribute")
# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
#endif
#pragma clang diagnostic ignored "-Wunknown-pragmas"
#pragma clang diagnostic ignored "-Wnullability"

#if __has_attribute(external_source_symbol)
# pragma push_macro("any")
# undef any
# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="MapboxNavigation",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
# pragma pop_macro("any")
#endif


@class UIColor;
@class UIFont;
@class NSNumber;
@class NSCoder;

SWIFT_CLASS_NAMED("StylableLabel")
@interface MBStylableLabel : UILabel
@property (nonatomic, strong) UIColor * _Nonnull normalTextColor;
@property (nonatomic, strong) UIFont * _Nonnull normalFont;
@property (nonatomic, strong) UIColor * _Nonnull textColorHighlighted;
@property (nonatomic) BOOL showHighlightedTextColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("ArrivalTimeLabel")
@interface MBArrivalTimeLabel : MBStylableLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("BannerContainerView")
@interface MBBannerContainerView : UIView
- (void)safeAreaInsetsDidChange;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
- (void)didMoveToSuperview;
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
@end

@class UITraitCollection;

/// A banner view that contains the current step instruction along a route and responds to tap and
/// swipe gestures, as the base of <code>InstructionsCardView</code> and <code>InstructionsBannerView</code>.
SWIFT_CLASS("_TtC16MapboxNavigation26BaseInstructionsBannerView")
@interface BaseInstructionsBannerView : UIControl
/// A <code>Boolean</code> value controls whether the banner view reponds to swipe gestures. Defaults to <code>false</code>.
@property (nonatomic) IBInspectable BOOL swipeable;
/// A <code>Boolean</code> value controls whether the banner view shows the <code>StepListIndicatorView</code>. Defaults to <code>true</code>.
@property (nonatomic) IBInspectable BOOL showStepIndicator;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)prepareForInterfaceBuilder;
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
@end


/// A cache consists of both in-memory and on-disk components, both of which can be reset.
SWIFT_PROTOCOL_NAMED("BimodalCache")
@protocol MBBimodalCache
- (void)clearMemory;
- (void)clearDiskWithCompletion:(void (^ _Nullable)(void))completion;
@end


SWIFT_CLASS_NAMED("BottomBannerView")
@interface MBBottomBannerView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end

@class NSString;
@class NSBundle;

/// A user interface element designed to display the estimated arrival time, distance, and time remaining, as well as give the user a control the cancel the navigation session.
IB_DESIGNABLE
SWIFT_CLASS("_TtC16MapboxNavigation26BottomBannerViewController")
@interface BottomBannerViewController : UIViewController
/// Initializes a <code>BottomBannerViewController</code> that provides ETA, Distance to arrival, and Time to arrival.
/// \param nibNameOrNil Ignored.
///
/// \param nibBundleOrNil Ignored.
///
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil OBJC_DESIGNATED_INITIALIZER;
/// Initializes a <code>BottomBannerViewController</code> that provides ETA, Distance to arrival, and Time to arrival.
/// \param aDecoder Ignored.
///
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)viewWillDisappear:(BOOL)animated;
- (void)viewDidLoad;
- (void)prepareForInterfaceBuilder;
@end


@interface BottomBannerViewController (SWIFT_EXTENSION(MapboxNavigation))
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
@end


SWIFT_CLASS("_TtC16MapboxNavigation17BottomPaddingView")
@interface BottomPaddingView : MBBottomBannerView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end



SWIFT_CLASS_NAMED("StylableButton")
@interface MBStylableButton : UIButton
@property (nonatomic, strong) UIFont * _Nonnull textFont;
@property (nonatomic, strong) UIColor * _Nonnull textColor;
@property (nonatomic, strong) UIColor * _Nonnull borderColor;
@property (nonatomic) CGFloat borderWidth;
@property (nonatomic) CGFloat cornerRadius;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
/// <code>Button</code> sets the tintColor according to the style.
SWIFT_CLASS_NAMED("Button")
@interface MBButton : MBStylableButton
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end






SWIFT_CLASS_NAMED("CancelButton")
@interface MBCancelButton : MBButton
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("StylableView")
@interface MBStylableView : UIView
@property (nonatomic) CGFloat borderWidth;
@property (nonatomic) CGFloat cornerRadius;
@property (nonatomic, strong) UIColor * _Nullable borderColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// A control indicating the direction that the vehicle is traveling towards.
SWIFT_CLASS("_TtC16MapboxNavigation18CarPlayCompassView")
@interface CarPlayCompassView : MBStylableView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder OBJC_DESIGNATED_INITIALIZER;
@end


/// <code>CarPlayManager</code> is the main object responsible for orchestrating interactions with a Mapbox map on CarPlay.
/// Messages declared in the <code>CPApplicationDelegate</code> protocol should be sent to this object in the containing application’s application delegate. Implement <code>CarPlayManagerDelegate</code> in the containing application and assign an instance to the <code>delegate</code> property of your <code>CarPlayManager</code> instance.
/// note:
/// It is very important you have a single <code>CarPlayManager</code> instance at any given time. This should be managed by your <code>UIApplicationDelegate</code> class if you choose to supply your <code>accessToken</code> to the <code>CarPlayManager.eventsManager</code> via <code>NavigationEventsManager</code> initializer, instead of the Info.plist.
SWIFT_CLASS("_TtC16MapboxNavigation14CarPlayManager") SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayManager : NSObject
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end





@class CPTemplate;

SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayManager (SWIFT_EXTENSION(MapboxNavigation)) <CPInterfaceControllerDelegate>
- (void)templateWillAppear:(CPTemplate * _Nonnull)template_ animated:(BOOL)animated;
- (void)templateDidAppear:(CPTemplate * _Nonnull)template_ animated:(BOOL)animated;
- (void)templateWillDisappear:(CPTemplate * _Nonnull)template_ animated:(BOOL)animated;
- (void)templateDidDisappear:(CPTemplate * _Nonnull)template_ animated:(BOOL)animated;
@end

@class UIApplication;
@class CPInterfaceController;
@class CPWindow;

SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayManager (SWIFT_EXTENSION(MapboxNavigation)) <CPApplicationDelegate>
- (void)application:(UIApplication * _Nonnull)application didConnectCarInterfaceController:(CPInterfaceController * _Nonnull)interfaceController toWindow:(CPWindow * _Nonnull)window;
- (void)application:(UIApplication * _Nonnull)application didDisconnectCarInterfaceController:(CPInterfaceController * _Nonnull)interfaceController fromWindow:(CPWindow * _Nonnull)window;
@end



@class CPMapTemplate;
@class CPTrip;
@class CPRouteChoice;
@class CPManeuver;
@class CPNavigationAlert;
@class CPTravelEstimates;

SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayManager (SWIFT_EXTENSION(MapboxNavigation)) <CPMapTemplateDelegate>
- (void)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate startedTrip:(CPTrip * _Nonnull)trip usingRouteChoice:(CPRouteChoice * _Nonnull)routeChoice;
- (void)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate selectedPreviewForTrip:(CPTrip * _Nonnull)trip usingRouteChoice:(CPRouteChoice * _Nonnull)routeChoice;
- (void)mapTemplateDidCancelNavigation:(CPMapTemplate * _Nonnull)mapTemplate;
- (void)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate didEndPanGestureWithVelocity:(CGPoint)velocity;
- (void)mapTemplateDidShowPanningInterface:(CPMapTemplate * _Nonnull)mapTemplate;
- (void)mapTemplateWillDismissPanningInterface:(CPMapTemplate * _Nonnull)mapTemplate;
- (void)mapTemplateDidDismissPanningInterface:(CPMapTemplate * _Nonnull)mapTemplate;
- (void)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate didUpdatePanGestureWithTranslation:(CGPoint)translation velocity:(CGPoint)velocity;
- (void)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate panWithDirection:(CPPanDirection)direction;
- (CPManeuverDisplayStyle)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate displayStyleForManeuver:(CPManeuver * _Nonnull)maneuver SWIFT_WARN_UNUSED_RESULT;
- (BOOL)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate shouldShowNotificationForManeuver:(CPManeuver * _Nonnull)maneuver SWIFT_WARN_UNUSED_RESULT;
- (BOOL)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate shouldShowNotificationForNavigationAlert:(CPNavigationAlert * _Nonnull)navigationAlert SWIFT_WARN_UNUSED_RESULT;
- (BOOL)mapTemplate:(CPMapTemplate * _Nonnull)mapTemplate shouldUpdateNotificationForManeuver:(CPManeuver * _Nonnull)maneuver withTravelEstimates:(CPTravelEstimates * _Nonnull)travelEstimates SWIFT_WARN_UNUSED_RESULT;
@end


/// <code>CarPlayMapViewController</code> is responsible for administering the Mapbox map, the interface styles and the map template buttons to display on CarPlay.
SWIFT_CLASS("_TtC16MapboxNavigation24CarPlayMapViewController") SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayMapViewController : UIViewController
/// Returns a <code>CarPlayMapViewController</code> object initialized from data in a given unarchiver.
/// \param coder An unarchiver object.
///
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder OBJC_DESIGNATED_INITIALIZER;
- (void)encodeWithCoder:(NSCoder * _Nonnull)aCoder;
- (void)loadView;
- (void)viewDidLoad;
- (void)viewWillAppear:(BOOL)animated;
- (void)viewSafeAreaInsetsDidChange;
- (void)updateViewConstraints;
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil SWIFT_UNAVAILABLE;
@end

@class CPSessionConfiguration;

SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayMapViewController (SWIFT_EXTENSION(MapboxNavigation)) <CPSessionConfigurationDelegate>
- (void)sessionConfiguration:(CPSessionConfiguration * _Nonnull)sessionConfiguration contentStyleChanged:(CPContentStyle)contentStyle SWIFT_AVAILABILITY(ios,introduced=13.0);
@end




/// <code>CarPlayNavigationViewController</code> is a fully-featured turn-by-turn navigation UI for CarPlay.
/// seealso:
/// <code>NavigationViewController</code>
SWIFT_CLASS("_TtC16MapboxNavigation31CarPlayNavigationViewController") SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayNavigationViewController : UIViewController
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder OBJC_DESIGNATED_INITIALIZER;
- (void)viewDidLoad;
- (void)viewWillAppear:(BOOL)animated;
- (void)viewWillDisappear:(BOOL)animated;
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
- (void)viewSafeAreaInsetsDidChange;
- (void)updateViewConstraints;
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil SWIFT_UNAVAILABLE;
@end


@class CPListTemplate;
@class CPListItem;

SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayNavigationViewController (SWIFT_EXTENSION(MapboxNavigation)) <CPListTemplateDelegate>
- (void)listTemplate:(CPListTemplate * _Nonnull)listTemplate didSelectListItem:(CPListItem * _Nonnull)item completionHandler:(void (^ _Nonnull)(void))completionHandler;
@end


SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlayNavigationViewController (SWIFT_EXTENSION(MapboxNavigation)) <CPSessionConfigurationDelegate>
- (void)sessionConfiguration:(CPSessionConfiguration * _Nonnull)sessionConfiguration contentStyleChanged:(CPContentStyle)contentStyle SWIFT_AVAILABILITY(ios,introduced=13.0);
@end




/// <code>CarPlaySearchController</code> is the main object responsible for managing the search feature on CarPlay.
/// Messages declared in the <code>CPApplicationDelegate</code> protocol should be sent to this object in the containing application’s application delegate. Implement <code>CarPlaySearchControllerDelegate</code> in the containing application and assign an instance to the <code>delegate</code> property of your <code>CarPlaySearchController</code> instance.
/// note:
/// It is very important you have a single <code>CarPlaySearchController</code> instance at any given time.
SWIFT_CLASS("_TtC16MapboxNavigation23CarPlaySearchController") SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlaySearchController : NSObject
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlaySearchController (SWIFT_EXTENSION(MapboxNavigation)) <CPListTemplateDelegate>
- (void)listTemplate:(CPListTemplate * _Nonnull)listTemplate didSelectListItem:(CPListItem * _Nonnull)item completionHandler:(void (^ _Nonnull)(void))completionHandler;
@end

@class CPSearchTemplate;

SWIFT_AVAILABILITY(ios,introduced=12.0)
@interface CarPlaySearchController (SWIFT_EXTENSION(MapboxNavigation)) <CPSearchTemplateDelegate>
- (void)searchTemplateSearchButtonPressed:(CPSearchTemplate * _Nonnull)searchTemplate;
- (void)searchTemplate:(CPSearchTemplate * _Nonnull)searchTemplate updatedSearchText:(NSString * _Nonnull)searchText completionHandler:(void (^ _Nonnull)(NSArray<CPListItem *> * _Nonnull))completionHandler;
- (void)searchTemplate:(CPSearchTemplate * _Nonnull)searchTemplate selectedResult:(CPListItem * _Nonnull)item completionHandler:(void (^ _Nonnull)(void))completionHandler;
@end


enum StyleType : NSInteger;
@class NSURL;

/// <code>Style</code> is a convenient wrapper for styling the appearance of various interface components throughout the Navigation UI.
/// Styles are applied globally using <code>UIAppearance</code>. You should call <code>Style.apply()</code> to apply the style to the <code>NavigationViewController</code>.
SWIFT_CLASS_NAMED("Style")
@interface MBStyle : NSObject
/// Sets the tint color for guidance arrow, highlighted text, progress bar and more.
@property (nonatomic, strong) UIColor * _Nullable tintColor;
/// Sets the font family for all labels.
@property (nonatomic, copy) NSString * _Nullable fontFamily;
/// Describes the situations in which the style should be used. By default, the style will be used during the daytime.
@property (nonatomic) enum StyleType styleType;
/// URL of the style to display on the map during turn-by-turn navigation.
@property (nonatomic, copy) NSURL * _Nonnull mapStyleURL;
/// URL of the style to display on the map when previewing a route, for example on CarPlay or your own route preview map.
/// Defaults to same style as <code>mapStyleURL</code>.
@property (nonatomic, copy) NSURL * _Nonnull previewMapStyleURL;
/// Applies the style for all changed properties.
- (void)apply;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end


/// <code>DefaultStyle</code> is default style for Mapbox Navigation SDK.
SWIFT_CLASS("_TtC16MapboxNavigation8DayStyle")
@interface DayStyle : MBStyle
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
- (void)apply;
@end


SWIFT_CLASS_NAMED("DismissButton")
@interface MBDismissButton : MBButton
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS_NAMED("DistanceLabel")
@interface MBDistanceLabel : MBStylableLabel
@property (nonatomic, strong) UIColor * _Nonnull valueTextColor;
@property (nonatomic, strong) UIColor * _Nonnull unitTextColor;
@property (nonatomic, strong) UIColor * _Nonnull valueTextColorHighlighted;
@property (nonatomic, strong) UIColor * _Nonnull unitTextColorHighlighted;
@property (nonatomic, strong) UIFont * _Nonnull valueFont;
@property (nonatomic, strong) UIFont * _Nonnull unitFont;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("DistanceRemainingLabel")
@interface MBDistanceRemainingLabel : MBStylableLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation16EndOfRouteButton")
@interface EndOfRouteButton : MBStylableButton
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end

@class NSTextContainer;

SWIFT_CLASS_NAMED("StylableTextView")
@interface MBStylableTextView : UITextView
@property (nonatomic, strong) UIColor * _Nonnull normalTextColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame textContainer:(NSTextContainer * _Nullable)textContainer OBJC_DESIGNATED_INITIALIZER SWIFT_AVAILABILITY(ios,introduced=7.0);
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation21EndOfRouteCommentView")
@interface EndOfRouteCommentView : MBStylableTextView
- (nonnull instancetype)initWithFrame:(CGRect)frame textContainer:(NSTextContainer * _Nullable)textContainer OBJC_DESIGNATED_INITIALIZER SWIFT_AVAILABILITY(ios,introduced=7.0);
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation21EndOfRouteContentView")
@interface EndOfRouteContentView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation21EndOfRouteStaticLabel")
@interface EndOfRouteStaticLabel : MBStylableLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation20EndOfRouteTitleLabel")
@interface EndOfRouteTitleLabel : MBStylableLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS("_TtC16MapboxNavigation8ExitView")
@interface ExitView : MBStylableView
@property (nonatomic, strong) UIColor * _Nullable foregroundColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end

@protocol UIViewControllerTransitionCoordinator;
@class UIGestureRecognizer;
@class UITouch;

/// A view controller containing a grid of buttons the user can use to denote an issue their current navigation experience.
SWIFT_CLASS("_TtC16MapboxNavigation22FeedbackViewController")
@interface FeedbackViewController : UIViewController <UIGestureRecognizerDelegate>
/// Instantly dismisses the FeedbackViewController if it is currently presented.
- (void)dismissFeedback;
- (void)encodeWithCoder:(NSCoder * _Nonnull)aCoder;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)viewDidLoad;
- (void)viewDidAppear:(BOOL)animated;
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id <UIViewControllerTransitionCoordinator> _Nonnull)coordinator;
- (BOOL)gestureRecognizer:(UIGestureRecognizer * _Nonnull)gestureRecognizer shouldReceiveTouch:(UITouch * _Nonnull)touch SWIFT_WARN_UNUSED_RESULT;
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil SWIFT_UNAVAILABLE;
@end

@class UICollectionView;
@class UICollectionViewLayout;
@class NSIndexPath;

@interface FeedbackViewController (SWIFT_EXTENSION(MapboxNavigation)) <UICollectionViewDelegateFlowLayout>
- (CGSize)collectionView:(UICollectionView * _Nonnull)collectionView layout:(UICollectionViewLayout * _Nonnull)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT;
@end


@interface FeedbackViewController (SWIFT_EXTENSION(MapboxNavigation)) <UICollectionViewDelegate>
- (void)collectionView:(UICollectionView * _Nonnull)collectionView didSelectItemAtIndexPath:(NSIndexPath * _Nonnull)indexPath;
@end

@protocol UIViewControllerAnimatedTransitioning;
@protocol UIViewControllerInteractiveTransitioning;

@interface FeedbackViewController (SWIFT_EXTENSION(MapboxNavigation)) <UIViewControllerTransitioningDelegate>
- (id <UIViewControllerAnimatedTransitioning> _Nullable)animationControllerForDismissedController:(UIViewController * _Nonnull)dismissed SWIFT_WARN_UNUSED_RESULT;
- (id <UIViewControllerAnimatedTransitioning> _Nullable)animationControllerForPresentedController:(UIViewController * _Nonnull)presented presentingController:(UIViewController * _Nonnull)presenting sourceController:(UIViewController * _Nonnull)source SWIFT_WARN_UNUSED_RESULT;
- (id <UIViewControllerInteractiveTransitioning> _Nullable)interactionControllerForDismissal:(id <UIViewControllerAnimatedTransitioning> _Nonnull)animator SWIFT_WARN_UNUSED_RESULT;
@end

@class UICollectionViewCell;

@interface FeedbackViewController (SWIFT_EXTENSION(MapboxNavigation)) <UICollectionViewDataSource>
- (UICollectionViewCell * _Nonnull)collectionView:(UICollectionView * _Nonnull)collectionView cellForItemAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView * _Nonnull)collectionView SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)collectionView:(UICollectionView * _Nonnull)collectionView numberOfItemsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT;
@end


/// A rounded button with an icon that is designed to float above <code>NavigationMapView</code>.
SWIFT_CLASS_NAMED("FloatingButton")
@interface MBFloatingButton : MBButton
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// <code>GenericRouteShield</code> is a class to render routes that do not have route-shields.
SWIFT_CLASS("_TtC16MapboxNavigation18GenericRouteShield")
@interface GenericRouteShield : MBStylableView
@property (nonatomic, strong) UIColor * _Nullable foregroundColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("HighlightedButton") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBHighlightedButton : MBButton
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation16InstructionLabel")
@interface InstructionLabel : MBStylableLabel
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// A banner view that contains the current step instruction and responds to tap and swipe gestures.
/// This class responds and gets updated as the user progresses along a route according to the
/// <code>NavigationComponent</code> and <code>BaseInstructionsBannerView</code> protocol.
IB_DESIGNABLE
SWIFT_CLASS("_TtC16MapboxNavigation22InstructionsBannerView")
@interface InstructionsBannerView : BaseInstructionsBannerView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation20InstructionsCardCell")
@interface InstructionsCardCell : UICollectionViewCell
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end


/// A container view for the information currently displayed in <code>InstructionsCardViewController</code>.
SWIFT_CLASS("_TtC16MapboxNavigation29InstructionsCardContainerView")
@interface InstructionsCardContainerView : MBStylableView
/// Color of the background that will be used in case if distance to the next maneuver is higher
/// than threshold distance, defined in <code>InstructionCardHighlightDistance</code>.
@property (nonatomic, strong) UIColor * _Nonnull customBackgroundColor;
/// Color of the background that will be used when remaining distance to the next maneuver is below
/// threshold distance, defined in <code>InstructionCardHighlightDistance</code>.
@property (nonatomic, strong) UIColor * _Nonnull highlightedBackgroundColor;
/// Color of the separator between <code>InstructionsCardView</code> or <code>LanesView</code>/<code>NextBannerView</code>.
@property (nonatomic, strong) UIColor * _Nonnull separatorColor;
/// Color of the separator between <code>InstructionsCardView</code> or <code>LanesView</code>/<code>NextBannerView</code> that will
/// be used when remaining distance to the next maneuver is below threshold distance, defined in
/// <code>InstructionCardHighlightDistance</code>.
@property (nonatomic, strong) UIColor * _Nonnull highlightedSeparatorColor;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder SWIFT_UNAVAILABLE;
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation20InstructionsCardView")
@interface InstructionsCardView : BaseInstructionsBannerView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end


/// A view controller that displays the current maneuver instruction as a “card” resembling a user
/// notification. A subsequent maneuver is always partially visible on one side of the view;
/// swiping to one side reveals the full maneuver.
/// This class is an alternative to the more traditional banner interface provided by the
/// <code>TopBannerViewController</code> class. To use <code>InstructionsCardViewController</code>, create an instance of it
/// and pass it into the <code>NavigationOptions(styles:navigationService:voiceController:topBanner:bottomBanner:)</code>
/// method.
SWIFT_CLASS("_TtC16MapboxNavigation30InstructionsCardViewController")
@interface InstructionsCardViewController : UIViewController
- (void)viewDidLoad;
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id <UIViewControllerTransitionCoordinator> _Nonnull)coordinator;
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


@interface InstructionsCardViewController (SWIFT_EXTENSION(MapboxNavigation)) <UICollectionViewDelegateFlowLayout>
- (CGSize)collectionView:(UICollectionView * _Nonnull)collectionView layout:(UICollectionViewLayout * _Nonnull)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT;
@end



@class UIScrollView;

@interface InstructionsCardViewController (SWIFT_EXTENSION(MapboxNavigation)) <UICollectionViewDelegate>
- (void)scrollViewWillBeginDragging:(UIScrollView * _Nonnull)scrollView;
- (void)scrollViewWillEndDragging:(UIScrollView * _Nonnull)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(CGPoint * _Nonnull)targetContentOffset;
@end


@interface InstructionsCardViewController (SWIFT_EXTENSION(MapboxNavigation)) <UICollectionViewDataSource>
- (NSInteger)collectionView:(UICollectionView * _Nonnull)collectionView numberOfItemsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT;
- (UICollectionViewCell * _Nonnull)collectionView:(UICollectionView * _Nonnull)collectionView cellForItemAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT;
- (void)collectionView:(UICollectionView * _Nonnull)collectionView willDisplayCell:(UICollectionViewCell * _Nonnull)cell forItemAtIndexPath:(NSIndexPath * _Nonnull)indexPath;
@end


@class UIImage;

/// A junction view shows an image depicting the layout of a highway junction.
/// As the user approaches certain junctions, an enlarged illustration of the junction appears in this view to help the user understand a complex maneuver. A junction view only appears when the relevant data is available.
SWIFT_CLASS("_TtC16MapboxNavigation12JunctionView")
@interface JunctionView : UIImageView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithImage:(UIImage * _Nullable)image SWIFT_UNAVAILABLE;
- (nonnull instancetype)initWithImage:(UIImage * _Nullable)image highlightedImage:(UIImage * _Nullable)highlightedImage SWIFT_UNAVAILABLE;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation8LaneView")
@interface LaneView : UIView
@property (nonatomic, readonly) CGSize intrinsicContentSize;
/// Color of the maneuver direction (applied only when <code>LaneView.isUsable</code> is set to <code>true</code>). In case if
/// <code>LaneView.showHighlightedColors</code> is set to <code>true</code> this value is not used, <code>LaneView.primaryColorHighlighted</code>
/// is used instead.
@property (nonatomic, strong) UIColor * _Nonnull primaryColor;
/// Color of the directions that the lane is reserved for (except the one that is applicable to the
/// current route). In case if <code>LaneView.showHighlightedColors</code> is set to <code>true</code> this value is not used,
/// <code>LaneView.secondaryColorHighlighted</code> is used instead.
@property (nonatomic, strong) UIColor * _Nonnull secondaryColor;
/// Highlighted color of the directions that the lane is reserved for (except the one that is
/// applicable to the current route).
@property (nonatomic, strong) UIColor * _Nonnull primaryColorHighlighted;
/// Highlighted color of the directions that the lane is reserved for (except the one that is applicable
/// to the current route).
@property (nonatomic, strong) UIColor * _Nonnull secondaryColorHighlighted;
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder OBJC_DESIGNATED_INITIALIZER;
- (void)drawRect:(CGRect)rect;
@end

enum LanesStyleKitResizingBehavior : NSInteger;

SWIFT_CLASS("_TtC16MapboxNavigation13LanesStyleKit")
@interface LanesStyleKit : NSObject
/// / Drawing Methods
+ (void)drawLaneSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size;
+ (void)drawLaneUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawLaneUturnUsingUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSharpTurnUsingSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrSharpTurnUsingSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnOrSharpTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrUturnUsingUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrUturnUsingUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnOrUturnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnOrUturnUsingUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnOrSharpTurnUsingSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSharpTurnUsingSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrSharpTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrUturnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSlightTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrSlightTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrUturnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSlightTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSharpTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrSlightTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneSlightTurnOrUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnOrSharpTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneTurnOrUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrStraightOrTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrStraightOrTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrTurnOrUturnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrTurnOrUturnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrTurnOrUturnUsingUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSlightTurnOrTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSlightTurnOrTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSlightTurnOrTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrStraightOrSlightTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrStraightOrSlightTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrStraightOrTurnUsingTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrStraightOrTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrStraightOrSlightTurnUsingStraightWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrStraightOrSlightTurnUsingSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrStraightOrSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrStraightOrSlightTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeTurnOrStraightOrTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneOppositeSlightTurnOrStraightOrTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrTurnOrUturnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
+ (void)drawLaneStraightOrSlightTurnOrTurnWithFrame:(CGRect)targetFrame resizing:(enum LanesStyleKitResizingBehavior)resizing secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size flipHorizontally:(BOOL)flipHorizontally;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end

typedef SWIFT_ENUM_NAMED(NSInteger, LanesStyleKitResizingBehavior, "ResizingBehavior", closed) {
  LanesStyleKitResizingBehaviorAspectFit = 0,
/// The content is proportionally resized to fit into the target rectangle.
  LanesStyleKitResizingBehaviorAspectFill = 1,
/// The content is proportionally resized to completely fill the target rectangle.
  LanesStyleKitResizingBehaviorStretch = 2,
/// The content is stretched to match the entire target rectangle.
  LanesStyleKitResizingBehaviorCenter = 3,
};



/// :nodoc:
IB_DESIGNABLE
SWIFT_CLASS("_TtC16MapboxNavigation9LanesView")
@interface LanesView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)prepareForInterfaceBuilder;
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
@end


SWIFT_CLASS_NAMED("LineView") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBLineView : UIView
@property (nonatomic, strong) UIColor * _Nonnull lineColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("ManeuverContainerView") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBManeuverContainerView : UIView
@property (nonatomic) CGFloat height;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// A view that contains a simple image indicating a type of maneuver.
IB_DESIGNABLE
SWIFT_CLASS("_TtC16MapboxNavigation12ManeuverView")
@interface ManeuverView : UIView
@property (nonatomic, strong) UIColor * _Nonnull primaryColor;
@property (nonatomic, strong) UIColor * _Nonnull secondaryColor;
@property (nonatomic, strong) UIColor * _Nonnull primaryColorHighlighted;
@property (nonatomic, strong) UIColor * _Nonnull secondaryColorHighlighted;
- (void)drawRect:(CGRect)rect;
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end

enum MBManeuversStyleKitResizingBehavior : NSInteger;

/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation17ManeuversStyleKit")
@interface ManeuversStyleKit : NSObject
+ (void)drawArrow180rightWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawArrowrightWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawArrowslightrightWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawArrowstraightWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawArrowsharprightWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawArriveWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawStartingWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawDestinationWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawMergeWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size;
+ (void)drawForkWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size;
+ (void)drawOfframpWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size;
+ (void)drawArriverightWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
+ (void)drawRoundaboutWithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor secondaryColor:(UIColor * _Nonnull)secondaryColor size:(CGSize)size roundabout_angle:(CGFloat)roundabout_angle roundabout_radius:(CGFloat)roundabout_radius;
+ (void)drawArriveright2WithFrame:(CGRect)targetFrame resizing:(enum MBManeuversStyleKitResizingBehavior)resizing primaryColor:(UIColor * _Nonnull)primaryColor size:(CGSize)size;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end

typedef SWIFT_ENUM_NAMED(NSInteger, MBManeuversStyleKitResizingBehavior, "ResizingBehavior", closed) {
  MBManeuversStyleKitResizingBehaviorAspectFit = 0,
/// The content is proportionally resized to fit into the target rectangle.
  MBManeuversStyleKitResizingBehaviorAspectFill = 1,
/// The content is proportionally resized to completely fill the target rectangle.
  MBManeuversStyleKitResizingBehaviorStretch = 2,
/// The content is stretched to match the entire target rectangle.
  MBManeuversStyleKitResizingBehaviorCenter = 3,
};



/// <code>SpeechSynthesizing</code> implementation, using <code>MapboxSpeech</code> framework. Uses pre-caching mechanism for upcoming instructions.
SWIFT_CLASS("_TtC16MapboxNavigation23MapboxSpeechSynthesizer")
@interface MapboxSpeechSynthesizer : NSObject
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end

@class AVAudioPlayer;

@interface MapboxSpeechSynthesizer (SWIFT_EXTENSION(MapboxNavigation)) <AVAudioPlayerDelegate>
- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer * _Nonnull)player successfully:(BOOL)flag;
@end


SWIFT_CLASS_NAMED("MarkerView") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBMarkerView : UIView
@property (nonatomic, strong) UIColor * _Nonnull innerColor;
@property (nonatomic, strong) UIColor * _Nonnull shadowColor;
@property (nonatomic, strong) UIColor * _Nonnull pinColor;
@property (nonatomic, strong) UIColor * _Nonnull strokeColor;
@property (nonatomic, readonly) CGSize intrinsicContentSize;
- (void)layoutSubviews;
- (void)drawRect:(CGRect)rect;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end




/// <code>NavigationCamera</code> class provides functionality, which allows to manage camera related states
/// and transitions in a typical navigation scenarios. It’s fed with <code>CameraOptions</code> via the <code>ViewportDataSource</code>
/// protocol and executes transitions using <code>CameraStateTransition</code> protocol.
SWIFT_CLASS("_TtC16MapboxNavigation16NavigationCamera")
@interface NavigationCamera : NSObject
/// Call to this method immediately moves <code>NavigationCamera</code> to <code>NavigationCameraState.idle</code> state
/// and stops all pending transitions.
- (void)stop;
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end



/// An object that notifies a map view when the user’s location changes, minimizing the noise that normally accompanies location updates from a <code>CLLocationManager</code> object.
/// If your application displays a <code>MapView</code> before starting turn-by-turn navigation, call <code>LocationManager.overrideLocationProvider(with:)</code> to override default location provider so that the map view always shows the location snapped to the road network. For example, use this class to show the user’s current location as they wander around town.
/// This class depends on <code>NavigationLocationManager</code> to detect the user’s location as it changes.
SWIFT_CLASS("_TtC16MapboxNavigation26NavigationLocationProvider")
@interface NavigationLocationProvider : NSObject <CLLocationManagerDelegate>
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end


/// <code>NavigationMapView</code> is a subclass of <code>UIView</code>, which draws <code>MapView</code> on its surface and provides
/// convenience functions for adding <code>Route</code> lines to a map.
SWIFT_CLASS("_TtC16MapboxNavigation17NavigationMapView")
@interface NavigationMapView : UIView
@property (nonatomic, strong) UIColor * _Nonnull trafficUnknownColor;
@property (nonatomic, strong) UIColor * _Nonnull trafficLowColor;
@property (nonatomic, strong) UIColor * _Nonnull trafficModerateColor;
@property (nonatomic, strong) UIColor * _Nonnull trafficHeavyColor;
@property (nonatomic, strong) UIColor * _Nonnull trafficSevereColor;
@property (nonatomic, strong) UIColor * _Nonnull alternativeTrafficUnknownColor;
@property (nonatomic, strong) UIColor * _Nonnull alternativeTrafficLowColor;
@property (nonatomic, strong) UIColor * _Nonnull alternativeTrafficModerateColor;
@property (nonatomic, strong) UIColor * _Nonnull alternativeTrafficHeavyColor;
@property (nonatomic, strong) UIColor * _Nonnull alternativeTrafficSevereColor;
@property (nonatomic, strong) UIColor * _Nonnull routeRestrictedAreaColor;
@property (nonatomic, strong) UIColor * _Nonnull routeCasingColor;
@property (nonatomic, strong) UIColor * _Nonnull routeAlternateColor;
@property (nonatomic, strong) UIColor * _Nonnull routeAlternateCasingColor;
@property (nonatomic, strong) UIColor * _Nonnull traversedRouteColor;
@property (nonatomic, strong) UIColor * _Nonnull maneuverArrowColor;
@property (nonatomic, strong) UIColor * _Nonnull maneuverArrowStrokeColor;
/// Color of the buildings, which were found at specific coordinates by calling
/// <code>NavigationMapView.highlightBuildings(at:in3D:extrudeAll:completion:)</code> and when <code>extrudeAll</code>
/// parameter is set to <code>false</code>.
@property (nonatomic, strong) UIColor * _Nonnull buildingHighlightColor;
/// Color of all other buildings, which will be highlighted after calling
/// <code>NavigationMapView.highlightBuildings(at:in3D:extrudeAll:completion:)</code> and when <code>extrudeAll</code>
/// parameter is set to <code>true</code>.
@property (nonatomic, strong) UIColor * _Nonnull buildingDefaultColor;
/// Allows to control current user location styling based on accuracy authorization permission on iOS 14 and above.
/// If <code>false</code>, user location will be drawn based on style, which was set in <code>NavigationMapView.userLocationStyle</code>.
/// If <code>true</code>, <code>UserHaloCourseView</code> will be shown.
@property (nonatomic) BOOL reducedAccuracyActivatedMode;
@property (nonatomic, strong) UIColor * _Nonnull routeDurationAnnotationSelectedColor;
@property (nonatomic, strong) UIColor * _Nonnull routeDurationAnnotationColor;
@property (nonatomic, strong) UIColor * _Nonnull routeDurationAnnotationSelectedTextColor;
@property (nonatomic, strong) UIColor * _Nonnull routeDurationAnnotationTextColor;
/// List of Mapbox Maps font names to be used for any symbol layers added by the Navigation SDK.
/// These are used for features such as Route Duration Annotations that are optionally added during route preview.
/// See https://docs.mapbox.com/ios/maps/api/6.3.0/customizing-fonts.html for more information about server-side fonts.
@property (nonatomic, copy) NSArray<NSString *> * _Nonnull routeDurationAnnotationFontNames;
/// Initializes a newly allocated <code>NavigationMapView</code> object with the specified frame rectangle.
/// \param frame The frame rectangle for the <code>NavigationMapView</code>.
///
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
/// Returns a <code>NavigationMapView</code> object initialized from data in a given unarchiver.
/// \param coder An unarchiver object.
///
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end



@interface NavigationMapView (SWIFT_EXTENSION(MapboxNavigation)) <UIGestureRecognizerDelegate>
- (BOOL)gestureRecognizer:(UIGestureRecognizer * _Nonnull)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer * _Nonnull)otherGestureRecognizer SWIFT_WARN_UNUSED_RESULT;
@end


@class CLLocationManager;

@interface NavigationMapView (SWIFT_EXTENSION(MapboxNavigation)) <CLLocationManagerDelegate>
- (void)locationManager:(CLLocationManager * _Nonnull)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status;
- (void)locationManagerDidChangeAuthorization:(CLLocationManager * _Nonnull)manager SWIFT_AVAILABILITY(ios,introduced=14.0);
@end






/// A view that represents the root view of the MapboxNavigation drop-in UI.
/// <h2>Components</h2>
/// <ol>
///   <li>
///     InstructionsBannerView
///   </li>
///   <li>
///     InformationStackView
///   </li>
///   <li>
///     BottomBannerView
///   </li>
///   <li>
///     ResumeButton
///   </li>
///   <li>
///     WayNameLabel
///   </li>
///   <li>
///     FloatingStackView
///   </li>
///   <li>
///     NavigationMapView
///   </li>
///   <li>
///     SpeedLimitView
///   </li>
/// </ol>
/// \code
/// +--------------------+
/// |         1          |
/// +--------------------+
/// |         2          |
/// +---+------------+---+
/// | 8 |            |   |
/// +---+            | 6 |
/// |                |   |
/// |         7      +---+
/// |                    |
/// |                    |
/// |                    |
/// +------------+       |
/// |  4  ||  5  |       |
/// +------------+-------+
/// |         3          |
/// +--------------------+
///
/// \endcode
IB_DESIGNABLE
SWIFT_CLASS("_TtC16MapboxNavigation14NavigationView")
@interface NavigationView : UIView
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder OBJC_DESIGNATED_INITIALIZER;
- (void)prepareForInterfaceBuilder;
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
@end


@interface NavigationView (SWIFT_EXTENSION(MapboxNavigation))
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
@end

@protocol UIContentContainer;

/// <code>NavigationViewController</code> is a fully-featured user interface for turn-by-turn navigation. Do not confuse it with the <code>NavigationController</code> class in UIKit.
/// You initialize a navigation view controller based on a predefined <code>RouteResponse</code> and <code>NavigationOptions</code>. As the user progresses along the route, the navigation view controller shows their surroundings and the route line on a map. Banners above and below the map display key information pertaining to the route. A list of steps and a feedback mechanism are accessible via the navigation view controller.
/// Route initialization should be configured before view controller’s <code>view</code> is loaded. Usually, that is automatically done during any of the <code>init</code>s, but you may also change this settings via <code>prepareViewLoading(routeResponse:, routeIndex:, routeOptions:, navigationOptions:)</code> methods. For example that could be handy while configuring a ViewController for a <code>UIStoryboardSegue</code>.
/// To be informed of significant events and decision points as the user progresses along the route, set the <code>NavigationService.delegate</code> property of the <code>NavigationService</code> that you provide when creating the navigation options.
/// <code>CarPlayNavigationViewController</code> manages the corresponding user interface on a CarPlay screen.
/// important:
/// Creating an instance of this type with parameters that uses <code>RouteController</code> with will start an Active
/// Guidance session. The trip session is stopped when the instance is deallocated. For more info read the
/// <a href="https://docs.mapbox.com/ios/beta/navigation/guides/pricing/">Pricing Guide</a>.
SWIFT_CLASS("_TtC16MapboxNavigation24NavigationViewController")
@interface NavigationViewController : UIViewController
/// The <code>NavigationMapView</code> displayed inside the view controller.
/// note:
/// Do not change <code>NavigationMapView.delegate</code> property; instead, implement the corresponding methods on <code>NavigationViewControllerDelegate</code>.
@property (nonatomic, readonly, strong) NavigationMapView * _Nullable navigationMapView;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)loadView;
- (void)viewDidLoad;
- (void)viewWillAppear:(BOOL)animated;
- (void)viewDidAppear:(BOOL)animated;
- (void)viewWillDisappear:(BOOL)animated;
- (void)viewDidDisappear:(BOOL)animated;
- (void)viewDidLayoutSubviews;
- (void)preferredContentSizeDidChangeForChildContentContainer:(id <UIContentContainer> _Nonnull)container;
@property (nonatomic, readonly) UIStatusBarStyle preferredStatusBarStyle;
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil SWIFT_UNAVAILABLE;
@end










/// :nodoc:
IB_DESIGNABLE
SWIFT_CLASS("_TtC16MapboxNavigation14NextBannerView")
@interface NextBannerView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)prepareForInterfaceBuilder;
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation20NextInstructionLabel")
@interface NextInstructionLabel : InstructionLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// <code>NightStyle</code> is the default night style for Mapbox Navigation SDK. Only will be applied when necessary and if <code>automaticallyAdjustStyleForSunPosition</code>.
SWIFT_CLASS("_TtC16MapboxNavigation10NightStyle")
@interface NightStyle : DayStyle
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
- (void)apply;
@end


/// An object that notifies a map view when the user’s location changes, minimizing the noise that normally accompanies location updates from a <code>CLLocationManager</code> object.
/// Unlike <code>Router</code> classes such as <code>RouteController</code> and <code>LegacyRouteController</code>, this class operates without a predefined route, matching the user’s location to the road network at large. If your application displays a <code>MapView</code> before starting turn-by-turn navigation, call <code>LocationManager.overrideLocationProvider(with:)</code> to override default location provider so that the map view always shows the location snapped to the road network. For example, use this class to show the user’s current location as they wander around town.
/// This class depends on <code>PassiveLocationManager</code> to detect the user’s location as it changes. If you want location updates but do not need to display them on a map and do not want a dependency on the MapboxNavigation module, you can use <code>PassiveLocationManager</code> instead of this class.
SWIFT_CLASS("_TtC16MapboxNavigation23PassiveLocationProvider")
@interface PassiveLocationProvider : NSObject
- (nonnull instancetype)init SWIFT_UNAVAILABLE;
+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@end



/// :nodoc:
SWIFT_CLASS_NAMED("PrimaryLabel")
@interface MBPrimaryLabel : InstructionLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("ProgressBar") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBProgressBar : UIView
@property (nonatomic, strong) UIColor * _Nonnull barColor;
@property (nonatomic, readonly, copy) NSString * _Nonnull description;
- (void)layoutSubviews;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("ReportButton") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBReportButton : MBButton
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
IB_DESIGNABLE
SWIFT_CLASS_NAMED("ResumeButton")
@interface MBResumeButton : UIControl
/// The tint color of the <code>ResumeButton</code>’s icon and title.
@property (nonatomic, strong) UIColor * _Null_unspecified tintColor;
/// The width of the <code>ResumeButton</code>’s border.
@property (nonatomic) CGFloat borderWidth;
/// The radius of the <code>ResumeButton</code>’s corner.
@property (nonatomic) CGFloat cornerRadius;
/// The color of the <code>ResumeButton</code>’s border.
@property (nonatomic, strong) UIColor * _Nullable borderColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)prepareForInterfaceBuilder;
@end

@class NSNotification;

/// A route voice controller monitors turn-by-turn navigation events and triggers playing spoken instructions as audio using the instance of <code>SpeechSynthesizing</code> type.
/// You initialize a voice controller using a <code>NavigationService</code> instance. The voice controller observes when the navigation service hints that the user has passed a <em>spoken instruction point</em> and responds by calling it’s <code>speechSynthesizer</code> to handle the vocalization.
/// If you want to use your own custom <code>SpeechSynthesizing</code> implementation - also pass it during initialization. If no implementation is provided - <code>MultiplexedSpeechSynthesizer</code> will be used by default.
/// You can also subclass <code>RouteVoiceController</code> to implement you own mechanism of monitoring navgiation events and calling <code>speechSynthesizer</code>.
SWIFT_CLASS("_TtC16MapboxNavigation20RouteVoiceController")
@interface RouteVoiceController : NSObject <AVSpeechSynthesizerDelegate>
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER SWIFT_UNAVAILABLE_MSG("Use init(navigationService:) instead.");
- (void)didPassSpokenInstructionPointWithNotification:(NSNotification * _Nonnull)notification;
@end


/// :nodoc:
SWIFT_CLASS_NAMED("SecondaryLabel")
@interface MBSecondaryLabel : InstructionLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("SeparatorView")
@interface MBSeparatorView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end

enum SpeedLimitStyleKitResizingBehavior : NSInteger;

SWIFT_CLASS("_TtC16MapboxNavigation18SpeedLimitStyleKit")
@interface SpeedLimitStyleKit : NSObject
/// / Drawing Methods
+ (void)drawMUTCDWithFrame:(CGRect)targetFrame resizing:(enum SpeedLimitStyleKitResizingBehavior)resizing signBackColor:(UIColor * _Nonnull)signBackColor strokeColor:(UIColor * _Nonnull)strokeColor limit:(NSString * _Nonnull)limit legend:(NSString * _Nonnull)legend;
+ (void)drawViennaWithFrame:(CGRect)targetFrame resizing:(enum SpeedLimitStyleKitResizingBehavior)resizing signBackColor:(UIColor * _Nonnull)signBackColor strokeColor:(UIColor * _Nonnull)strokeColor regulatoryColor:(UIColor * _Nonnull)regulatoryColor limit:(NSString * _Nonnull)limit;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end

typedef SWIFT_ENUM_NAMED(NSInteger, SpeedLimitStyleKitResizingBehavior, "ResizingBehavior", closed) {
  SpeedLimitStyleKitResizingBehaviorAspectFit = 0,
/// The content is proportionally resized to fit into the target rectangle.
  SpeedLimitStyleKitResizingBehaviorAspectFill = 1,
/// The content is proportionally resized to completely fill the target rectangle.
  SpeedLimitStyleKitResizingBehaviorStretch = 2,
/// The content is stretched to match the entire target rectangle.
  SpeedLimitStyleKitResizingBehaviorCenter = 3,
};


/// A view that displays a speed limit and resembles a real-world speed limit sign.
SWIFT_CLASS("_TtC16MapboxNavigation14SpeedLimitView")
@interface SpeedLimitView : UIView
/// The sign’s background color.
@property (nonatomic, strong) UIColor * _Nonnull signBackColor;
/// The color of the text on the sign.
/// This color is also used for the border of an MUTCD-style sign.
@property (nonatomic, strong) UIColor * _Nonnull textColor;
/// The color of the border of a regulatory sign according to the Vienna Convention.
@property (nonatomic, strong) UIColor * _Nonnull regulatoryBorderColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
- (void)drawRect:(CGRect)rect;
@end


/// :nodoc:
/// A translucent bar that responds to tap and swipe gestures, similar to a scrubber or stepper control, and expands and collapses to maximize screen real estate.
IB_DESIGNABLE
SWIFT_CLASS("_TtC16MapboxNavigation10StatusView")
@interface StatusView : UIControl
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end


/// A banner view that contains the current step instruction along a route and responds to tap and swipe gestures.
SWIFT_CLASS("_TtC16MapboxNavigation20StepInstructionsView")
@interface StepInstructionsView : BaseInstructionsBannerView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS_NAMED("StepListIndicatorView")
@interface MBDraggableView : UIView
@property (nonatomic, copy) NSArray<UIColor *> * _Nonnull gradientColors;
- (void)layoutSubviews;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// <code>UITableViewCell</code> instance that provides the ability to show a current step instruction along a route.
SWIFT_CLASS("_TtC16MapboxNavigation17StepTableViewCell")
@interface StepTableViewCell : UITableViewCell
- (nonnull instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString * _Nullable)reuseIdentifier SWIFT_UNAVAILABLE;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)prepareForReuse;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation19StepsBackgroundView")
@interface StepsBackgroundView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// :nodoc:
SWIFT_CLASS("_TtC16MapboxNavigation19StepsViewController")
@interface StepsViewController : UIViewController
- (void)viewDidLoad;
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end

@class UITableView;

@interface StepsViewController (SWIFT_EXTENSION(MapboxNavigation)) <UITableViewDelegate>
- (void)tableView:(UITableView * _Nonnull)tableView didSelectRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath;
@end


@interface StepsViewController (SWIFT_EXTENSION(MapboxNavigation)) <UITableViewDataSource>
- (NSInteger)numberOfSectionsInTableView:(UITableView * _Nonnull)tableView SWIFT_WARN_UNUSED_RESULT;
- (NSInteger)tableView:(UITableView * _Nonnull)tableView numberOfRowsInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT;
- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT;
- (UITableViewCell * _Nonnull)tableView:(UITableView * _Nonnull)tableView cellForRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath SWIFT_WARN_UNUSED_RESULT;
- (void)tableView:(UITableView * _Nonnull)tableView willDisplayCell:(UITableViewCell * _Nonnull)cell forRowAtIndexPath:(NSIndexPath * _Nonnull)indexPath;
- (CGFloat)tableView:(UITableView * _Nonnull)tableView heightForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT;
- (UIView * _Nullable)tableView:(UITableView * _Nonnull)tableView viewForHeaderInSection:(NSInteger)section SWIFT_WARN_UNUSED_RESULT;
@end







SWIFT_CLASS("_TtC16MapboxNavigation14StyleKitMarker")
@interface StyleKitMarker : NSObject
/// / Drawing Methods
+ (void)drawMarkerWithFrame:(CGRect)frame innerColor:(UIColor * _Nonnull)innerColor shadowColor:(UIColor * _Nonnull)shadowColor pinColor:(UIColor * _Nonnull)pinColor strokeColor:(UIColor * _Nonnull)strokeColor;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end

typedef SWIFT_ENUM(NSInteger, StyleType, closed) {
  StyleTypeDay = 0,
  StyleTypeNight = 1,
};


SWIFT_CLASS_NAMED("SubtitleLabel") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBSubtitleLabel : MBStylableLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// <code>SpeechSynthesizing</code> implementation, using <code>AVSpeechSynthesizer</code>.
SWIFT_CLASS("_TtC16MapboxNavigation23SystemSpeechSynthesizer")
@interface SystemSpeechSynthesizer : NSObject
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end

@class AVSpeechSynthesizer;
@class AVSpeechUtterance;

@interface SystemSpeechSynthesizer (SWIFT_EXTENSION(MapboxNavigation)) <AVSpeechSynthesizerDelegate>
- (void)speechSynthesizer:(AVSpeechSynthesizer * _Nonnull)synthesizer didStartSpeechUtterance:(AVSpeechUtterance * _Nonnull)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer * _Nonnull)synthesizer didContinueSpeechUtterance:(AVSpeechUtterance * _Nonnull)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer * _Nonnull)synthesizer didFinishSpeechUtterance:(AVSpeechUtterance * _Nonnull)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer * _Nonnull)synthesizer didPauseSpeechUtterance:(AVSpeechUtterance * _Nonnull)utterance;
- (void)speechSynthesizer:(AVSpeechSynthesizer * _Nonnull)synthesizer didCancelSpeechUtterance:(AVSpeechUtterance * _Nonnull)utterance;
@end


SWIFT_CLASS_NAMED("TimeRemainingLabel")
@interface MBTimeRemainingLabel : MBStylableLabel
/// Sets the text color for no or unknown traffic.
@property (nonatomic, strong) UIColor * _Nonnull trafficUnknownColor;
/// Sets the text color for low traffic.
@property (nonatomic, strong) UIColor * _Nonnull trafficLowColor;
/// Sets the text color for moderate traffic.
@property (nonatomic, strong) UIColor * _Nonnull trafficModerateColor;
/// Sets the text color for heavy traffic.
@property (nonatomic, strong) UIColor * _Nonnull trafficHeavyColor;
/// Sets the text color for severe traffic.
@property (nonatomic, strong) UIColor * _Nonnull trafficSevereColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("TitleLabel") SWIFT_DEPRECATED_MSG("This class is no longer used.")
@interface MBTitleLabel : MBStylableLabel
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


SWIFT_CLASS_NAMED("TopBannerView")
@interface MBTopBannerView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end


/// A view controller that displays the current maneuver instruction as a “banner” flush with the edges of the containing view. The user swipes to one side to preview a subsequent maneuver.
/// This class is the default top banner view controller used by <code>NavigationOptions</code> and <code>NavigationViewController</code>. <code>InstructionsCardViewController</code> provides an alternative, user notification–like interface.
SWIFT_CLASS("_TtC16MapboxNavigation23TopBannerViewController")
@interface TopBannerViewController : UIViewController
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil SWIFT_UNAVAILABLE;
- (void)viewDidLoad;
@end









@interface UICollectionViewFlowLayout (SWIFT_EXTENSION(MapboxNavigation))
@property (nonatomic, readonly) BOOL flipsHorizontallyInOppositeLayoutDirection;
@end
















/// A view representing the user’s reduced accuracy location on screen.
SWIFT_CLASS("_TtC16MapboxNavigation18UserHaloCourseView")
@interface UserHaloCourseView : UIView
/// Sets the inner fill color of the user halo.
@property (nonatomic, strong) UIColor * _Nonnull haloColor;
/// Sets the ring fill color of the circle around the user halo.
@property (nonatomic, strong) UIColor * _Nonnull haloRingColor;
/// Sets the ring size by the radius of the user halo.
@property (nonatomic) double haloRadius;
/// Sets the halo ring border width.
@property (nonatomic) double haloBorderWidth;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
@end


/// A view representing the user’s location on screen.
SWIFT_CLASS("_TtC16MapboxNavigation18UserPuckCourseView")
@interface UserPuckCourseView : UIView
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@property (nonatomic, strong) UIColor * _Nonnull puckColor;
@property (nonatomic, strong) UIColor * _Nonnull stalePuckColor SWIFT_DEPRECATED_MSG("No stale status in active navigation anymore.");
@property (nonatomic, strong) UIColor * _Nonnull fillColor;
@property (nonatomic, strong) UIColor * _Nonnull shadowColor;
@end


/// A label that is used to show a road name and a shield icon.
SWIFT_CLASS_NAMED("WayNameLabel")
@interface MBWayNameLabel : MBStylableLabel
@property (nonatomic, strong) UIColor * _Nonnull roadShieldBlackColor;
@property (nonatomic, strong) UIColor * _Nonnull roadShieldBlueColor;
@property (nonatomic, strong) UIColor * _Nonnull roadShieldGreenColor;
@property (nonatomic, strong) UIColor * _Nonnull roadShieldRedColor;
@property (nonatomic, strong) UIColor * _Nonnull roadShieldWhiteColor;
@property (nonatomic, strong) UIColor * _Nonnull roadShieldYellowColor;
@property (nonatomic, strong) UIColor * _Nonnull roadShieldOrangeColor;
@property (nonatomic, strong) UIColor * _Nonnull roadShieldDefaultColor;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
@end

@class CALayer;

/// A host view for <code>WayNameLabel</code> that shows a road name and a shield icon.
/// <code>WayNameView</code> is hidden or shown depending on the road name information availability. In case if
/// such information is not present, <code>WayNameView</code> is automatically hidden. If you’d like to completely
/// hide <code>WayNameView</code> set <code>WayNameView.isHidden</code> property to <code>true</code>.
SWIFT_CLASS_NAMED("WayNameView")
@interface MBWayNameView : UIView
@property (nonatomic, readonly, strong) CALayer * _Nonnull layer;
/// The background color of the <code>WayNameView</code>.
@property (nonatomic, strong) UIColor * _Nullable backgroundColor;
/// The color of the <code>WayNameView</code>’s border.
@property (nonatomic, strong) UIColor * _Nullable borderColor;
/// The width of the <code>WayNameView</code>’s border.
@property (nonatomic) CGFloat borderWidth;
/// The radius of the <code>WayNameView</code>’s corner. By default corner radius is set to half of
/// <code>WayNameView</code>’s height.
@property (nonatomic) CGFloat cornerRadius;
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)decoder OBJC_DESIGNATED_INITIALIZER;
- (void)layoutSubviews;
@end

#if __has_attribute(external_source_symbol)
# pragma clang attribute pop
#endif
#pragma clang diagnostic pop
#endif
