3
3
4
4
from typing import List , TYPE_CHECKING , Optional
5
5
6
+ from typing_extensions import Self
7
+
6
8
from tibiapy .models .house import HouseEntry , HousesSection , House
7
9
8
10
if TYPE_CHECKING :
@@ -21,43 +23,43 @@ def __init__(self):
21
23
self ._available_worlds = []
22
24
self ._available_towns = []
23
25
24
- def world (self , world : str ):
26
+ def world (self , world : str ) -> Self :
25
27
self ._world = world
26
28
return self
27
29
28
- def town (self , town : str ):
30
+ def town (self , town : str ) -> Self :
29
31
self ._town = town
30
32
return self
31
33
32
- def status (self , status : HouseStatus ):
34
+ def status (self , status : HouseStatus ) -> Self :
33
35
self ._status = status
34
36
return self
35
37
36
- def house_type (self , house_type : HouseType ):
38
+ def house_type (self , house_type : HouseType ) -> Self :
37
39
self ._house_type = house_type
38
40
return self
39
41
40
- def order (self , order : HouseOrder ):
42
+ def order (self , order : HouseOrder ) -> Self :
41
43
self ._order = order
42
44
return self
43
45
44
- def entries (self , entries : List [HouseEntry ]):
46
+ def entries (self , entries : List [HouseEntry ]) -> Self :
45
47
self ._entries = entries
46
48
return self
47
49
48
- def add_entry (self , entry : HouseEntry ):
50
+ def add_entry (self , entry : HouseEntry ) -> Self :
49
51
self ._entries .append (entry )
50
52
return self
51
53
52
- def available_worlds (self , available_worlds : List [str ]):
54
+ def available_worlds (self , available_worlds : List [str ]) -> Self :
53
55
self ._available_worlds = available_worlds
54
56
return self
55
57
56
- def available_towns (self , available_towns : List [str ]):
58
+ def available_towns (self , available_towns : List [str ]) -> Self :
57
59
self ._available_towns = available_towns
58
60
return self
59
61
60
- def build (self ):
62
+ def build (self ) -> HousesSection :
61
63
return HousesSection (
62
64
world = self ._world ,
63
65
town = self ._town ,
@@ -100,35 +102,35 @@ def __init__(self):
100
102
self ._time_left = None
101
103
self ._highest_bid = None
102
104
103
- def status (self , status : HouseStatus ):
105
+ def status (self , status : HouseStatus ) -> Self :
104
106
self ._status = status
105
107
return self
106
108
107
- def type (self , type : HouseType ):
109
+ def type (self , type : HouseType ) -> Self :
108
110
self ._type = type
109
111
return self
110
112
111
- def town (self , town : str ):
113
+ def town (self , town : str ) -> Self :
112
114
self ._town = town
113
115
return self
114
116
115
- def size (self , size : int ):
117
+ def size (self , size : int ) -> Self :
116
118
self ._size = size
117
119
return self
118
120
119
- def rent (self , rent : int ):
121
+ def rent (self , rent : int ) -> Self :
120
122
self ._rent = rent
121
123
return self
122
124
123
- def time_left (self , time_left : Optional [datetime .timedelta ]):
125
+ def time_left (self , time_left : Optional [datetime .timedelta ]) -> Self :
124
126
self ._time_left = time_left
125
127
return self
126
128
127
- def highest_bid (self , highest_bid : Optional [int ]):
129
+ def highest_bid (self , highest_bid : Optional [int ]) -> Self :
128
130
self ._highest_bid = highest_bid
129
131
return self
130
132
131
- def build (self ):
133
+ def build (self ) -> HouseEntry :
132
134
return HouseEntry (
133
135
name = self ._name ,
134
136
id = self ._id ,
@@ -163,71 +165,71 @@ def __init__(self):
163
165
self ._highest_bidder = None
164
166
self ._auction_end = None
165
167
166
- def status (self , status : HouseStatus ):
168
+ def status (self , status : HouseStatus ) -> Self :
167
169
self ._status = status
168
170
return self
169
171
170
- def rent (self , rent : int ):
172
+ def rent (self , rent : int ) -> Self :
171
173
self ._rent = rent
172
174
return self
173
175
174
- def type (self , type : HouseType ):
176
+ def type (self , type : HouseType ) -> Self :
175
177
self ._type = type
176
178
return self
177
179
178
- def image_url (self , image_url : str ):
180
+ def image_url (self , image_url : str ) -> Self :
179
181
self ._image_url = image_url
180
182
return self
181
183
182
- def beds (self , beds : int ):
184
+ def beds (self , beds : int ) -> Self :
183
185
self ._beds = beds
184
186
return self
185
187
186
- def size (self , size : int ):
188
+ def size (self , size : int ) -> Self :
187
189
self ._size = size
188
190
return self
189
191
190
- def owner (self , owner : Optional [str ]):
192
+ def owner (self , owner : Optional [str ]) -> Self :
191
193
self ._owner = owner
192
194
return self
193
195
194
- def owner_sex (self , owner_sex : Sex ):
196
+ def owner_sex (self , owner_sex : Sex ) -> Self :
195
197
self ._owner_sex = owner_sex
196
198
return self
197
199
198
- def paid_until (self , paid_until : Optional [datetime .datetime ]):
200
+ def paid_until (self , paid_until : Optional [datetime .datetime ]) -> Self :
199
201
self ._paid_until = paid_until
200
202
return self
201
203
202
- def transfer_date (self , transfer_date : Optional [datetime .datetime ]):
204
+ def transfer_date (self , transfer_date : Optional [datetime .datetime ]) -> Self :
203
205
self ._transfer_date = transfer_date
204
206
return self
205
207
206
- def transfer_recipient (self , transfer_recipient : Optional [str ]):
208
+ def transfer_recipient (self , transfer_recipient : Optional [str ]) -> Self :
207
209
self ._transfer_recipient = transfer_recipient
208
210
return self
209
211
210
- def transfer_price (self , transfer_price : Optional [int ]):
212
+ def transfer_price (self , transfer_price : Optional [int ]) -> Self :
211
213
self ._transfer_price = transfer_price
212
214
return self
213
215
214
- def transfer_accepted (self , transfer_accepted : Optional [bool ]):
216
+ def transfer_accepted (self , transfer_accepted : Optional [bool ]) -> Self :
215
217
self ._transfer_accepted = transfer_accepted
216
218
return self
217
219
218
- def highest_bid (self , highest_bid : Optional [int ]):
220
+ def highest_bid (self , highest_bid : Optional [int ]) -> Self :
219
221
self ._highest_bid = highest_bid
220
222
return self
221
223
222
- def highest_bidder (self , highest_bidder : Optional [str ]):
224
+ def highest_bidder (self , highest_bidder : Optional [str ]) -> Self :
223
225
self ._highest_bidder = highest_bidder
224
226
return self
225
227
226
- def auction_end (self , auction_end : Optional [datetime .datetime ]):
228
+ def auction_end (self , auction_end : Optional [datetime .datetime ]) -> Self :
227
229
self ._auction_end = auction_end
228
230
return self
229
231
230
- def build (self ):
232
+ def build (self ) -> House :
231
233
return House (
232
234
name = self ._name ,
233
235
id = self ._id ,
0 commit comments