metal-stack-api 0.0.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. buf/__init__.py +0 -0
  2. buf/validate/__init__.py +0 -0
  3. buf/validate/validate_pb2.py +450 -0
  4. buf/validate/validate_pb2.pyi +631 -0
  5. buf/validate/validate_pb2_grpc.py +4 -0
  6. metal_stack_api-0.0.3.dist-info/METADATA +26 -0
  7. metal_stack_api-0.0.3.dist-info/RECORD +107 -0
  8. metal_stack_api-0.0.3.dist-info/WHEEL +5 -0
  9. metal_stack_api-0.0.3.dist-info/top_level.txt +2 -0
  10. metalstack/__init__.py +0 -0
  11. metalstack/admin/__init__.py +0 -0
  12. metalstack/admin/v2/__init__.py +0 -0
  13. metalstack/admin/v2/filesystem_connecpy.py +214 -0
  14. metalstack/admin/v2/filesystem_pb2.py +60 -0
  15. metalstack/admin/v2/filesystem_pb2.pyi +45 -0
  16. metalstack/admin/v2/filesystem_pb2_grpc.py +169 -0
  17. metalstack/admin/v2/image_connecpy.py +270 -0
  18. metalstack/admin/v2/image_pb2.py +66 -0
  19. metalstack/admin/v2/image_pb2.pyi +58 -0
  20. metalstack/admin/v2/image_pb2_grpc.py +213 -0
  21. metalstack/admin/v2/ip_connecpy.py +158 -0
  22. metalstack/admin/v2/ip_pb2.py +53 -0
  23. metalstack/admin/v2/ip_pb2.pyi +39 -0
  24. metalstack/admin/v2/ip_pb2_grpc.py +125 -0
  25. metalstack/admin/v2/network_connecpy.py +326 -0
  26. metalstack/admin/v2/network_pb2.py +104 -0
  27. metalstack/admin/v2/network_pb2.pyi +122 -0
  28. metalstack/admin/v2/network_pb2_grpc.py +257 -0
  29. metalstack/admin/v2/partition_connecpy.py +270 -0
  30. metalstack/admin/v2/partition_pb2.py +72 -0
  31. metalstack/admin/v2/partition_pb2.pyi +90 -0
  32. metalstack/admin/v2/partition_pb2_grpc.py +213 -0
  33. metalstack/admin/v2/size_connecpy.py +214 -0
  34. metalstack/admin/v2/size_pb2.py +66 -0
  35. metalstack/admin/v2/size_pb2.pyi +54 -0
  36. metalstack/admin/v2/size_pb2_grpc.py +169 -0
  37. metalstack/admin/v2/tenant_connecpy.py +158 -0
  38. metalstack/admin/v2/tenant_pb2.py +58 -0
  39. metalstack/admin/v2/tenant_pb2.pyi +50 -0
  40. metalstack/admin/v2/tenant_pb2_grpc.py +125 -0
  41. metalstack/admin/v2/token_connecpy.py +158 -0
  42. metalstack/admin/v2/token_pb2.py +56 -0
  43. metalstack/admin/v2/token_pb2.pyi +34 -0
  44. metalstack/admin/v2/token_pb2_grpc.py +125 -0
  45. metalstack/api/__init__.py +0 -0
  46. metalstack/api/v2/__init__.py +0 -0
  47. metalstack/api/v2/common_pb2.py +66 -0
  48. metalstack/api/v2/common_pb2.pyi +128 -0
  49. metalstack/api/v2/common_pb2_grpc.py +4 -0
  50. metalstack/api/v2/filesystem_connecpy.py +270 -0
  51. metalstack/api/v2/filesystem_pb2.py +167 -0
  52. metalstack/api/v2/filesystem_pb2.pyi +229 -0
  53. metalstack/api/v2/filesystem_pb2_grpc.py +213 -0
  54. metalstack/api/v2/health_connecpy.py +102 -0
  55. metalstack/api/v2/health_pb2.py +70 -0
  56. metalstack/api/v2/health_pb2.pyi +80 -0
  57. metalstack/api/v2/health_pb2_grpc.py +81 -0
  58. metalstack/api/v2/image_connecpy.py +214 -0
  59. metalstack/api/v2/image_pb2.py +106 -0
  60. metalstack/api/v2/image_pb2.pyi +115 -0
  61. metalstack/api/v2/image_pb2_grpc.py +169 -0
  62. metalstack/api/v2/ip_connecpy.py +326 -0
  63. metalstack/api/v2/ip_pb2.py +159 -0
  64. metalstack/api/v2/ip_pb2.pyi +170 -0
  65. metalstack/api/v2/ip_pb2_grpc.py +257 -0
  66. metalstack/api/v2/methods_connecpy.py +158 -0
  67. metalstack/api/v2/methods_pb2.py +62 -0
  68. metalstack/api/v2/methods_pb2.pyi +50 -0
  69. metalstack/api/v2/methods_pb2_grpc.py +128 -0
  70. metalstack/api/v2/network_connecpy.py +382 -0
  71. metalstack/api/v2/network_pb2.py +191 -0
  72. metalstack/api/v2/network_pb2.pyi +247 -0
  73. metalstack/api/v2/network_pb2_grpc.py +301 -0
  74. metalstack/api/v2/partition_connecpy.py +158 -0
  75. metalstack/api/v2/partition_pb2.py +81 -0
  76. metalstack/api/v2/partition_pb2.pyi +79 -0
  77. metalstack/api/v2/partition_pb2_grpc.py +125 -0
  78. metalstack/api/v2/project_connecpy.py +718 -0
  79. metalstack/api/v2/project_pb2.py +156 -0
  80. metalstack/api/v2/project_pb2.pyi +230 -0
  81. metalstack/api/v2/project_pb2_grpc.py +565 -0
  82. metalstack/api/v2/size_connecpy.py +158 -0
  83. metalstack/api/v2/size_pb2.py +85 -0
  84. metalstack/api/v2/size_pb2.pyi +85 -0
  85. metalstack/api/v2/size_pb2_grpc.py +125 -0
  86. metalstack/api/v2/tenant_connecpy.py +718 -0
  87. metalstack/api/v2/tenant_pb2.py +140 -0
  88. metalstack/api/v2/tenant_pb2.pyi +236 -0
  89. metalstack/api/v2/tenant_pb2_grpc.py +565 -0
  90. metalstack/api/v2/token_connecpy.py +326 -0
  91. metalstack/api/v2/token_pb2.py +143 -0
  92. metalstack/api/v2/token_pb2.pyi +175 -0
  93. metalstack/api/v2/token_pb2_grpc.py +257 -0
  94. metalstack/api/v2/user_connecpy.py +102 -0
  95. metalstack/api/v2/user_pb2.py +48 -0
  96. metalstack/api/v2/user_pb2.pyi +38 -0
  97. metalstack/api/v2/user_pb2_grpc.py +81 -0
  98. metalstack/api/v2/version_connecpy.py +102 -0
  99. metalstack/api/v2/version_pb2.py +46 -0
  100. metalstack/api/v2/version_pb2.pyi +29 -0
  101. metalstack/api/v2/version_pb2_grpc.py +81 -0
  102. metalstack/infra/__init__.py +0 -0
  103. metalstack/infra/v2/__init__.py +0 -0
  104. metalstack/infra/v2/bmc_connecpy.py +102 -0
  105. metalstack/infra/v2/bmc_pb2.py +44 -0
  106. metalstack/infra/v2/bmc_pb2.pyi +14 -0
  107. metalstack/infra/v2/bmc_pb2_grpc.py +81 -0
@@ -0,0 +1,631 @@
1
+ import datetime
2
+
3
+ from google.protobuf import descriptor_pb2 as _descriptor_pb2
4
+ from google.protobuf import duration_pb2 as _duration_pb2
5
+ from google.protobuf import timestamp_pb2 as _timestamp_pb2
6
+ from google.protobuf.internal import containers as _containers
7
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
8
+ from google.protobuf.internal import python_message as _python_message
9
+ from google.protobuf import descriptor as _descriptor
10
+ from google.protobuf import message as _message
11
+ from collections.abc import Iterable as _Iterable, Mapping as _Mapping
12
+ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
13
+
14
+ DESCRIPTOR: _descriptor.FileDescriptor
15
+
16
+ class Ignore(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
17
+ __slots__ = ()
18
+ IGNORE_UNSPECIFIED: _ClassVar[Ignore]
19
+ IGNORE_IF_UNPOPULATED: _ClassVar[Ignore]
20
+ IGNORE_IF_DEFAULT_VALUE: _ClassVar[Ignore]
21
+ IGNORE_ALWAYS: _ClassVar[Ignore]
22
+
23
+ class KnownRegex(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
24
+ __slots__ = ()
25
+ KNOWN_REGEX_UNSPECIFIED: _ClassVar[KnownRegex]
26
+ KNOWN_REGEX_HTTP_HEADER_NAME: _ClassVar[KnownRegex]
27
+ KNOWN_REGEX_HTTP_HEADER_VALUE: _ClassVar[KnownRegex]
28
+ IGNORE_UNSPECIFIED: Ignore
29
+ IGNORE_IF_UNPOPULATED: Ignore
30
+ IGNORE_IF_DEFAULT_VALUE: Ignore
31
+ IGNORE_ALWAYS: Ignore
32
+ KNOWN_REGEX_UNSPECIFIED: KnownRegex
33
+ KNOWN_REGEX_HTTP_HEADER_NAME: KnownRegex
34
+ KNOWN_REGEX_HTTP_HEADER_VALUE: KnownRegex
35
+ MESSAGE_FIELD_NUMBER: _ClassVar[int]
36
+ message: _descriptor.FieldDescriptor
37
+ ONEOF_FIELD_NUMBER: _ClassVar[int]
38
+ oneof: _descriptor.FieldDescriptor
39
+ FIELD_FIELD_NUMBER: _ClassVar[int]
40
+ field: _descriptor.FieldDescriptor
41
+ PREDEFINED_FIELD_NUMBER: _ClassVar[int]
42
+ predefined: _descriptor.FieldDescriptor
43
+
44
+ class Rule(_message.Message):
45
+ __slots__ = ("id", "message", "expression")
46
+ ID_FIELD_NUMBER: _ClassVar[int]
47
+ MESSAGE_FIELD_NUMBER: _ClassVar[int]
48
+ EXPRESSION_FIELD_NUMBER: _ClassVar[int]
49
+ id: str
50
+ message: str
51
+ expression: str
52
+ def __init__(self, id: _Optional[str] = ..., message: _Optional[str] = ..., expression: _Optional[str] = ...) -> None: ...
53
+
54
+ class MessageRules(_message.Message):
55
+ __slots__ = ("disabled", "cel", "oneof")
56
+ DISABLED_FIELD_NUMBER: _ClassVar[int]
57
+ CEL_FIELD_NUMBER: _ClassVar[int]
58
+ ONEOF_FIELD_NUMBER: _ClassVar[int]
59
+ disabled: bool
60
+ cel: _containers.RepeatedCompositeFieldContainer[Rule]
61
+ oneof: _containers.RepeatedCompositeFieldContainer[MessageOneofRule]
62
+ def __init__(self, disabled: bool = ..., cel: _Optional[_Iterable[_Union[Rule, _Mapping]]] = ..., oneof: _Optional[_Iterable[_Union[MessageOneofRule, _Mapping]]] = ...) -> None: ...
63
+
64
+ class MessageOneofRule(_message.Message):
65
+ __slots__ = ("fields", "required")
66
+ FIELDS_FIELD_NUMBER: _ClassVar[int]
67
+ REQUIRED_FIELD_NUMBER: _ClassVar[int]
68
+ fields: _containers.RepeatedScalarFieldContainer[str]
69
+ required: bool
70
+ def __init__(self, fields: _Optional[_Iterable[str]] = ..., required: bool = ...) -> None: ...
71
+
72
+ class OneofRules(_message.Message):
73
+ __slots__ = ("required",)
74
+ REQUIRED_FIELD_NUMBER: _ClassVar[int]
75
+ required: bool
76
+ def __init__(self, required: bool = ...) -> None: ...
77
+
78
+ class FieldRules(_message.Message):
79
+ __slots__ = ("cel", "required", "ignore", "float", "double", "int32", "int64", "uint32", "uint64", "sint32", "sint64", "fixed32", "fixed64", "sfixed32", "sfixed64", "bool", "string", "bytes", "enum", "repeated", "map", "any", "duration", "timestamp")
80
+ CEL_FIELD_NUMBER: _ClassVar[int]
81
+ REQUIRED_FIELD_NUMBER: _ClassVar[int]
82
+ IGNORE_FIELD_NUMBER: _ClassVar[int]
83
+ FLOAT_FIELD_NUMBER: _ClassVar[int]
84
+ DOUBLE_FIELD_NUMBER: _ClassVar[int]
85
+ INT32_FIELD_NUMBER: _ClassVar[int]
86
+ INT64_FIELD_NUMBER: _ClassVar[int]
87
+ UINT32_FIELD_NUMBER: _ClassVar[int]
88
+ UINT64_FIELD_NUMBER: _ClassVar[int]
89
+ SINT32_FIELD_NUMBER: _ClassVar[int]
90
+ SINT64_FIELD_NUMBER: _ClassVar[int]
91
+ FIXED32_FIELD_NUMBER: _ClassVar[int]
92
+ FIXED64_FIELD_NUMBER: _ClassVar[int]
93
+ SFIXED32_FIELD_NUMBER: _ClassVar[int]
94
+ SFIXED64_FIELD_NUMBER: _ClassVar[int]
95
+ BOOL_FIELD_NUMBER: _ClassVar[int]
96
+ STRING_FIELD_NUMBER: _ClassVar[int]
97
+ BYTES_FIELD_NUMBER: _ClassVar[int]
98
+ ENUM_FIELD_NUMBER: _ClassVar[int]
99
+ REPEATED_FIELD_NUMBER: _ClassVar[int]
100
+ MAP_FIELD_NUMBER: _ClassVar[int]
101
+ ANY_FIELD_NUMBER: _ClassVar[int]
102
+ DURATION_FIELD_NUMBER: _ClassVar[int]
103
+ TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
104
+ cel: _containers.RepeatedCompositeFieldContainer[Rule]
105
+ required: bool
106
+ ignore: Ignore
107
+ float: FloatRules
108
+ double: DoubleRules
109
+ int32: Int32Rules
110
+ int64: Int64Rules
111
+ uint32: UInt32Rules
112
+ uint64: UInt64Rules
113
+ sint32: SInt32Rules
114
+ sint64: SInt64Rules
115
+ fixed32: Fixed32Rules
116
+ fixed64: Fixed64Rules
117
+ sfixed32: SFixed32Rules
118
+ sfixed64: SFixed64Rules
119
+ bool: BoolRules
120
+ string: StringRules
121
+ bytes: BytesRules
122
+ enum: EnumRules
123
+ repeated: RepeatedRules
124
+ map: MapRules
125
+ any: AnyRules
126
+ duration: DurationRules
127
+ timestamp: TimestampRules
128
+ def __init__(self, cel: _Optional[_Iterable[_Union[Rule, _Mapping]]] = ..., required: bool = ..., ignore: _Optional[_Union[Ignore, str]] = ..., float: _Optional[_Union[FloatRules, _Mapping]] = ..., double: _Optional[_Union[DoubleRules, _Mapping]] = ..., int32: _Optional[_Union[Int32Rules, _Mapping]] = ..., int64: _Optional[_Union[Int64Rules, _Mapping]] = ..., uint32: _Optional[_Union[UInt32Rules, _Mapping]] = ..., uint64: _Optional[_Union[UInt64Rules, _Mapping]] = ..., sint32: _Optional[_Union[SInt32Rules, _Mapping]] = ..., sint64: _Optional[_Union[SInt64Rules, _Mapping]] = ..., fixed32: _Optional[_Union[Fixed32Rules, _Mapping]] = ..., fixed64: _Optional[_Union[Fixed64Rules, _Mapping]] = ..., sfixed32: _Optional[_Union[SFixed32Rules, _Mapping]] = ..., sfixed64: _Optional[_Union[SFixed64Rules, _Mapping]] = ..., bool: _Optional[_Union[BoolRules, _Mapping]] = ..., string: _Optional[_Union[StringRules, _Mapping]] = ..., bytes: _Optional[_Union[BytesRules, _Mapping]] = ..., enum: _Optional[_Union[EnumRules, _Mapping]] = ..., repeated: _Optional[_Union[RepeatedRules, _Mapping]] = ..., map: _Optional[_Union[MapRules, _Mapping]] = ..., any: _Optional[_Union[AnyRules, _Mapping]] = ..., duration: _Optional[_Union[DurationRules, _Mapping]] = ..., timestamp: _Optional[_Union[TimestampRules, _Mapping]] = ...) -> None: ...
129
+
130
+ class PredefinedRules(_message.Message):
131
+ __slots__ = ("cel",)
132
+ CEL_FIELD_NUMBER: _ClassVar[int]
133
+ cel: _containers.RepeatedCompositeFieldContainer[Rule]
134
+ def __init__(self, cel: _Optional[_Iterable[_Union[Rule, _Mapping]]] = ...) -> None: ...
135
+
136
+ class FloatRules(_message.Message):
137
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "finite", "example")
138
+ Extensions: _python_message._ExtensionDict
139
+ CONST_FIELD_NUMBER: _ClassVar[int]
140
+ LT_FIELD_NUMBER: _ClassVar[int]
141
+ LTE_FIELD_NUMBER: _ClassVar[int]
142
+ GT_FIELD_NUMBER: _ClassVar[int]
143
+ GTE_FIELD_NUMBER: _ClassVar[int]
144
+ IN_FIELD_NUMBER: _ClassVar[int]
145
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
146
+ FINITE_FIELD_NUMBER: _ClassVar[int]
147
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
148
+ const: float
149
+ lt: float
150
+ lte: float
151
+ gt: float
152
+ gte: float
153
+ not_in: _containers.RepeatedScalarFieldContainer[float]
154
+ finite: bool
155
+ example: _containers.RepeatedScalarFieldContainer[float]
156
+ def __init__(self, const: _Optional[float] = ..., lt: _Optional[float] = ..., lte: _Optional[float] = ..., gt: _Optional[float] = ..., gte: _Optional[float] = ..., not_in: _Optional[_Iterable[float]] = ..., finite: bool = ..., example: _Optional[_Iterable[float]] = ..., **kwargs) -> None: ...
157
+
158
+ class DoubleRules(_message.Message):
159
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "finite", "example")
160
+ Extensions: _python_message._ExtensionDict
161
+ CONST_FIELD_NUMBER: _ClassVar[int]
162
+ LT_FIELD_NUMBER: _ClassVar[int]
163
+ LTE_FIELD_NUMBER: _ClassVar[int]
164
+ GT_FIELD_NUMBER: _ClassVar[int]
165
+ GTE_FIELD_NUMBER: _ClassVar[int]
166
+ IN_FIELD_NUMBER: _ClassVar[int]
167
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
168
+ FINITE_FIELD_NUMBER: _ClassVar[int]
169
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
170
+ const: float
171
+ lt: float
172
+ lte: float
173
+ gt: float
174
+ gte: float
175
+ not_in: _containers.RepeatedScalarFieldContainer[float]
176
+ finite: bool
177
+ example: _containers.RepeatedScalarFieldContainer[float]
178
+ def __init__(self, const: _Optional[float] = ..., lt: _Optional[float] = ..., lte: _Optional[float] = ..., gt: _Optional[float] = ..., gte: _Optional[float] = ..., not_in: _Optional[_Iterable[float]] = ..., finite: bool = ..., example: _Optional[_Iterable[float]] = ..., **kwargs) -> None: ...
179
+
180
+ class Int32Rules(_message.Message):
181
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
182
+ Extensions: _python_message._ExtensionDict
183
+ CONST_FIELD_NUMBER: _ClassVar[int]
184
+ LT_FIELD_NUMBER: _ClassVar[int]
185
+ LTE_FIELD_NUMBER: _ClassVar[int]
186
+ GT_FIELD_NUMBER: _ClassVar[int]
187
+ GTE_FIELD_NUMBER: _ClassVar[int]
188
+ IN_FIELD_NUMBER: _ClassVar[int]
189
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
190
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
191
+ const: int
192
+ lt: int
193
+ lte: int
194
+ gt: int
195
+ gte: int
196
+ not_in: _containers.RepeatedScalarFieldContainer[int]
197
+ example: _containers.RepeatedScalarFieldContainer[int]
198
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
199
+
200
+ class Int64Rules(_message.Message):
201
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
202
+ Extensions: _python_message._ExtensionDict
203
+ CONST_FIELD_NUMBER: _ClassVar[int]
204
+ LT_FIELD_NUMBER: _ClassVar[int]
205
+ LTE_FIELD_NUMBER: _ClassVar[int]
206
+ GT_FIELD_NUMBER: _ClassVar[int]
207
+ GTE_FIELD_NUMBER: _ClassVar[int]
208
+ IN_FIELD_NUMBER: _ClassVar[int]
209
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
210
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
211
+ const: int
212
+ lt: int
213
+ lte: int
214
+ gt: int
215
+ gte: int
216
+ not_in: _containers.RepeatedScalarFieldContainer[int]
217
+ example: _containers.RepeatedScalarFieldContainer[int]
218
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
219
+
220
+ class UInt32Rules(_message.Message):
221
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
222
+ Extensions: _python_message._ExtensionDict
223
+ CONST_FIELD_NUMBER: _ClassVar[int]
224
+ LT_FIELD_NUMBER: _ClassVar[int]
225
+ LTE_FIELD_NUMBER: _ClassVar[int]
226
+ GT_FIELD_NUMBER: _ClassVar[int]
227
+ GTE_FIELD_NUMBER: _ClassVar[int]
228
+ IN_FIELD_NUMBER: _ClassVar[int]
229
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
230
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
231
+ const: int
232
+ lt: int
233
+ lte: int
234
+ gt: int
235
+ gte: int
236
+ not_in: _containers.RepeatedScalarFieldContainer[int]
237
+ example: _containers.RepeatedScalarFieldContainer[int]
238
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
239
+
240
+ class UInt64Rules(_message.Message):
241
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
242
+ Extensions: _python_message._ExtensionDict
243
+ CONST_FIELD_NUMBER: _ClassVar[int]
244
+ LT_FIELD_NUMBER: _ClassVar[int]
245
+ LTE_FIELD_NUMBER: _ClassVar[int]
246
+ GT_FIELD_NUMBER: _ClassVar[int]
247
+ GTE_FIELD_NUMBER: _ClassVar[int]
248
+ IN_FIELD_NUMBER: _ClassVar[int]
249
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
250
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
251
+ const: int
252
+ lt: int
253
+ lte: int
254
+ gt: int
255
+ gte: int
256
+ not_in: _containers.RepeatedScalarFieldContainer[int]
257
+ example: _containers.RepeatedScalarFieldContainer[int]
258
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
259
+
260
+ class SInt32Rules(_message.Message):
261
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
262
+ Extensions: _python_message._ExtensionDict
263
+ CONST_FIELD_NUMBER: _ClassVar[int]
264
+ LT_FIELD_NUMBER: _ClassVar[int]
265
+ LTE_FIELD_NUMBER: _ClassVar[int]
266
+ GT_FIELD_NUMBER: _ClassVar[int]
267
+ GTE_FIELD_NUMBER: _ClassVar[int]
268
+ IN_FIELD_NUMBER: _ClassVar[int]
269
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
270
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
271
+ const: int
272
+ lt: int
273
+ lte: int
274
+ gt: int
275
+ gte: int
276
+ not_in: _containers.RepeatedScalarFieldContainer[int]
277
+ example: _containers.RepeatedScalarFieldContainer[int]
278
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
279
+
280
+ class SInt64Rules(_message.Message):
281
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
282
+ Extensions: _python_message._ExtensionDict
283
+ CONST_FIELD_NUMBER: _ClassVar[int]
284
+ LT_FIELD_NUMBER: _ClassVar[int]
285
+ LTE_FIELD_NUMBER: _ClassVar[int]
286
+ GT_FIELD_NUMBER: _ClassVar[int]
287
+ GTE_FIELD_NUMBER: _ClassVar[int]
288
+ IN_FIELD_NUMBER: _ClassVar[int]
289
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
290
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
291
+ const: int
292
+ lt: int
293
+ lte: int
294
+ gt: int
295
+ gte: int
296
+ not_in: _containers.RepeatedScalarFieldContainer[int]
297
+ example: _containers.RepeatedScalarFieldContainer[int]
298
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
299
+
300
+ class Fixed32Rules(_message.Message):
301
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
302
+ Extensions: _python_message._ExtensionDict
303
+ CONST_FIELD_NUMBER: _ClassVar[int]
304
+ LT_FIELD_NUMBER: _ClassVar[int]
305
+ LTE_FIELD_NUMBER: _ClassVar[int]
306
+ GT_FIELD_NUMBER: _ClassVar[int]
307
+ GTE_FIELD_NUMBER: _ClassVar[int]
308
+ IN_FIELD_NUMBER: _ClassVar[int]
309
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
310
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
311
+ const: int
312
+ lt: int
313
+ lte: int
314
+ gt: int
315
+ gte: int
316
+ not_in: _containers.RepeatedScalarFieldContainer[int]
317
+ example: _containers.RepeatedScalarFieldContainer[int]
318
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
319
+
320
+ class Fixed64Rules(_message.Message):
321
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
322
+ Extensions: _python_message._ExtensionDict
323
+ CONST_FIELD_NUMBER: _ClassVar[int]
324
+ LT_FIELD_NUMBER: _ClassVar[int]
325
+ LTE_FIELD_NUMBER: _ClassVar[int]
326
+ GT_FIELD_NUMBER: _ClassVar[int]
327
+ GTE_FIELD_NUMBER: _ClassVar[int]
328
+ IN_FIELD_NUMBER: _ClassVar[int]
329
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
330
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
331
+ const: int
332
+ lt: int
333
+ lte: int
334
+ gt: int
335
+ gte: int
336
+ not_in: _containers.RepeatedScalarFieldContainer[int]
337
+ example: _containers.RepeatedScalarFieldContainer[int]
338
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
339
+
340
+ class SFixed32Rules(_message.Message):
341
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
342
+ Extensions: _python_message._ExtensionDict
343
+ CONST_FIELD_NUMBER: _ClassVar[int]
344
+ LT_FIELD_NUMBER: _ClassVar[int]
345
+ LTE_FIELD_NUMBER: _ClassVar[int]
346
+ GT_FIELD_NUMBER: _ClassVar[int]
347
+ GTE_FIELD_NUMBER: _ClassVar[int]
348
+ IN_FIELD_NUMBER: _ClassVar[int]
349
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
350
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
351
+ const: int
352
+ lt: int
353
+ lte: int
354
+ gt: int
355
+ gte: int
356
+ not_in: _containers.RepeatedScalarFieldContainer[int]
357
+ example: _containers.RepeatedScalarFieldContainer[int]
358
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
359
+
360
+ class SFixed64Rules(_message.Message):
361
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
362
+ Extensions: _python_message._ExtensionDict
363
+ CONST_FIELD_NUMBER: _ClassVar[int]
364
+ LT_FIELD_NUMBER: _ClassVar[int]
365
+ LTE_FIELD_NUMBER: _ClassVar[int]
366
+ GT_FIELD_NUMBER: _ClassVar[int]
367
+ GTE_FIELD_NUMBER: _ClassVar[int]
368
+ IN_FIELD_NUMBER: _ClassVar[int]
369
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
370
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
371
+ const: int
372
+ lt: int
373
+ lte: int
374
+ gt: int
375
+ gte: int
376
+ not_in: _containers.RepeatedScalarFieldContainer[int]
377
+ example: _containers.RepeatedScalarFieldContainer[int]
378
+ def __init__(self, const: _Optional[int] = ..., lt: _Optional[int] = ..., lte: _Optional[int] = ..., gt: _Optional[int] = ..., gte: _Optional[int] = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
379
+
380
+ class BoolRules(_message.Message):
381
+ __slots__ = ("const", "example")
382
+ Extensions: _python_message._ExtensionDict
383
+ CONST_FIELD_NUMBER: _ClassVar[int]
384
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
385
+ const: bool
386
+ example: _containers.RepeatedScalarFieldContainer[bool]
387
+ def __init__(self, const: bool = ..., example: _Optional[_Iterable[bool]] = ...) -> None: ...
388
+
389
+ class StringRules(_message.Message):
390
+ __slots__ = ("const", "len", "min_len", "max_len", "len_bytes", "min_bytes", "max_bytes", "pattern", "prefix", "suffix", "contains", "not_contains", "not_in", "email", "hostname", "ip", "ipv4", "ipv6", "uri", "uri_ref", "address", "uuid", "tuuid", "ip_with_prefixlen", "ipv4_with_prefixlen", "ipv6_with_prefixlen", "ip_prefix", "ipv4_prefix", "ipv6_prefix", "host_and_port", "well_known_regex", "strict", "example")
391
+ Extensions: _python_message._ExtensionDict
392
+ CONST_FIELD_NUMBER: _ClassVar[int]
393
+ LEN_FIELD_NUMBER: _ClassVar[int]
394
+ MIN_LEN_FIELD_NUMBER: _ClassVar[int]
395
+ MAX_LEN_FIELD_NUMBER: _ClassVar[int]
396
+ LEN_BYTES_FIELD_NUMBER: _ClassVar[int]
397
+ MIN_BYTES_FIELD_NUMBER: _ClassVar[int]
398
+ MAX_BYTES_FIELD_NUMBER: _ClassVar[int]
399
+ PATTERN_FIELD_NUMBER: _ClassVar[int]
400
+ PREFIX_FIELD_NUMBER: _ClassVar[int]
401
+ SUFFIX_FIELD_NUMBER: _ClassVar[int]
402
+ CONTAINS_FIELD_NUMBER: _ClassVar[int]
403
+ NOT_CONTAINS_FIELD_NUMBER: _ClassVar[int]
404
+ IN_FIELD_NUMBER: _ClassVar[int]
405
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
406
+ EMAIL_FIELD_NUMBER: _ClassVar[int]
407
+ HOSTNAME_FIELD_NUMBER: _ClassVar[int]
408
+ IP_FIELD_NUMBER: _ClassVar[int]
409
+ IPV4_FIELD_NUMBER: _ClassVar[int]
410
+ IPV6_FIELD_NUMBER: _ClassVar[int]
411
+ URI_FIELD_NUMBER: _ClassVar[int]
412
+ URI_REF_FIELD_NUMBER: _ClassVar[int]
413
+ ADDRESS_FIELD_NUMBER: _ClassVar[int]
414
+ UUID_FIELD_NUMBER: _ClassVar[int]
415
+ TUUID_FIELD_NUMBER: _ClassVar[int]
416
+ IP_WITH_PREFIXLEN_FIELD_NUMBER: _ClassVar[int]
417
+ IPV4_WITH_PREFIXLEN_FIELD_NUMBER: _ClassVar[int]
418
+ IPV6_WITH_PREFIXLEN_FIELD_NUMBER: _ClassVar[int]
419
+ IP_PREFIX_FIELD_NUMBER: _ClassVar[int]
420
+ IPV4_PREFIX_FIELD_NUMBER: _ClassVar[int]
421
+ IPV6_PREFIX_FIELD_NUMBER: _ClassVar[int]
422
+ HOST_AND_PORT_FIELD_NUMBER: _ClassVar[int]
423
+ WELL_KNOWN_REGEX_FIELD_NUMBER: _ClassVar[int]
424
+ STRICT_FIELD_NUMBER: _ClassVar[int]
425
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
426
+ const: str
427
+ len: int
428
+ min_len: int
429
+ max_len: int
430
+ len_bytes: int
431
+ min_bytes: int
432
+ max_bytes: int
433
+ pattern: str
434
+ prefix: str
435
+ suffix: str
436
+ contains: str
437
+ not_contains: str
438
+ not_in: _containers.RepeatedScalarFieldContainer[str]
439
+ email: bool
440
+ hostname: bool
441
+ ip: bool
442
+ ipv4: bool
443
+ ipv6: bool
444
+ uri: bool
445
+ uri_ref: bool
446
+ address: bool
447
+ uuid: bool
448
+ tuuid: bool
449
+ ip_with_prefixlen: bool
450
+ ipv4_with_prefixlen: bool
451
+ ipv6_with_prefixlen: bool
452
+ ip_prefix: bool
453
+ ipv4_prefix: bool
454
+ ipv6_prefix: bool
455
+ host_and_port: bool
456
+ well_known_regex: KnownRegex
457
+ strict: bool
458
+ example: _containers.RepeatedScalarFieldContainer[str]
459
+ def __init__(self, const: _Optional[str] = ..., len: _Optional[int] = ..., min_len: _Optional[int] = ..., max_len: _Optional[int] = ..., len_bytes: _Optional[int] = ..., min_bytes: _Optional[int] = ..., max_bytes: _Optional[int] = ..., pattern: _Optional[str] = ..., prefix: _Optional[str] = ..., suffix: _Optional[str] = ..., contains: _Optional[str] = ..., not_contains: _Optional[str] = ..., not_in: _Optional[_Iterable[str]] = ..., email: bool = ..., hostname: bool = ..., ip: bool = ..., ipv4: bool = ..., ipv6: bool = ..., uri: bool = ..., uri_ref: bool = ..., address: bool = ..., uuid: bool = ..., tuuid: bool = ..., ip_with_prefixlen: bool = ..., ipv4_with_prefixlen: bool = ..., ipv6_with_prefixlen: bool = ..., ip_prefix: bool = ..., ipv4_prefix: bool = ..., ipv6_prefix: bool = ..., host_and_port: bool = ..., well_known_regex: _Optional[_Union[KnownRegex, str]] = ..., strict: bool = ..., example: _Optional[_Iterable[str]] = ..., **kwargs) -> None: ...
460
+
461
+ class BytesRules(_message.Message):
462
+ __slots__ = ("const", "len", "min_len", "max_len", "pattern", "prefix", "suffix", "contains", "not_in", "ip", "ipv4", "ipv6", "example")
463
+ Extensions: _python_message._ExtensionDict
464
+ CONST_FIELD_NUMBER: _ClassVar[int]
465
+ LEN_FIELD_NUMBER: _ClassVar[int]
466
+ MIN_LEN_FIELD_NUMBER: _ClassVar[int]
467
+ MAX_LEN_FIELD_NUMBER: _ClassVar[int]
468
+ PATTERN_FIELD_NUMBER: _ClassVar[int]
469
+ PREFIX_FIELD_NUMBER: _ClassVar[int]
470
+ SUFFIX_FIELD_NUMBER: _ClassVar[int]
471
+ CONTAINS_FIELD_NUMBER: _ClassVar[int]
472
+ IN_FIELD_NUMBER: _ClassVar[int]
473
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
474
+ IP_FIELD_NUMBER: _ClassVar[int]
475
+ IPV4_FIELD_NUMBER: _ClassVar[int]
476
+ IPV6_FIELD_NUMBER: _ClassVar[int]
477
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
478
+ const: bytes
479
+ len: int
480
+ min_len: int
481
+ max_len: int
482
+ pattern: str
483
+ prefix: bytes
484
+ suffix: bytes
485
+ contains: bytes
486
+ not_in: _containers.RepeatedScalarFieldContainer[bytes]
487
+ ip: bool
488
+ ipv4: bool
489
+ ipv6: bool
490
+ example: _containers.RepeatedScalarFieldContainer[bytes]
491
+ def __init__(self, const: _Optional[bytes] = ..., len: _Optional[int] = ..., min_len: _Optional[int] = ..., max_len: _Optional[int] = ..., pattern: _Optional[str] = ..., prefix: _Optional[bytes] = ..., suffix: _Optional[bytes] = ..., contains: _Optional[bytes] = ..., not_in: _Optional[_Iterable[bytes]] = ..., ip: bool = ..., ipv4: bool = ..., ipv6: bool = ..., example: _Optional[_Iterable[bytes]] = ..., **kwargs) -> None: ...
492
+
493
+ class EnumRules(_message.Message):
494
+ __slots__ = ("const", "defined_only", "not_in", "example")
495
+ Extensions: _python_message._ExtensionDict
496
+ CONST_FIELD_NUMBER: _ClassVar[int]
497
+ DEFINED_ONLY_FIELD_NUMBER: _ClassVar[int]
498
+ IN_FIELD_NUMBER: _ClassVar[int]
499
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
500
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
501
+ const: int
502
+ defined_only: bool
503
+ not_in: _containers.RepeatedScalarFieldContainer[int]
504
+ example: _containers.RepeatedScalarFieldContainer[int]
505
+ def __init__(self, const: _Optional[int] = ..., defined_only: bool = ..., not_in: _Optional[_Iterable[int]] = ..., example: _Optional[_Iterable[int]] = ..., **kwargs) -> None: ...
506
+
507
+ class RepeatedRules(_message.Message):
508
+ __slots__ = ("min_items", "max_items", "unique", "items")
509
+ Extensions: _python_message._ExtensionDict
510
+ MIN_ITEMS_FIELD_NUMBER: _ClassVar[int]
511
+ MAX_ITEMS_FIELD_NUMBER: _ClassVar[int]
512
+ UNIQUE_FIELD_NUMBER: _ClassVar[int]
513
+ ITEMS_FIELD_NUMBER: _ClassVar[int]
514
+ min_items: int
515
+ max_items: int
516
+ unique: bool
517
+ items: FieldRules
518
+ def __init__(self, min_items: _Optional[int] = ..., max_items: _Optional[int] = ..., unique: bool = ..., items: _Optional[_Union[FieldRules, _Mapping]] = ...) -> None: ...
519
+
520
+ class MapRules(_message.Message):
521
+ __slots__ = ("min_pairs", "max_pairs", "keys", "values")
522
+ Extensions: _python_message._ExtensionDict
523
+ MIN_PAIRS_FIELD_NUMBER: _ClassVar[int]
524
+ MAX_PAIRS_FIELD_NUMBER: _ClassVar[int]
525
+ KEYS_FIELD_NUMBER: _ClassVar[int]
526
+ VALUES_FIELD_NUMBER: _ClassVar[int]
527
+ min_pairs: int
528
+ max_pairs: int
529
+ keys: FieldRules
530
+ values: FieldRules
531
+ def __init__(self, min_pairs: _Optional[int] = ..., max_pairs: _Optional[int] = ..., keys: _Optional[_Union[FieldRules, _Mapping]] = ..., values: _Optional[_Union[FieldRules, _Mapping]] = ...) -> None: ...
532
+
533
+ class AnyRules(_message.Message):
534
+ __slots__ = ("not_in",)
535
+ IN_FIELD_NUMBER: _ClassVar[int]
536
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
537
+ not_in: _containers.RepeatedScalarFieldContainer[str]
538
+ def __init__(self, not_in: _Optional[_Iterable[str]] = ..., **kwargs) -> None: ...
539
+
540
+ class DurationRules(_message.Message):
541
+ __slots__ = ("const", "lt", "lte", "gt", "gte", "not_in", "example")
542
+ Extensions: _python_message._ExtensionDict
543
+ CONST_FIELD_NUMBER: _ClassVar[int]
544
+ LT_FIELD_NUMBER: _ClassVar[int]
545
+ LTE_FIELD_NUMBER: _ClassVar[int]
546
+ GT_FIELD_NUMBER: _ClassVar[int]
547
+ GTE_FIELD_NUMBER: _ClassVar[int]
548
+ IN_FIELD_NUMBER: _ClassVar[int]
549
+ NOT_IN_FIELD_NUMBER: _ClassVar[int]
550
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
551
+ const: _duration_pb2.Duration
552
+ lt: _duration_pb2.Duration
553
+ lte: _duration_pb2.Duration
554
+ gt: _duration_pb2.Duration
555
+ gte: _duration_pb2.Duration
556
+ not_in: _containers.RepeatedCompositeFieldContainer[_duration_pb2.Duration]
557
+ example: _containers.RepeatedCompositeFieldContainer[_duration_pb2.Duration]
558
+ def __init__(self, const: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., lt: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., lte: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., gt: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., gte: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., not_in: _Optional[_Iterable[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]]] = ..., example: _Optional[_Iterable[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]]] = ..., **kwargs) -> None: ...
559
+
560
+ class TimestampRules(_message.Message):
561
+ __slots__ = ("const", "lt", "lte", "lt_now", "gt", "gte", "gt_now", "within", "example")
562
+ Extensions: _python_message._ExtensionDict
563
+ CONST_FIELD_NUMBER: _ClassVar[int]
564
+ LT_FIELD_NUMBER: _ClassVar[int]
565
+ LTE_FIELD_NUMBER: _ClassVar[int]
566
+ LT_NOW_FIELD_NUMBER: _ClassVar[int]
567
+ GT_FIELD_NUMBER: _ClassVar[int]
568
+ GTE_FIELD_NUMBER: _ClassVar[int]
569
+ GT_NOW_FIELD_NUMBER: _ClassVar[int]
570
+ WITHIN_FIELD_NUMBER: _ClassVar[int]
571
+ EXAMPLE_FIELD_NUMBER: _ClassVar[int]
572
+ const: _timestamp_pb2.Timestamp
573
+ lt: _timestamp_pb2.Timestamp
574
+ lte: _timestamp_pb2.Timestamp
575
+ lt_now: bool
576
+ gt: _timestamp_pb2.Timestamp
577
+ gte: _timestamp_pb2.Timestamp
578
+ gt_now: bool
579
+ within: _duration_pb2.Duration
580
+ example: _containers.RepeatedCompositeFieldContainer[_timestamp_pb2.Timestamp]
581
+ def __init__(self, const: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., lt: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., lte: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., lt_now: bool = ..., gt: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., gte: _Optional[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]] = ..., gt_now: bool = ..., within: _Optional[_Union[datetime.timedelta, _duration_pb2.Duration, _Mapping]] = ..., example: _Optional[_Iterable[_Union[datetime.datetime, _timestamp_pb2.Timestamp, _Mapping]]] = ...) -> None: ...
582
+
583
+ class Violations(_message.Message):
584
+ __slots__ = ("violations",)
585
+ VIOLATIONS_FIELD_NUMBER: _ClassVar[int]
586
+ violations: _containers.RepeatedCompositeFieldContainer[Violation]
587
+ def __init__(self, violations: _Optional[_Iterable[_Union[Violation, _Mapping]]] = ...) -> None: ...
588
+
589
+ class Violation(_message.Message):
590
+ __slots__ = ("field", "rule", "rule_id", "message", "for_key")
591
+ FIELD_FIELD_NUMBER: _ClassVar[int]
592
+ RULE_FIELD_NUMBER: _ClassVar[int]
593
+ RULE_ID_FIELD_NUMBER: _ClassVar[int]
594
+ MESSAGE_FIELD_NUMBER: _ClassVar[int]
595
+ FOR_KEY_FIELD_NUMBER: _ClassVar[int]
596
+ field: FieldPath
597
+ rule: FieldPath
598
+ rule_id: str
599
+ message: str
600
+ for_key: bool
601
+ def __init__(self, field: _Optional[_Union[FieldPath, _Mapping]] = ..., rule: _Optional[_Union[FieldPath, _Mapping]] = ..., rule_id: _Optional[str] = ..., message: _Optional[str] = ..., for_key: bool = ...) -> None: ...
602
+
603
+ class FieldPath(_message.Message):
604
+ __slots__ = ("elements",)
605
+ ELEMENTS_FIELD_NUMBER: _ClassVar[int]
606
+ elements: _containers.RepeatedCompositeFieldContainer[FieldPathElement]
607
+ def __init__(self, elements: _Optional[_Iterable[_Union[FieldPathElement, _Mapping]]] = ...) -> None: ...
608
+
609
+ class FieldPathElement(_message.Message):
610
+ __slots__ = ("field_number", "field_name", "field_type", "key_type", "value_type", "index", "bool_key", "int_key", "uint_key", "string_key")
611
+ FIELD_NUMBER_FIELD_NUMBER: _ClassVar[int]
612
+ FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
613
+ FIELD_TYPE_FIELD_NUMBER: _ClassVar[int]
614
+ KEY_TYPE_FIELD_NUMBER: _ClassVar[int]
615
+ VALUE_TYPE_FIELD_NUMBER: _ClassVar[int]
616
+ INDEX_FIELD_NUMBER: _ClassVar[int]
617
+ BOOL_KEY_FIELD_NUMBER: _ClassVar[int]
618
+ INT_KEY_FIELD_NUMBER: _ClassVar[int]
619
+ UINT_KEY_FIELD_NUMBER: _ClassVar[int]
620
+ STRING_KEY_FIELD_NUMBER: _ClassVar[int]
621
+ field_number: int
622
+ field_name: str
623
+ field_type: _descriptor_pb2.FieldDescriptorProto.Type
624
+ key_type: _descriptor_pb2.FieldDescriptorProto.Type
625
+ value_type: _descriptor_pb2.FieldDescriptorProto.Type
626
+ index: int
627
+ bool_key: bool
628
+ int_key: int
629
+ uint_key: int
630
+ string_key: str
631
+ def __init__(self, field_number: _Optional[int] = ..., field_name: _Optional[str] = ..., field_type: _Optional[_Union[_descriptor_pb2.FieldDescriptorProto.Type, str]] = ..., key_type: _Optional[_Union[_descriptor_pb2.FieldDescriptorProto.Type, str]] = ..., value_type: _Optional[_Union[_descriptor_pb2.FieldDescriptorProto.Type, str]] = ..., index: _Optional[int] = ..., bool_key: bool = ..., int_key: _Optional[int] = ..., uint_key: _Optional[int] = ..., string_key: _Optional[str] = ...) -> None: ...
@@ -0,0 +1,4 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
@@ -0,0 +1,26 @@
1
+ Metadata-Version: 2.4
2
+ Name: metal-stack-api
3
+ Version: 0.0.3
4
+ Summary: Python API client for metal-stack api
5
+ Home-page: https://github.com/metal-stack/api
6
+ Author: metal-stack authors
7
+ License: MIT
8
+ Keywords: metal-stack,metal-apiserver
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Natural Language :: English
11
+ Classifier: Operating System :: POSIX
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
16
+ Requires-Dist: connecpy>=1.5.2
17
+ Dynamic: author
18
+ Dynamic: classifier
19
+ Dynamic: description
20
+ Dynamic: home-page
21
+ Dynamic: keywords
22
+ Dynamic: license
23
+ Dynamic: requires-dist
24
+ Dynamic: summary
25
+
26
+ Python API client for metal-stack api that implements the v2 api and deprecates metal_python.