### Apache Airflow Provider(s)

databricks

### Versions of Apache Airflow Providers

apache-airflow-providers-databricks==1!2.0.2


### Apache Airflow version

2.1.4 (latest released)

### Operating System

Debian GNU/Linux 11 (bullseye)

### Deployment

Docker-Compose

### Deployment details

Running local deployment using Astronomer CLI

### What happened

When calling the `get_run_state` method from the `DatabricksHook`, I get the following error:

`TypeError: Object of type RunState is not JSON serializable`

I think this is due to [the method returning a RunState custom class](https://github.com/apache/airflow/blob/main/airflow/providers/databricks/hooks/databricks.py#L275) as opposed to a `str` like the rest of the methods in the databricks hook (i.e. `get_job_id`, `get_run_page_url`, etc.)

### What you expected to happen

When calling the `get_run_state` method, simply return the `result_state` or `state_message` [variables](https://github.com/apache/airflow/blob/main/airflow/providers/databricks/hooks/databricks.py#L287-L288) instead of the `RunState` class.

### How to reproduce

Create a dag that references a databricks deployment and use this task to see the error:

```
    from airflow.providers.databricks.hooks.databricks import DatabricksHook
    run_id = <insert run id from databricks ui here>

    def get_run_state(self, run_id: str):
           return self.hook.get_run_state(run_id=run_id)

    python_get_run_state = PythonOperator(
        task_id="python_get_run_state",
        python_callable=get_run_state,
        op_kwargs={
            "run_id": str(run_id)
        }
    )
```

### Anything else

_No response_

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

tests/providers/databricks/hooks/test_databricks.py
conn = session.query(Connection).filter(Connection.conn_id == DEFAULT_CONN_ID).first()
        conn.login = '9ff815a6-4404-4ab8-85cb-cd0e6f879c1d'
        conn.password = 'secret'
        conn.extra = json.dumps(
            {
                'host': HOST,
                'azure_tenant_id': '3ff810a6-5504-4ab8-85cb-cd0e6f879c1d',
            }
        )
        session.commit()
        self.hook = DatabricksHook()
    @mock.patch('airflow.providers.databricks.hooks.databricks.requests')
    def test_submit_run(self, mock_requests):
        mock_requests.codes.ok = 200
        mock_requests.post.side_effect = [
            create_successful_response_mock(create_aad_token_for_resource(DEFAULT_DATABRICKS_SCOPE)),
            create_successful_response_mock({'run_id': '1'}),
        ]
        status_code_mock = mock.PropertyMock(return_value=200)
        type(mock_requests.post.return_value).status_code = status_code_mock
        data = {'notebook_task': NOTEBOOK_TASK, 'new_cluster': NEW_CLUSTER}
        run_id = self.hook.submit_run(data)
        assert run_id == '1'
        args = mock_requests.post.call_args
        kwargs = args[1]
        assert kwargs['auth'].token == TOKEN
class TestDatabricksHookAadTokenOtherClouds(unittest.TestCase):