@@ -156,50 +156,86 @@ abstract class OBXPropertyFlags {
156156
157157 /// Unique on-conflict strategy: the object being put replaces any existing conflicting object (deletes it).
158158 static const int UNIQUE_ON_CONFLICT_REPLACE = 32768 ;
159+
160+ /// If a date property has this flag (max. one per entity type), the date value specifies the time by which
161+ /// the object expires, at which point it MAY be removed (deleted), which can be triggered by an API call.
162+ static const int EXPIRATION_TIME = 65536 ;
159163}
160164
161165abstract class OBXPropertyType {
162- /// < 1 byte
166+ /// < Not a actual type; represents an uninitialized or invalid type
167+ static const int Unknown = 0 ;
168+
169+ /// < A boolean (flag)
163170 static const int Bool = 1 ;
164171
165- /// < 1 byte
172+ /// < 8-bit integer
166173 static const int Byte = 2 ;
167174
168- /// < 2 bytes
175+ /// < 16-bit integer
169176 static const int Short = 3 ;
170177
171- /// < 2 bytes
178+ /// < 16-bit character
172179 static const int Char = 4 ;
173180
174- /// < 4 bytes
181+ /// < 32-bit integer
175182 static const int Int = 5 ;
176183
177- /// < 8 bytes
184+ /// < 64-bit integer
178185 static const int Long = 6 ;
179186
180- /// < 4 bytes
187+ /// < 32-bit floating point number
181188 static const int Float = 7 ;
182189
183- /// < 8 bytes
190+ /// < 64-bit floating point number
184191 static const int Double = 8 ;
192+
193+ /// < UTF-8 encoded string (variable length)
185194 static const int String = 9 ;
186195
187- /// < Unix timestamp ( milliseconds since 1970) in 8 bytes
196+ /// < 64-bit (integer) timestamp; milliseconds since 1970-01-01 (unix epoch)
188197 static const int Date = 10 ;
198+
199+ /// < Relation to another entity
189200 static const int Relation = 11 ;
190201
191- /// < Unix timestamp ( nanoseconds since 1970) in 8 bytes
202+ /// < High precision 64-bit timestamp; nanoseconds since 1970-01-01 (unix epoch)
192203 static const int DateNano = 12 ;
193204
194205 /// < Flexible" type, which may contain scalars (integers, floating points), strings or
195206 /// < containers (lists and maps). Note: a flex map must use string keys.
196207 static const int Flex = 13 ;
208+
209+ /// < Variable sized vector of Bool values (note: each value is one byte)
210+ static const int BoolVector = 22 ;
211+
212+ /// < Variable sized vector of Byte values (8-bit integers)
197213 static const int ByteVector = 23 ;
214+
215+ /// < Variable sized vector of Short values (16-bit integers)
198216 static const int ShortVector = 24 ;
217+
218+ /// < Variable sized vector of Char values (16-bit characters)
199219 static const int CharVector = 25 ;
220+
221+ /// < Variable sized vector of Int values (32-bit integers)
200222 static const int IntVector = 26 ;
223+
224+ /// < Variable sized vector of Long values (64-bit integers)
201225 static const int LongVector = 27 ;
226+
227+ /// < Variable sized vector of Float values (32-bit floating point numbers)
202228 static const int FloatVector = 28 ;
229+
230+ /// < Variable sized vector of Double values (64-bit floating point numbers)
203231 static const int DoubleVector = 29 ;
232+
233+ /// < Variable sized vector of String values (UTF-8 encoded strings).
204234 static const int StringVector = 30 ;
235+
236+ /// < Variable sized vector of Date values (64-bit timestamp).
237+ static const int DateVector = 31 ;
238+
239+ /// < Variable sized vector of Date values (high precision 64-bit timestamp).
240+ static const int DateNanoVector = 32 ;
205241}
0 commit comments