yandexcloud 0.354.0__py3-none-any.whl → 0.356.0__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.

Potentially problematic release.


This version of yandexcloud might be problematic. Click here for more details.

Files changed (102) hide show
  1. yandex/cloud/ai/assistants/v1/common_pb2.py +58 -30
  2. yandex/cloud/ai/assistants/v1/common_pb2.pyi +178 -3
  3. yandex/cloud/airflow/v1/cluster_pb2.py +12 -8
  4. yandex/cloud/airflow/v1/cluster_pb2.pyi +4 -0
  5. yandex/cloud/apploadbalancer/v1/virtual_host_pb2.py +32 -32
  6. yandex/cloud/apploadbalancer/v1/virtual_host_pb2.pyi +5 -1
  7. yandex/cloud/apploadbalancer/v1/virtual_host_service_pb2.py +6 -6
  8. yandex/cloud/apploadbalancer/v1/virtual_host_service_pb2.pyi +5 -1
  9. yandex/cloud/backup/v1/backup_service_pb2.py +46 -40
  10. yandex/cloud/backup/v1/backup_service_pb2.pyi +26 -4
  11. yandex/cloud/backup/v1/resource_pb2.py +2 -2
  12. yandex/cloud/backup/v1/resource_pb2.pyi +8 -0
  13. yandex/cloud/baremetal/v1alpha/configuration_service_pb2.py +18 -9
  14. yandex/cloud/baremetal/v1alpha/configuration_service_pb2.pyi +16 -2
  15. yandex/cloud/baremetal/v1alpha/hardware_pool_service_pb2.py +14 -9
  16. yandex/cloud/baremetal/v1alpha/image_service_pb2.py +39 -32
  17. yandex/cloud/baremetal/v1alpha/private_cloud_connection_service_pb2.py +29 -24
  18. yandex/cloud/baremetal/v1alpha/private_subnet_service_pb2.py +43 -36
  19. yandex/cloud/baremetal/v1alpha/public_subnet_service_pb2.py +39 -32
  20. yandex/cloud/baremetal/v1alpha/public_subnet_service_pb2.pyi +3 -2
  21. yandex/cloud/baremetal/v1alpha/server_service_pb2.py +83 -76
  22. yandex/cloud/baremetal/v1alpha/storage_service_pb2.py +16 -11
  23. yandex/cloud/baremetal/v1alpha/vrf_service_pb2.py +39 -32
  24. yandex/cloud/baremetal/v1alpha/zone_service_pb2.py +14 -9
  25. yandex/cloud/compute/v1/maintenance_service_pb2.py +47 -0
  26. yandex/cloud/compute/v1/maintenance_service_pb2.pyi +8 -0
  27. yandex/cloud/compute/v1/maintenance_service_pb2_grpc.py +190 -0
  28. yandex/cloud/compute/v1/maintenance_service_pb2_grpc.pyi +91 -0
  29. yandex/cloud/compute/v1/reserved_instance_pool_pb2.py +8 -4
  30. yandex/cloud/compute/v1/reserved_instance_pool_pb2.pyi +69 -2
  31. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2.py +44 -20
  32. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2.pyi +138 -2
  33. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2_grpc.py +88 -0
  34. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2_grpc.pyi +40 -0
  35. yandex/cloud/datatransfer/v1/transfer_pb2.py +50 -48
  36. yandex/cloud/datatransfer/v1/transfer_pb2.pyi +23 -4
  37. yandex/cloud/datatransfer/v1/transfer_service_pb2.py +32 -32
  38. yandex/cloud/datatransfer/v1/transfer_service_pb2.pyi +12 -4
  39. yandex/cloud/iam/v1/oauth_client_pb2.py +39 -0
  40. yandex/cloud/iam/v1/oauth_client_pb2.pyi +85 -0
  41. yandex/cloud/iam/v1/oauth_client_pb2_grpc.py +24 -0
  42. yandex/cloud/iam/v1/oauth_client_pb2_grpc.pyi +17 -0
  43. yandex/cloud/iam/v1/oauth_client_secret_pb2.py +38 -0
  44. yandex/cloud/iam/v1/oauth_client_secret_pb2.pyi +49 -0
  45. yandex/cloud/iam/v1/oauth_client_secret_pb2_grpc.py +24 -0
  46. yandex/cloud/iam/v1/oauth_client_secret_pb2_grpc.pyi +17 -0
  47. yandex/cloud/iam/v1/oauth_client_secret_service_pb2.py +80 -0
  48. yandex/cloud/iam/v1/oauth_client_secret_service_pb2.pyi +188 -0
  49. yandex/cloud/iam/v1/oauth_client_secret_service_pb2_grpc.py +237 -0
  50. yandex/cloud/iam/v1/oauth_client_secret_service_pb2_grpc.pyi +121 -0
  51. yandex/cloud/iam/v1/oauth_client_service_pb2.py +99 -0
  52. yandex/cloud/iam/v1/oauth_client_service_pb2.pyi +257 -0
  53. yandex/cloud/iam/v1/oauth_client_service_pb2_grpc.py +281 -0
  54. yandex/cloud/iam/v1/oauth_client_service_pb2_grpc.pyi +141 -0
  55. yandex/cloud/iot/broker/v1/broker_service_pb2.py +50 -50
  56. yandex/cloud/iot/devices/v1/device_service_pb2.py +61 -61
  57. yandex/cloud/iot/devices/v1/registry_service_pb2.py +82 -82
  58. yandex/cloud/maintenance/__init__.py +0 -0
  59. yandex/cloud/maintenance/v2/__init__.py +0 -0
  60. yandex/cloud/maintenance/v2/common_pb2.py +73 -0
  61. yandex/cloud/maintenance/v2/common_pb2.pyi +324 -0
  62. yandex/cloud/maintenance/v2/common_pb2_grpc.py +24 -0
  63. yandex/cloud/maintenance/v2/common_pb2_grpc.pyi +17 -0
  64. yandex/cloud/mdb/clickhouse/v1/config/clickhouse_pb2.py +196 -152
  65. yandex/cloud/mdb/clickhouse/v1/config/clickhouse_pb2.pyi +1779 -1066
  66. yandex/cloud/mdb/clickhouse/v1/user_pb2.py +98 -86
  67. yandex/cloud/mdb/clickhouse/v1/user_pb2.pyi +1248 -792
  68. yandex/cloud/mdb/opensearch/v1/backup_pb2.py +14 -14
  69. yandex/cloud/mdb/opensearch/v1/backup_pb2.pyi +13 -1
  70. yandex/cloud/mdb/spqr/v1/cluster_service_pb2.py +76 -76
  71. yandex/cloud/mdb/spqr/v1/cluster_service_pb2.pyi +4 -0
  72. yandex/cloud/metastore/v1/cluster_pb2.py +18 -16
  73. yandex/cloud/metastore/v1/cluster_pb2.pyi +31 -1
  74. yandex/cloud/searchapi/v2/gen_search_service_pb2.py +22 -22
  75. yandex/cloud/searchapi/v2/gen_search_service_pb2.pyi +12 -2
  76. yandex/cloud/serverless/containers/v1/container_pb2.py +46 -44
  77. yandex/cloud/serverless/containers/v1/container_pb2.pyi +25 -3
  78. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_pb2.py +50 -18
  79. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_pb2.pyi +241 -2
  80. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_service_pb2.py +18 -18
  81. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_service_pb2.pyi +22 -2
  82. yandex/cloud/storage/v1/presign_service_pb2.py +47 -0
  83. yandex/cloud/storage/v1/presign_service_pb2.pyi +117 -0
  84. yandex/cloud/storage/v1/presign_service_pb2_grpc.py +101 -0
  85. yandex/cloud/storage/v1/presign_service_pb2_grpc.pyi +50 -0
  86. yandex/cloud/trino/v1/access_control_pb2.py +212 -0
  87. yandex/cloud/trino/v1/access_control_pb2.pyi +926 -0
  88. yandex/cloud/trino/v1/access_control_pb2_grpc.py +24 -0
  89. yandex/cloud/trino/v1/access_control_pb2_grpc.pyi +17 -0
  90. yandex/cloud/trino/v1/cluster_pb2.py +44 -43
  91. yandex/cloud/trino/v1/cluster_pb2.pyi +9 -2
  92. yandex/cloud/trino/v1/cluster_service_pb2.py +50 -49
  93. yandex/cloud/trino/v1/cluster_service_pb2.pyi +29 -4
  94. yandex/cloud/ytsaurus/v1/cluster_pb2.py +40 -37
  95. yandex/cloud/ytsaurus/v1/cluster_pb2.pyi +32 -18
  96. yandexcloud/__init__.py +1 -1
  97. {yandexcloud-0.354.0.dist-info → yandexcloud-0.356.0.dist-info}/METADATA +1 -1
  98. {yandexcloud-0.354.0.dist-info → yandexcloud-0.356.0.dist-info}/RECORD +102 -68
  99. {yandexcloud-0.354.0.dist-info → yandexcloud-0.356.0.dist-info}/AUTHORS +0 -0
  100. {yandexcloud-0.354.0.dist-info → yandexcloud-0.356.0.dist-info}/LICENSE +0 -0
  101. {yandexcloud-0.354.0.dist-info → yandexcloud-0.356.0.dist-info}/WHEEL +0 -0
  102. {yandexcloud-0.354.0.dist-info → yandexcloud-0.356.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,926 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import builtins
7
+ import collections.abc
8
+ import google.protobuf.descriptor
9
+ import google.protobuf.internal.containers
10
+ import google.protobuf.internal.enum_type_wrapper
11
+ import google.protobuf.message
12
+ import sys
13
+ import typing
14
+
15
+ if sys.version_info >= (3, 10):
16
+ import typing as typing_extensions
17
+ else:
18
+ import typing_extensions
19
+
20
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
21
+
22
+ @typing.final
23
+ class AccessControlConfig(google.protobuf.message.Message):
24
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
25
+
26
+ CATALOGS_FIELD_NUMBER: builtins.int
27
+ SCHEMAS_FIELD_NUMBER: builtins.int
28
+ TABLES_FIELD_NUMBER: builtins.int
29
+ FUNCTIONS_FIELD_NUMBER: builtins.int
30
+ PROCEDURES_FIELD_NUMBER: builtins.int
31
+ QUERIES_FIELD_NUMBER: builtins.int
32
+ SYSTEM_SESSION_PROPERTIES_FIELD_NUMBER: builtins.int
33
+ CATALOG_SESSION_PROPERTIES_FIELD_NUMBER: builtins.int
34
+ @property
35
+ def catalogs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CatalogAccessRule]:
36
+ """Catalog access control rules."""
37
+
38
+ @property
39
+ def schemas(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SchemaAccessRule]:
40
+ """Schema access control rules."""
41
+
42
+ @property
43
+ def tables(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TableAccessRule]:
44
+ """Table access control rules."""
45
+
46
+ @property
47
+ def functions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FunctionAccessRule]:
48
+ """Function access control rules."""
49
+
50
+ @property
51
+ def procedures(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ProcedureAccessRule]:
52
+ """Procedures access control rules."""
53
+
54
+ @property
55
+ def queries(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___QueryAccessRule]:
56
+ """Queries access control rules."""
57
+
58
+ @property
59
+ def system_session_properties(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SystemSessionPropertyAccessRule]:
60
+ """System session property access control rules."""
61
+
62
+ @property
63
+ def catalog_session_properties(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CatalogSessionPropertyAccessRule]:
64
+ """Catalog session property access control rules."""
65
+
66
+ def __init__(
67
+ self,
68
+ *,
69
+ catalogs: collections.abc.Iterable[global___CatalogAccessRule] | None = ...,
70
+ schemas: collections.abc.Iterable[global___SchemaAccessRule] | None = ...,
71
+ tables: collections.abc.Iterable[global___TableAccessRule] | None = ...,
72
+ functions: collections.abc.Iterable[global___FunctionAccessRule] | None = ...,
73
+ procedures: collections.abc.Iterable[global___ProcedureAccessRule] | None = ...,
74
+ queries: collections.abc.Iterable[global___QueryAccessRule] | None = ...,
75
+ system_session_properties: collections.abc.Iterable[global___SystemSessionPropertyAccessRule] | None = ...,
76
+ catalog_session_properties: collections.abc.Iterable[global___CatalogSessionPropertyAccessRule] | None = ...,
77
+ ) -> None: ...
78
+ def ClearField(self, field_name: typing.Literal["catalog_session_properties", b"catalog_session_properties", "catalogs", b"catalogs", "functions", b"functions", "procedures", b"procedures", "queries", b"queries", "schemas", b"schemas", "system_session_properties", b"system_session_properties", "tables", b"tables"]) -> None: ...
79
+
80
+ global___AccessControlConfig = AccessControlConfig
81
+
82
+ @typing.final
83
+ class CatalogAccessRuleMatcher(google.protobuf.message.Message):
84
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
85
+
86
+ @typing.final
87
+ class CatalogIds(google.protobuf.message.Message):
88
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
89
+
90
+ ANY_FIELD_NUMBER: builtins.int
91
+ @property
92
+ def any(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
93
+ def __init__(
94
+ self,
95
+ *,
96
+ any: collections.abc.Iterable[builtins.str] | None = ...,
97
+ ) -> None: ...
98
+ def ClearField(self, field_name: typing.Literal["any", b"any"]) -> None: ...
99
+
100
+ @typing.final
101
+ class CatalogNames(google.protobuf.message.Message):
102
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
103
+
104
+ ANY_FIELD_NUMBER: builtins.int
105
+ @property
106
+ def any(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
107
+ def __init__(
108
+ self,
109
+ *,
110
+ any: collections.abc.Iterable[builtins.str] | None = ...,
111
+ ) -> None: ...
112
+ def ClearField(self, field_name: typing.Literal["any", b"any"]) -> None: ...
113
+
114
+ NAME_REGEXP_FIELD_NUMBER: builtins.int
115
+ IDS_FIELD_NUMBER: builtins.int
116
+ NAMES_FIELD_NUMBER: builtins.int
117
+ name_regexp: builtins.str
118
+ """Catalog name regexp the rule is applied to."""
119
+ @property
120
+ def ids(self) -> global___CatalogAccessRuleMatcher.CatalogIds:
121
+ """Catalog IDs rule is applied to."""
122
+
123
+ @property
124
+ def names(self) -> global___CatalogAccessRuleMatcher.CatalogNames:
125
+ """Catalog names rule is applied to."""
126
+
127
+ def __init__(
128
+ self,
129
+ *,
130
+ name_regexp: builtins.str = ...,
131
+ ids: global___CatalogAccessRuleMatcher.CatalogIds | None = ...,
132
+ names: global___CatalogAccessRuleMatcher.CatalogNames | None = ...,
133
+ ) -> None: ...
134
+ def HasField(self, field_name: typing.Literal["ids", b"ids", "match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> builtins.bool: ...
135
+ def ClearField(self, field_name: typing.Literal["ids", b"ids", "match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> None: ...
136
+ def WhichOneof(self, oneof_group: typing.Literal["match_by", b"match_by"]) -> typing.Literal["name_regexp", "ids", "names"] | None: ...
137
+
138
+ global___CatalogAccessRuleMatcher = CatalogAccessRuleMatcher
139
+
140
+ @typing.final
141
+ class SchemaAccessRuleMatcher(google.protobuf.message.Message):
142
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
143
+
144
+ @typing.final
145
+ class SchemaNames(google.protobuf.message.Message):
146
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
147
+
148
+ ANY_FIELD_NUMBER: builtins.int
149
+ @property
150
+ def any(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
151
+ def __init__(
152
+ self,
153
+ *,
154
+ any: collections.abc.Iterable[builtins.str] | None = ...,
155
+ ) -> None: ...
156
+ def ClearField(self, field_name: typing.Literal["any", b"any"]) -> None: ...
157
+
158
+ NAME_REGEXP_FIELD_NUMBER: builtins.int
159
+ NAMES_FIELD_NUMBER: builtins.int
160
+ name_regexp: builtins.str
161
+ """Schema name regexp the rule is applied to."""
162
+ @property
163
+ def names(self) -> global___SchemaAccessRuleMatcher.SchemaNames:
164
+ """Schema names the rule is applied to."""
165
+
166
+ def __init__(
167
+ self,
168
+ *,
169
+ name_regexp: builtins.str = ...,
170
+ names: global___SchemaAccessRuleMatcher.SchemaNames | None = ...,
171
+ ) -> None: ...
172
+ def HasField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> builtins.bool: ...
173
+ def ClearField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> None: ...
174
+ def WhichOneof(self, oneof_group: typing.Literal["match_by", b"match_by"]) -> typing.Literal["name_regexp", "names"] | None: ...
175
+
176
+ global___SchemaAccessRuleMatcher = SchemaAccessRuleMatcher
177
+
178
+ @typing.final
179
+ class TableAccessRuleMatcher(google.protobuf.message.Message):
180
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
181
+
182
+ @typing.final
183
+ class TableNames(google.protobuf.message.Message):
184
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
185
+
186
+ ANY_FIELD_NUMBER: builtins.int
187
+ @property
188
+ def any(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
189
+ def __init__(
190
+ self,
191
+ *,
192
+ any: collections.abc.Iterable[builtins.str] | None = ...,
193
+ ) -> None: ...
194
+ def ClearField(self, field_name: typing.Literal["any", b"any"]) -> None: ...
195
+
196
+ NAME_REGEXP_FIELD_NUMBER: builtins.int
197
+ NAMES_FIELD_NUMBER: builtins.int
198
+ name_regexp: builtins.str
199
+ """Table name regexp the rule is applied to."""
200
+ @property
201
+ def names(self) -> global___TableAccessRuleMatcher.TableNames:
202
+ """Table names the rule is applied to."""
203
+
204
+ def __init__(
205
+ self,
206
+ *,
207
+ name_regexp: builtins.str = ...,
208
+ names: global___TableAccessRuleMatcher.TableNames | None = ...,
209
+ ) -> None: ...
210
+ def HasField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> builtins.bool: ...
211
+ def ClearField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> None: ...
212
+ def WhichOneof(self, oneof_group: typing.Literal["match_by", b"match_by"]) -> typing.Literal["name_regexp", "names"] | None: ...
213
+
214
+ global___TableAccessRuleMatcher = TableAccessRuleMatcher
215
+
216
+ @typing.final
217
+ class FunctionAccessRuleMatcher(google.protobuf.message.Message):
218
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
219
+
220
+ @typing.final
221
+ class FunctionNames(google.protobuf.message.Message):
222
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
223
+
224
+ ANY_FIELD_NUMBER: builtins.int
225
+ @property
226
+ def any(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
227
+ def __init__(
228
+ self,
229
+ *,
230
+ any: collections.abc.Iterable[builtins.str] | None = ...,
231
+ ) -> None: ...
232
+ def ClearField(self, field_name: typing.Literal["any", b"any"]) -> None: ...
233
+
234
+ NAME_REGEXP_FIELD_NUMBER: builtins.int
235
+ NAMES_FIELD_NUMBER: builtins.int
236
+ name_regexp: builtins.str
237
+ """Function name regexp the rule is applied to."""
238
+ @property
239
+ def names(self) -> global___FunctionAccessRuleMatcher.FunctionNames:
240
+ """Function names the rule is applied to."""
241
+
242
+ def __init__(
243
+ self,
244
+ *,
245
+ name_regexp: builtins.str = ...,
246
+ names: global___FunctionAccessRuleMatcher.FunctionNames | None = ...,
247
+ ) -> None: ...
248
+ def HasField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> builtins.bool: ...
249
+ def ClearField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> None: ...
250
+ def WhichOneof(self, oneof_group: typing.Literal["match_by", b"match_by"]) -> typing.Literal["name_regexp", "names"] | None: ...
251
+
252
+ global___FunctionAccessRuleMatcher = FunctionAccessRuleMatcher
253
+
254
+ @typing.final
255
+ class ProcedureAccessRuleMatcher(google.protobuf.message.Message):
256
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
257
+
258
+ @typing.final
259
+ class ProcedureNames(google.protobuf.message.Message):
260
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
261
+
262
+ ANY_FIELD_NUMBER: builtins.int
263
+ @property
264
+ def any(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
265
+ def __init__(
266
+ self,
267
+ *,
268
+ any: collections.abc.Iterable[builtins.str] | None = ...,
269
+ ) -> None: ...
270
+ def ClearField(self, field_name: typing.Literal["any", b"any"]) -> None: ...
271
+
272
+ NAME_REGEXP_FIELD_NUMBER: builtins.int
273
+ NAMES_FIELD_NUMBER: builtins.int
274
+ name_regexp: builtins.str
275
+ """Procedure name regexp the rule is applied to."""
276
+ @property
277
+ def names(self) -> global___ProcedureAccessRuleMatcher.ProcedureNames:
278
+ """Procedure names the rule is applied to."""
279
+
280
+ def __init__(
281
+ self,
282
+ *,
283
+ name_regexp: builtins.str = ...,
284
+ names: global___ProcedureAccessRuleMatcher.ProcedureNames | None = ...,
285
+ ) -> None: ...
286
+ def HasField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> builtins.bool: ...
287
+ def ClearField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> None: ...
288
+ def WhichOneof(self, oneof_group: typing.Literal["match_by", b"match_by"]) -> typing.Literal["name_regexp", "names"] | None: ...
289
+
290
+ global___ProcedureAccessRuleMatcher = ProcedureAccessRuleMatcher
291
+
292
+ @typing.final
293
+ class PropertyAccessRuleMatcher(google.protobuf.message.Message):
294
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
295
+
296
+ @typing.final
297
+ class PropertyNames(google.protobuf.message.Message):
298
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
299
+
300
+ ANY_FIELD_NUMBER: builtins.int
301
+ @property
302
+ def any(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
303
+ def __init__(
304
+ self,
305
+ *,
306
+ any: collections.abc.Iterable[builtins.str] | None = ...,
307
+ ) -> None: ...
308
+ def ClearField(self, field_name: typing.Literal["any", b"any"]) -> None: ...
309
+
310
+ NAME_REGEXP_FIELD_NUMBER: builtins.int
311
+ NAMES_FIELD_NUMBER: builtins.int
312
+ name_regexp: builtins.str
313
+ """Property name regexp the rule is applied to."""
314
+ @property
315
+ def names(self) -> global___PropertyAccessRuleMatcher.PropertyNames:
316
+ """Property names the rule is applied to."""
317
+
318
+ def __init__(
319
+ self,
320
+ *,
321
+ name_regexp: builtins.str = ...,
322
+ names: global___PropertyAccessRuleMatcher.PropertyNames | None = ...,
323
+ ) -> None: ...
324
+ def HasField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> builtins.bool: ...
325
+ def ClearField(self, field_name: typing.Literal["match_by", b"match_by", "name_regexp", b"name_regexp", "names", b"names"]) -> None: ...
326
+ def WhichOneof(self, oneof_group: typing.Literal["match_by", b"match_by"]) -> typing.Literal["name_regexp", "names"] | None: ...
327
+
328
+ global___PropertyAccessRuleMatcher = PropertyAccessRuleMatcher
329
+
330
+ @typing.final
331
+ class CatalogAccessRule(google.protobuf.message.Message):
332
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
333
+
334
+ class _Permission:
335
+ ValueType = typing.NewType("ValueType", builtins.int)
336
+ V: typing_extensions.TypeAlias = ValueType
337
+
338
+ class _PermissionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[CatalogAccessRule._Permission.ValueType], builtins.type):
339
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
340
+ PERMISSION_UNSPECIFIED: CatalogAccessRule._Permission.ValueType # 0
341
+ NONE: CatalogAccessRule._Permission.ValueType # 1
342
+ """Denies all operations on the catalog entities."""
343
+ ALL: CatalogAccessRule._Permission.ValueType # 2
344
+ """Allows all operations on catalog entities."""
345
+ READ_ONLY: CatalogAccessRule._Permission.ValueType # 3
346
+ """Allows only read operations on catalog entities."""
347
+
348
+ class Permission(_Permission, metaclass=_PermissionEnumTypeWrapper): ...
349
+ PERMISSION_UNSPECIFIED: CatalogAccessRule.Permission.ValueType # 0
350
+ NONE: CatalogAccessRule.Permission.ValueType # 1
351
+ """Denies all operations on the catalog entities."""
352
+ ALL: CatalogAccessRule.Permission.ValueType # 2
353
+ """Allows all operations on catalog entities."""
354
+ READ_ONLY: CatalogAccessRule.Permission.ValueType # 3
355
+ """Allows only read operations on catalog entities."""
356
+
357
+ USERS_FIELD_NUMBER: builtins.int
358
+ GROUPS_FIELD_NUMBER: builtins.int
359
+ CATALOG_FIELD_NUMBER: builtins.int
360
+ PERMISSION_FIELD_NUMBER: builtins.int
361
+ DESCRIPTION_FIELD_NUMBER: builtins.int
362
+ permission: global___CatalogAccessRule.Permission.ValueType
363
+ """Permission granted by the rule."""
364
+ description: builtins.str
365
+ """Rule description."""
366
+ @property
367
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
368
+ """IAM user IDs the rule is applied to."""
369
+
370
+ @property
371
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
372
+ """IAM group IDs the rule is applied to."""
373
+
374
+ @property
375
+ def catalog(self) -> global___CatalogAccessRuleMatcher:
376
+ """Catalog matcher specifying what catalogs the rule is applied to."""
377
+
378
+ def __init__(
379
+ self,
380
+ *,
381
+ users: collections.abc.Iterable[builtins.str] | None = ...,
382
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
383
+ catalog: global___CatalogAccessRuleMatcher | None = ...,
384
+ permission: global___CatalogAccessRule.Permission.ValueType = ...,
385
+ description: builtins.str = ...,
386
+ ) -> None: ...
387
+ def HasField(self, field_name: typing.Literal["catalog", b"catalog"]) -> builtins.bool: ...
388
+ def ClearField(self, field_name: typing.Literal["catalog", b"catalog", "description", b"description", "groups", b"groups", "permission", b"permission", "users", b"users"]) -> None: ...
389
+
390
+ global___CatalogAccessRule = CatalogAccessRule
391
+
392
+ @typing.final
393
+ class SchemaAccessRule(google.protobuf.message.Message):
394
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
395
+
396
+ class _Owner:
397
+ ValueType = typing.NewType("ValueType", builtins.int)
398
+ V: typing_extensions.TypeAlias = ValueType
399
+
400
+ class _OwnerEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[SchemaAccessRule._Owner.ValueType], builtins.type):
401
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
402
+ OWNER_UNSPECIFIED: SchemaAccessRule._Owner.ValueType # 0
403
+ NO: SchemaAccessRule._Owner.ValueType # 1
404
+ """User is not considered an owner of the schema."""
405
+ YES: SchemaAccessRule._Owner.ValueType # 2
406
+ """User is considered an owner of the schema."""
407
+
408
+ class Owner(_Owner, metaclass=_OwnerEnumTypeWrapper): ...
409
+ OWNER_UNSPECIFIED: SchemaAccessRule.Owner.ValueType # 0
410
+ NO: SchemaAccessRule.Owner.ValueType # 1
411
+ """User is not considered an owner of the schema."""
412
+ YES: SchemaAccessRule.Owner.ValueType # 2
413
+ """User is considered an owner of the schema."""
414
+
415
+ USERS_FIELD_NUMBER: builtins.int
416
+ GROUPS_FIELD_NUMBER: builtins.int
417
+ CATALOG_FIELD_NUMBER: builtins.int
418
+ SCHEMA_FIELD_NUMBER: builtins.int
419
+ OWNER_FIELD_NUMBER: builtins.int
420
+ DESCRIPTION_FIELD_NUMBER: builtins.int
421
+ owner: global___SchemaAccessRule.Owner.ValueType
422
+ """Ownership granted by the rule."""
423
+ description: builtins.str
424
+ """Rule description."""
425
+ @property
426
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
427
+ """IAM user IDs the rule is applied to."""
428
+
429
+ @property
430
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
431
+ """IAM group IDs the rule is applied to."""
432
+
433
+ @property
434
+ def catalog(self) -> global___CatalogAccessRuleMatcher:
435
+ """Catalog matcher specifying what catalogs the rule is applied to."""
436
+
437
+ @property
438
+ def schema(self) -> global___SchemaAccessRuleMatcher:
439
+ """Schema matcher specifying what schemas the rule is applied to."""
440
+
441
+ def __init__(
442
+ self,
443
+ *,
444
+ users: collections.abc.Iterable[builtins.str] | None = ...,
445
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
446
+ catalog: global___CatalogAccessRuleMatcher | None = ...,
447
+ schema: global___SchemaAccessRuleMatcher | None = ...,
448
+ owner: global___SchemaAccessRule.Owner.ValueType = ...,
449
+ description: builtins.str = ...,
450
+ ) -> None: ...
451
+ def HasField(self, field_name: typing.Literal["catalog", b"catalog", "schema", b"schema"]) -> builtins.bool: ...
452
+ def ClearField(self, field_name: typing.Literal["catalog", b"catalog", "description", b"description", "groups", b"groups", "owner", b"owner", "schema", b"schema", "users", b"users"]) -> None: ...
453
+
454
+ global___SchemaAccessRule = SchemaAccessRule
455
+
456
+ @typing.final
457
+ class TableAccessRule(google.protobuf.message.Message):
458
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
459
+
460
+ class _Privilege:
461
+ ValueType = typing.NewType("ValueType", builtins.int)
462
+ V: typing_extensions.TypeAlias = ValueType
463
+
464
+ class _PrivilegeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[TableAccessRule._Privilege.ValueType], builtins.type):
465
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
466
+ PRIVILEGE_UNSPECIFIED: TableAccessRule._Privilege.ValueType # 0
467
+ SELECT: TableAccessRule._Privilege.ValueType # 1
468
+ """Allows SELECT statements on the table."""
469
+ INSERT: TableAccessRule._Privilege.ValueType # 2
470
+ """Allows INSERT statements on the table."""
471
+ DELETE: TableAccessRule._Privilege.ValueType # 3
472
+ """Allows DELETE statements on the table."""
473
+ UPDATE: TableAccessRule._Privilege.ValueType # 4
474
+ """Allows UPDATE statements on the table."""
475
+ OWNERSHIP: TableAccessRule._Privilege.ValueType # 5
476
+ """Allows CREATE, DROP, COMMENT ON and ALTER statements on the table."""
477
+ GRANT_SELECT: TableAccessRule._Privilege.ValueType # 6
478
+ """Allows SELECT statements on the table while creating view."""
479
+
480
+ class Privilege(_Privilege, metaclass=_PrivilegeEnumTypeWrapper): ...
481
+ PRIVILEGE_UNSPECIFIED: TableAccessRule.Privilege.ValueType # 0
482
+ SELECT: TableAccessRule.Privilege.ValueType # 1
483
+ """Allows SELECT statements on the table."""
484
+ INSERT: TableAccessRule.Privilege.ValueType # 2
485
+ """Allows INSERT statements on the table."""
486
+ DELETE: TableAccessRule.Privilege.ValueType # 3
487
+ """Allows DELETE statements on the table."""
488
+ UPDATE: TableAccessRule.Privilege.ValueType # 4
489
+ """Allows UPDATE statements on the table."""
490
+ OWNERSHIP: TableAccessRule.Privilege.ValueType # 5
491
+ """Allows CREATE, DROP, COMMENT ON and ALTER statements on the table."""
492
+ GRANT_SELECT: TableAccessRule.Privilege.ValueType # 6
493
+ """Allows SELECT statements on the table while creating view."""
494
+
495
+ @typing.final
496
+ class Column(google.protobuf.message.Message):
497
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
498
+
499
+ class _AccessMode:
500
+ ValueType = typing.NewType("ValueType", builtins.int)
501
+ V: typing_extensions.TypeAlias = ValueType
502
+
503
+ class _AccessModeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[TableAccessRule.Column._AccessMode.ValueType], builtins.type):
504
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
505
+ ACCESS_MODE_UNSPECIFIED: TableAccessRule.Column._AccessMode.ValueType # 0
506
+ NONE: TableAccessRule.Column._AccessMode.ValueType # 1
507
+ """Access to column is denied."""
508
+ ALL: TableAccessRule.Column._AccessMode.ValueType # 2
509
+ """Access to column is allowed."""
510
+
511
+ class AccessMode(_AccessMode, metaclass=_AccessModeEnumTypeWrapper): ...
512
+ ACCESS_MODE_UNSPECIFIED: TableAccessRule.Column.AccessMode.ValueType # 0
513
+ NONE: TableAccessRule.Column.AccessMode.ValueType # 1
514
+ """Access to column is denied."""
515
+ ALL: TableAccessRule.Column.AccessMode.ValueType # 2
516
+ """Access to column is allowed."""
517
+
518
+ NAME_FIELD_NUMBER: builtins.int
519
+ ACCESS_FIELD_NUMBER: builtins.int
520
+ MASK_FIELD_NUMBER: builtins.int
521
+ name: builtins.str
522
+ """Column name."""
523
+ access: global___TableAccessRule.Column.AccessMode.ValueType
524
+ """Column access mode."""
525
+ mask: builtins.str
526
+ """SQL expression mask to evaluate instead of original column values.
527
+ Mask should have the same type as original column.
528
+ """
529
+ def __init__(
530
+ self,
531
+ *,
532
+ name: builtins.str = ...,
533
+ access: global___TableAccessRule.Column.AccessMode.ValueType = ...,
534
+ mask: builtins.str = ...,
535
+ ) -> None: ...
536
+ def ClearField(self, field_name: typing.Literal["access", b"access", "mask", b"mask", "name", b"name"]) -> None: ...
537
+
538
+ USERS_FIELD_NUMBER: builtins.int
539
+ GROUPS_FIELD_NUMBER: builtins.int
540
+ CATALOG_FIELD_NUMBER: builtins.int
541
+ SCHEMA_FIELD_NUMBER: builtins.int
542
+ TABLE_FIELD_NUMBER: builtins.int
543
+ PRIVILEGES_FIELD_NUMBER: builtins.int
544
+ COLUMNS_FIELD_NUMBER: builtins.int
545
+ FILTER_FIELD_NUMBER: builtins.int
546
+ DESCRIPTION_FIELD_NUMBER: builtins.int
547
+ filter: builtins.str
548
+ """Boolean SQL expression to filter table rows for particular user."""
549
+ description: builtins.str
550
+ """Rule description."""
551
+ @property
552
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
553
+ """IAM user IDs the rule is applied to."""
554
+
555
+ @property
556
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
557
+ """IAM group IDs the rule is applied to."""
558
+
559
+ @property
560
+ def catalog(self) -> global___CatalogAccessRuleMatcher:
561
+ """Catalog matcher specifying what catalogs the rule is applied to."""
562
+
563
+ @property
564
+ def schema(self) -> global___SchemaAccessRuleMatcher:
565
+ """Schema matcher specifying what schemas the rule is applied to."""
566
+
567
+ @property
568
+ def table(self) -> global___TableAccessRuleMatcher:
569
+ """Table matcher specifying what tables the rule is applied to."""
570
+
571
+ @property
572
+ def privileges(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___TableAccessRule.Privilege.ValueType]:
573
+ """Permission granted by the rule."""
574
+
575
+ @property
576
+ def columns(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TableAccessRule.Column]:
577
+ """Column rules."""
578
+
579
+ def __init__(
580
+ self,
581
+ *,
582
+ users: collections.abc.Iterable[builtins.str] | None = ...,
583
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
584
+ catalog: global___CatalogAccessRuleMatcher | None = ...,
585
+ schema: global___SchemaAccessRuleMatcher | None = ...,
586
+ table: global___TableAccessRuleMatcher | None = ...,
587
+ privileges: collections.abc.Iterable[global___TableAccessRule.Privilege.ValueType] | None = ...,
588
+ columns: collections.abc.Iterable[global___TableAccessRule.Column] | None = ...,
589
+ filter: builtins.str = ...,
590
+ description: builtins.str = ...,
591
+ ) -> None: ...
592
+ def HasField(self, field_name: typing.Literal["catalog", b"catalog", "schema", b"schema", "table", b"table"]) -> builtins.bool: ...
593
+ def ClearField(self, field_name: typing.Literal["catalog", b"catalog", "columns", b"columns", "description", b"description", "filter", b"filter", "groups", b"groups", "privileges", b"privileges", "schema", b"schema", "table", b"table", "users", b"users"]) -> None: ...
594
+
595
+ global___TableAccessRule = TableAccessRule
596
+
597
+ @typing.final
598
+ class FunctionAccessRule(google.protobuf.message.Message):
599
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
600
+
601
+ class _Privilege:
602
+ ValueType = typing.NewType("ValueType", builtins.int)
603
+ V: typing_extensions.TypeAlias = ValueType
604
+
605
+ class _PrivilegeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[FunctionAccessRule._Privilege.ValueType], builtins.type):
606
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
607
+ PRIVILEGE_UNSPECIFIED: FunctionAccessRule._Privilege.ValueType # 0
608
+ EXECUTE: FunctionAccessRule._Privilege.ValueType # 1
609
+ """Allows to execute the function."""
610
+ GRANT_EXECUTE: FunctionAccessRule._Privilege.ValueType # 2
611
+ """Allows to use the function while view creation."""
612
+ OWNERSHIP: FunctionAccessRule._Privilege.ValueType # 3
613
+ """Allows to CREATE and DROP the function."""
614
+
615
+ class Privilege(_Privilege, metaclass=_PrivilegeEnumTypeWrapper): ...
616
+ PRIVILEGE_UNSPECIFIED: FunctionAccessRule.Privilege.ValueType # 0
617
+ EXECUTE: FunctionAccessRule.Privilege.ValueType # 1
618
+ """Allows to execute the function."""
619
+ GRANT_EXECUTE: FunctionAccessRule.Privilege.ValueType # 2
620
+ """Allows to use the function while view creation."""
621
+ OWNERSHIP: FunctionAccessRule.Privilege.ValueType # 3
622
+ """Allows to CREATE and DROP the function."""
623
+
624
+ USERS_FIELD_NUMBER: builtins.int
625
+ GROUPS_FIELD_NUMBER: builtins.int
626
+ CATALOG_FIELD_NUMBER: builtins.int
627
+ SCHEMA_FIELD_NUMBER: builtins.int
628
+ FUNCTION_FIELD_NUMBER: builtins.int
629
+ PRIVILEGES_FIELD_NUMBER: builtins.int
630
+ DESCRIPTION_FIELD_NUMBER: builtins.int
631
+ description: builtins.str
632
+ """Rule description."""
633
+ @property
634
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
635
+ """IAM user IDs the rule is applied to."""
636
+
637
+ @property
638
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
639
+ """IAM group IDs the rule is applied to."""
640
+
641
+ @property
642
+ def catalog(self) -> global___CatalogAccessRuleMatcher:
643
+ """Catalog matcher specifying what catalogs the rule is applied to."""
644
+
645
+ @property
646
+ def schema(self) -> global___SchemaAccessRuleMatcher:
647
+ """Schema matcher specifying what schema the rule is applied to."""
648
+
649
+ @property
650
+ def function(self) -> global___FunctionAccessRuleMatcher:
651
+ """Function matcher specifying what functions the rule is applied to."""
652
+
653
+ @property
654
+ def privileges(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___FunctionAccessRule.Privilege.ValueType]:
655
+ """Privileges granted by the rule."""
656
+
657
+ def __init__(
658
+ self,
659
+ *,
660
+ users: collections.abc.Iterable[builtins.str] | None = ...,
661
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
662
+ catalog: global___CatalogAccessRuleMatcher | None = ...,
663
+ schema: global___SchemaAccessRuleMatcher | None = ...,
664
+ function: global___FunctionAccessRuleMatcher | None = ...,
665
+ privileges: collections.abc.Iterable[global___FunctionAccessRule.Privilege.ValueType] | None = ...,
666
+ description: builtins.str = ...,
667
+ ) -> None: ...
668
+ def HasField(self, field_name: typing.Literal["catalog", b"catalog", "function", b"function", "schema", b"schema"]) -> builtins.bool: ...
669
+ def ClearField(self, field_name: typing.Literal["catalog", b"catalog", "description", b"description", "function", b"function", "groups", b"groups", "privileges", b"privileges", "schema", b"schema", "users", b"users"]) -> None: ...
670
+
671
+ global___FunctionAccessRule = FunctionAccessRule
672
+
673
+ @typing.final
674
+ class ProcedureAccessRule(google.protobuf.message.Message):
675
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
676
+
677
+ class _Privilege:
678
+ ValueType = typing.NewType("ValueType", builtins.int)
679
+ V: typing_extensions.TypeAlias = ValueType
680
+
681
+ class _PrivilegeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[ProcedureAccessRule._Privilege.ValueType], builtins.type):
682
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
683
+ PRIVILEGE_UNSPECIFIED: ProcedureAccessRule._Privilege.ValueType # 0
684
+ EXECUTE: ProcedureAccessRule._Privilege.ValueType # 1
685
+ """Allows to execute the procedure."""
686
+
687
+ class Privilege(_Privilege, metaclass=_PrivilegeEnumTypeWrapper): ...
688
+ PRIVILEGE_UNSPECIFIED: ProcedureAccessRule.Privilege.ValueType # 0
689
+ EXECUTE: ProcedureAccessRule.Privilege.ValueType # 1
690
+ """Allows to execute the procedure."""
691
+
692
+ USERS_FIELD_NUMBER: builtins.int
693
+ GROUPS_FIELD_NUMBER: builtins.int
694
+ CATALOG_FIELD_NUMBER: builtins.int
695
+ SCHEMA_FIELD_NUMBER: builtins.int
696
+ PROCEDURE_FIELD_NUMBER: builtins.int
697
+ PRIVILEGES_FIELD_NUMBER: builtins.int
698
+ DESCRIPTION_FIELD_NUMBER: builtins.int
699
+ description: builtins.str
700
+ """Rule description."""
701
+ @property
702
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
703
+ """IAM user IDs the rule is applied to."""
704
+
705
+ @property
706
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
707
+ """IAM group IDs the rule is applied to."""
708
+
709
+ @property
710
+ def catalog(self) -> global___CatalogAccessRuleMatcher:
711
+ """Catalog matcher specifying what catalogs the rule is applied to."""
712
+
713
+ @property
714
+ def schema(self) -> global___SchemaAccessRuleMatcher:
715
+ """Schema matcher specifying what schema the rule is applied to."""
716
+
717
+ @property
718
+ def procedure(self) -> global___ProcedureAccessRuleMatcher:
719
+ """Procedure matcher specifying what functions the rule is applied to."""
720
+
721
+ @property
722
+ def privileges(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___ProcedureAccessRule.Privilege.ValueType]:
723
+ """Privileges granted by the rule."""
724
+
725
+ def __init__(
726
+ self,
727
+ *,
728
+ users: collections.abc.Iterable[builtins.str] | None = ...,
729
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
730
+ catalog: global___CatalogAccessRuleMatcher | None = ...,
731
+ schema: global___SchemaAccessRuleMatcher | None = ...,
732
+ procedure: global___ProcedureAccessRuleMatcher | None = ...,
733
+ privileges: collections.abc.Iterable[global___ProcedureAccessRule.Privilege.ValueType] | None = ...,
734
+ description: builtins.str = ...,
735
+ ) -> None: ...
736
+ def HasField(self, field_name: typing.Literal["catalog", b"catalog", "procedure", b"procedure", "schema", b"schema"]) -> builtins.bool: ...
737
+ def ClearField(self, field_name: typing.Literal["catalog", b"catalog", "description", b"description", "groups", b"groups", "privileges", b"privileges", "procedure", b"procedure", "schema", b"schema", "users", b"users"]) -> None: ...
738
+
739
+ global___ProcedureAccessRule = ProcedureAccessRule
740
+
741
+ @typing.final
742
+ class QueryAccessRule(google.protobuf.message.Message):
743
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
744
+
745
+ class _Privilege:
746
+ ValueType = typing.NewType("ValueType", builtins.int)
747
+ V: typing_extensions.TypeAlias = ValueType
748
+
749
+ class _PrivilegeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[QueryAccessRule._Privilege.ValueType], builtins.type):
750
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
751
+ PRIVILEGE_UNSPECIFIED: QueryAccessRule._Privilege.ValueType # 0
752
+ VIEW: QueryAccessRule._Privilege.ValueType # 1
753
+ """Allows to view the query."""
754
+ EXECUTE: QueryAccessRule._Privilege.ValueType # 2
755
+ """Allows to execute the query."""
756
+ KILL: QueryAccessRule._Privilege.ValueType # 3
757
+ """Allows to kill the query."""
758
+
759
+ class Privilege(_Privilege, metaclass=_PrivilegeEnumTypeWrapper): ...
760
+ PRIVILEGE_UNSPECIFIED: QueryAccessRule.Privilege.ValueType # 0
761
+ VIEW: QueryAccessRule.Privilege.ValueType # 1
762
+ """Allows to view the query."""
763
+ EXECUTE: QueryAccessRule.Privilege.ValueType # 2
764
+ """Allows to execute the query."""
765
+ KILL: QueryAccessRule.Privilege.ValueType # 3
766
+ """Allows to kill the query."""
767
+
768
+ USERS_FIELD_NUMBER: builtins.int
769
+ GROUPS_FIELD_NUMBER: builtins.int
770
+ QUERY_OWNERS_FIELD_NUMBER: builtins.int
771
+ PRIVILEGES_FIELD_NUMBER: builtins.int
772
+ DESCRIPTION_FIELD_NUMBER: builtins.int
773
+ description: builtins.str
774
+ """Rule description."""
775
+ @property
776
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
777
+ """IAM user IDs the rule is applied to."""
778
+
779
+ @property
780
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
781
+ """IAM group IDs the rule is applied to."""
782
+
783
+ @property
784
+ def query_owners(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
785
+ """Owners of queries the rule is applied to.
786
+ Cannot be combined with EXECUTE privilege.
787
+ """
788
+
789
+ @property
790
+ def privileges(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___QueryAccessRule.Privilege.ValueType]:
791
+ """Privileges granted by the user."""
792
+
793
+ def __init__(
794
+ self,
795
+ *,
796
+ users: collections.abc.Iterable[builtins.str] | None = ...,
797
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
798
+ query_owners: collections.abc.Iterable[builtins.str] | None = ...,
799
+ privileges: collections.abc.Iterable[global___QueryAccessRule.Privilege.ValueType] | None = ...,
800
+ description: builtins.str = ...,
801
+ ) -> None: ...
802
+ def ClearField(self, field_name: typing.Literal["description", b"description", "groups", b"groups", "privileges", b"privileges", "query_owners", b"query_owners", "users", b"users"]) -> None: ...
803
+
804
+ global___QueryAccessRule = QueryAccessRule
805
+
806
+ @typing.final
807
+ class SystemSessionPropertyAccessRule(google.protobuf.message.Message):
808
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
809
+
810
+ class _Allow:
811
+ ValueType = typing.NewType("ValueType", builtins.int)
812
+ V: typing_extensions.TypeAlias = ValueType
813
+
814
+ class _AllowEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[SystemSessionPropertyAccessRule._Allow.ValueType], builtins.type):
815
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
816
+ ALLOW_UNSPECIFIED: SystemSessionPropertyAccessRule._Allow.ValueType # 0
817
+ NO: SystemSessionPropertyAccessRule._Allow.ValueType # 1
818
+ """Denies setting the system session property."""
819
+ YES: SystemSessionPropertyAccessRule._Allow.ValueType # 2
820
+ """Allows to set the system session property."""
821
+
822
+ class Allow(_Allow, metaclass=_AllowEnumTypeWrapper): ...
823
+ ALLOW_UNSPECIFIED: SystemSessionPropertyAccessRule.Allow.ValueType # 0
824
+ NO: SystemSessionPropertyAccessRule.Allow.ValueType # 1
825
+ """Denies setting the system session property."""
826
+ YES: SystemSessionPropertyAccessRule.Allow.ValueType # 2
827
+ """Allows to set the system session property."""
828
+
829
+ USERS_FIELD_NUMBER: builtins.int
830
+ GROUPS_FIELD_NUMBER: builtins.int
831
+ PROPERTY_FIELD_NUMBER: builtins.int
832
+ ALLOW_FIELD_NUMBER: builtins.int
833
+ DESCRIPTION_FIELD_NUMBER: builtins.int
834
+ allow: global___SystemSessionPropertyAccessRule.Allow.ValueType
835
+ """Whether the rule allows setting the property."""
836
+ description: builtins.str
837
+ """Rule description."""
838
+ @property
839
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
840
+ """IAM user IDs the rule is applied to."""
841
+
842
+ @property
843
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
844
+ """IAM group IDs the rule is applied to."""
845
+
846
+ @property
847
+ def property(self) -> global___PropertyAccessRuleMatcher:
848
+ """Property matcher specifying what properties the rule is applied to."""
849
+
850
+ def __init__(
851
+ self,
852
+ *,
853
+ users: collections.abc.Iterable[builtins.str] | None = ...,
854
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
855
+ property: global___PropertyAccessRuleMatcher | None = ...,
856
+ allow: global___SystemSessionPropertyAccessRule.Allow.ValueType = ...,
857
+ description: builtins.str = ...,
858
+ ) -> None: ...
859
+ def HasField(self, field_name: typing.Literal["property", b"property"]) -> builtins.bool: ...
860
+ def ClearField(self, field_name: typing.Literal["allow", b"allow", "description", b"description", "groups", b"groups", "property", b"property", "users", b"users"]) -> None: ...
861
+
862
+ global___SystemSessionPropertyAccessRule = SystemSessionPropertyAccessRule
863
+
864
+ @typing.final
865
+ class CatalogSessionPropertyAccessRule(google.protobuf.message.Message):
866
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
867
+
868
+ class _Allow:
869
+ ValueType = typing.NewType("ValueType", builtins.int)
870
+ V: typing_extensions.TypeAlias = ValueType
871
+
872
+ class _AllowEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[CatalogSessionPropertyAccessRule._Allow.ValueType], builtins.type):
873
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
874
+ ALLOW_UNSPECIFIED: CatalogSessionPropertyAccessRule._Allow.ValueType # 0
875
+ NO: CatalogSessionPropertyAccessRule._Allow.ValueType # 1
876
+ """Denies setting the catalog session property."""
877
+ YES: CatalogSessionPropertyAccessRule._Allow.ValueType # 2
878
+ """Allows to set the catalog session property."""
879
+
880
+ class Allow(_Allow, metaclass=_AllowEnumTypeWrapper): ...
881
+ ALLOW_UNSPECIFIED: CatalogSessionPropertyAccessRule.Allow.ValueType # 0
882
+ NO: CatalogSessionPropertyAccessRule.Allow.ValueType # 1
883
+ """Denies setting the catalog session property."""
884
+ YES: CatalogSessionPropertyAccessRule.Allow.ValueType # 2
885
+ """Allows to set the catalog session property."""
886
+
887
+ USERS_FIELD_NUMBER: builtins.int
888
+ GROUPS_FIELD_NUMBER: builtins.int
889
+ CATALOG_FIELD_NUMBER: builtins.int
890
+ PROPERTY_FIELD_NUMBER: builtins.int
891
+ ALLOW_FIELD_NUMBER: builtins.int
892
+ DESCRIPTION_FIELD_NUMBER: builtins.int
893
+ allow: global___CatalogSessionPropertyAccessRule.Allow.ValueType
894
+ """Whether the rule allows setting the property."""
895
+ description: builtins.str
896
+ """Rule description."""
897
+ @property
898
+ def users(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
899
+ """IAM user IDs the rule is applied to."""
900
+
901
+ @property
902
+ def groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
903
+ """IAM group IDs the rule is applied to."""
904
+
905
+ @property
906
+ def catalog(self) -> global___CatalogAccessRuleMatcher:
907
+ """Catalog matcher specifying what catalogs the rule is applied to."""
908
+
909
+ @property
910
+ def property(self) -> global___PropertyAccessRuleMatcher:
911
+ """Property matcher specifying what properties the rule is applied to."""
912
+
913
+ def __init__(
914
+ self,
915
+ *,
916
+ users: collections.abc.Iterable[builtins.str] | None = ...,
917
+ groups: collections.abc.Iterable[builtins.str] | None = ...,
918
+ catalog: global___CatalogAccessRuleMatcher | None = ...,
919
+ property: global___PropertyAccessRuleMatcher | None = ...,
920
+ allow: global___CatalogSessionPropertyAccessRule.Allow.ValueType = ...,
921
+ description: builtins.str = ...,
922
+ ) -> None: ...
923
+ def HasField(self, field_name: typing.Literal["catalog", b"catalog", "property", b"property"]) -> builtins.bool: ...
924
+ def ClearField(self, field_name: typing.Literal["allow", b"allow", "catalog", b"catalog", "description", b"description", "groups", b"groups", "property", b"property", "users", b"users"]) -> None: ...
925
+
926
+ global___CatalogSessionPropertyAccessRule = CatalogSessionPropertyAccessRule