How to connect a @Parameter of a Tip to my app's state?

I have an observable object which is a model a view. I also have a Tip (from TipKit) with @Parameter and a rule.

The source of truth for the state is in the observable object, however the Tip needs to be updated when state changes. So how do I bind between the two?

The way I was thinking was to sink updates from objectWillChange and check if Tips parameter needs to be updated or add didSet if it a @Published property. But I am not sure this is the best practice.

Schematic example:

class MyModel: ObservableObject {
    struct TapSubmitTip: Tip {
        @Parameter static var isSubmitButtonEnabled: Bool = false
        
        var title: Text {
            Text("Tap \"Submit\" to confirm your selection.")
        }
        
        var rules: [Rule] {
            #Rule(Self.$isSubmitButtonEnabled) {
                $0 == true
            }
        }
    }

    let tapSubmitTip = TapSubmitTip()
    var objectWillChangeCancallable: AnyCancellable!

   // Used by the view to enable or disable the button
    var isSubmitButtonEnabled: Bool {
        // Some logic to determine if button should be enabled.
    }

    init() {
        objectWillChangeCancallable = objectWillChange.sink { [weak self] void in
            guard let self else { return }
            if isSubmitButtonEnabled {
                TapSubmitTip.isSubmitButtonEnabled = true
            }
        }
   }

  ...
  // Call objectWillChange or update published properties as needed.
  ... 
}
How to connect a @Parameter of a Tip to my app's state?
 
 
Q