@@ -121,7 +121,9 @@ class Timestamp(datetime):
121
121
def date (self ) -> _date : ...
122
122
def time (self ) -> _time : ...
123
123
def timetz (self ) -> _time : ...
124
- def replace (
124
+ # Override since fold is more precise than datetime.replace(fold:int)
125
+ # Violation of Liskov substitution principle
126
+ def replace ( # type:ignore[override]
125
127
self ,
126
128
year : int | None = ...,
127
129
month : int | None = ...,
@@ -131,7 +133,7 @@ class Timestamp(datetime):
131
133
second : int | None = ...,
132
134
microsecond : int | None = ...,
133
135
tzinfo : _tzinfo | None = ...,
134
- fold : int | None = ...,
136
+ fold : Literal [ 0 , 1 ] | None = ...,
135
137
) -> Timestamp : ...
136
138
def astimezone (self : _DatetimeT , tz : _tzinfo | None = ...) -> _DatetimeT : ...
137
139
def ctime (self ) -> str : ...
@@ -184,6 +186,10 @@ class Timestamp(datetime):
184
186
def __radd__ (self : _DatetimeT , other : timedelta ) -> _DatetimeT : ...
185
187
@overload
186
188
def __radd__ (self , other : TimedeltaIndex ) -> DatetimeIndex : ...
189
+ @overload
190
+ def __radd__ (
191
+ self , other : npt .NDArray [np .timedelta64 ]
192
+ ) -> npt .NDArray [np .datetime64 ]: ...
187
193
@overload # type: ignore[override]
188
194
def __sub__ (self , other : datetime ) -> Timedelta : ...
189
195
@overload
0 commit comments