 
     /// Update the navigation configuration based on the specified properties.
     func updateNavigation()
+
+    /// Reset the navigation configuration.
+    func resetNavigation()
 }
 
 public extension CustomizableNavigation where Self: UIViewController, Self: UIGestureRecognizerDelegate {
     var barBackgroundColor: UIColor { return .white }
-    var isBarTranslucent: Bool { return true }
     var isBarUsingBottomShadow: Bool { return true }
     var titleColor: UIColor { return .black }
     var titleFont: UIFont { return .systemFont(ofSize: 17) }

public protocol CustomizableNavigation {
    /// Specify this property to determine the navigation bar background color.
    var barBackgroundColor: UIColor { get }

    /// Specify this property to determine whether or not the navigation bar
    /// is translucent. Set the value to true if you want to have such kind like
    /// beautiful transparency effect.
    var isBarTranslucent: Bool { get }

    /// Specify this property to determine whether or not the navigation bar
    /// would use shadow. Set the value to false to remove a *strange*

        interactivePopRecognizer?.delegate = self
    }

    func resetNavigation() {
        let navigationBar = navigationController?.navigationBar

        navigationBar?.subviews.first?.subviews.first?.removeFromSuperview()
        navigationBar?.setBackgroundImage(nil, for: .default)
        navigationBar?.shadowImage = nil
        navigationBar?.titleTextAttributes = nil
    }
}

