from dataclasses import dataclass, field from enum import Enum from typing import Optional DEFAULT_GRPC_TIMEOUT = 5 class TimeUnit(Enum): MINUTES = "MINUTES" SECONDS = "SECONDS" MILLISECONDS = "MILLISECONDS" @dataclass class CallContextParam: timeout: int = DEFAULT_GRPC_TIMEOUT time_unit: TimeUnit = TimeUnit.SECONDS @classmethod def default(cls): return cls()