#import NS_ASSUME_NONNULL_BEGIN /** Protocol for receiving payment lifecycle messages from a payment driver that requires presentation of a view controller to authorize a payment. */ @protocol BTViewControllerPresentingDelegate /** The payment driver requires presentation of a view controller in order to proceed. Your implementation should present the viewController modally, e.g. via `presentViewController:animated:completion:` @param driver The payment driver @param viewController The view controller to present */ - (void)paymentDriver:(id)driver requestsPresentationOfViewController:(UIViewController *)viewController; /** The payment driver requires dismissal of a view controller. Your implementation should dismiss the viewController, e.g. via `dismissViewControllerAnimated:completion:` @param driver The payment driver @param viewController The view controller to be dismissed */ - (void)paymentDriver:(id)driver requestsDismissalOfViewController:(UIViewController *)viewController; @end NS_ASSUME_NONNULL_END