// // RQNavigationControllerStack.h // RQCommon // // Created by 张嵘 on 2018/11/14. // Copyright © 2018 张嵘. All rights reserved. // #import #import "RQRouter.h" @protocol RQViewModelServices; @interface RQNavigationControllerStack : NSObject /// Initialization method. This is the preferred way to create a new navigation controller stack. /// /// services - The service bus of the `Model` layer. /// /// Returns a new navigation controller stack. - (instancetype)initWithServices:(id)services; /// Pushes the navigation controller. /// /// navigationController - the navigation controller - (void)pushNavigationController:(UINavigationController *)navigationController; /// Pops the top navigation controller in the stack. /// /// Returns the popped navigation controller. - (UINavigationController *)popNavigationController; /// Retrieves the top navigation controller in the stack. /// /// Returns the top navigation controller in the stack. - (UINavigationController *)topNavigationController; @end