33import base64
44import json
55from dataclasses import dataclass
6- from typing import Any , Generic , Literal , Optional , Type
6+ from typing import TYPE_CHECKING , Any , Generic , Literal , Optional
77
88from nexusrpc import OutputT
99
10- from temporalio import client
11-
1210OperationTokenType = Literal [1 ]
1311OPERATION_TOKEN_TYPE_WORKFLOW : OperationTokenType = 1
1412
13+ if TYPE_CHECKING :
14+ import temporalio .client
15+
1516
1617@dataclass (frozen = True )
1718class WorkflowHandle (Generic [OutputT ]):
@@ -32,8 +33,10 @@ class WorkflowHandle(Generic[OutputT]):
3233 version : Optional [int ] = None
3334
3435 def _to_client_workflow_handle (
35- self , client : client .Client , result_type : Optional [Type [OutputT ]] = None
36- ) -> client .WorkflowHandle [Any , OutputT ]:
36+ self ,
37+ client : temporalio .client .Client ,
38+ result_type : Optional [type [OutputT ]] = None ,
39+ ) -> temporalio .client .WorkflowHandle [Any , OutputT ]:
3740 """Create a :py:class:`temporalio.client.WorkflowHandle` from the token."""
3841 if client .namespace != self .namespace :
3942 raise ValueError (
@@ -46,7 +49,7 @@ def _to_client_workflow_handle(
4649 # handle type.
4750 @classmethod
4851 def _unsafe_from_client_workflow_handle (
49- cls , workflow_handle : client .WorkflowHandle [Any , OutputT ]
52+ cls , workflow_handle : temporalio . client .WorkflowHandle [Any , OutputT ]
5053 ) -> WorkflowHandle [OutputT ]:
5154 """Create a :py:class:`WorkflowHandle` from a :py:class:`temporalio.client.WorkflowHandle`.
5255
0 commit comments