11import abc
22import neo4j .time
3- from _typeshed import Incomplete
43from abc import ABCMeta , abstractmethod
54from datetime import date , datetime
65from neomodel .config import get_config as get_config
@@ -12,13 +11,13 @@ TOO_MANY_DEFAULTS: str
1211def validator (fn : Callable ) -> Callable : ...
1312
1413class FulltextIndex :
15- analyzer : Incomplete
16- eventually_consistent : Incomplete
14+ analyzer : str | None
15+ eventually_consistent : bool | None
1716 def __init__ (self , analyzer : str | None = 'standard-no-stop-words' , eventually_consistent : bool | None = False ) -> None : ...
1817
1918class VectorIndex :
20- dimensions : Incomplete
21- similarity_function : Incomplete
19+ dimensions : int | None
20+ similarity_function : str | None
2221 def __init__ (self , dimensions : int | None = 1536 , similarity_function : str | None = 'cosine' ) -> None : ...
2322
2423class Property (metaclass = ABCMeta ):
@@ -34,7 +33,7 @@ class Property(metaclass=ABCMeta):
3433 db_property : str | None
3534 label : str | None
3635 help_text : str | None
37- has_default : Incomplete
36+ has_default : Any
3837 def __init__ (self , name : str | None = None , owner : Any | None = None , unique_index : bool = False , index : bool = False , fulltext_index : FulltextIndex | None = None , vector_index : VectorIndex | None = None , required : bool = False , default : Any | None = None , db_property : str | None = None , label : str | None = None , help_text : str | None = None , ** kwargs : dict [str , Any ]) -> None : ...
3938 def default_value (self ) -> Any : ...
4039 def get_db_property_name (self , attribute_name : str ) -> str : ...
@@ -64,12 +63,17 @@ class EmailProperty(RegexProperty):
6463 expression : str
6564
6665class StringProperty (NormalizedProperty ):
67- max_length : Incomplete
68- choices : Incomplete
66+ max_length : int | None
67+ choices : Any | None
6968 form_field_class : str
7069 def __init__ (self , choices : Any | None = None , max_length : int | None = None , ** kwargs : Any ) -> None : ...
7170 def normalize (self , value : str ) -> str : ...
7271 def default_value (self ) -> str : ...
72+ @overload
73+ def __get__ (self , obj : None , owner : type | None = None ) -> StringProperty : ...
74+ @overload
75+ def __get__ (self , obj : Any , owner : type | None = None ) -> str : ...
76+ def __set__ (self , obj : Any , value : str ) -> None : ...
7377
7478class IntegerProperty (Property ):
7579 form_field_class : str
@@ -78,15 +82,25 @@ class IntegerProperty(Property):
7882 @validator
7983 def deflate (self , value : Any ) -> int : ...
8084 def default_value (self ) -> int : ...
85+ @overload
86+ def __get__ (self , obj : None , owner : type | None = None ) -> IntegerProperty : ...
87+ @overload
88+ def __get__ (self , obj : Any , owner : type | None = None ) -> int : ...
89+ def __set__ (self , obj : Any , value : int ) -> None : ...
8190
8291class ArrayProperty (Property ):
83- base_property : Incomplete
92+ base_property : Property | None
8493 def __init__ (self , base_property : Property | None = None , ** kwargs : Any ) -> None : ...
8594 @validator
8695 def inflate (self , value : Any ) -> list : ...
8796 @validator
8897 def deflate (self , value : Any ) -> list : ...
8998 def default_value (self ) -> list : ...
99+ @overload
100+ def __get__ (self , obj : None , owner : type | None = None ) -> ArrayProperty : ...
101+ @overload
102+ def __get__ (self , obj : Any , owner : type | None = None ) -> list : ...
103+ def __set__ (self , obj : Any , value : list ) -> None : ...
90104
91105class FloatProperty (Property ):
92106 form_field_class : str
@@ -95,6 +109,11 @@ class FloatProperty(Property):
95109 @validator
96110 def deflate (self , value : Any ) -> float : ...
97111 def default_value (self ) -> float : ...
112+ @overload
113+ def __get__ (self , obj : None , owner : type | None = None ) -> FloatProperty : ...
114+ @overload
115+ def __get__ (self , obj : Any , owner : type | None = None ) -> float : ...
116+ def __set__ (self , obj : Any , value : float ) -> None : ...
98117
99118class BooleanProperty (Property ):
100119 form_field_class : str
@@ -103,22 +122,37 @@ class BooleanProperty(Property):
103122 @validator
104123 def deflate (self , value : Any ) -> bool : ...
105124 def default_value (self ) -> bool : ...
125+ @overload
126+ def __get__ (self , obj : None , owner : type | None = None ) -> BooleanProperty : ...
127+ @overload
128+ def __get__ (self , obj : Any , owner : type | None = None ) -> bool : ...
129+ def __set__ (self , obj : Any , value : bool ) -> None : ...
106130
107131class DateProperty (Property ):
108132 form_field_class : str
109133 @validator
110134 def inflate (self , value : Any ) -> date : ...
111135 @validator
112136 def deflate (self , value : date ) -> str : ...
137+ @overload
138+ def __get__ (self , obj : None , owner : type | None = None ) -> DateProperty : ...
139+ @overload
140+ def __get__ (self , obj : Any , owner : type | None = None ) -> date : ...
141+ def __set__ (self , obj : Any , value : date ) -> None : ...
113142
114143class DateTimeFormatProperty (Property ):
115144 form_field_class : str
116- format : Incomplete
145+ format : str
117146 def __init__ (self , default_now : bool = False , format : str = '%Y-%m-%d' , ** kwargs : Any ) -> None : ...
118147 @validator
119148 def inflate (self , value : Any ) -> datetime : ...
120149 @validator
121150 def deflate (self , value : datetime ) -> str : ...
151+ @overload
152+ def __get__ (self , obj : None , owner : type | None = None ) -> DateTimeFormatProperty : ...
153+ @overload
154+ def __get__ (self , obj : Any , owner : type | None = None ) -> datetime : ...
155+ def __set__ (self , obj : Any , value : datetime ) -> None : ...
122156
123157class DateTimeProperty (Property ):
124158 form_field_class : str
@@ -127,26 +161,41 @@ class DateTimeProperty(Property):
127161 def inflate (self , value : Any ) -> datetime : ...
128162 @validator
129163 def deflate (self , value : datetime ) -> float : ...
164+ @overload
165+ def __get__ (self , obj : None , owner : type | None = None ) -> DateTimeProperty : ...
166+ @overload
167+ def __get__ (self , obj : Any , owner : type | None = None ) -> datetime : ...
168+ def __set__ (self , obj : Any , value : datetime ) -> None : ...
130169
131170class DateTimeNeo4jFormatProperty (Property ):
132171 form_field_class : str
133- format : Incomplete
172+ format : Any
134173 def __init__ (self , default_now : bool = False , ** kwargs : Any ) -> None : ...
135174 @validator
136175 def inflate (self , value : Any ) -> datetime : ...
137176 @validator
138177 def deflate (self , value : datetime ) -> neo4j .time .DateTime : ...
178+ @overload
179+ def __get__ (self , obj : None , owner : type | None = None ) -> DateTimeNeo4jFormatProperty : ...
180+ @overload
181+ def __get__ (self , obj : Any , owner : type | None = None ) -> datetime : ...
182+ def __set__ (self , obj : Any , value : datetime ) -> None : ...
139183
140184class JSONProperty (Property ):
141- ensure_ascii : Incomplete
185+ ensure_ascii : bool
142186 def __init__ (self , ensure_ascii : bool = True , * args : Any , ** kwargs : Any ) -> None : ...
143187 @validator
144188 def inflate (self , value : Any ) -> Any : ...
145189 @validator
146190 def deflate (self , value : Any ) -> str : ...
191+ @overload
192+ def __get__ (self , obj : None , owner : type | None = None ) -> JSONProperty : ...
193+ @overload
194+ def __get__ (self , obj : Any , owner : type | None = None ) -> Any : ...
195+ def __set__ (self , obj : Any , value : Any ) -> None : ...
147196
148197class AliasProperty (property , Property , metaclass = abc .ABCMeta ):
149- target : Incomplete
198+ target : str
150199 required : bool
151200 has_default : bool
152201 def __init__ (self , to : str ) -> None : ...
@@ -171,3 +220,8 @@ class UniqueIdProperty(Property):
171220 def inflate (self , value : Any ) -> str : ...
172221 @validator
173222 def deflate (self , value : Any ) -> str : ...
223+ @overload
224+ def __get__ (self , obj : None , owner : type | None = None ) -> UniqueIdProperty : ...
225+ @overload
226+ def __get__ (self , obj : Any , owner : type | None = None ) -> str : ...
227+ def __set__ (self , obj : Any , value : str ) -> None : ...
0 commit comments