diff --git a/pandas/tseries/frequencies.py b/pandas/tseries/frequencies.py index 26b13b42b1af6..54782a2de77cd 100644 --- a/pandas/tseries/frequencies.py +++ b/pandas/tseries/frequencies.py @@ -1,6 +1,6 @@ from datetime import timedelta import re -from typing import Dict, Optional +from typing import Dict, Optional, Tuple, Union, overload import numpy as np from pytz import AmbiguousTimeError @@ -70,7 +70,19 @@ def get_period_alias(offset_str: str) -> Optional[str]: } -def to_offset(freq) -> Optional[DateOffset]: +@overload +def to_offset(freq: None) -> None: + ... + + +@overload +def to_offset( + freq: Union[str, Tuple[str, int], Tuple[int, str], timedelta, DateOffset] +) -> DateOffset: + ... + + +def to_offset(freq): """ Return DateOffset object from string or tuple representation or datetime.timedelta object.