// This file is generated and will be overwritten automatically.

#import <Foundation/Foundation.h>
#import <MapboxNavigationNative/MBNNRouterOrigin.h>
@class MBXExpected<__covariant Value, __covariant Error>;

@protocol MBNNRouteInterface;
@protocol MBNNRoutesData;

NS_SWIFT_NAME(RouteParser)
__attribute__((visibility ("default")))
@interface MBNNRouteParser : NSObject

// This class provides custom init which should be called
- (nonnull instancetype)init NS_UNAVAILABLE;

// This class provides custom init which should be called
+ (nonnull instancetype)new NS_UNAVAILABLE;

/** Creates an instance of `RoutesData` and calculate `RouteAlternative` metadata for each route in `alternativeRoutes` array. */
+ (nonnull id<MBNNRoutesData>)createRoutesDataForPrimaryRoute:(nonnull id<MBNNRouteInterface>)primaryRoute
                                            alternativeRoutes:(nonnull NSArray<id<MBNNRouteInterface>> *)alternativeRoutes __attribute((ns_returns_retained));

@end
