title: WooCommerce's hook that runs on update_checkout or update_order_review
body: <p>So, the checkout page has Cash On Delivery &amp; Direct Bank Transfer payment method. The goal is to make no shipping method available OR to make <em>free shipping</em> to be the only available method when the COD <code>payment_method</code> radio is checked. To make it happen, I need to unset existing <code>jne_shipping</code> shipping method.</p>
  
  <p>I am adding a callback to the <code>payment_method</code> radio change event:</p>
  
  <pre><code>$('input[name=payment_method]').change(function() {
    // request update_checkout to domain.com/checkout/?wc-ajax=update_order_review
    $('body').trigger('update_checkout');
  });
  </code></pre>
  
  <p>and the hook in php:</p>
  
  <pre><code>add_filter( 'woocommerce_available_shipping_methods', 'freeOnCOD', 10, 1 );
  function freeOnCOD($available_methods)
  {
      if ( isset( $_POST['payment_method'] ) &amp;&amp; $_POST['payment_method'] === 'cod' ) {
          unset( $available_methods['jne_shipping'] );
      }
  
      return $available_methods;
  }
  </code></pre>
  
  <p>But this filter hook does not even run. I also tried <code>woocommerce_package_rates</code> but still there was no effect.</p>
  
  <p>Ofcourse, I checked the WooCommerce's hooks documentation too, but can't figure what is the correct hook that runs on <code>update_checkout</code> or <code>update_order_review</code></p>
  
  <p>Any help is appreciated.</p>