### Body

Currently when you use multiple-outputs in decorator and it gets None value, it crashes.

As explained in https://github.com/apache/airflow/issues/32553 and workaround for ShortCircuitOperator has been implemented here:  https://github.com/apache/airflow/pull/32569 

But a more complete fix for multiple-outputs handling None is needed. 

### Committer

- [X] I acknowledge that I am a maintainer/committer of the Apache Airflow project.
@task_decorator
        def identity_tuple(x: int, y: int) -> Tuple[int, int]:
            return x, y
        with self.dag:
            ident = identity_tuple(35, 36)
        dr = self.create_dag_run()
        ident.operator.run(start_date=DEFAULT_DATE, end_date=DEFAULT_DATE)
        ti = dr.get_task_instances()[0]
        assert not ident.operator.multiple_outputs
        assert ti.xcom_pull() == (35, 36)
        assert ti.xcom_pull(key="return_value_0") is None
        assert ti.xcom_pull(key="return_value_1") is None
    def test_fails_bad_signature(self):
        """Tests that @task will fail if signature is not binding."""
        @task_decorator
        def add_number(num: int) -> int:
            return num + 2
        with pytest.raises(TypeError):
            add_number(2, 3)
        with pytest.raises(TypeError):
            add_number()
        add_number("test")
    def test_fail_method(self):
        """Tests that @task will fail if signature is not binding."""
        with pytest.raises(TypeError):
            class Test: