@google-cloud/firestore
Advanced tools
Comparing version 7.6.0 to 7.7.0
@@ -1,1 +0,1 @@ | ||
{"nested":{"google":{"nested":{"firestore":{"nested":{"admin":{"nested":{"v1":{"options":{"csharp_namespace":"Google.Cloud.Firestore.Admin.V1","go_package":"cloud.google.com/go/firestore/apiv1/admin/adminpb;adminpb","java_multiple_files":true,"java_outer_classname":"LocationProto","java_package":"com.google.firestore.admin.v1","objc_class_prefix":"GCFS","php_namespace":"Google\\Cloud\\Firestore\\Admin\\V1","ruby_package":"Google::Cloud::Firestore::Admin::V1","(google.api.resource_definition).type":"firestore.googleapis.com/CollectionGroup","(google.api.resource_definition).pattern":"projects/{project}/databases/{database}/collectionGroups/{collection}"},"nested":{"Backup":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Backup","(google.api.resource).pattern":"projects/{project}/locations/{location}/backups/{backup}"},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"database":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"databaseUid":{"type":"string","id":7,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"snapshotTime":{"type":"google.protobuf.Timestamp","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"expireTime":{"type":"google.protobuf.Timestamp","id":4,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"stats":{"type":"Stats","id":6,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"state":{"type":"State","id":8,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}}},"nested":{"Stats":{"fields":{"sizeBytes":{"type":"int64","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"documentCount":{"type":"int64","id":2,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"indexCount":{"type":"int64","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}}}},"State":{"values":{"STATE_UNSPECIFIED":0,"CREATING":1,"READY":2,"NOT_AVAILABLE":3}}}},"Database":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Database","(google.api.resource).pattern":"projects/{project}/databases/{database}","(google.api.resource).style":"DECLARATIVE_FRIENDLY"},"fields":{"name":{"type":"string","id":1},"uid":{"type":"string","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"createTime":{"type":"google.protobuf.Timestamp","id":5,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"updateTime":{"type":"google.protobuf.Timestamp","id":6,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"locationId":{"type":"string","id":9},"type":{"type":"DatabaseType","id":10},"concurrencyMode":{"type":"ConcurrencyMode","id":15},"versionRetentionPeriod":{"type":"google.protobuf.Duration","id":17,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"earliestVersionTime":{"type":"google.protobuf.Timestamp","id":18,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"pointInTimeRecoveryEnablement":{"type":"PointInTimeRecoveryEnablement","id":21},"appEngineIntegrationMode":{"type":"AppEngineIntegrationMode","id":19},"keyPrefix":{"type":"string","id":20,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"deleteProtectionState":{"type":"DeleteProtectionState","id":22},"etag":{"type":"string","id":99}},"nested":{"DatabaseType":{"values":{"DATABASE_TYPE_UNSPECIFIED":0,"FIRESTORE_NATIVE":1,"DATASTORE_MODE":2}},"ConcurrencyMode":{"values":{"CONCURRENCY_MODE_UNSPECIFIED":0,"OPTIMISTIC":1,"PESSIMISTIC":2,"OPTIMISTIC_WITH_ENTITY_GROUPS":3}},"PointInTimeRecoveryEnablement":{"values":{"POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED":0,"POINT_IN_TIME_RECOVERY_ENABLED":1,"POINT_IN_TIME_RECOVERY_DISABLED":2}},"AppEngineIntegrationMode":{"values":{"APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED":0,"ENABLED":1,"DISABLED":2}},"DeleteProtectionState":{"values":{"DELETE_PROTECTION_STATE_UNSPECIFIED":0,"DELETE_PROTECTION_DISABLED":1,"DELETE_PROTECTION_ENABLED":2}}}},"Field":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Field","(google.api.resource).pattern":"projects/{project}/databases/{database}/collectionGroups/{collection}/fields/{field}"},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"indexConfig":{"type":"IndexConfig","id":2},"ttlConfig":{"type":"TtlConfig","id":3}},"nested":{"IndexConfig":{"fields":{"indexes":{"rule":"repeated","type":"Index","id":1},"usesAncestorConfig":{"type":"bool","id":2},"ancestorField":{"type":"string","id":3},"reverting":{"type":"bool","id":4}}},"TtlConfig":{"fields":{"state":{"type":"State","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}}},"nested":{"State":{"values":{"STATE_UNSPECIFIED":0,"CREATING":1,"ACTIVE":2,"NEEDS_REPAIR":3}}}}}},"Index":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Index","(google.api.resource).pattern":"projects/{project}/databases/{database}/collectionGroups/{collection}/indexes/{index}"},"fields":{"name":{"type":"string","id":1},"queryScope":{"type":"QueryScope","id":2},"apiScope":{"type":"ApiScope","id":5},"fields":{"rule":"repeated","type":"IndexField","id":3},"state":{"type":"State","id":4}},"nested":{"QueryScope":{"values":{"QUERY_SCOPE_UNSPECIFIED":0,"COLLECTION":1,"COLLECTION_GROUP":2,"COLLECTION_RECURSIVE":3}},"ApiScope":{"values":{"ANY_API":0,"DATASTORE_MODE_API":1}},"IndexField":{"oneofs":{"valueMode":{"oneof":["order","arrayConfig","vectorConfig"]}},"fields":{"fieldPath":{"type":"string","id":1},"order":{"type":"Order","id":2},"arrayConfig":{"type":"ArrayConfig","id":3},"vectorConfig":{"type":"VectorConfig","id":4}},"nested":{"Order":{"values":{"ORDER_UNSPECIFIED":0,"ASCENDING":1,"DESCENDING":2}},"ArrayConfig":{"values":{"ARRAY_CONFIG_UNSPECIFIED":0,"CONTAINS":1}},"VectorConfig":{"oneofs":{"type":{"oneof":["flat"]}},"fields":{"dimension":{"type":"int32","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"flat":{"type":"FlatIndex","id":2}},"nested":{"FlatIndex":{"fields":{}}}}}},"State":{"values":{"STATE_UNSPECIFIED":0,"CREATING":1,"READY":2,"NEEDS_REPAIR":3}}}},"FirestoreAdmin":{"options":{"(google.api.default_host)":"firestore.googleapis.com","(google.api.oauth_scopes)":"https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastore"},"methods":{"CreateIndex":{"requestType":"CreateIndexRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes","(google.api.http).body":"index","(google.api.method_signature)":"parent,index","(google.longrunning.operation_info).response_type":"Index","(google.longrunning.operation_info).metadata_type":"IndexOperationMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes","body":"index"}},{"(google.api.method_signature)":"parent,index"},{"(google.longrunning.operation_info)":{"response_type":"Index","metadata_type":"IndexOperationMetadata"}}]},"ListIndexes":{"requestType":"ListIndexesRequest","responseType":"ListIndexesResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes"}},{"(google.api.method_signature)":"parent"}]},"GetIndex":{"requestType":"GetIndexRequest","responseType":"Index","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}"}},{"(google.api.method_signature)":"name"}]},"DeleteIndex":{"requestType":"DeleteIndexRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}"}},{"(google.api.method_signature)":"name"}]},"GetField":{"requestType":"GetFieldRequest","responseType":"Field","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/collectionGroups/*/fields/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/collectionGroups/*/fields/*}"}},{"(google.api.method_signature)":"name"}]},"UpdateField":{"requestType":"UpdateFieldRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).patch":"/v1/{field.name=projects/*/databases/*/collectionGroups/*/fields/*}","(google.api.http).body":"field","(google.api.method_signature)":"field","(google.longrunning.operation_info).response_type":"Field","(google.longrunning.operation_info).metadata_type":"FieldOperationMetadata"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{field.name=projects/*/databases/*/collectionGroups/*/fields/*}","body":"field"}},{"(google.api.method_signature)":"field"},{"(google.longrunning.operation_info)":{"response_type":"Field","metadata_type":"FieldOperationMetadata"}}]},"ListFields":{"requestType":"ListFieldsRequest","responseType":"ListFieldsResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/fields","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/fields"}},{"(google.api.method_signature)":"parent"}]},"ExportDocuments":{"requestType":"ExportDocumentsRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{name=projects/*/databases/*}:exportDocuments","(google.api.http).body":"*","(google.api.method_signature)":"name","(google.longrunning.operation_info).response_type":"ExportDocumentsResponse","(google.longrunning.operation_info).metadata_type":"ExportDocumentsMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{name=projects/*/databases/*}:exportDocuments","body":"*"}},{"(google.api.method_signature)":"name"},{"(google.longrunning.operation_info)":{"response_type":"ExportDocumentsResponse","metadata_type":"ExportDocumentsMetadata"}}]},"ImportDocuments":{"requestType":"ImportDocumentsRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{name=projects/*/databases/*}:importDocuments","(google.api.http).body":"*","(google.api.method_signature)":"name","(google.longrunning.operation_info).response_type":"google.protobuf.Empty","(google.longrunning.operation_info).metadata_type":"ImportDocumentsMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{name=projects/*/databases/*}:importDocuments","body":"*"}},{"(google.api.method_signature)":"name"},{"(google.longrunning.operation_info)":{"response_type":"google.protobuf.Empty","metadata_type":"ImportDocumentsMetadata"}}]},"CreateDatabase":{"requestType":"CreateDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{parent=projects/*}/databases","(google.api.http).body":"database","(google.api.method_signature)":"parent,database,database_id","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"CreateDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*}/databases","body":"database"}},{"(google.api.method_signature)":"parent,database,database_id"},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"CreateDatabaseMetadata"}}]},"GetDatabase":{"requestType":"GetDatabaseRequest","responseType":"Database","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*}"}},{"(google.api.method_signature)":"name"}]},"ListDatabases":{"requestType":"ListDatabasesRequest","responseType":"ListDatabasesResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*}/databases","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*}/databases"}},{"(google.api.method_signature)":"parent"}]},"UpdateDatabase":{"requestType":"UpdateDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).patch":"/v1/{database.name=projects/*/databases/*}","(google.api.http).body":"database","(google.api.method_signature)":"database,update_mask","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"UpdateDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{database.name=projects/*/databases/*}","body":"database"}},{"(google.api.method_signature)":"database,update_mask"},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"UpdateDatabaseMetadata"}}]},"DeleteDatabase":{"requestType":"DeleteDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*}","(google.api.method_signature)":"name","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"DeleteDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*}"}},{"(google.api.method_signature)":"name"},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"DeleteDatabaseMetadata"}}]},"GetBackup":{"requestType":"GetBackupRequest","responseType":"Backup","options":{"(google.api.http).get":"/v1/{name=projects/*/locations/*/backups/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/locations/*/backups/*}"}},{"(google.api.method_signature)":"name"}]},"ListBackups":{"requestType":"ListBackupsRequest","responseType":"ListBackupsResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/locations/*}/backups","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/locations/*}/backups"}},{"(google.api.method_signature)":"parent"}]},"DeleteBackup":{"requestType":"DeleteBackupRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/locations/*/backups/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/locations/*/backups/*}"}},{"(google.api.method_signature)":"name"}]},"RestoreDatabase":{"requestType":"RestoreDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{parent=projects/*}/databases:restore","(google.api.http).body":"*","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"RestoreDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*}/databases:restore","body":"*"}},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"RestoreDatabaseMetadata"}}]},"CreateBackupSchedule":{"requestType":"CreateBackupScheduleRequest","responseType":"BackupSchedule","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*}/backupSchedules","(google.api.http).body":"backup_schedule","(google.api.method_signature)":"parent,backup_schedule"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*}/backupSchedules","body":"backup_schedule"}},{"(google.api.method_signature)":"parent,backup_schedule"}]},"GetBackupSchedule":{"requestType":"GetBackupScheduleRequest","responseType":"BackupSchedule","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/backupSchedules/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/backupSchedules/*}"}},{"(google.api.method_signature)":"name"}]},"ListBackupSchedules":{"requestType":"ListBackupSchedulesRequest","responseType":"ListBackupSchedulesResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*}/backupSchedules","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*}/backupSchedules"}},{"(google.api.method_signature)":"parent"}]},"UpdateBackupSchedule":{"requestType":"UpdateBackupScheduleRequest","responseType":"BackupSchedule","options":{"(google.api.http).patch":"/v1/{backup_schedule.name=projects/*/databases/*/backupSchedules/*}","(google.api.http).body":"backup_schedule","(google.api.method_signature)":"backup_schedule,update_mask"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{backup_schedule.name=projects/*/databases/*/backupSchedules/*}","body":"backup_schedule"}},{"(google.api.method_signature)":"backup_schedule,update_mask"}]},"DeleteBackupSchedule":{"requestType":"DeleteBackupScheduleRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*/backupSchedules/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*/backupSchedules/*}"}},{"(google.api.method_signature)":"name"}]}}},"ListDatabasesRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).child_type":"firestore.googleapis.com/Database"}}}},"CreateDatabaseRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).child_type":"firestore.googleapis.com/Database"}},"database":{"type":"Database","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"databaseId":{"type":"string","id":3,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"CreateDatabaseMetadata":{"fields":{}},"ListDatabasesResponse":{"fields":{"databases":{"rule":"repeated","type":"Database","id":1},"unreachable":{"rule":"repeated","type":"string","id":3}}},"GetDatabaseRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}}}},"UpdateDatabaseRequest":{"fields":{"database":{"type":"Database","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"google.protobuf.FieldMask","id":2}}},"UpdateDatabaseMetadata":{"fields":{}},"DeleteDatabaseRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"etag":{"type":"string","id":3}}},"DeleteDatabaseMetadata":{"fields":{}},"CreateBackupScheduleRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"backupSchedule":{"type":"BackupSchedule","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"GetBackupScheduleRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/BackupSchedule"}}}},"UpdateBackupScheduleRequest":{"fields":{"backupSchedule":{"type":"BackupSchedule","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"google.protobuf.FieldMask","id":2}}},"ListBackupSchedulesRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}}}},"ListBackupSchedulesResponse":{"fields":{"backupSchedules":{"rule":"repeated","type":"BackupSchedule","id":1}}},"DeleteBackupScheduleRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/BackupSchedule"}}}},"CreateIndexRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/CollectionGroup"}},"index":{"type":"Index","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"ListIndexesRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/CollectionGroup"}},"filter":{"type":"string","id":2},"pageSize":{"type":"int32","id":3},"pageToken":{"type":"string","id":4}}},"ListIndexesResponse":{"fields":{"indexes":{"rule":"repeated","type":"Index","id":1},"nextPageToken":{"type":"string","id":2}}},"GetIndexRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Index"}}}},"DeleteIndexRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Index"}}}},"UpdateFieldRequest":{"fields":{"field":{"type":"Field","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"google.protobuf.FieldMask","id":2}}},"GetFieldRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Field"}}}},"ListFieldsRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/CollectionGroup"}},"filter":{"type":"string","id":2},"pageSize":{"type":"int32","id":3},"pageToken":{"type":"string","id":4}}},"ListFieldsResponse":{"fields":{"fields":{"rule":"repeated","type":"Field","id":1},"nextPageToken":{"type":"string","id":2}}},"ExportDocumentsRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"collectionIds":{"rule":"repeated","type":"string","id":2},"outputUriPrefix":{"type":"string","id":3},"namespaceIds":{"rule":"repeated","type":"string","id":4},"snapshotTime":{"type":"google.protobuf.Timestamp","id":5}}},"ImportDocumentsRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"collectionIds":{"rule":"repeated","type":"string","id":2},"inputUriPrefix":{"type":"string","id":3},"namespaceIds":{"rule":"repeated","type":"string","id":4}}},"GetBackupRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}}}},"ListBackupsRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Location"}}}},"ListBackupsResponse":{"fields":{"backups":{"rule":"repeated","type":"Backup","id":1},"unreachable":{"rule":"repeated","type":"string","id":3}}},"DeleteBackupRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}}}},"RestoreDatabaseRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).child_type":"firestore.googleapis.com/Database"}},"databaseId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"backup":{"type":"string","id":3,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}}}},"IndexOperationMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"index":{"type":"string","id":3},"state":{"type":"OperationState","id":4},"progressDocuments":{"type":"Progress","id":5},"progressBytes":{"type":"Progress","id":6}}},"FieldOperationMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"field":{"type":"string","id":3},"indexConfigDeltas":{"rule":"repeated","type":"IndexConfigDelta","id":4},"state":{"type":"OperationState","id":5},"progressDocuments":{"type":"Progress","id":6},"progressBytes":{"type":"Progress","id":7},"ttlConfigDelta":{"type":"TtlConfigDelta","id":8}},"nested":{"IndexConfigDelta":{"fields":{"changeType":{"type":"ChangeType","id":1},"index":{"type":"Index","id":2}},"nested":{"ChangeType":{"values":{"CHANGE_TYPE_UNSPECIFIED":0,"ADD":1,"REMOVE":2}}}},"TtlConfigDelta":{"fields":{"changeType":{"type":"ChangeType","id":1}},"nested":{"ChangeType":{"values":{"CHANGE_TYPE_UNSPECIFIED":0,"ADD":1,"REMOVE":2}}}}}},"ExportDocumentsMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"operationState":{"type":"OperationState","id":3},"progressDocuments":{"type":"Progress","id":4},"progressBytes":{"type":"Progress","id":5},"collectionIds":{"rule":"repeated","type":"string","id":6},"outputUriPrefix":{"type":"string","id":7},"namespaceIds":{"rule":"repeated","type":"string","id":8},"snapshotTime":{"type":"google.protobuf.Timestamp","id":9}}},"ImportDocumentsMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"operationState":{"type":"OperationState","id":3},"progressDocuments":{"type":"Progress","id":4},"progressBytes":{"type":"Progress","id":5},"collectionIds":{"rule":"repeated","type":"string","id":6},"inputUriPrefix":{"type":"string","id":7},"namespaceIds":{"rule":"repeated","type":"string","id":8}}},"ExportDocumentsResponse":{"fields":{"outputUriPrefix":{"type":"string","id":1}}},"RestoreDatabaseMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"operationState":{"type":"OperationState","id":3},"database":{"type":"string","id":4,"options":{"(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"backup":{"type":"string","id":5,"options":{"(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}},"progressPercentage":{"type":"Progress","id":8}}},"Progress":{"fields":{"estimatedWork":{"type":"int64","id":1},"completedWork":{"type":"int64","id":2}}},"OperationState":{"values":{"OPERATION_STATE_UNSPECIFIED":0,"INITIALIZING":1,"PROCESSING":2,"CANCELLING":3,"FINALIZING":4,"SUCCESSFUL":5,"FAILED":6,"CANCELLED":7}},"BackupSchedule":{"options":{"(google.api.resource).type":"firestore.googleapis.com/BackupSchedule","(google.api.resource).pattern":"projects/{project}/databases/{database}/backupSchedules/{backup_schedule}"},"oneofs":{"recurrence":{"oneof":["dailyRecurrence","weeklyRecurrence"]}},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"createTime":{"type":"google.protobuf.Timestamp","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"updateTime":{"type":"google.protobuf.Timestamp","id":10,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"retention":{"type":"google.protobuf.Duration","id":6},"dailyRecurrence":{"type":"DailyRecurrence","id":7},"weeklyRecurrence":{"type":"WeeklyRecurrence","id":8}}},"DailyRecurrence":{"fields":{}},"WeeklyRecurrence":{"fields":{"day":{"type":"google.type.DayOfWeek","id":2}}},"LocationMetadata":{"fields":{}}}}}}}},"api":{"options":{"go_package":"google.golang.org/genproto/googleapis/api;api","java_multiple_files":true,"java_outer_classname":"LaunchStageProto","java_package":"com.google.api","objc_class_prefix":"GAPI","cc_enable_arenas":true},"nested":{"fieldBehavior":{"rule":"repeated","type":"google.api.FieldBehavior","id":1052,"extend":"google.protobuf.FieldOptions","options":{"packed":false}},"FieldBehavior":{"values":{"FIELD_BEHAVIOR_UNSPECIFIED":0,"OPTIONAL":1,"REQUIRED":2,"OUTPUT_ONLY":3,"INPUT_ONLY":4,"IMMUTABLE":5,"UNORDERED_LIST":6,"NON_EMPTY_DEFAULT":7,"IDENTIFIER":8}},"resourceReference":{"type":"google.api.ResourceReference","id":1055,"extend":"google.protobuf.FieldOptions"},"resourceDefinition":{"rule":"repeated","type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.FileOptions"},"resource":{"type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.MessageOptions"},"ResourceDescriptor":{"fields":{"type":{"type":"string","id":1},"pattern":{"rule":"repeated","type":"string","id":2},"nameField":{"type":"string","id":3},"history":{"type":"History","id":4},"plural":{"type":"string","id":5},"singular":{"type":"string","id":6},"style":{"rule":"repeated","type":"Style","id":10}},"nested":{"History":{"values":{"HISTORY_UNSPECIFIED":0,"ORIGINALLY_SINGLE_PATTERN":1,"FUTURE_MULTI_PATTERN":2}},"Style":{"values":{"STYLE_UNSPECIFIED":0,"DECLARATIVE_FRIENDLY":1}}}},"ResourceReference":{"fields":{"type":{"type":"string","id":1},"childType":{"type":"string","id":2}}},"http":{"type":"HttpRule","id":72295728,"extend":"google.protobuf.MethodOptions"},"Http":{"fields":{"rules":{"rule":"repeated","type":"HttpRule","id":1},"fullyDecodeReservedExpansion":{"type":"bool","id":2}}},"HttpRule":{"oneofs":{"pattern":{"oneof":["get","put","post","delete","patch","custom"]}},"fields":{"selector":{"type":"string","id":1},"get":{"type":"string","id":2},"put":{"type":"string","id":3},"post":{"type":"string","id":4},"delete":{"type":"string","id":5},"patch":{"type":"string","id":6},"custom":{"type":"CustomHttpPattern","id":8},"body":{"type":"string","id":7},"responseBody":{"type":"string","id":12},"additionalBindings":{"rule":"repeated","type":"HttpRule","id":11}}},"CustomHttpPattern":{"fields":{"kind":{"type":"string","id":1},"path":{"type":"string","id":2}}},"methodSignature":{"rule":"repeated","type":"string","id":1051,"extend":"google.protobuf.MethodOptions"},"defaultHost":{"type":"string","id":1049,"extend":"google.protobuf.ServiceOptions"},"oauthScopes":{"type":"string","id":1050,"extend":"google.protobuf.ServiceOptions"},"apiVersion":{"type":"string","id":525000001,"extend":"google.protobuf.ServiceOptions"},"CommonLanguageSettings":{"fields":{"referenceDocsUri":{"type":"string","id":1,"options":{"deprecated":true}},"destinations":{"rule":"repeated","type":"ClientLibraryDestination","id":2}}},"ClientLibrarySettings":{"fields":{"version":{"type":"string","id":1},"launchStage":{"type":"LaunchStage","id":2},"restNumericEnums":{"type":"bool","id":3},"javaSettings":{"type":"JavaSettings","id":21},"cppSettings":{"type":"CppSettings","id":22},"phpSettings":{"type":"PhpSettings","id":23},"pythonSettings":{"type":"PythonSettings","id":24},"nodeSettings":{"type":"NodeSettings","id":25},"dotnetSettings":{"type":"DotnetSettings","id":26},"rubySettings":{"type":"RubySettings","id":27},"goSettings":{"type":"GoSettings","id":28}}},"Publishing":{"fields":{"methodSettings":{"rule":"repeated","type":"MethodSettings","id":2},"newIssueUri":{"type":"string","id":101},"documentationUri":{"type":"string","id":102},"apiShortName":{"type":"string","id":103},"githubLabel":{"type":"string","id":104},"codeownerGithubTeams":{"rule":"repeated","type":"string","id":105},"docTagPrefix":{"type":"string","id":106},"organization":{"type":"ClientLibraryOrganization","id":107},"librarySettings":{"rule":"repeated","type":"ClientLibrarySettings","id":109},"protoReferenceDocumentationUri":{"type":"string","id":110},"restReferenceDocumentationUri":{"type":"string","id":111}}},"JavaSettings":{"fields":{"libraryPackage":{"type":"string","id":1},"serviceClassNames":{"keyType":"string","type":"string","id":2},"common":{"type":"CommonLanguageSettings","id":3}}},"CppSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PhpSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PythonSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"NodeSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"DotnetSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1},"renamedServices":{"keyType":"string","type":"string","id":2},"renamedResources":{"keyType":"string","type":"string","id":3},"ignoredResources":{"rule":"repeated","type":"string","id":4},"forcedNamespaceAliases":{"rule":"repeated","type":"string","id":5},"handwrittenSignatures":{"rule":"repeated","type":"string","id":6}}},"RubySettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"GoSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"MethodSettings":{"fields":{"selector":{"type":"string","id":1},"longRunning":{"type":"LongRunning","id":2},"autoPopulatedFields":{"rule":"repeated","type":"string","id":3}},"nested":{"LongRunning":{"fields":{"initialPollDelay":{"type":"google.protobuf.Duration","id":1},"pollDelayMultiplier":{"type":"float","id":2},"maxPollDelay":{"type":"google.protobuf.Duration","id":3},"totalPollTimeout":{"type":"google.protobuf.Duration","id":4}}}}},"ClientLibraryOrganization":{"values":{"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0,"CLOUD":1,"ADS":2,"PHOTOS":3,"STREET_VIEW":4,"SHOPPING":5,"GEO":6,"GENERATIVE_AI":7}},"ClientLibraryDestination":{"values":{"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":0,"GITHUB":10,"PACKAGE_MANAGER":20}},"LaunchStage":{"values":{"LAUNCH_STAGE_UNSPECIFIED":0,"UNIMPLEMENTED":6,"PRELAUNCH":7,"EARLY_ACCESS":1,"ALPHA":2,"BETA":3,"GA":4,"DEPRECATED":5}}}},"protobuf":{"options":{"go_package":"google.golang.org/protobuf/types/descriptorpb","java_package":"com.google.protobuf","java_outer_classname":"DescriptorProtos","csharp_namespace":"Google.Protobuf.Reflection","objc_class_prefix":"GPB","cc_enable_arenas":true,"optimize_for":"SPEED"},"nested":{"FileDescriptorSet":{"fields":{"file":{"rule":"repeated","type":"FileDescriptorProto","id":1}}},"Edition":{"values":{"EDITION_UNKNOWN":0,"EDITION_PROTO2":998,"EDITION_PROTO3":999,"EDITION_2023":1e3,"EDITION_2024":1001,"EDITION_1_TEST_ONLY":1,"EDITION_2_TEST_ONLY":2,"EDITION_99997_TEST_ONLY":99997,"EDITION_99998_TEST_ONLY":99998,"EDITION_99999_TEST_ONLY":99999,"EDITION_MAX":2147483647}},"FileDescriptorProto":{"fields":{"name":{"type":"string","id":1},"package":{"type":"string","id":2},"dependency":{"rule":"repeated","type":"string","id":3},"publicDependency":{"rule":"repeated","type":"int32","id":10,"options":{"packed":false}},"weakDependency":{"rule":"repeated","type":"int32","id":11,"options":{"packed":false}},"messageType":{"rule":"repeated","type":"DescriptorProto","id":4},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":5},"service":{"rule":"repeated","type":"ServiceDescriptorProto","id":6},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":7},"options":{"type":"FileOptions","id":8},"sourceCodeInfo":{"type":"SourceCodeInfo","id":9},"syntax":{"type":"string","id":12},"edition":{"type":"Edition","id":14}}},"DescriptorProto":{"fields":{"name":{"type":"string","id":1},"field":{"rule":"repeated","type":"FieldDescriptorProto","id":2},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":6},"nestedType":{"rule":"repeated","type":"DescriptorProto","id":3},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":4},"extensionRange":{"rule":"repeated","type":"ExtensionRange","id":5},"oneofDecl":{"rule":"repeated","type":"OneofDescriptorProto","id":8},"options":{"type":"MessageOptions","id":7},"reservedRange":{"rule":"repeated","type":"ReservedRange","id":9},"reservedName":{"rule":"repeated","type":"string","id":10}},"nested":{"ExtensionRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2},"options":{"type":"ExtensionRangeOptions","id":3}}},"ReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"ExtensionRangeOptions":{"fields":{"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999},"declaration":{"rule":"repeated","type":"Declaration","id":2,"options":{"retention":"RETENTION_SOURCE"}},"features":{"type":"FeatureSet","id":50},"verification":{"type":"VerificationState","id":3,"options":{"default":"UNVERIFIED","retention":"RETENTION_SOURCE"}}},"extensions":[[1e3,536870911]],"nested":{"Declaration":{"fields":{"number":{"type":"int32","id":1},"fullName":{"type":"string","id":2},"type":{"type":"string","id":3},"reserved":{"type":"bool","id":5},"repeated":{"type":"bool","id":6}},"reserved":[[4,4]]},"VerificationState":{"values":{"DECLARATION":0,"UNVERIFIED":1}}}},"FieldDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":3},"label":{"type":"Label","id":4},"type":{"type":"Type","id":5},"typeName":{"type":"string","id":6},"extendee":{"type":"string","id":2},"defaultValue":{"type":"string","id":7},"oneofIndex":{"type":"int32","id":9},"jsonName":{"type":"string","id":10},"options":{"type":"FieldOptions","id":8},"proto3Optional":{"type":"bool","id":17}},"nested":{"Type":{"values":{"TYPE_DOUBLE":1,"TYPE_FLOAT":2,"TYPE_INT64":3,"TYPE_UINT64":4,"TYPE_INT32":5,"TYPE_FIXED64":6,"TYPE_FIXED32":7,"TYPE_BOOL":8,"TYPE_STRING":9,"TYPE_GROUP":10,"TYPE_MESSAGE":11,"TYPE_BYTES":12,"TYPE_UINT32":13,"TYPE_ENUM":14,"TYPE_SFIXED32":15,"TYPE_SFIXED64":16,"TYPE_SINT32":17,"TYPE_SINT64":18}},"Label":{"values":{"LABEL_OPTIONAL":1,"LABEL_REPEATED":3,"LABEL_REQUIRED":2}}}},"OneofDescriptorProto":{"fields":{"name":{"type":"string","id":1},"options":{"type":"OneofOptions","id":2}}},"EnumDescriptorProto":{"fields":{"name":{"type":"string","id":1},"value":{"rule":"repeated","type":"EnumValueDescriptorProto","id":2},"options":{"type":"EnumOptions","id":3},"reservedRange":{"rule":"repeated","type":"EnumReservedRange","id":4},"reservedName":{"rule":"repeated","type":"string","id":5}},"nested":{"EnumReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"EnumValueDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":2},"options":{"type":"EnumValueOptions","id":3}}},"ServiceDescriptorProto":{"fields":{"name":{"type":"string","id":1},"method":{"rule":"repeated","type":"MethodDescriptorProto","id":2},"options":{"type":"ServiceOptions","id":3}}},"MethodDescriptorProto":{"fields":{"name":{"type":"string","id":1},"inputType":{"type":"string","id":2},"outputType":{"type":"string","id":3},"options":{"type":"MethodOptions","id":4},"clientStreaming":{"type":"bool","id":5,"options":{"default":false}},"serverStreaming":{"type":"bool","id":6,"options":{"default":false}}}},"FileOptions":{"fields":{"javaPackage":{"type":"string","id":1},"javaOuterClassname":{"type":"string","id":8},"javaMultipleFiles":{"type":"bool","id":10,"options":{"default":false}},"javaGenerateEqualsAndHash":{"type":"bool","id":20,"options":{"deprecated":true}},"javaStringCheckUtf8":{"type":"bool","id":27,"options":{"default":false}},"optimizeFor":{"type":"OptimizeMode","id":9,"options":{"default":"SPEED"}},"goPackage":{"type":"string","id":11},"ccGenericServices":{"type":"bool","id":16,"options":{"default":false}},"javaGenericServices":{"type":"bool","id":17,"options":{"default":false}},"pyGenericServices":{"type":"bool","id":18,"options":{"default":false}},"deprecated":{"type":"bool","id":23,"options":{"default":false}},"ccEnableArenas":{"type":"bool","id":31,"options":{"default":true}},"objcClassPrefix":{"type":"string","id":36},"csharpNamespace":{"type":"string","id":37},"swiftPrefix":{"type":"string","id":39},"phpClassPrefix":{"type":"string","id":40},"phpNamespace":{"type":"string","id":41},"phpMetadataNamespace":{"type":"string","id":44},"rubyPackage":{"type":"string","id":45},"features":{"type":"FeatureSet","id":50},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[42,42],[38,38]],"nested":{"OptimizeMode":{"values":{"SPEED":1,"CODE_SIZE":2,"LITE_RUNTIME":3}}}},"MessageOptions":{"fields":{"messageSetWireFormat":{"type":"bool","id":1,"options":{"default":false}},"noStandardDescriptorAccessor":{"type":"bool","id":2,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"mapEntry":{"type":"bool","id":7},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":11,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":12},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[5,5],[6,6],[8,8],[9,9]]},"FieldOptions":{"fields":{"ctype":{"type":"CType","id":1,"options":{"default":"STRING"}},"packed":{"type":"bool","id":2},"jstype":{"type":"JSType","id":6,"options":{"default":"JS_NORMAL"}},"lazy":{"type":"bool","id":5,"options":{"default":false}},"unverifiedLazy":{"type":"bool","id":15,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"weak":{"type":"bool","id":10,"options":{"default":false}},"debugRedact":{"type":"bool","id":16,"options":{"default":false}},"retention":{"type":"OptionRetention","id":17},"targets":{"rule":"repeated","type":"OptionTargetType","id":19,"options":{"packed":false}},"editionDefaults":{"rule":"repeated","type":"EditionDefault","id":20},"features":{"type":"FeatureSet","id":21},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[18,18]],"nested":{"CType":{"values":{"STRING":0,"CORD":1,"STRING_PIECE":2}},"JSType":{"values":{"JS_NORMAL":0,"JS_STRING":1,"JS_NUMBER":2}},"OptionRetention":{"values":{"RETENTION_UNKNOWN":0,"RETENTION_RUNTIME":1,"RETENTION_SOURCE":2}},"OptionTargetType":{"values":{"TARGET_TYPE_UNKNOWN":0,"TARGET_TYPE_FILE":1,"TARGET_TYPE_EXTENSION_RANGE":2,"TARGET_TYPE_MESSAGE":3,"TARGET_TYPE_FIELD":4,"TARGET_TYPE_ONEOF":5,"TARGET_TYPE_ENUM":6,"TARGET_TYPE_ENUM_ENTRY":7,"TARGET_TYPE_SERVICE":8,"TARGET_TYPE_METHOD":9}},"EditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"value":{"type":"string","id":2}}}}},"OneofOptions":{"fields":{"features":{"type":"FeatureSet","id":1},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"EnumOptions":{"fields":{"allowAlias":{"type":"bool","id":2},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":6,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":7},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[5,5]]},"EnumValueOptions":{"fields":{"deprecated":{"type":"bool","id":1,"options":{"default":false}},"features":{"type":"FeatureSet","id":2},"debugRedact":{"type":"bool","id":3,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"ServiceOptions":{"fields":{"features":{"type":"FeatureSet","id":34},"deprecated":{"type":"bool","id":33,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"MethodOptions":{"fields":{"deprecated":{"type":"bool","id":33,"options":{"default":false}},"idempotencyLevel":{"type":"IdempotencyLevel","id":34,"options":{"default":"IDEMPOTENCY_UNKNOWN"}},"features":{"type":"FeatureSet","id":35},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"nested":{"IdempotencyLevel":{"values":{"IDEMPOTENCY_UNKNOWN":0,"NO_SIDE_EFFECTS":1,"IDEMPOTENT":2}}}},"UninterpretedOption":{"fields":{"name":{"rule":"repeated","type":"NamePart","id":2},"identifierValue":{"type":"string","id":3},"positiveIntValue":{"type":"uint64","id":4},"negativeIntValue":{"type":"int64","id":5},"doubleValue":{"type":"double","id":6},"stringValue":{"type":"bytes","id":7},"aggregateValue":{"type":"string","id":8}},"nested":{"NamePart":{"fields":{"namePart":{"rule":"required","type":"string","id":1},"isExtension":{"rule":"required","type":"bool","id":2}}}}},"FeatureSet":{"fields":{"fieldPresence":{"type":"FieldPresence","id":1,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_2023","edition_defaults.value":"EXPLICIT"}},"enumType":{"type":"EnumType","id":2,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"OPEN"}},"repeatedFieldEncoding":{"type":"RepeatedFieldEncoding","id":3,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"PACKED"}},"utf8Validation":{"type":"Utf8Validation","id":4,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"VERIFY"}},"messageEncoding":{"type":"MessageEncoding","id":5,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO2","edition_defaults.value":"LENGTH_PREFIXED"}},"jsonFormat":{"type":"JsonFormat","id":6,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"ALLOW"}}},"extensions":[[1e3,1e3],[1001,1001],[1002,1002],[9990,9990],[9995,9999],[1e4,1e4]],"reserved":[[999,999]],"nested":{"FieldPresence":{"values":{"FIELD_PRESENCE_UNKNOWN":0,"EXPLICIT":1,"IMPLICIT":2,"LEGACY_REQUIRED":3}},"EnumType":{"values":{"ENUM_TYPE_UNKNOWN":0,"OPEN":1,"CLOSED":2}},"RepeatedFieldEncoding":{"values":{"REPEATED_FIELD_ENCODING_UNKNOWN":0,"PACKED":1,"EXPANDED":2}},"Utf8Validation":{"values":{"UTF8_VALIDATION_UNKNOWN":0,"VERIFY":2,"NONE":3}},"MessageEncoding":{"values":{"MESSAGE_ENCODING_UNKNOWN":0,"LENGTH_PREFIXED":1,"DELIMITED":2}},"JsonFormat":{"values":{"JSON_FORMAT_UNKNOWN":0,"ALLOW":1,"LEGACY_BEST_EFFORT":2}}}},"FeatureSetDefaults":{"fields":{"defaults":{"rule":"repeated","type":"FeatureSetEditionDefault","id":1},"minimumEdition":{"type":"Edition","id":4},"maximumEdition":{"type":"Edition","id":5}},"nested":{"FeatureSetEditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"features":{"type":"FeatureSet","id":2}}}}},"SourceCodeInfo":{"fields":{"location":{"rule":"repeated","type":"Location","id":1}},"nested":{"Location":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"span":{"rule":"repeated","type":"int32","id":2},"leadingComments":{"type":"string","id":3},"trailingComments":{"type":"string","id":4},"leadingDetachedComments":{"rule":"repeated","type":"string","id":6}}}}},"GeneratedCodeInfo":{"fields":{"annotation":{"rule":"repeated","type":"Annotation","id":1}},"nested":{"Annotation":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"sourceFile":{"type":"string","id":2},"begin":{"type":"int32","id":3},"end":{"type":"int32","id":4},"semantic":{"type":"Semantic","id":5}},"nested":{"Semantic":{"values":{"NONE":0,"SET":1,"ALIAS":2}}}}}},"Timestamp":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"Duration":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"Any":{"fields":{"type_url":{"type":"string","id":1},"value":{"type":"bytes","id":2}}},"Empty":{"fields":{}},"FieldMask":{"fields":{"paths":{"rule":"repeated","type":"string","id":1}}},"Struct":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Value":{"oneofs":{"kind":{"oneof":["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},"fields":{"nullValue":{"type":"NullValue","id":1},"numberValue":{"type":"double","id":2},"stringValue":{"type":"string","id":3},"boolValue":{"type":"bool","id":4},"structValue":{"type":"Struct","id":5},"listValue":{"type":"ListValue","id":6}}},"NullValue":{"values":{"NULL_VALUE":0}},"ListValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"DoubleValue":{"fields":{"value":{"type":"double","id":1}}},"FloatValue":{"fields":{"value":{"type":"float","id":1}}},"Int64Value":{"fields":{"value":{"type":"int64","id":1}}},"UInt64Value":{"fields":{"value":{"type":"uint64","id":1}}},"Int32Value":{"fields":{"value":{"type":"int32","id":1}}},"UInt32Value":{"fields":{"value":{"type":"uint32","id":1}}},"BoolValue":{"fields":{"value":{"type":"bool","id":1}}},"StringValue":{"fields":{"value":{"type":"string","id":1}}},"BytesValue":{"fields":{"value":{"type":"bytes","id":1}}}}},"type":{"options":{"go_package":"google.golang.org/genproto/googleapis/type/latlng;latlng","java_multiple_files":true,"java_outer_classname":"LatLngProto","java_package":"com.google.type","objc_class_prefix":"GTP","cc_enable_arenas":true},"nested":{"DayOfWeek":{"values":{"DAY_OF_WEEK_UNSPECIFIED":0,"MONDAY":1,"TUESDAY":2,"WEDNESDAY":3,"THURSDAY":4,"FRIDAY":5,"SATURDAY":6,"SUNDAY":7}},"LatLng":{"fields":{"latitude":{"type":"double","id":1},"longitude":{"type":"double","id":2}}}}},"longrunning":{"options":{"cc_enable_arenas":true,"csharp_namespace":"Google.LongRunning","go_package":"cloud.google.com/go/longrunning/autogen/longrunningpb;longrunningpb","java_multiple_files":true,"java_outer_classname":"OperationsProto","java_package":"com.google.longrunning","php_namespace":"Google\\LongRunning"},"nested":{"operationInfo":{"type":"google.longrunning.OperationInfo","id":1049,"extend":"google.protobuf.MethodOptions"},"Operations":{"options":{"(google.api.default_host)":"longrunning.googleapis.com"},"methods":{"ListOperations":{"requestType":"ListOperationsRequest","responseType":"ListOperationsResponse","options":{"(google.api.http).get":"/v1/{name=operations}","(google.api.method_signature)":"name,filter"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=operations}"}},{"(google.api.method_signature)":"name,filter"}]},"GetOperation":{"requestType":"GetOperationRequest","responseType":"Operation","options":{"(google.api.http).get":"/v1/{name=operations/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=operations/**}"}},{"(google.api.method_signature)":"name"}]},"DeleteOperation":{"requestType":"DeleteOperationRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=operations/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=operations/**}"}},{"(google.api.method_signature)":"name"}]},"CancelOperation":{"requestType":"CancelOperationRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).post":"/v1/{name=operations/**}:cancel","(google.api.http).body":"*","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{name=operations/**}:cancel","body":"*"}},{"(google.api.method_signature)":"name"}]},"WaitOperation":{"requestType":"WaitOperationRequest","responseType":"Operation"}}},"Operation":{"oneofs":{"result":{"oneof":["error","response"]}},"fields":{"name":{"type":"string","id":1},"metadata":{"type":"google.protobuf.Any","id":2},"done":{"type":"bool","id":3},"error":{"type":"google.rpc.Status","id":4},"response":{"type":"google.protobuf.Any","id":5}}},"GetOperationRequest":{"fields":{"name":{"type":"string","id":1}}},"ListOperationsRequest":{"fields":{"name":{"type":"string","id":4},"filter":{"type":"string","id":1},"pageSize":{"type":"int32","id":2},"pageToken":{"type":"string","id":3}}},"ListOperationsResponse":{"fields":{"operations":{"rule":"repeated","type":"Operation","id":1},"nextPageToken":{"type":"string","id":2}}},"CancelOperationRequest":{"fields":{"name":{"type":"string","id":1}}},"DeleteOperationRequest":{"fields":{"name":{"type":"string","id":1}}},"WaitOperationRequest":{"fields":{"name":{"type":"string","id":1},"timeout":{"type":"google.protobuf.Duration","id":2}}},"OperationInfo":{"fields":{"responseType":{"type":"string","id":1},"metadataType":{"type":"string","id":2}}}}},"rpc":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/rpc/status;status","java_multiple_files":true,"java_outer_classname":"StatusProto","java_package":"com.google.rpc","objc_class_prefix":"RPC"},"nested":{"Status":{"fields":{"code":{"type":"int32","id":1},"message":{"type":"string","id":2},"details":{"rule":"repeated","type":"google.protobuf.Any","id":3}}}}}}}}} | ||
{"nested":{"google":{"nested":{"firestore":{"nested":{"admin":{"nested":{"v1":{"options":{"csharp_namespace":"Google.Cloud.Firestore.Admin.V1","go_package":"cloud.google.com/go/firestore/apiv1/admin/adminpb;adminpb","java_multiple_files":true,"java_outer_classname":"LocationProto","java_package":"com.google.firestore.admin.v1","objc_class_prefix":"GCFS","php_namespace":"Google\\Cloud\\Firestore\\Admin\\V1","ruby_package":"Google::Cloud::Firestore::Admin::V1","(google.api.resource_definition).type":"firestore.googleapis.com/CollectionGroup","(google.api.resource_definition).pattern":"projects/{project}/databases/{database}/collectionGroups/{collection}"},"nested":{"Backup":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Backup","(google.api.resource).pattern":"projects/{project}/locations/{location}/backups/{backup}"},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"database":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"databaseUid":{"type":"string","id":7,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"snapshotTime":{"type":"google.protobuf.Timestamp","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"expireTime":{"type":"google.protobuf.Timestamp","id":4,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"stats":{"type":"Stats","id":6,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"state":{"type":"State","id":8,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}}},"nested":{"Stats":{"fields":{"sizeBytes":{"type":"int64","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"documentCount":{"type":"int64","id":2,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"indexCount":{"type":"int64","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}}}},"State":{"values":{"STATE_UNSPECIFIED":0,"CREATING":1,"READY":2,"NOT_AVAILABLE":3}}}},"Database":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Database","(google.api.resource).pattern":"projects/{project}/databases/{database}","(google.api.resource).style":"DECLARATIVE_FRIENDLY"},"fields":{"name":{"type":"string","id":1},"uid":{"type":"string","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"createTime":{"type":"google.protobuf.Timestamp","id":5,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"updateTime":{"type":"google.protobuf.Timestamp","id":6,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"locationId":{"type":"string","id":9},"type":{"type":"DatabaseType","id":10},"concurrencyMode":{"type":"ConcurrencyMode","id":15},"versionRetentionPeriod":{"type":"google.protobuf.Duration","id":17,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"earliestVersionTime":{"type":"google.protobuf.Timestamp","id":18,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"pointInTimeRecoveryEnablement":{"type":"PointInTimeRecoveryEnablement","id":21},"appEngineIntegrationMode":{"type":"AppEngineIntegrationMode","id":19},"keyPrefix":{"type":"string","id":20,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"deleteProtectionState":{"type":"DeleteProtectionState","id":22},"etag":{"type":"string","id":99}},"nested":{"DatabaseType":{"values":{"DATABASE_TYPE_UNSPECIFIED":0,"FIRESTORE_NATIVE":1,"DATASTORE_MODE":2}},"ConcurrencyMode":{"values":{"CONCURRENCY_MODE_UNSPECIFIED":0,"OPTIMISTIC":1,"PESSIMISTIC":2,"OPTIMISTIC_WITH_ENTITY_GROUPS":3}},"PointInTimeRecoveryEnablement":{"values":{"POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED":0,"POINT_IN_TIME_RECOVERY_ENABLED":1,"POINT_IN_TIME_RECOVERY_DISABLED":2}},"AppEngineIntegrationMode":{"values":{"APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED":0,"ENABLED":1,"DISABLED":2}},"DeleteProtectionState":{"values":{"DELETE_PROTECTION_STATE_UNSPECIFIED":0,"DELETE_PROTECTION_DISABLED":1,"DELETE_PROTECTION_ENABLED":2}}}},"Field":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Field","(google.api.resource).pattern":"projects/{project}/databases/{database}/collectionGroups/{collection}/fields/{field}"},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"indexConfig":{"type":"IndexConfig","id":2},"ttlConfig":{"type":"TtlConfig","id":3}},"nested":{"IndexConfig":{"fields":{"indexes":{"rule":"repeated","type":"Index","id":1},"usesAncestorConfig":{"type":"bool","id":2},"ancestorField":{"type":"string","id":3},"reverting":{"type":"bool","id":4}}},"TtlConfig":{"fields":{"state":{"type":"State","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}}},"nested":{"State":{"values":{"STATE_UNSPECIFIED":0,"CREATING":1,"ACTIVE":2,"NEEDS_REPAIR":3}}}}}},"Index":{"options":{"(google.api.resource).type":"firestore.googleapis.com/Index","(google.api.resource).pattern":"projects/{project}/databases/{database}/collectionGroups/{collection}/indexes/{index}"},"fields":{"name":{"type":"string","id":1},"queryScope":{"type":"QueryScope","id":2},"apiScope":{"type":"ApiScope","id":5},"fields":{"rule":"repeated","type":"IndexField","id":3},"state":{"type":"State","id":4}},"nested":{"QueryScope":{"values":{"QUERY_SCOPE_UNSPECIFIED":0,"COLLECTION":1,"COLLECTION_GROUP":2,"COLLECTION_RECURSIVE":3}},"ApiScope":{"values":{"ANY_API":0,"DATASTORE_MODE_API":1}},"IndexField":{"oneofs":{"valueMode":{"oneof":["order","arrayConfig","vectorConfig"]}},"fields":{"fieldPath":{"type":"string","id":1},"order":{"type":"Order","id":2},"arrayConfig":{"type":"ArrayConfig","id":3},"vectorConfig":{"type":"VectorConfig","id":4}},"nested":{"Order":{"values":{"ORDER_UNSPECIFIED":0,"ASCENDING":1,"DESCENDING":2}},"ArrayConfig":{"values":{"ARRAY_CONFIG_UNSPECIFIED":0,"CONTAINS":1}},"VectorConfig":{"oneofs":{"type":{"oneof":["flat"]}},"fields":{"dimension":{"type":"int32","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"flat":{"type":"FlatIndex","id":2}},"nested":{"FlatIndex":{"fields":{}}}}}},"State":{"values":{"STATE_UNSPECIFIED":0,"CREATING":1,"READY":2,"NEEDS_REPAIR":3}}}},"FirestoreAdmin":{"options":{"(google.api.default_host)":"firestore.googleapis.com","(google.api.oauth_scopes)":"https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastore"},"methods":{"CreateIndex":{"requestType":"CreateIndexRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes","(google.api.http).body":"index","(google.api.method_signature)":"parent,index","(google.longrunning.operation_info).response_type":"Index","(google.longrunning.operation_info).metadata_type":"IndexOperationMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes","body":"index"}},{"(google.api.method_signature)":"parent,index"},{"(google.longrunning.operation_info)":{"response_type":"Index","metadata_type":"IndexOperationMetadata"}}]},"ListIndexes":{"requestType":"ListIndexesRequest","responseType":"ListIndexesResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes"}},{"(google.api.method_signature)":"parent"}]},"GetIndex":{"requestType":"GetIndexRequest","responseType":"Index","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}"}},{"(google.api.method_signature)":"name"}]},"DeleteIndex":{"requestType":"DeleteIndexRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}"}},{"(google.api.method_signature)":"name"}]},"GetField":{"requestType":"GetFieldRequest","responseType":"Field","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/collectionGroups/*/fields/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/collectionGroups/*/fields/*}"}},{"(google.api.method_signature)":"name"}]},"UpdateField":{"requestType":"UpdateFieldRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).patch":"/v1/{field.name=projects/*/databases/*/collectionGroups/*/fields/*}","(google.api.http).body":"field","(google.api.method_signature)":"field","(google.longrunning.operation_info).response_type":"Field","(google.longrunning.operation_info).metadata_type":"FieldOperationMetadata"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{field.name=projects/*/databases/*/collectionGroups/*/fields/*}","body":"field"}},{"(google.api.method_signature)":"field"},{"(google.longrunning.operation_info)":{"response_type":"Field","metadata_type":"FieldOperationMetadata"}}]},"ListFields":{"requestType":"ListFieldsRequest","responseType":"ListFieldsResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/fields","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*/collectionGroups/*}/fields"}},{"(google.api.method_signature)":"parent"}]},"ExportDocuments":{"requestType":"ExportDocumentsRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{name=projects/*/databases/*}:exportDocuments","(google.api.http).body":"*","(google.api.method_signature)":"name","(google.longrunning.operation_info).response_type":"ExportDocumentsResponse","(google.longrunning.operation_info).metadata_type":"ExportDocumentsMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{name=projects/*/databases/*}:exportDocuments","body":"*"}},{"(google.api.method_signature)":"name"},{"(google.longrunning.operation_info)":{"response_type":"ExportDocumentsResponse","metadata_type":"ExportDocumentsMetadata"}}]},"ImportDocuments":{"requestType":"ImportDocumentsRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{name=projects/*/databases/*}:importDocuments","(google.api.http).body":"*","(google.api.method_signature)":"name","(google.longrunning.operation_info).response_type":"google.protobuf.Empty","(google.longrunning.operation_info).metadata_type":"ImportDocumentsMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{name=projects/*/databases/*}:importDocuments","body":"*"}},{"(google.api.method_signature)":"name"},{"(google.longrunning.operation_info)":{"response_type":"google.protobuf.Empty","metadata_type":"ImportDocumentsMetadata"}}]},"CreateDatabase":{"requestType":"CreateDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{parent=projects/*}/databases","(google.api.http).body":"database","(google.api.method_signature)":"parent,database,database_id","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"CreateDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*}/databases","body":"database"}},{"(google.api.method_signature)":"parent,database,database_id"},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"CreateDatabaseMetadata"}}]},"GetDatabase":{"requestType":"GetDatabaseRequest","responseType":"Database","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*}"}},{"(google.api.method_signature)":"name"}]},"ListDatabases":{"requestType":"ListDatabasesRequest","responseType":"ListDatabasesResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*}/databases","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*}/databases"}},{"(google.api.method_signature)":"parent"}]},"UpdateDatabase":{"requestType":"UpdateDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).patch":"/v1/{database.name=projects/*/databases/*}","(google.api.http).body":"database","(google.api.method_signature)":"database,update_mask","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"UpdateDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{database.name=projects/*/databases/*}","body":"database"}},{"(google.api.method_signature)":"database,update_mask"},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"UpdateDatabaseMetadata"}}]},"DeleteDatabase":{"requestType":"DeleteDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*}","(google.api.method_signature)":"name","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"DeleteDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*}"}},{"(google.api.method_signature)":"name"},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"DeleteDatabaseMetadata"}}]},"GetBackup":{"requestType":"GetBackupRequest","responseType":"Backup","options":{"(google.api.http).get":"/v1/{name=projects/*/locations/*/backups/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/locations/*/backups/*}"}},{"(google.api.method_signature)":"name"}]},"ListBackups":{"requestType":"ListBackupsRequest","responseType":"ListBackupsResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/locations/*}/backups","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/locations/*}/backups"}},{"(google.api.method_signature)":"parent"}]},"DeleteBackup":{"requestType":"DeleteBackupRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/locations/*/backups/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/locations/*/backups/*}"}},{"(google.api.method_signature)":"name"}]},"RestoreDatabase":{"requestType":"RestoreDatabaseRequest","responseType":"google.longrunning.Operation","options":{"(google.api.http).post":"/v1/{parent=projects/*}/databases:restore","(google.api.http).body":"*","(google.longrunning.operation_info).response_type":"Database","(google.longrunning.operation_info).metadata_type":"RestoreDatabaseMetadata"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*}/databases:restore","body":"*"}},{"(google.longrunning.operation_info)":{"response_type":"Database","metadata_type":"RestoreDatabaseMetadata"}}]},"CreateBackupSchedule":{"requestType":"CreateBackupScheduleRequest","responseType":"BackupSchedule","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*}/backupSchedules","(google.api.http).body":"backup_schedule","(google.api.method_signature)":"parent,backup_schedule"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*}/backupSchedules","body":"backup_schedule"}},{"(google.api.method_signature)":"parent,backup_schedule"}]},"GetBackupSchedule":{"requestType":"GetBackupScheduleRequest","responseType":"BackupSchedule","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/backupSchedules/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/backupSchedules/*}"}},{"(google.api.method_signature)":"name"}]},"ListBackupSchedules":{"requestType":"ListBackupSchedulesRequest","responseType":"ListBackupSchedulesResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*}/backupSchedules","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*}/backupSchedules"}},{"(google.api.method_signature)":"parent"}]},"UpdateBackupSchedule":{"requestType":"UpdateBackupScheduleRequest","responseType":"BackupSchedule","options":{"(google.api.http).patch":"/v1/{backup_schedule.name=projects/*/databases/*/backupSchedules/*}","(google.api.http).body":"backup_schedule","(google.api.method_signature)":"backup_schedule,update_mask"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{backup_schedule.name=projects/*/databases/*/backupSchedules/*}","body":"backup_schedule"}},{"(google.api.method_signature)":"backup_schedule,update_mask"}]},"DeleteBackupSchedule":{"requestType":"DeleteBackupScheduleRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*/backupSchedules/*}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*/backupSchedules/*}"}},{"(google.api.method_signature)":"name"}]}}},"ListDatabasesRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).child_type":"firestore.googleapis.com/Database"}}}},"CreateDatabaseRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).child_type":"firestore.googleapis.com/Database"}},"database":{"type":"Database","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"databaseId":{"type":"string","id":3,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"CreateDatabaseMetadata":{"fields":{}},"ListDatabasesResponse":{"fields":{"databases":{"rule":"repeated","type":"Database","id":1},"unreachable":{"rule":"repeated","type":"string","id":3}}},"GetDatabaseRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}}}},"UpdateDatabaseRequest":{"fields":{"database":{"type":"Database","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"google.protobuf.FieldMask","id":2}}},"UpdateDatabaseMetadata":{"fields":{}},"DeleteDatabaseRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"etag":{"type":"string","id":3}}},"DeleteDatabaseMetadata":{"fields":{}},"CreateBackupScheduleRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"backupSchedule":{"type":"BackupSchedule","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"GetBackupScheduleRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/BackupSchedule"}}}},"UpdateBackupScheduleRequest":{"fields":{"backupSchedule":{"type":"BackupSchedule","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"google.protobuf.FieldMask","id":2}}},"ListBackupSchedulesRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}}}},"ListBackupSchedulesResponse":{"fields":{"backupSchedules":{"rule":"repeated","type":"BackupSchedule","id":1}}},"DeleteBackupScheduleRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/BackupSchedule"}}}},"CreateIndexRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/CollectionGroup"}},"index":{"type":"Index","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"ListIndexesRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/CollectionGroup"}},"filter":{"type":"string","id":2},"pageSize":{"type":"int32","id":3},"pageToken":{"type":"string","id":4}}},"ListIndexesResponse":{"fields":{"indexes":{"rule":"repeated","type":"Index","id":1},"nextPageToken":{"type":"string","id":2}}},"GetIndexRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Index"}}}},"DeleteIndexRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Index"}}}},"UpdateFieldRequest":{"fields":{"field":{"type":"Field","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"google.protobuf.FieldMask","id":2}}},"GetFieldRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Field"}}}},"ListFieldsRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/CollectionGroup"}},"filter":{"type":"string","id":2},"pageSize":{"type":"int32","id":3},"pageToken":{"type":"string","id":4}}},"ListFieldsResponse":{"fields":{"fields":{"rule":"repeated","type":"Field","id":1},"nextPageToken":{"type":"string","id":2}}},"ExportDocumentsRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"collectionIds":{"rule":"repeated","type":"string","id":2},"outputUriPrefix":{"type":"string","id":3},"namespaceIds":{"rule":"repeated","type":"string","id":4},"snapshotTime":{"type":"google.protobuf.Timestamp","id":5}}},"ImportDocumentsRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"collectionIds":{"rule":"repeated","type":"string","id":2},"inputUriPrefix":{"type":"string","id":3},"namespaceIds":{"rule":"repeated","type":"string","id":4}}},"GetBackupRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}}}},"ListBackupsRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Location"}}}},"ListBackupsResponse":{"fields":{"backups":{"rule":"repeated","type":"Backup","id":1},"unreachable":{"rule":"repeated","type":"string","id":3}}},"DeleteBackupRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}}}},"RestoreDatabaseRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).child_type":"firestore.googleapis.com/Database"}},"databaseId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"backup":{"type":"string","id":3,"options":{"(google.api.field_behavior)":"REQUIRED","(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}}}},"IndexOperationMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"index":{"type":"string","id":3},"state":{"type":"OperationState","id":4},"progressDocuments":{"type":"Progress","id":5},"progressBytes":{"type":"Progress","id":6}}},"FieldOperationMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"field":{"type":"string","id":3},"indexConfigDeltas":{"rule":"repeated","type":"IndexConfigDelta","id":4},"state":{"type":"OperationState","id":5},"progressDocuments":{"type":"Progress","id":6},"progressBytes":{"type":"Progress","id":7},"ttlConfigDelta":{"type":"TtlConfigDelta","id":8}},"nested":{"IndexConfigDelta":{"fields":{"changeType":{"type":"ChangeType","id":1},"index":{"type":"Index","id":2}},"nested":{"ChangeType":{"values":{"CHANGE_TYPE_UNSPECIFIED":0,"ADD":1,"REMOVE":2}}}},"TtlConfigDelta":{"fields":{"changeType":{"type":"ChangeType","id":1}},"nested":{"ChangeType":{"values":{"CHANGE_TYPE_UNSPECIFIED":0,"ADD":1,"REMOVE":2}}}}}},"ExportDocumentsMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"operationState":{"type":"OperationState","id":3},"progressDocuments":{"type":"Progress","id":4},"progressBytes":{"type":"Progress","id":5},"collectionIds":{"rule":"repeated","type":"string","id":6},"outputUriPrefix":{"type":"string","id":7},"namespaceIds":{"rule":"repeated","type":"string","id":8},"snapshotTime":{"type":"google.protobuf.Timestamp","id":9}}},"ImportDocumentsMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"operationState":{"type":"OperationState","id":3},"progressDocuments":{"type":"Progress","id":4},"progressBytes":{"type":"Progress","id":5},"collectionIds":{"rule":"repeated","type":"string","id":6},"inputUriPrefix":{"type":"string","id":7},"namespaceIds":{"rule":"repeated","type":"string","id":8}}},"ExportDocumentsResponse":{"fields":{"outputUriPrefix":{"type":"string","id":1}}},"RestoreDatabaseMetadata":{"fields":{"startTime":{"type":"google.protobuf.Timestamp","id":1},"endTime":{"type":"google.protobuf.Timestamp","id":2},"operationState":{"type":"OperationState","id":3},"database":{"type":"string","id":4,"options":{"(google.api.resource_reference).type":"firestore.googleapis.com/Database"}},"backup":{"type":"string","id":5,"options":{"(google.api.resource_reference).type":"firestore.googleapis.com/Backup"}},"progressPercentage":{"type":"Progress","id":8}}},"Progress":{"fields":{"estimatedWork":{"type":"int64","id":1},"completedWork":{"type":"int64","id":2}}},"OperationState":{"values":{"OPERATION_STATE_UNSPECIFIED":0,"INITIALIZING":1,"PROCESSING":2,"CANCELLING":3,"FINALIZING":4,"SUCCESSFUL":5,"FAILED":6,"CANCELLED":7}},"BackupSchedule":{"options":{"(google.api.resource).type":"firestore.googleapis.com/BackupSchedule","(google.api.resource).pattern":"projects/{project}/databases/{database}/backupSchedules/{backup_schedule}"},"oneofs":{"recurrence":{"oneof":["dailyRecurrence","weeklyRecurrence"]}},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"createTime":{"type":"google.protobuf.Timestamp","id":3,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"updateTime":{"type":"google.protobuf.Timestamp","id":10,"options":{"(google.api.field_behavior)":"OUTPUT_ONLY"}},"retention":{"type":"google.protobuf.Duration","id":6},"dailyRecurrence":{"type":"DailyRecurrence","id":7},"weeklyRecurrence":{"type":"WeeklyRecurrence","id":8}}},"DailyRecurrence":{"fields":{}},"WeeklyRecurrence":{"fields":{"day":{"type":"google.type.DayOfWeek","id":2}}},"LocationMetadata":{"fields":{}}}}}}}},"api":{"options":{"go_package":"google.golang.org/genproto/googleapis/api;api","java_multiple_files":true,"java_outer_classname":"LaunchStageProto","java_package":"com.google.api","objc_class_prefix":"GAPI","cc_enable_arenas":true},"nested":{"fieldBehavior":{"rule":"repeated","type":"google.api.FieldBehavior","id":1052,"extend":"google.protobuf.FieldOptions","options":{"packed":false}},"FieldBehavior":{"values":{"FIELD_BEHAVIOR_UNSPECIFIED":0,"OPTIONAL":1,"REQUIRED":2,"OUTPUT_ONLY":3,"INPUT_ONLY":4,"IMMUTABLE":5,"UNORDERED_LIST":6,"NON_EMPTY_DEFAULT":7,"IDENTIFIER":8}},"resourceReference":{"type":"google.api.ResourceReference","id":1055,"extend":"google.protobuf.FieldOptions"},"resourceDefinition":{"rule":"repeated","type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.FileOptions"},"resource":{"type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.MessageOptions"},"ResourceDescriptor":{"fields":{"type":{"type":"string","id":1},"pattern":{"rule":"repeated","type":"string","id":2},"nameField":{"type":"string","id":3},"history":{"type":"History","id":4},"plural":{"type":"string","id":5},"singular":{"type":"string","id":6},"style":{"rule":"repeated","type":"Style","id":10}},"nested":{"History":{"values":{"HISTORY_UNSPECIFIED":0,"ORIGINALLY_SINGLE_PATTERN":1,"FUTURE_MULTI_PATTERN":2}},"Style":{"values":{"STYLE_UNSPECIFIED":0,"DECLARATIVE_FRIENDLY":1}}}},"ResourceReference":{"fields":{"type":{"type":"string","id":1},"childType":{"type":"string","id":2}}},"http":{"type":"HttpRule","id":72295728,"extend":"google.protobuf.MethodOptions"},"Http":{"fields":{"rules":{"rule":"repeated","type":"HttpRule","id":1},"fullyDecodeReservedExpansion":{"type":"bool","id":2}}},"HttpRule":{"oneofs":{"pattern":{"oneof":["get","put","post","delete","patch","custom"]}},"fields":{"selector":{"type":"string","id":1},"get":{"type":"string","id":2},"put":{"type":"string","id":3},"post":{"type":"string","id":4},"delete":{"type":"string","id":5},"patch":{"type":"string","id":6},"custom":{"type":"CustomHttpPattern","id":8},"body":{"type":"string","id":7},"responseBody":{"type":"string","id":12},"additionalBindings":{"rule":"repeated","type":"HttpRule","id":11}}},"CustomHttpPattern":{"fields":{"kind":{"type":"string","id":1},"path":{"type":"string","id":2}}},"methodSignature":{"rule":"repeated","type":"string","id":1051,"extend":"google.protobuf.MethodOptions"},"defaultHost":{"type":"string","id":1049,"extend":"google.protobuf.ServiceOptions"},"oauthScopes":{"type":"string","id":1050,"extend":"google.protobuf.ServiceOptions"},"apiVersion":{"type":"string","id":525000001,"extend":"google.protobuf.ServiceOptions"},"CommonLanguageSettings":{"fields":{"referenceDocsUri":{"type":"string","id":1,"options":{"deprecated":true}},"destinations":{"rule":"repeated","type":"ClientLibraryDestination","id":2}}},"ClientLibrarySettings":{"fields":{"version":{"type":"string","id":1},"launchStage":{"type":"LaunchStage","id":2},"restNumericEnums":{"type":"bool","id":3},"javaSettings":{"type":"JavaSettings","id":21},"cppSettings":{"type":"CppSettings","id":22},"phpSettings":{"type":"PhpSettings","id":23},"pythonSettings":{"type":"PythonSettings","id":24},"nodeSettings":{"type":"NodeSettings","id":25},"dotnetSettings":{"type":"DotnetSettings","id":26},"rubySettings":{"type":"RubySettings","id":27},"goSettings":{"type":"GoSettings","id":28}}},"Publishing":{"fields":{"methodSettings":{"rule":"repeated","type":"MethodSettings","id":2},"newIssueUri":{"type":"string","id":101},"documentationUri":{"type":"string","id":102},"apiShortName":{"type":"string","id":103},"githubLabel":{"type":"string","id":104},"codeownerGithubTeams":{"rule":"repeated","type":"string","id":105},"docTagPrefix":{"type":"string","id":106},"organization":{"type":"ClientLibraryOrganization","id":107},"librarySettings":{"rule":"repeated","type":"ClientLibrarySettings","id":109},"protoReferenceDocumentationUri":{"type":"string","id":110},"restReferenceDocumentationUri":{"type":"string","id":111}}},"JavaSettings":{"fields":{"libraryPackage":{"type":"string","id":1},"serviceClassNames":{"keyType":"string","type":"string","id":2},"common":{"type":"CommonLanguageSettings","id":3}}},"CppSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PhpSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PythonSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"NodeSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"DotnetSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1},"renamedServices":{"keyType":"string","type":"string","id":2},"renamedResources":{"keyType":"string","type":"string","id":3},"ignoredResources":{"rule":"repeated","type":"string","id":4},"forcedNamespaceAliases":{"rule":"repeated","type":"string","id":5},"handwrittenSignatures":{"rule":"repeated","type":"string","id":6}}},"RubySettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"GoSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"MethodSettings":{"fields":{"selector":{"type":"string","id":1},"longRunning":{"type":"LongRunning","id":2},"autoPopulatedFields":{"rule":"repeated","type":"string","id":3}},"nested":{"LongRunning":{"fields":{"initialPollDelay":{"type":"google.protobuf.Duration","id":1},"pollDelayMultiplier":{"type":"float","id":2},"maxPollDelay":{"type":"google.protobuf.Duration","id":3},"totalPollTimeout":{"type":"google.protobuf.Duration","id":4}}}}},"ClientLibraryOrganization":{"values":{"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0,"CLOUD":1,"ADS":2,"PHOTOS":3,"STREET_VIEW":4,"SHOPPING":5,"GEO":6,"GENERATIVE_AI":7}},"ClientLibraryDestination":{"values":{"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":0,"GITHUB":10,"PACKAGE_MANAGER":20}},"LaunchStage":{"values":{"LAUNCH_STAGE_UNSPECIFIED":0,"UNIMPLEMENTED":6,"PRELAUNCH":7,"EARLY_ACCESS":1,"ALPHA":2,"BETA":3,"GA":4,"DEPRECATED":5}}}},"protobuf":{"options":{"go_package":"google.golang.org/protobuf/types/descriptorpb","java_package":"com.google.protobuf","java_outer_classname":"DescriptorProtos","csharp_namespace":"Google.Protobuf.Reflection","objc_class_prefix":"GPB","cc_enable_arenas":true,"optimize_for":"SPEED"},"nested":{"FileDescriptorSet":{"fields":{"file":{"rule":"repeated","type":"FileDescriptorProto","id":1}}},"Edition":{"values":{"EDITION_UNKNOWN":0,"EDITION_PROTO2":998,"EDITION_PROTO3":999,"EDITION_2023":1e3,"EDITION_2024":1001,"EDITION_1_TEST_ONLY":1,"EDITION_2_TEST_ONLY":2,"EDITION_99997_TEST_ONLY":99997,"EDITION_99998_TEST_ONLY":99998,"EDITION_99999_TEST_ONLY":99999,"EDITION_MAX":2147483647},"reserved":[[900,900]]},"FileDescriptorProto":{"fields":{"name":{"type":"string","id":1},"package":{"type":"string","id":2},"dependency":{"rule":"repeated","type":"string","id":3},"publicDependency":{"rule":"repeated","type":"int32","id":10,"options":{"packed":false}},"weakDependency":{"rule":"repeated","type":"int32","id":11,"options":{"packed":false}},"messageType":{"rule":"repeated","type":"DescriptorProto","id":4},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":5},"service":{"rule":"repeated","type":"ServiceDescriptorProto","id":6},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":7},"options":{"type":"FileOptions","id":8},"sourceCodeInfo":{"type":"SourceCodeInfo","id":9},"syntax":{"type":"string","id":12},"edition":{"type":"Edition","id":14}}},"DescriptorProto":{"fields":{"name":{"type":"string","id":1},"field":{"rule":"repeated","type":"FieldDescriptorProto","id":2},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":6},"nestedType":{"rule":"repeated","type":"DescriptorProto","id":3},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":4},"extensionRange":{"rule":"repeated","type":"ExtensionRange","id":5},"oneofDecl":{"rule":"repeated","type":"OneofDescriptorProto","id":8},"options":{"type":"MessageOptions","id":7},"reservedRange":{"rule":"repeated","type":"ReservedRange","id":9},"reservedName":{"rule":"repeated","type":"string","id":10}},"nested":{"ExtensionRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2},"options":{"type":"ExtensionRangeOptions","id":3}}},"ReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"ExtensionRangeOptions":{"fields":{"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999},"declaration":{"rule":"repeated","type":"Declaration","id":2,"options":{"retention":"RETENTION_SOURCE"}},"features":{"type":"FeatureSet","id":50},"verification":{"type":"VerificationState","id":3,"options":{"default":"UNVERIFIED","retention":"RETENTION_SOURCE"}}},"extensions":[[1e3,536870911]],"nested":{"Declaration":{"fields":{"number":{"type":"int32","id":1},"fullName":{"type":"string","id":2},"type":{"type":"string","id":3},"reserved":{"type":"bool","id":5},"repeated":{"type":"bool","id":6}},"reserved":[[4,4]]},"VerificationState":{"values":{"DECLARATION":0,"UNVERIFIED":1}}}},"FieldDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":3},"label":{"type":"Label","id":4},"type":{"type":"Type","id":5},"typeName":{"type":"string","id":6},"extendee":{"type":"string","id":2},"defaultValue":{"type":"string","id":7},"oneofIndex":{"type":"int32","id":9},"jsonName":{"type":"string","id":10},"options":{"type":"FieldOptions","id":8},"proto3Optional":{"type":"bool","id":17}},"nested":{"Type":{"values":{"TYPE_DOUBLE":1,"TYPE_FLOAT":2,"TYPE_INT64":3,"TYPE_UINT64":4,"TYPE_INT32":5,"TYPE_FIXED64":6,"TYPE_FIXED32":7,"TYPE_BOOL":8,"TYPE_STRING":9,"TYPE_GROUP":10,"TYPE_MESSAGE":11,"TYPE_BYTES":12,"TYPE_UINT32":13,"TYPE_ENUM":14,"TYPE_SFIXED32":15,"TYPE_SFIXED64":16,"TYPE_SINT32":17,"TYPE_SINT64":18}},"Label":{"values":{"LABEL_OPTIONAL":1,"LABEL_REPEATED":3,"LABEL_REQUIRED":2}}}},"OneofDescriptorProto":{"fields":{"name":{"type":"string","id":1},"options":{"type":"OneofOptions","id":2}}},"EnumDescriptorProto":{"fields":{"name":{"type":"string","id":1},"value":{"rule":"repeated","type":"EnumValueDescriptorProto","id":2},"options":{"type":"EnumOptions","id":3},"reservedRange":{"rule":"repeated","type":"EnumReservedRange","id":4},"reservedName":{"rule":"repeated","type":"string","id":5}},"nested":{"EnumReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"EnumValueDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":2},"options":{"type":"EnumValueOptions","id":3}}},"ServiceDescriptorProto":{"fields":{"name":{"type":"string","id":1},"method":{"rule":"repeated","type":"MethodDescriptorProto","id":2},"options":{"type":"ServiceOptions","id":3}}},"MethodDescriptorProto":{"fields":{"name":{"type":"string","id":1},"inputType":{"type":"string","id":2},"outputType":{"type":"string","id":3},"options":{"type":"MethodOptions","id":4},"clientStreaming":{"type":"bool","id":5,"options":{"default":false}},"serverStreaming":{"type":"bool","id":6,"options":{"default":false}}}},"FileOptions":{"fields":{"javaPackage":{"type":"string","id":1},"javaOuterClassname":{"type":"string","id":8},"javaMultipleFiles":{"type":"bool","id":10,"options":{"default":false}},"javaGenerateEqualsAndHash":{"type":"bool","id":20,"options":{"deprecated":true}},"javaStringCheckUtf8":{"type":"bool","id":27,"options":{"default":false}},"optimizeFor":{"type":"OptimizeMode","id":9,"options":{"default":"SPEED"}},"goPackage":{"type":"string","id":11},"ccGenericServices":{"type":"bool","id":16,"options":{"default":false}},"javaGenericServices":{"type":"bool","id":17,"options":{"default":false}},"pyGenericServices":{"type":"bool","id":18,"options":{"default":false}},"deprecated":{"type":"bool","id":23,"options":{"default":false}},"ccEnableArenas":{"type":"bool","id":31,"options":{"default":true}},"objcClassPrefix":{"type":"string","id":36},"csharpNamespace":{"type":"string","id":37},"swiftPrefix":{"type":"string","id":39},"phpClassPrefix":{"type":"string","id":40},"phpNamespace":{"type":"string","id":41},"phpMetadataNamespace":{"type":"string","id":44},"rubyPackage":{"type":"string","id":45},"features":{"type":"FeatureSet","id":50},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[42,42],[38,38]],"nested":{"OptimizeMode":{"values":{"SPEED":1,"CODE_SIZE":2,"LITE_RUNTIME":3}}}},"MessageOptions":{"fields":{"messageSetWireFormat":{"type":"bool","id":1,"options":{"default":false}},"noStandardDescriptorAccessor":{"type":"bool","id":2,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"mapEntry":{"type":"bool","id":7},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":11,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":12},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[5,5],[6,6],[8,8],[9,9]]},"FieldOptions":{"fields":{"ctype":{"type":"CType","id":1,"options":{"default":"STRING"}},"packed":{"type":"bool","id":2},"jstype":{"type":"JSType","id":6,"options":{"default":"JS_NORMAL"}},"lazy":{"type":"bool","id":5,"options":{"default":false}},"unverifiedLazy":{"type":"bool","id":15,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"weak":{"type":"bool","id":10,"options":{"default":false}},"debugRedact":{"type":"bool","id":16,"options":{"default":false}},"retention":{"type":"OptionRetention","id":17},"targets":{"rule":"repeated","type":"OptionTargetType","id":19,"options":{"packed":false}},"editionDefaults":{"rule":"repeated","type":"EditionDefault","id":20},"features":{"type":"FeatureSet","id":21},"featureSupport":{"type":"FeatureSupport","id":22},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[18,18]],"nested":{"CType":{"values":{"STRING":0,"CORD":1,"STRING_PIECE":2}},"JSType":{"values":{"JS_NORMAL":0,"JS_STRING":1,"JS_NUMBER":2}},"OptionRetention":{"values":{"RETENTION_UNKNOWN":0,"RETENTION_RUNTIME":1,"RETENTION_SOURCE":2}},"OptionTargetType":{"values":{"TARGET_TYPE_UNKNOWN":0,"TARGET_TYPE_FILE":1,"TARGET_TYPE_EXTENSION_RANGE":2,"TARGET_TYPE_MESSAGE":3,"TARGET_TYPE_FIELD":4,"TARGET_TYPE_ONEOF":5,"TARGET_TYPE_ENUM":6,"TARGET_TYPE_ENUM_ENTRY":7,"TARGET_TYPE_SERVICE":8,"TARGET_TYPE_METHOD":9}},"EditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"value":{"type":"string","id":2}}},"FeatureSupport":{"fields":{"editionIntroduced":{"type":"Edition","id":1},"editionDeprecated":{"type":"Edition","id":2},"deprecationWarning":{"type":"string","id":3},"editionRemoved":{"type":"Edition","id":4}}}}},"OneofOptions":{"fields":{"features":{"type":"FeatureSet","id":1},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"EnumOptions":{"fields":{"allowAlias":{"type":"bool","id":2},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":6,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":7},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[5,5]]},"EnumValueOptions":{"fields":{"deprecated":{"type":"bool","id":1,"options":{"default":false}},"features":{"type":"FeatureSet","id":2},"debugRedact":{"type":"bool","id":3,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"ServiceOptions":{"fields":{"features":{"type":"FeatureSet","id":34},"deprecated":{"type":"bool","id":33,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"MethodOptions":{"fields":{"deprecated":{"type":"bool","id":33,"options":{"default":false}},"idempotencyLevel":{"type":"IdempotencyLevel","id":34,"options":{"default":"IDEMPOTENCY_UNKNOWN"}},"features":{"type":"FeatureSet","id":35},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"nested":{"IdempotencyLevel":{"values":{"IDEMPOTENCY_UNKNOWN":0,"NO_SIDE_EFFECTS":1,"IDEMPOTENT":2}}}},"UninterpretedOption":{"fields":{"name":{"rule":"repeated","type":"NamePart","id":2},"identifierValue":{"type":"string","id":3},"positiveIntValue":{"type":"uint64","id":4},"negativeIntValue":{"type":"int64","id":5},"doubleValue":{"type":"double","id":6},"stringValue":{"type":"bytes","id":7},"aggregateValue":{"type":"string","id":8}},"nested":{"NamePart":{"fields":{"namePart":{"rule":"required","type":"string","id":1},"isExtension":{"rule":"required","type":"bool","id":2}}}}},"FeatureSet":{"fields":{"fieldPresence":{"type":"FieldPresence","id":1,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_2023","edition_defaults.value":"EXPLICIT"}},"enumType":{"type":"EnumType","id":2,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"OPEN"}},"repeatedFieldEncoding":{"type":"RepeatedFieldEncoding","id":3,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"PACKED"}},"utf8Validation":{"type":"Utf8Validation","id":4,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"VERIFY"}},"messageEncoding":{"type":"MessageEncoding","id":5,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO2","edition_defaults.value":"LENGTH_PREFIXED"}},"jsonFormat":{"type":"JsonFormat","id":6,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"ALLOW"}}},"extensions":[[1e3,1e3],[1001,1001],[1002,1002],[9990,9990],[9995,9999],[1e4,1e4]],"reserved":[[999,999]],"nested":{"FieldPresence":{"values":{"FIELD_PRESENCE_UNKNOWN":0,"EXPLICIT":1,"IMPLICIT":2,"LEGACY_REQUIRED":3}},"EnumType":{"values":{"ENUM_TYPE_UNKNOWN":0,"OPEN":1,"CLOSED":2}},"RepeatedFieldEncoding":{"values":{"REPEATED_FIELD_ENCODING_UNKNOWN":0,"PACKED":1,"EXPANDED":2}},"Utf8Validation":{"values":{"UTF8_VALIDATION_UNKNOWN":0,"VERIFY":2,"NONE":3}},"MessageEncoding":{"values":{"MESSAGE_ENCODING_UNKNOWN":0,"LENGTH_PREFIXED":1,"DELIMITED":2}},"JsonFormat":{"values":{"JSON_FORMAT_UNKNOWN":0,"ALLOW":1,"LEGACY_BEST_EFFORT":2}}}},"FeatureSetDefaults":{"fields":{"defaults":{"rule":"repeated","type":"FeatureSetEditionDefault","id":1},"minimumEdition":{"type":"Edition","id":4},"maximumEdition":{"type":"Edition","id":5}},"nested":{"FeatureSetEditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"overridableFeatures":{"type":"FeatureSet","id":4},"fixedFeatures":{"type":"FeatureSet","id":5},"features":{"type":"FeatureSet","id":2}}}}},"SourceCodeInfo":{"fields":{"location":{"rule":"repeated","type":"Location","id":1}},"nested":{"Location":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"span":{"rule":"repeated","type":"int32","id":2},"leadingComments":{"type":"string","id":3},"trailingComments":{"type":"string","id":4},"leadingDetachedComments":{"rule":"repeated","type":"string","id":6}}}}},"GeneratedCodeInfo":{"fields":{"annotation":{"rule":"repeated","type":"Annotation","id":1}},"nested":{"Annotation":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"sourceFile":{"type":"string","id":2},"begin":{"type":"int32","id":3},"end":{"type":"int32","id":4},"semantic":{"type":"Semantic","id":5}},"nested":{"Semantic":{"values":{"NONE":0,"SET":1,"ALIAS":2}}}}}},"Timestamp":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"Duration":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"Any":{"fields":{"type_url":{"type":"string","id":1},"value":{"type":"bytes","id":2}}},"Empty":{"fields":{}},"FieldMask":{"fields":{"paths":{"rule":"repeated","type":"string","id":1}}},"Struct":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Value":{"oneofs":{"kind":{"oneof":["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},"fields":{"nullValue":{"type":"NullValue","id":1},"numberValue":{"type":"double","id":2},"stringValue":{"type":"string","id":3},"boolValue":{"type":"bool","id":4},"structValue":{"type":"Struct","id":5},"listValue":{"type":"ListValue","id":6}}},"NullValue":{"values":{"NULL_VALUE":0}},"ListValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"DoubleValue":{"fields":{"value":{"type":"double","id":1}}},"FloatValue":{"fields":{"value":{"type":"float","id":1}}},"Int64Value":{"fields":{"value":{"type":"int64","id":1}}},"UInt64Value":{"fields":{"value":{"type":"uint64","id":1}}},"Int32Value":{"fields":{"value":{"type":"int32","id":1}}},"UInt32Value":{"fields":{"value":{"type":"uint32","id":1}}},"BoolValue":{"fields":{"value":{"type":"bool","id":1}}},"StringValue":{"fields":{"value":{"type":"string","id":1}}},"BytesValue":{"fields":{"value":{"type":"bytes","id":1}}}}},"type":{"options":{"go_package":"google.golang.org/genproto/googleapis/type/latlng;latlng","java_multiple_files":true,"java_outer_classname":"LatLngProto","java_package":"com.google.type","objc_class_prefix":"GTP","cc_enable_arenas":true},"nested":{"DayOfWeek":{"values":{"DAY_OF_WEEK_UNSPECIFIED":0,"MONDAY":1,"TUESDAY":2,"WEDNESDAY":3,"THURSDAY":4,"FRIDAY":5,"SATURDAY":6,"SUNDAY":7}},"LatLng":{"fields":{"latitude":{"type":"double","id":1},"longitude":{"type":"double","id":2}}}}},"longrunning":{"options":{"cc_enable_arenas":true,"csharp_namespace":"Google.LongRunning","go_package":"cloud.google.com/go/longrunning/autogen/longrunningpb;longrunningpb","java_multiple_files":true,"java_outer_classname":"OperationsProto","java_package":"com.google.longrunning","php_namespace":"Google\\LongRunning"},"nested":{"operationInfo":{"type":"google.longrunning.OperationInfo","id":1049,"extend":"google.protobuf.MethodOptions"},"Operations":{"options":{"(google.api.default_host)":"longrunning.googleapis.com"},"methods":{"ListOperations":{"requestType":"ListOperationsRequest","responseType":"ListOperationsResponse","options":{"(google.api.http).get":"/v1/{name=operations}","(google.api.method_signature)":"name,filter"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=operations}"}},{"(google.api.method_signature)":"name,filter"}]},"GetOperation":{"requestType":"GetOperationRequest","responseType":"Operation","options":{"(google.api.http).get":"/v1/{name=operations/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=operations/**}"}},{"(google.api.method_signature)":"name"}]},"DeleteOperation":{"requestType":"DeleteOperationRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=operations/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=operations/**}"}},{"(google.api.method_signature)":"name"}]},"CancelOperation":{"requestType":"CancelOperationRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).post":"/v1/{name=operations/**}:cancel","(google.api.http).body":"*","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{name=operations/**}:cancel","body":"*"}},{"(google.api.method_signature)":"name"}]},"WaitOperation":{"requestType":"WaitOperationRequest","responseType":"Operation"}}},"Operation":{"oneofs":{"result":{"oneof":["error","response"]}},"fields":{"name":{"type":"string","id":1},"metadata":{"type":"google.protobuf.Any","id":2},"done":{"type":"bool","id":3},"error":{"type":"google.rpc.Status","id":4},"response":{"type":"google.protobuf.Any","id":5}}},"GetOperationRequest":{"fields":{"name":{"type":"string","id":1}}},"ListOperationsRequest":{"fields":{"name":{"type":"string","id":4},"filter":{"type":"string","id":1},"pageSize":{"type":"int32","id":2},"pageToken":{"type":"string","id":3}}},"ListOperationsResponse":{"fields":{"operations":{"rule":"repeated","type":"Operation","id":1},"nextPageToken":{"type":"string","id":2}}},"CancelOperationRequest":{"fields":{"name":{"type":"string","id":1}}},"DeleteOperationRequest":{"fields":{"name":{"type":"string","id":1}}},"WaitOperationRequest":{"fields":{"name":{"type":"string","id":1},"timeout":{"type":"google.protobuf.Duration","id":2}}},"OperationInfo":{"fields":{"responseType":{"type":"string","id":1},"metadataType":{"type":"string","id":2}}}}},"rpc":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/rpc/status;status","java_multiple_files":true,"java_outer_classname":"StatusProto","java_package":"com.google.rpc","objc_class_prefix":"RPC"},"nested":{"Status":{"fields":{"code":{"type":"int32","id":1},"message":{"type":"string","id":2},"details":{"rule":"repeated","type":"google.protobuf.Any","id":3}}}}}}}}} |
@@ -1,1 +0,1 @@ | ||
{"nested":{"google":{"nested":{"protobuf":{"options":{"go_package":"google.golang.org/protobuf/types/descriptorpb","java_package":"com.google.protobuf","java_outer_classname":"DescriptorProtos","csharp_namespace":"Google.Protobuf.Reflection","objc_class_prefix":"GPB","cc_enable_arenas":true,"optimize_for":"SPEED"},"nested":{"Struct":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Value":{"oneofs":{"kind":{"oneof":["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},"fields":{"nullValue":{"type":"NullValue","id":1},"numberValue":{"type":"double","id":2},"stringValue":{"type":"string","id":3},"boolValue":{"type":"bool","id":4},"structValue":{"type":"Struct","id":5},"listValue":{"type":"ListValue","id":6}}},"NullValue":{"values":{"NULL_VALUE":0}},"ListValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"Timestamp":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"FileDescriptorSet":{"fields":{"file":{"rule":"repeated","type":"FileDescriptorProto","id":1}}},"Edition":{"values":{"EDITION_UNKNOWN":0,"EDITION_PROTO2":998,"EDITION_PROTO3":999,"EDITION_2023":1e3,"EDITION_2024":1001,"EDITION_1_TEST_ONLY":1,"EDITION_2_TEST_ONLY":2,"EDITION_99997_TEST_ONLY":99997,"EDITION_99998_TEST_ONLY":99998,"EDITION_99999_TEST_ONLY":99999,"EDITION_MAX":2147483647}},"FileDescriptorProto":{"fields":{"name":{"type":"string","id":1},"package":{"type":"string","id":2},"dependency":{"rule":"repeated","type":"string","id":3},"publicDependency":{"rule":"repeated","type":"int32","id":10,"options":{"packed":false}},"weakDependency":{"rule":"repeated","type":"int32","id":11,"options":{"packed":false}},"messageType":{"rule":"repeated","type":"DescriptorProto","id":4},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":5},"service":{"rule":"repeated","type":"ServiceDescriptorProto","id":6},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":7},"options":{"type":"FileOptions","id":8},"sourceCodeInfo":{"type":"SourceCodeInfo","id":9},"syntax":{"type":"string","id":12},"edition":{"type":"Edition","id":14}}},"DescriptorProto":{"fields":{"name":{"type":"string","id":1},"field":{"rule":"repeated","type":"FieldDescriptorProto","id":2},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":6},"nestedType":{"rule":"repeated","type":"DescriptorProto","id":3},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":4},"extensionRange":{"rule":"repeated","type":"ExtensionRange","id":5},"oneofDecl":{"rule":"repeated","type":"OneofDescriptorProto","id":8},"options":{"type":"MessageOptions","id":7},"reservedRange":{"rule":"repeated","type":"ReservedRange","id":9},"reservedName":{"rule":"repeated","type":"string","id":10}},"nested":{"ExtensionRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2},"options":{"type":"ExtensionRangeOptions","id":3}}},"ReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"ExtensionRangeOptions":{"fields":{"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999},"declaration":{"rule":"repeated","type":"Declaration","id":2,"options":{"retention":"RETENTION_SOURCE"}},"features":{"type":"FeatureSet","id":50},"verification":{"type":"VerificationState","id":3,"options":{"default":"UNVERIFIED","retention":"RETENTION_SOURCE"}}},"extensions":[[1e3,536870911]],"nested":{"Declaration":{"fields":{"number":{"type":"int32","id":1},"fullName":{"type":"string","id":2},"type":{"type":"string","id":3},"reserved":{"type":"bool","id":5},"repeated":{"type":"bool","id":6}},"reserved":[[4,4]]},"VerificationState":{"values":{"DECLARATION":0,"UNVERIFIED":1}}}},"FieldDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":3},"label":{"type":"Label","id":4},"type":{"type":"Type","id":5},"typeName":{"type":"string","id":6},"extendee":{"type":"string","id":2},"defaultValue":{"type":"string","id":7},"oneofIndex":{"type":"int32","id":9},"jsonName":{"type":"string","id":10},"options":{"type":"FieldOptions","id":8},"proto3Optional":{"type":"bool","id":17}},"nested":{"Type":{"values":{"TYPE_DOUBLE":1,"TYPE_FLOAT":2,"TYPE_INT64":3,"TYPE_UINT64":4,"TYPE_INT32":5,"TYPE_FIXED64":6,"TYPE_FIXED32":7,"TYPE_BOOL":8,"TYPE_STRING":9,"TYPE_GROUP":10,"TYPE_MESSAGE":11,"TYPE_BYTES":12,"TYPE_UINT32":13,"TYPE_ENUM":14,"TYPE_SFIXED32":15,"TYPE_SFIXED64":16,"TYPE_SINT32":17,"TYPE_SINT64":18}},"Label":{"values":{"LABEL_OPTIONAL":1,"LABEL_REPEATED":3,"LABEL_REQUIRED":2}}}},"OneofDescriptorProto":{"fields":{"name":{"type":"string","id":1},"options":{"type":"OneofOptions","id":2}}},"EnumDescriptorProto":{"fields":{"name":{"type":"string","id":1},"value":{"rule":"repeated","type":"EnumValueDescriptorProto","id":2},"options":{"type":"EnumOptions","id":3},"reservedRange":{"rule":"repeated","type":"EnumReservedRange","id":4},"reservedName":{"rule":"repeated","type":"string","id":5}},"nested":{"EnumReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"EnumValueDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":2},"options":{"type":"EnumValueOptions","id":3}}},"ServiceDescriptorProto":{"fields":{"name":{"type":"string","id":1},"method":{"rule":"repeated","type":"MethodDescriptorProto","id":2},"options":{"type":"ServiceOptions","id":3}}},"MethodDescriptorProto":{"fields":{"name":{"type":"string","id":1},"inputType":{"type":"string","id":2},"outputType":{"type":"string","id":3},"options":{"type":"MethodOptions","id":4},"clientStreaming":{"type":"bool","id":5,"options":{"default":false}},"serverStreaming":{"type":"bool","id":6,"options":{"default":false}}}},"FileOptions":{"fields":{"javaPackage":{"type":"string","id":1},"javaOuterClassname":{"type":"string","id":8},"javaMultipleFiles":{"type":"bool","id":10,"options":{"default":false}},"javaGenerateEqualsAndHash":{"type":"bool","id":20,"options":{"deprecated":true}},"javaStringCheckUtf8":{"type":"bool","id":27,"options":{"default":false}},"optimizeFor":{"type":"OptimizeMode","id":9,"options":{"default":"SPEED"}},"goPackage":{"type":"string","id":11},"ccGenericServices":{"type":"bool","id":16,"options":{"default":false}},"javaGenericServices":{"type":"bool","id":17,"options":{"default":false}},"pyGenericServices":{"type":"bool","id":18,"options":{"default":false}},"deprecated":{"type":"bool","id":23,"options":{"default":false}},"ccEnableArenas":{"type":"bool","id":31,"options":{"default":true}},"objcClassPrefix":{"type":"string","id":36},"csharpNamespace":{"type":"string","id":37},"swiftPrefix":{"type":"string","id":39},"phpClassPrefix":{"type":"string","id":40},"phpNamespace":{"type":"string","id":41},"phpMetadataNamespace":{"type":"string","id":44},"rubyPackage":{"type":"string","id":45},"features":{"type":"FeatureSet","id":50},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[42,42],[38,38]],"nested":{"OptimizeMode":{"values":{"SPEED":1,"CODE_SIZE":2,"LITE_RUNTIME":3}}}},"MessageOptions":{"fields":{"messageSetWireFormat":{"type":"bool","id":1,"options":{"default":false}},"noStandardDescriptorAccessor":{"type":"bool","id":2,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"mapEntry":{"type":"bool","id":7},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":11,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":12},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[5,5],[6,6],[8,8],[9,9]]},"FieldOptions":{"fields":{"ctype":{"type":"CType","id":1,"options":{"default":"STRING"}},"packed":{"type":"bool","id":2},"jstype":{"type":"JSType","id":6,"options":{"default":"JS_NORMAL"}},"lazy":{"type":"bool","id":5,"options":{"default":false}},"unverifiedLazy":{"type":"bool","id":15,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"weak":{"type":"bool","id":10,"options":{"default":false}},"debugRedact":{"type":"bool","id":16,"options":{"default":false}},"retention":{"type":"OptionRetention","id":17},"targets":{"rule":"repeated","type":"OptionTargetType","id":19,"options":{"packed":false}},"editionDefaults":{"rule":"repeated","type":"EditionDefault","id":20},"features":{"type":"FeatureSet","id":21},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[18,18]],"nested":{"CType":{"values":{"STRING":0,"CORD":1,"STRING_PIECE":2}},"JSType":{"values":{"JS_NORMAL":0,"JS_STRING":1,"JS_NUMBER":2}},"OptionRetention":{"values":{"RETENTION_UNKNOWN":0,"RETENTION_RUNTIME":1,"RETENTION_SOURCE":2}},"OptionTargetType":{"values":{"TARGET_TYPE_UNKNOWN":0,"TARGET_TYPE_FILE":1,"TARGET_TYPE_EXTENSION_RANGE":2,"TARGET_TYPE_MESSAGE":3,"TARGET_TYPE_FIELD":4,"TARGET_TYPE_ONEOF":5,"TARGET_TYPE_ENUM":6,"TARGET_TYPE_ENUM_ENTRY":7,"TARGET_TYPE_SERVICE":8,"TARGET_TYPE_METHOD":9}},"EditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"value":{"type":"string","id":2}}}}},"OneofOptions":{"fields":{"features":{"type":"FeatureSet","id":1},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"EnumOptions":{"fields":{"allowAlias":{"type":"bool","id":2},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":6,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":7},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[5,5]]},"EnumValueOptions":{"fields":{"deprecated":{"type":"bool","id":1,"options":{"default":false}},"features":{"type":"FeatureSet","id":2},"debugRedact":{"type":"bool","id":3,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"ServiceOptions":{"fields":{"features":{"type":"FeatureSet","id":34},"deprecated":{"type":"bool","id":33,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"MethodOptions":{"fields":{"deprecated":{"type":"bool","id":33,"options":{"default":false}},"idempotencyLevel":{"type":"IdempotencyLevel","id":34,"options":{"default":"IDEMPOTENCY_UNKNOWN"}},"features":{"type":"FeatureSet","id":35},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"nested":{"IdempotencyLevel":{"values":{"IDEMPOTENCY_UNKNOWN":0,"NO_SIDE_EFFECTS":1,"IDEMPOTENT":2}}}},"UninterpretedOption":{"fields":{"name":{"rule":"repeated","type":"NamePart","id":2},"identifierValue":{"type":"string","id":3},"positiveIntValue":{"type":"uint64","id":4},"negativeIntValue":{"type":"int64","id":5},"doubleValue":{"type":"double","id":6},"stringValue":{"type":"bytes","id":7},"aggregateValue":{"type":"string","id":8}},"nested":{"NamePart":{"fields":{"namePart":{"rule":"required","type":"string","id":1},"isExtension":{"rule":"required","type":"bool","id":2}}}}},"FeatureSet":{"fields":{"fieldPresence":{"type":"FieldPresence","id":1,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_2023","edition_defaults.value":"EXPLICIT"}},"enumType":{"type":"EnumType","id":2,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"OPEN"}},"repeatedFieldEncoding":{"type":"RepeatedFieldEncoding","id":3,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"PACKED"}},"utf8Validation":{"type":"Utf8Validation","id":4,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"VERIFY"}},"messageEncoding":{"type":"MessageEncoding","id":5,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO2","edition_defaults.value":"LENGTH_PREFIXED"}},"jsonFormat":{"type":"JsonFormat","id":6,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"ALLOW"}}},"extensions":[[1e3,1e3],[1001,1001],[1002,1002],[9990,9990],[9995,9999],[1e4,1e4]],"reserved":[[999,999]],"nested":{"FieldPresence":{"values":{"FIELD_PRESENCE_UNKNOWN":0,"EXPLICIT":1,"IMPLICIT":2,"LEGACY_REQUIRED":3}},"EnumType":{"values":{"ENUM_TYPE_UNKNOWN":0,"OPEN":1,"CLOSED":2}},"RepeatedFieldEncoding":{"values":{"REPEATED_FIELD_ENCODING_UNKNOWN":0,"PACKED":1,"EXPANDED":2}},"Utf8Validation":{"values":{"UTF8_VALIDATION_UNKNOWN":0,"VERIFY":2,"NONE":3}},"MessageEncoding":{"values":{"MESSAGE_ENCODING_UNKNOWN":0,"LENGTH_PREFIXED":1,"DELIMITED":2}},"JsonFormat":{"values":{"JSON_FORMAT_UNKNOWN":0,"ALLOW":1,"LEGACY_BEST_EFFORT":2}}}},"FeatureSetDefaults":{"fields":{"defaults":{"rule":"repeated","type":"FeatureSetEditionDefault","id":1},"minimumEdition":{"type":"Edition","id":4},"maximumEdition":{"type":"Edition","id":5}},"nested":{"FeatureSetEditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"features":{"type":"FeatureSet","id":2}}}}},"SourceCodeInfo":{"fields":{"location":{"rule":"repeated","type":"Location","id":1}},"nested":{"Location":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"span":{"rule":"repeated","type":"int32","id":2},"leadingComments":{"type":"string","id":3},"trailingComments":{"type":"string","id":4},"leadingDetachedComments":{"rule":"repeated","type":"string","id":6}}}}},"GeneratedCodeInfo":{"fields":{"annotation":{"rule":"repeated","type":"Annotation","id":1}},"nested":{"Annotation":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"sourceFile":{"type":"string","id":2},"begin":{"type":"int32","id":3},"end":{"type":"int32","id":4},"semantic":{"type":"Semantic","id":5}},"nested":{"Semantic":{"values":{"NONE":0,"SET":1,"ALIAS":2}}}}}},"Duration":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"DoubleValue":{"fields":{"value":{"type":"double","id":1}}},"FloatValue":{"fields":{"value":{"type":"float","id":1}}},"Int64Value":{"fields":{"value":{"type":"int64","id":1}}},"UInt64Value":{"fields":{"value":{"type":"uint64","id":1}}},"Int32Value":{"fields":{"value":{"type":"int32","id":1}}},"UInt32Value":{"fields":{"value":{"type":"uint32","id":1}}},"BoolValue":{"fields":{"value":{"type":"bool","id":1}}},"StringValue":{"fields":{"value":{"type":"string","id":1}}},"BytesValue":{"fields":{"value":{"type":"bytes","id":1}}},"Empty":{"fields":{}},"Any":{"fields":{"type_url":{"type":"string","id":1},"value":{"type":"bytes","id":2}}},"FieldMask":{"fields":{"paths":{"rule":"repeated","type":"string","id":1}}}}},"firestore":{"nested":{"v1":{"options":{"csharp_namespace":"Google.Cloud.Firestore.V1","go_package":"cloud.google.com/go/firestore/apiv1/firestorepb;firestorepb","java_multiple_files":true,"java_outer_classname":"WriteProto","java_package":"com.google.firestore.v1","objc_class_prefix":"GCFS","php_namespace":"Google\\Cloud\\Firestore\\V1","ruby_package":"Google::Cloud::Firestore::V1"},"nested":{"AggregationResult":{"fields":{"aggregateFields":{"keyType":"string","type":"Value","id":2}}},"Document":{"fields":{"name":{"type":"string","id":1},"fields":{"keyType":"string","type":"Value","id":2},"createTime":{"type":"google.protobuf.Timestamp","id":3},"updateTime":{"type":"google.protobuf.Timestamp","id":4}}},"Value":{"oneofs":{"valueType":{"oneof":["nullValue","booleanValue","integerValue","doubleValue","timestampValue","stringValue","bytesValue","referenceValue","geoPointValue","arrayValue","mapValue"]}},"fields":{"nullValue":{"type":"google.protobuf.NullValue","id":11},"booleanValue":{"type":"bool","id":1},"integerValue":{"type":"int64","id":2},"doubleValue":{"type":"double","id":3},"timestampValue":{"type":"google.protobuf.Timestamp","id":10},"stringValue":{"type":"string","id":17},"bytesValue":{"type":"bytes","id":18},"referenceValue":{"type":"string","id":5},"geoPointValue":{"type":"google.type.LatLng","id":8},"arrayValue":{"type":"ArrayValue","id":9},"mapValue":{"type":"MapValue","id":6}}},"ArrayValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"MapValue":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"BitSequence":{"fields":{"bitmap":{"type":"bytes","id":1},"padding":{"type":"int32","id":2}}},"BloomFilter":{"fields":{"bits":{"type":"BitSequence","id":1},"hashCount":{"type":"int32","id":2}}},"DocumentMask":{"fields":{"fieldPaths":{"rule":"repeated","type":"string","id":1}}},"Precondition":{"oneofs":{"conditionType":{"oneof":["exists","updateTime"]}},"fields":{"exists":{"type":"bool","id":1},"updateTime":{"type":"google.protobuf.Timestamp","id":2}}},"TransactionOptions":{"oneofs":{"mode":{"oneof":["readOnly","readWrite"]}},"fields":{"readOnly":{"type":"ReadOnly","id":2},"readWrite":{"type":"ReadWrite","id":3}},"nested":{"ReadWrite":{"fields":{"retryTransaction":{"type":"bytes","id":1}}},"ReadOnly":{"oneofs":{"consistencySelector":{"oneof":["readTime"]}},"fields":{"readTime":{"type":"google.protobuf.Timestamp","id":2}}}}},"Firestore":{"options":{"(google.api.default_host)":"firestore.googleapis.com","(google.api.oauth_scopes)":"https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastore"},"methods":{"GetDocument":{"requestType":"GetDocumentRequest","responseType":"Document","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/documents/*/**}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/documents/*/**}"}}]},"ListDocuments":{"requestType":"ListDocumentsRequest","responseType":"ListDocumentsResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}","(google.api.http).additional_bindings.get":"/v1/{parent=projects/*/databases/*/documents}/{collection_id}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}","additional_bindings":{"get":"/v1/{parent=projects/*/databases/*/documents}/{collection_id}"}}}]},"UpdateDocument":{"requestType":"UpdateDocumentRequest","responseType":"Document","options":{"(google.api.http).patch":"/v1/{document.name=projects/*/databases/*/documents/*/**}","(google.api.http).body":"document","(google.api.method_signature)":"document,update_mask"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{document.name=projects/*/databases/*/documents/*/**}","body":"document"}},{"(google.api.method_signature)":"document,update_mask"}]},"DeleteDocument":{"requestType":"DeleteDocumentRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*/documents/*/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*/documents/*/**}"}},{"(google.api.method_signature)":"name"}]},"BatchGetDocuments":{"requestType":"BatchGetDocumentsRequest","responseType":"BatchGetDocumentsResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:batchGet","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:batchGet","body":"*"}}]},"BeginTransaction":{"requestType":"BeginTransactionRequest","responseType":"BeginTransactionResponse","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:beginTransaction","(google.api.http).body":"*","(google.api.method_signature)":"database"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:beginTransaction","body":"*"}},{"(google.api.method_signature)":"database"}]},"Commit":{"requestType":"CommitRequest","responseType":"CommitResponse","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:commit","(google.api.http).body":"*","(google.api.method_signature)":"database,writes"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:commit","body":"*"}},{"(google.api.method_signature)":"database,writes"}]},"Rollback":{"requestType":"RollbackRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:rollback","(google.api.http).body":"*","(google.api.method_signature)":"database,transaction"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:rollback","body":"*"}},{"(google.api.method_signature)":"database,transaction"}]},"RunQuery":{"requestType":"RunQueryRequest","responseType":"RunQueryResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:runQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:runQuery","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runQuery","body":"*"}}}]},"RunAggregationQuery":{"requestType":"RunAggregationQueryRequest","responseType":"RunAggregationQueryResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:runAggregationQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runAggregationQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:runAggregationQuery","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runAggregationQuery","body":"*"}}}]},"PartitionQuery":{"requestType":"PartitionQueryRequest","responseType":"PartitionQueryResponse","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:partitionQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:partitionQuery","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","body":"*"}}}]},"Write":{"requestType":"WriteRequest","requestStream":true,"responseType":"WriteResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:write","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:write","body":"*"}}]},"Listen":{"requestType":"ListenRequest","requestStream":true,"responseType":"ListenResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:listen","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:listen","body":"*"}}]},"ListCollectionIds":{"requestType":"ListCollectionIdsRequest","responseType":"ListCollectionIdsResponse","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:listCollectionIds","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","(google.api.http).additional_bindings.body":"*","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:listCollectionIds","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","body":"*"}}},{"(google.api.method_signature)":"parent"}]},"BatchWrite":{"requestType":"BatchWriteRequest","responseType":"BatchWriteResponse","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:batchWrite","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:batchWrite","body":"*"}}]},"CreateDocument":{"requestType":"CreateDocumentRequest","responseType":"Document","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents/**}/{collection_id}","(google.api.http).body":"document"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents/**}/{collection_id}","body":"document"}}]}}},"GetDocumentRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":5}}},"ListDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"pageSize":{"type":"int32","id":3,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"pageToken":{"type":"string","id":4,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"orderBy":{"type":"string","id":6,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"mask":{"type":"DocumentMask","id":7,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"transaction":{"type":"bytes","id":8},"readTime":{"type":"google.protobuf.Timestamp","id":10},"showMissing":{"type":"bool","id":12}}},"ListDocumentsResponse":{"fields":{"documents":{"rule":"repeated","type":"Document","id":1},"nextPageToken":{"type":"string","id":2}}},"CreateDocumentRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documentId":{"type":"string","id":3},"document":{"type":"Document","id":4,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":5}}},"UpdateDocumentRequest":{"fields":{"document":{"type":"Document","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"DocumentMask","id":2},"mask":{"type":"DocumentMask","id":3},"currentDocument":{"type":"Precondition","id":4}}},"DeleteDocumentRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"currentDocument":{"type":"Precondition","id":2}}},"BatchGetDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documents":{"rule":"repeated","type":"string","id":2},"mask":{"type":"DocumentMask","id":3},"transaction":{"type":"bytes","id":4},"newTransaction":{"type":"TransactionOptions","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":7}}},"BatchGetDocumentsResponse":{"oneofs":{"result":{"oneof":["found","missing"]}},"fields":{"found":{"type":"Document","id":1},"missing":{"type":"string","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"BeginTransactionRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"options":{"type":"TransactionOptions","id":2}}},"BeginTransactionResponse":{"fields":{"transaction":{"type":"bytes","id":1}}},"CommitRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"transaction":{"type":"bytes","id":3}}},"CommitResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"commitTime":{"type":"google.protobuf.Timestamp","id":2}}},"RollbackRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"transaction":{"type":"bytes","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"RunQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]},"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"transaction":{"type":"bytes","id":5},"newTransaction":{"type":"TransactionOptions","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":7},"explainOptions":{"type":"ExplainOptions","id":10,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"RunQueryResponse":{"oneofs":{"continuationSelector":{"oneof":["done"]}},"fields":{"transaction":{"type":"bytes","id":2},"document":{"type":"Document","id":1},"readTime":{"type":"google.protobuf.Timestamp","id":3},"skippedResults":{"type":"int32","id":4},"done":{"type":"bool","id":6},"explainMetrics":{"type":"ExplainMetrics","id":11}}},"RunAggregationQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredAggregationQuery"]},"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredAggregationQuery":{"type":"StructuredAggregationQuery","id":2},"transaction":{"type":"bytes","id":4},"newTransaction":{"type":"TransactionOptions","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":6},"explainOptions":{"type":"ExplainOptions","id":8,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"RunAggregationQueryResponse":{"fields":{"result":{"type":"AggregationResult","id":1},"transaction":{"type":"bytes","id":2},"readTime":{"type":"google.protobuf.Timestamp","id":3},"explainMetrics":{"type":"ExplainMetrics","id":10}}},"PartitionQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]},"consistencySelector":{"oneof":["readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"partitionCount":{"type":"int64","id":3},"pageToken":{"type":"string","id":4},"pageSize":{"type":"int32","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":6}}},"PartitionQueryResponse":{"fields":{"partitions":{"rule":"repeated","type":"Cursor","id":1},"nextPageToken":{"type":"string","id":2}}},"WriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"streamId":{"type":"string","id":2},"writes":{"rule":"repeated","type":"Write","id":3},"streamToken":{"type":"bytes","id":4},"labels":{"keyType":"string","type":"string","id":5}}},"WriteResponse":{"fields":{"streamId":{"type":"string","id":1},"streamToken":{"type":"bytes","id":2},"writeResults":{"rule":"repeated","type":"WriteResult","id":3},"commitTime":{"type":"google.protobuf.Timestamp","id":4}}},"ListenRequest":{"oneofs":{"targetChange":{"oneof":["addTarget","removeTarget"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"addTarget":{"type":"Target","id":2},"removeTarget":{"type":"int32","id":3},"labels":{"keyType":"string","type":"string","id":4}}},"ListenResponse":{"oneofs":{"responseType":{"oneof":["targetChange","documentChange","documentDelete","documentRemove","filter"]}},"fields":{"targetChange":{"type":"TargetChange","id":2},"documentChange":{"type":"DocumentChange","id":3},"documentDelete":{"type":"DocumentDelete","id":4},"documentRemove":{"type":"DocumentRemove","id":6},"filter":{"type":"ExistenceFilter","id":5}}},"Target":{"oneofs":{"targetType":{"oneof":["query","documents"]},"resumeType":{"oneof":["resumeToken","readTime"]}},"fields":{"query":{"type":"QueryTarget","id":2},"documents":{"type":"DocumentsTarget","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":11},"targetId":{"type":"int32","id":5},"once":{"type":"bool","id":6},"expectedCount":{"type":"google.protobuf.Int32Value","id":12}},"nested":{"DocumentsTarget":{"fields":{"documents":{"rule":"repeated","type":"string","id":2}}},"QueryTarget":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"parent":{"type":"string","id":1},"structuredQuery":{"type":"StructuredQuery","id":2}}}}},"TargetChange":{"fields":{"targetChangeType":{"type":"TargetChangeType","id":1},"targetIds":{"rule":"repeated","type":"int32","id":2},"cause":{"type":"google.rpc.Status","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":6}},"nested":{"TargetChangeType":{"values":{"NO_CHANGE":0,"ADD":1,"REMOVE":2,"CURRENT":3,"RESET":4}}}},"ListCollectionIdsRequest":{"oneofs":{"consistencySelector":{"oneof":["readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"pageSize":{"type":"int32","id":2},"pageToken":{"type":"string","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"ListCollectionIdsResponse":{"fields":{"collectionIds":{"rule":"repeated","type":"string","id":1},"nextPageToken":{"type":"string","id":2}}},"BatchWriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"labels":{"keyType":"string","type":"string","id":3}}},"BatchWriteResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"status":{"rule":"repeated","type":"google.rpc.Status","id":2}}},"StructuredQuery":{"fields":{"select":{"type":"Projection","id":1},"from":{"rule":"repeated","type":"CollectionSelector","id":2},"where":{"type":"Filter","id":3},"orderBy":{"rule":"repeated","type":"Order","id":4},"startAt":{"type":"Cursor","id":7},"endAt":{"type":"Cursor","id":8},"offset":{"type":"int32","id":6},"limit":{"type":"google.protobuf.Int32Value","id":5},"findNearest":{"type":"FindNearest","id":9,"options":{"(google.api.field_behavior)":"OPTIONAL"}}},"nested":{"CollectionSelector":{"fields":{"collectionId":{"type":"string","id":2},"allDescendants":{"type":"bool","id":3}}},"Filter":{"oneofs":{"filterType":{"oneof":["compositeFilter","fieldFilter","unaryFilter"]}},"fields":{"compositeFilter":{"type":"CompositeFilter","id":1},"fieldFilter":{"type":"FieldFilter","id":2},"unaryFilter":{"type":"UnaryFilter","id":3}}},"CompositeFilter":{"fields":{"op":{"type":"Operator","id":1},"filters":{"rule":"repeated","type":"Filter","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"AND":1,"OR":2}}}},"FieldFilter":{"fields":{"field":{"type":"FieldReference","id":1},"op":{"type":"Operator","id":2},"value":{"type":"Value","id":3}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"LESS_THAN":1,"LESS_THAN_OR_EQUAL":2,"GREATER_THAN":3,"GREATER_THAN_OR_EQUAL":4,"EQUAL":5,"NOT_EQUAL":6,"ARRAY_CONTAINS":7,"IN":8,"ARRAY_CONTAINS_ANY":9,"NOT_IN":10}}}},"UnaryFilter":{"oneofs":{"operandType":{"oneof":["field"]}},"fields":{"op":{"type":"Operator","id":1},"field":{"type":"FieldReference","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"IS_NAN":2,"IS_NULL":3,"IS_NOT_NAN":4,"IS_NOT_NULL":5}}}},"Order":{"fields":{"field":{"type":"FieldReference","id":1},"direction":{"type":"Direction","id":2}}},"Direction":{"values":{"DIRECTION_UNSPECIFIED":0,"ASCENDING":1,"DESCENDING":2}},"FieldReference":{"fields":{"fieldPath":{"type":"string","id":2}}},"Projection":{"fields":{"fields":{"rule":"repeated","type":"FieldReference","id":2}}},"FindNearest":{"fields":{"vectorField":{"type":"FieldReference","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"queryVector":{"type":"Value","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"distanceMeasure":{"type":"DistanceMeasure","id":3,"options":{"(google.api.field_behavior)":"REQUIRED"}},"limit":{"type":"google.protobuf.Int32Value","id":4,"options":{"(google.api.field_behavior)":"REQUIRED"}}},"nested":{"DistanceMeasure":{"values":{"DISTANCE_MEASURE_UNSPECIFIED":0,"EUCLIDEAN":1,"COSINE":2,"DOT_PRODUCT":3}}}}}},"StructuredAggregationQuery":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"structuredQuery":{"type":"StructuredQuery","id":1},"aggregations":{"rule":"repeated","type":"Aggregation","id":3,"options":{"(google.api.field_behavior)":"OPTIONAL"}}},"nested":{"Aggregation":{"oneofs":{"operator":{"oneof":["count","sum","avg"]}},"fields":{"count":{"type":"Count","id":1},"sum":{"type":"Sum","id":2},"avg":{"type":"Avg","id":3},"alias":{"type":"string","id":7,"options":{"(google.api.field_behavior)":"OPTIONAL"}}},"nested":{"Count":{"fields":{"upTo":{"type":"google.protobuf.Int64Value","id":1,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"Sum":{"fields":{"field":{"type":"StructuredQuery.FieldReference","id":1}}},"Avg":{"fields":{"field":{"type":"StructuredQuery.FieldReference","id":1}}}}}}},"Cursor":{"fields":{"values":{"rule":"repeated","type":"Value","id":1},"before":{"type":"bool","id":2}}},"ExplainOptions":{"fields":{"analyze":{"type":"bool","id":1,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"ExplainMetrics":{"fields":{"planSummary":{"type":"PlanSummary","id":1},"executionStats":{"type":"ExecutionStats","id":2}}},"PlanSummary":{"fields":{"indexesUsed":{"rule":"repeated","type":"google.protobuf.Struct","id":1}}},"ExecutionStats":{"fields":{"resultsReturned":{"type":"int64","id":1},"executionDuration":{"type":"google.protobuf.Duration","id":3},"readOperations":{"type":"int64","id":4},"debugStats":{"type":"google.protobuf.Struct","id":5}}},"Write":{"oneofs":{"operation":{"oneof":["update","delete","transform"]}},"fields":{"update":{"type":"Document","id":1},"delete":{"type":"string","id":2},"transform":{"type":"DocumentTransform","id":6},"updateMask":{"type":"DocumentMask","id":3},"updateTransforms":{"rule":"repeated","type":"DocumentTransform.FieldTransform","id":7},"currentDocument":{"type":"Precondition","id":4}}},"DocumentTransform":{"fields":{"document":{"type":"string","id":1},"fieldTransforms":{"rule":"repeated","type":"FieldTransform","id":2}},"nested":{"FieldTransform":{"oneofs":{"transformType":{"oneof":["setToServerValue","increment","maximum","minimum","appendMissingElements","removeAllFromArray"]}},"fields":{"fieldPath":{"type":"string","id":1},"setToServerValue":{"type":"ServerValue","id":2},"increment":{"type":"Value","id":3},"maximum":{"type":"Value","id":4},"minimum":{"type":"Value","id":5},"appendMissingElements":{"type":"ArrayValue","id":6},"removeAllFromArray":{"type":"ArrayValue","id":7}},"nested":{"ServerValue":{"values":{"SERVER_VALUE_UNSPECIFIED":0,"REQUEST_TIME":1}}}}}},"WriteResult":{"fields":{"updateTime":{"type":"google.protobuf.Timestamp","id":1},"transformResults":{"rule":"repeated","type":"Value","id":2}}},"DocumentChange":{"fields":{"document":{"type":"Document","id":1},"targetIds":{"rule":"repeated","type":"int32","id":5},"removedTargetIds":{"rule":"repeated","type":"int32","id":6}}},"DocumentDelete":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"DocumentRemove":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":2},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"ExistenceFilter":{"fields":{"targetId":{"type":"int32","id":1},"count":{"type":"int32","id":2},"unchangedNames":{"type":"BloomFilter","id":3}}}}}}},"type":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/type/dayofweek;dayofweek","java_multiple_files":true,"java_outer_classname":"DayOfWeekProto","java_package":"com.google.type","objc_class_prefix":"GTP"},"nested":{"LatLng":{"fields":{"latitude":{"type":"double","id":1},"longitude":{"type":"double","id":2}}},"DayOfWeek":{"values":{"DAY_OF_WEEK_UNSPECIFIED":0,"MONDAY":1,"TUESDAY":2,"WEDNESDAY":3,"THURSDAY":4,"FRIDAY":5,"SATURDAY":6,"SUNDAY":7}}}},"api":{"options":{"go_package":"google.golang.org/genproto/googleapis/api/annotations;annotations","java_multiple_files":true,"java_outer_classname":"ResourceProto","java_package":"com.google.api","objc_class_prefix":"GAPI","cc_enable_arenas":true},"nested":{"http":{"type":"HttpRule","id":72295728,"extend":"google.protobuf.MethodOptions"},"Http":{"fields":{"rules":{"rule":"repeated","type":"HttpRule","id":1},"fullyDecodeReservedExpansion":{"type":"bool","id":2}}},"HttpRule":{"oneofs":{"pattern":{"oneof":["get","put","post","delete","patch","custom"]}},"fields":{"selector":{"type":"string","id":1},"get":{"type":"string","id":2},"put":{"type":"string","id":3},"post":{"type":"string","id":4},"delete":{"type":"string","id":5},"patch":{"type":"string","id":6},"custom":{"type":"CustomHttpPattern","id":8},"body":{"type":"string","id":7},"responseBody":{"type":"string","id":12},"additionalBindings":{"rule":"repeated","type":"HttpRule","id":11}}},"CustomHttpPattern":{"fields":{"kind":{"type":"string","id":1},"path":{"type":"string","id":2}}},"methodSignature":{"rule":"repeated","type":"string","id":1051,"extend":"google.protobuf.MethodOptions"},"defaultHost":{"type":"string","id":1049,"extend":"google.protobuf.ServiceOptions"},"oauthScopes":{"type":"string","id":1050,"extend":"google.protobuf.ServiceOptions"},"apiVersion":{"type":"string","id":525000001,"extend":"google.protobuf.ServiceOptions"},"CommonLanguageSettings":{"fields":{"referenceDocsUri":{"type":"string","id":1,"options":{"deprecated":true}},"destinations":{"rule":"repeated","type":"ClientLibraryDestination","id":2}}},"ClientLibrarySettings":{"fields":{"version":{"type":"string","id":1},"launchStage":{"type":"LaunchStage","id":2},"restNumericEnums":{"type":"bool","id":3},"javaSettings":{"type":"JavaSettings","id":21},"cppSettings":{"type":"CppSettings","id":22},"phpSettings":{"type":"PhpSettings","id":23},"pythonSettings":{"type":"PythonSettings","id":24},"nodeSettings":{"type":"NodeSettings","id":25},"dotnetSettings":{"type":"DotnetSettings","id":26},"rubySettings":{"type":"RubySettings","id":27},"goSettings":{"type":"GoSettings","id":28}}},"Publishing":{"fields":{"methodSettings":{"rule":"repeated","type":"MethodSettings","id":2},"newIssueUri":{"type":"string","id":101},"documentationUri":{"type":"string","id":102},"apiShortName":{"type":"string","id":103},"githubLabel":{"type":"string","id":104},"codeownerGithubTeams":{"rule":"repeated","type":"string","id":105},"docTagPrefix":{"type":"string","id":106},"organization":{"type":"ClientLibraryOrganization","id":107},"librarySettings":{"rule":"repeated","type":"ClientLibrarySettings","id":109},"protoReferenceDocumentationUri":{"type":"string","id":110},"restReferenceDocumentationUri":{"type":"string","id":111}}},"JavaSettings":{"fields":{"libraryPackage":{"type":"string","id":1},"serviceClassNames":{"keyType":"string","type":"string","id":2},"common":{"type":"CommonLanguageSettings","id":3}}},"CppSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PhpSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PythonSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"NodeSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"DotnetSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1},"renamedServices":{"keyType":"string","type":"string","id":2},"renamedResources":{"keyType":"string","type":"string","id":3},"ignoredResources":{"rule":"repeated","type":"string","id":4},"forcedNamespaceAliases":{"rule":"repeated","type":"string","id":5},"handwrittenSignatures":{"rule":"repeated","type":"string","id":6}}},"RubySettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"GoSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"MethodSettings":{"fields":{"selector":{"type":"string","id":1},"longRunning":{"type":"LongRunning","id":2},"autoPopulatedFields":{"rule":"repeated","type":"string","id":3}},"nested":{"LongRunning":{"fields":{"initialPollDelay":{"type":"google.protobuf.Duration","id":1},"pollDelayMultiplier":{"type":"float","id":2},"maxPollDelay":{"type":"google.protobuf.Duration","id":3},"totalPollTimeout":{"type":"google.protobuf.Duration","id":4}}}}},"ClientLibraryOrganization":{"values":{"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0,"CLOUD":1,"ADS":2,"PHOTOS":3,"STREET_VIEW":4,"SHOPPING":5,"GEO":6,"GENERATIVE_AI":7}},"ClientLibraryDestination":{"values":{"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":0,"GITHUB":10,"PACKAGE_MANAGER":20}},"LaunchStage":{"values":{"LAUNCH_STAGE_UNSPECIFIED":0,"UNIMPLEMENTED":6,"PRELAUNCH":7,"EARLY_ACCESS":1,"ALPHA":2,"BETA":3,"GA":4,"DEPRECATED":5}},"fieldBehavior":{"rule":"repeated","type":"google.api.FieldBehavior","id":1052,"extend":"google.protobuf.FieldOptions","options":{"packed":false}},"FieldBehavior":{"values":{"FIELD_BEHAVIOR_UNSPECIFIED":0,"OPTIONAL":1,"REQUIRED":2,"OUTPUT_ONLY":3,"INPUT_ONLY":4,"IMMUTABLE":5,"UNORDERED_LIST":6,"NON_EMPTY_DEFAULT":7,"IDENTIFIER":8}},"resourceReference":{"type":"google.api.ResourceReference","id":1055,"extend":"google.protobuf.FieldOptions"},"resourceDefinition":{"rule":"repeated","type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.FileOptions"},"resource":{"type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.MessageOptions"},"ResourceDescriptor":{"fields":{"type":{"type":"string","id":1},"pattern":{"rule":"repeated","type":"string","id":2},"nameField":{"type":"string","id":3},"history":{"type":"History","id":4},"plural":{"type":"string","id":5},"singular":{"type":"string","id":6},"style":{"rule":"repeated","type":"Style","id":10}},"nested":{"History":{"values":{"HISTORY_UNSPECIFIED":0,"ORIGINALLY_SINGLE_PATTERN":1,"FUTURE_MULTI_PATTERN":2}},"Style":{"values":{"STYLE_UNSPECIFIED":0,"DECLARATIVE_FRIENDLY":1}}}},"ResourceReference":{"fields":{"type":{"type":"string","id":1},"childType":{"type":"string","id":2}}}}},"rpc":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/rpc/status;status","java_multiple_files":true,"java_outer_classname":"StatusProto","java_package":"com.google.rpc","objc_class_prefix":"RPC"},"nested":{"Status":{"fields":{"code":{"type":"int32","id":1},"message":{"type":"string","id":2},"details":{"rule":"repeated","type":"google.protobuf.Any","id":3}}}}}}}}} | ||
{"nested":{"google":{"nested":{"protobuf":{"options":{"go_package":"google.golang.org/protobuf/types/descriptorpb","java_package":"com.google.protobuf","java_outer_classname":"DescriptorProtos","csharp_namespace":"Google.Protobuf.Reflection","objc_class_prefix":"GPB","cc_enable_arenas":true,"optimize_for":"SPEED"},"nested":{"Struct":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Value":{"oneofs":{"kind":{"oneof":["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},"fields":{"nullValue":{"type":"NullValue","id":1},"numberValue":{"type":"double","id":2},"stringValue":{"type":"string","id":3},"boolValue":{"type":"bool","id":4},"structValue":{"type":"Struct","id":5},"listValue":{"type":"ListValue","id":6}}},"NullValue":{"values":{"NULL_VALUE":0}},"ListValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"Timestamp":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"FileDescriptorSet":{"fields":{"file":{"rule":"repeated","type":"FileDescriptorProto","id":1}}},"Edition":{"values":{"EDITION_UNKNOWN":0,"EDITION_PROTO2":998,"EDITION_PROTO3":999,"EDITION_2023":1e3,"EDITION_2024":1001,"EDITION_1_TEST_ONLY":1,"EDITION_2_TEST_ONLY":2,"EDITION_99997_TEST_ONLY":99997,"EDITION_99998_TEST_ONLY":99998,"EDITION_99999_TEST_ONLY":99999,"EDITION_MAX":2147483647},"reserved":[[900,900]]},"FileDescriptorProto":{"fields":{"name":{"type":"string","id":1},"package":{"type":"string","id":2},"dependency":{"rule":"repeated","type":"string","id":3},"publicDependency":{"rule":"repeated","type":"int32","id":10,"options":{"packed":false}},"weakDependency":{"rule":"repeated","type":"int32","id":11,"options":{"packed":false}},"messageType":{"rule":"repeated","type":"DescriptorProto","id":4},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":5},"service":{"rule":"repeated","type":"ServiceDescriptorProto","id":6},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":7},"options":{"type":"FileOptions","id":8},"sourceCodeInfo":{"type":"SourceCodeInfo","id":9},"syntax":{"type":"string","id":12},"edition":{"type":"Edition","id":14}}},"DescriptorProto":{"fields":{"name":{"type":"string","id":1},"field":{"rule":"repeated","type":"FieldDescriptorProto","id":2},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":6},"nestedType":{"rule":"repeated","type":"DescriptorProto","id":3},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":4},"extensionRange":{"rule":"repeated","type":"ExtensionRange","id":5},"oneofDecl":{"rule":"repeated","type":"OneofDescriptorProto","id":8},"options":{"type":"MessageOptions","id":7},"reservedRange":{"rule":"repeated","type":"ReservedRange","id":9},"reservedName":{"rule":"repeated","type":"string","id":10}},"nested":{"ExtensionRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2},"options":{"type":"ExtensionRangeOptions","id":3}}},"ReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"ExtensionRangeOptions":{"fields":{"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999},"declaration":{"rule":"repeated","type":"Declaration","id":2,"options":{"retention":"RETENTION_SOURCE"}},"features":{"type":"FeatureSet","id":50},"verification":{"type":"VerificationState","id":3,"options":{"default":"UNVERIFIED","retention":"RETENTION_SOURCE"}}},"extensions":[[1e3,536870911]],"nested":{"Declaration":{"fields":{"number":{"type":"int32","id":1},"fullName":{"type":"string","id":2},"type":{"type":"string","id":3},"reserved":{"type":"bool","id":5},"repeated":{"type":"bool","id":6}},"reserved":[[4,4]]},"VerificationState":{"values":{"DECLARATION":0,"UNVERIFIED":1}}}},"FieldDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":3},"label":{"type":"Label","id":4},"type":{"type":"Type","id":5},"typeName":{"type":"string","id":6},"extendee":{"type":"string","id":2},"defaultValue":{"type":"string","id":7},"oneofIndex":{"type":"int32","id":9},"jsonName":{"type":"string","id":10},"options":{"type":"FieldOptions","id":8},"proto3Optional":{"type":"bool","id":17}},"nested":{"Type":{"values":{"TYPE_DOUBLE":1,"TYPE_FLOAT":2,"TYPE_INT64":3,"TYPE_UINT64":4,"TYPE_INT32":5,"TYPE_FIXED64":6,"TYPE_FIXED32":7,"TYPE_BOOL":8,"TYPE_STRING":9,"TYPE_GROUP":10,"TYPE_MESSAGE":11,"TYPE_BYTES":12,"TYPE_UINT32":13,"TYPE_ENUM":14,"TYPE_SFIXED32":15,"TYPE_SFIXED64":16,"TYPE_SINT32":17,"TYPE_SINT64":18}},"Label":{"values":{"LABEL_OPTIONAL":1,"LABEL_REPEATED":3,"LABEL_REQUIRED":2}}}},"OneofDescriptorProto":{"fields":{"name":{"type":"string","id":1},"options":{"type":"OneofOptions","id":2}}},"EnumDescriptorProto":{"fields":{"name":{"type":"string","id":1},"value":{"rule":"repeated","type":"EnumValueDescriptorProto","id":2},"options":{"type":"EnumOptions","id":3},"reservedRange":{"rule":"repeated","type":"EnumReservedRange","id":4},"reservedName":{"rule":"repeated","type":"string","id":5}},"nested":{"EnumReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"EnumValueDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":2},"options":{"type":"EnumValueOptions","id":3}}},"ServiceDescriptorProto":{"fields":{"name":{"type":"string","id":1},"method":{"rule":"repeated","type":"MethodDescriptorProto","id":2},"options":{"type":"ServiceOptions","id":3}}},"MethodDescriptorProto":{"fields":{"name":{"type":"string","id":1},"inputType":{"type":"string","id":2},"outputType":{"type":"string","id":3},"options":{"type":"MethodOptions","id":4},"clientStreaming":{"type":"bool","id":5,"options":{"default":false}},"serverStreaming":{"type":"bool","id":6,"options":{"default":false}}}},"FileOptions":{"fields":{"javaPackage":{"type":"string","id":1},"javaOuterClassname":{"type":"string","id":8},"javaMultipleFiles":{"type":"bool","id":10,"options":{"default":false}},"javaGenerateEqualsAndHash":{"type":"bool","id":20,"options":{"deprecated":true}},"javaStringCheckUtf8":{"type":"bool","id":27,"options":{"default":false}},"optimizeFor":{"type":"OptimizeMode","id":9,"options":{"default":"SPEED"}},"goPackage":{"type":"string","id":11},"ccGenericServices":{"type":"bool","id":16,"options":{"default":false}},"javaGenericServices":{"type":"bool","id":17,"options":{"default":false}},"pyGenericServices":{"type":"bool","id":18,"options":{"default":false}},"deprecated":{"type":"bool","id":23,"options":{"default":false}},"ccEnableArenas":{"type":"bool","id":31,"options":{"default":true}},"objcClassPrefix":{"type":"string","id":36},"csharpNamespace":{"type":"string","id":37},"swiftPrefix":{"type":"string","id":39},"phpClassPrefix":{"type":"string","id":40},"phpNamespace":{"type":"string","id":41},"phpMetadataNamespace":{"type":"string","id":44},"rubyPackage":{"type":"string","id":45},"features":{"type":"FeatureSet","id":50},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[42,42],[38,38]],"nested":{"OptimizeMode":{"values":{"SPEED":1,"CODE_SIZE":2,"LITE_RUNTIME":3}}}},"MessageOptions":{"fields":{"messageSetWireFormat":{"type":"bool","id":1,"options":{"default":false}},"noStandardDescriptorAccessor":{"type":"bool","id":2,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"mapEntry":{"type":"bool","id":7},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":11,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":12},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[5,5],[6,6],[8,8],[9,9]]},"FieldOptions":{"fields":{"ctype":{"type":"CType","id":1,"options":{"default":"STRING"}},"packed":{"type":"bool","id":2},"jstype":{"type":"JSType","id":6,"options":{"default":"JS_NORMAL"}},"lazy":{"type":"bool","id":5,"options":{"default":false}},"unverifiedLazy":{"type":"bool","id":15,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"weak":{"type":"bool","id":10,"options":{"default":false}},"debugRedact":{"type":"bool","id":16,"options":{"default":false}},"retention":{"type":"OptionRetention","id":17},"targets":{"rule":"repeated","type":"OptionTargetType","id":19,"options":{"packed":false}},"editionDefaults":{"rule":"repeated","type":"EditionDefault","id":20},"features":{"type":"FeatureSet","id":21},"featureSupport":{"type":"FeatureSupport","id":22},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[18,18]],"nested":{"CType":{"values":{"STRING":0,"CORD":1,"STRING_PIECE":2}},"JSType":{"values":{"JS_NORMAL":0,"JS_STRING":1,"JS_NUMBER":2}},"OptionRetention":{"values":{"RETENTION_UNKNOWN":0,"RETENTION_RUNTIME":1,"RETENTION_SOURCE":2}},"OptionTargetType":{"values":{"TARGET_TYPE_UNKNOWN":0,"TARGET_TYPE_FILE":1,"TARGET_TYPE_EXTENSION_RANGE":2,"TARGET_TYPE_MESSAGE":3,"TARGET_TYPE_FIELD":4,"TARGET_TYPE_ONEOF":5,"TARGET_TYPE_ENUM":6,"TARGET_TYPE_ENUM_ENTRY":7,"TARGET_TYPE_SERVICE":8,"TARGET_TYPE_METHOD":9}},"EditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"value":{"type":"string","id":2}}},"FeatureSupport":{"fields":{"editionIntroduced":{"type":"Edition","id":1},"editionDeprecated":{"type":"Edition","id":2},"deprecationWarning":{"type":"string","id":3},"editionRemoved":{"type":"Edition","id":4}}}}},"OneofOptions":{"fields":{"features":{"type":"FeatureSet","id":1},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"EnumOptions":{"fields":{"allowAlias":{"type":"bool","id":2},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":6,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":7},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[5,5]]},"EnumValueOptions":{"fields":{"deprecated":{"type":"bool","id":1,"options":{"default":false}},"features":{"type":"FeatureSet","id":2},"debugRedact":{"type":"bool","id":3,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"ServiceOptions":{"fields":{"features":{"type":"FeatureSet","id":34},"deprecated":{"type":"bool","id":33,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"MethodOptions":{"fields":{"deprecated":{"type":"bool","id":33,"options":{"default":false}},"idempotencyLevel":{"type":"IdempotencyLevel","id":34,"options":{"default":"IDEMPOTENCY_UNKNOWN"}},"features":{"type":"FeatureSet","id":35},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"nested":{"IdempotencyLevel":{"values":{"IDEMPOTENCY_UNKNOWN":0,"NO_SIDE_EFFECTS":1,"IDEMPOTENT":2}}}},"UninterpretedOption":{"fields":{"name":{"rule":"repeated","type":"NamePart","id":2},"identifierValue":{"type":"string","id":3},"positiveIntValue":{"type":"uint64","id":4},"negativeIntValue":{"type":"int64","id":5},"doubleValue":{"type":"double","id":6},"stringValue":{"type":"bytes","id":7},"aggregateValue":{"type":"string","id":8}},"nested":{"NamePart":{"fields":{"namePart":{"rule":"required","type":"string","id":1},"isExtension":{"rule":"required","type":"bool","id":2}}}}},"FeatureSet":{"fields":{"fieldPresence":{"type":"FieldPresence","id":1,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_2023","edition_defaults.value":"EXPLICIT"}},"enumType":{"type":"EnumType","id":2,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"OPEN"}},"repeatedFieldEncoding":{"type":"RepeatedFieldEncoding","id":3,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"PACKED"}},"utf8Validation":{"type":"Utf8Validation","id":4,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"VERIFY"}},"messageEncoding":{"type":"MessageEncoding","id":5,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO2","edition_defaults.value":"LENGTH_PREFIXED"}},"jsonFormat":{"type":"JsonFormat","id":6,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"ALLOW"}}},"extensions":[[1e3,1e3],[1001,1001],[1002,1002],[9990,9990],[9995,9999],[1e4,1e4]],"reserved":[[999,999]],"nested":{"FieldPresence":{"values":{"FIELD_PRESENCE_UNKNOWN":0,"EXPLICIT":1,"IMPLICIT":2,"LEGACY_REQUIRED":3}},"EnumType":{"values":{"ENUM_TYPE_UNKNOWN":0,"OPEN":1,"CLOSED":2}},"RepeatedFieldEncoding":{"values":{"REPEATED_FIELD_ENCODING_UNKNOWN":0,"PACKED":1,"EXPANDED":2}},"Utf8Validation":{"values":{"UTF8_VALIDATION_UNKNOWN":0,"VERIFY":2,"NONE":3}},"MessageEncoding":{"values":{"MESSAGE_ENCODING_UNKNOWN":0,"LENGTH_PREFIXED":1,"DELIMITED":2}},"JsonFormat":{"values":{"JSON_FORMAT_UNKNOWN":0,"ALLOW":1,"LEGACY_BEST_EFFORT":2}}}},"FeatureSetDefaults":{"fields":{"defaults":{"rule":"repeated","type":"FeatureSetEditionDefault","id":1},"minimumEdition":{"type":"Edition","id":4},"maximumEdition":{"type":"Edition","id":5}},"nested":{"FeatureSetEditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"overridableFeatures":{"type":"FeatureSet","id":4},"fixedFeatures":{"type":"FeatureSet","id":5},"features":{"type":"FeatureSet","id":2}}}}},"SourceCodeInfo":{"fields":{"location":{"rule":"repeated","type":"Location","id":1}},"nested":{"Location":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"span":{"rule":"repeated","type":"int32","id":2},"leadingComments":{"type":"string","id":3},"trailingComments":{"type":"string","id":4},"leadingDetachedComments":{"rule":"repeated","type":"string","id":6}}}}},"GeneratedCodeInfo":{"fields":{"annotation":{"rule":"repeated","type":"Annotation","id":1}},"nested":{"Annotation":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"sourceFile":{"type":"string","id":2},"begin":{"type":"int32","id":3},"end":{"type":"int32","id":4},"semantic":{"type":"Semantic","id":5}},"nested":{"Semantic":{"values":{"NONE":0,"SET":1,"ALIAS":2}}}}}},"Duration":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"DoubleValue":{"fields":{"value":{"type":"double","id":1}}},"FloatValue":{"fields":{"value":{"type":"float","id":1}}},"Int64Value":{"fields":{"value":{"type":"int64","id":1}}},"UInt64Value":{"fields":{"value":{"type":"uint64","id":1}}},"Int32Value":{"fields":{"value":{"type":"int32","id":1}}},"UInt32Value":{"fields":{"value":{"type":"uint32","id":1}}},"BoolValue":{"fields":{"value":{"type":"bool","id":1}}},"StringValue":{"fields":{"value":{"type":"string","id":1}}},"BytesValue":{"fields":{"value":{"type":"bytes","id":1}}},"Empty":{"fields":{}},"Any":{"fields":{"type_url":{"type":"string","id":1},"value":{"type":"bytes","id":2}}},"FieldMask":{"fields":{"paths":{"rule":"repeated","type":"string","id":1}}}}},"firestore":{"nested":{"v1":{"options":{"csharp_namespace":"Google.Cloud.Firestore.V1","go_package":"cloud.google.com/go/firestore/apiv1/firestorepb;firestorepb","java_multiple_files":true,"java_outer_classname":"WriteProto","java_package":"com.google.firestore.v1","objc_class_prefix":"GCFS","php_namespace":"Google\\Cloud\\Firestore\\V1","ruby_package":"Google::Cloud::Firestore::V1"},"nested":{"AggregationResult":{"fields":{"aggregateFields":{"keyType":"string","type":"Value","id":2}}},"Document":{"fields":{"name":{"type":"string","id":1},"fields":{"keyType":"string","type":"Value","id":2},"createTime":{"type":"google.protobuf.Timestamp","id":3},"updateTime":{"type":"google.protobuf.Timestamp","id":4}}},"Value":{"oneofs":{"valueType":{"oneof":["nullValue","booleanValue","integerValue","doubleValue","timestampValue","stringValue","bytesValue","referenceValue","geoPointValue","arrayValue","mapValue"]}},"fields":{"nullValue":{"type":"google.protobuf.NullValue","id":11},"booleanValue":{"type":"bool","id":1},"integerValue":{"type":"int64","id":2},"doubleValue":{"type":"double","id":3},"timestampValue":{"type":"google.protobuf.Timestamp","id":10},"stringValue":{"type":"string","id":17},"bytesValue":{"type":"bytes","id":18},"referenceValue":{"type":"string","id":5},"geoPointValue":{"type":"google.type.LatLng","id":8},"arrayValue":{"type":"ArrayValue","id":9},"mapValue":{"type":"MapValue","id":6}}},"ArrayValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"MapValue":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"BitSequence":{"fields":{"bitmap":{"type":"bytes","id":1},"padding":{"type":"int32","id":2}}},"BloomFilter":{"fields":{"bits":{"type":"BitSequence","id":1},"hashCount":{"type":"int32","id":2}}},"DocumentMask":{"fields":{"fieldPaths":{"rule":"repeated","type":"string","id":1}}},"Precondition":{"oneofs":{"conditionType":{"oneof":["exists","updateTime"]}},"fields":{"exists":{"type":"bool","id":1},"updateTime":{"type":"google.protobuf.Timestamp","id":2}}},"TransactionOptions":{"oneofs":{"mode":{"oneof":["readOnly","readWrite"]}},"fields":{"readOnly":{"type":"ReadOnly","id":2},"readWrite":{"type":"ReadWrite","id":3}},"nested":{"ReadWrite":{"fields":{"retryTransaction":{"type":"bytes","id":1}}},"ReadOnly":{"oneofs":{"consistencySelector":{"oneof":["readTime"]}},"fields":{"readTime":{"type":"google.protobuf.Timestamp","id":2}}}}},"Firestore":{"options":{"(google.api.default_host)":"firestore.googleapis.com","(google.api.oauth_scopes)":"https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastore"},"methods":{"GetDocument":{"requestType":"GetDocumentRequest","responseType":"Document","options":{"(google.api.http).get":"/v1/{name=projects/*/databases/*/documents/*/**}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{name=projects/*/databases/*/documents/*/**}"}}]},"ListDocuments":{"requestType":"ListDocumentsRequest","responseType":"ListDocumentsResponse","options":{"(google.api.http).get":"/v1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}","(google.api.http).additional_bindings.get":"/v1/{parent=projects/*/databases/*/documents}/{collection_id}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}","additional_bindings":{"get":"/v1/{parent=projects/*/databases/*/documents}/{collection_id}"}}}]},"UpdateDocument":{"requestType":"UpdateDocumentRequest","responseType":"Document","options":{"(google.api.http).patch":"/v1/{document.name=projects/*/databases/*/documents/*/**}","(google.api.http).body":"document","(google.api.method_signature)":"document,update_mask"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1/{document.name=projects/*/databases/*/documents/*/**}","body":"document"}},{"(google.api.method_signature)":"document,update_mask"}]},"DeleteDocument":{"requestType":"DeleteDocumentRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1/{name=projects/*/databases/*/documents/*/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1/{name=projects/*/databases/*/documents/*/**}"}},{"(google.api.method_signature)":"name"}]},"BatchGetDocuments":{"requestType":"BatchGetDocumentsRequest","responseType":"BatchGetDocumentsResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:batchGet","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:batchGet","body":"*"}}]},"BeginTransaction":{"requestType":"BeginTransactionRequest","responseType":"BeginTransactionResponse","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:beginTransaction","(google.api.http).body":"*","(google.api.method_signature)":"database"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:beginTransaction","body":"*"}},{"(google.api.method_signature)":"database"}]},"Commit":{"requestType":"CommitRequest","responseType":"CommitResponse","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:commit","(google.api.http).body":"*","(google.api.method_signature)":"database,writes"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:commit","body":"*"}},{"(google.api.method_signature)":"database,writes"}]},"Rollback":{"requestType":"RollbackRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:rollback","(google.api.http).body":"*","(google.api.method_signature)":"database,transaction"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:rollback","body":"*"}},{"(google.api.method_signature)":"database,transaction"}]},"RunQuery":{"requestType":"RunQueryRequest","responseType":"RunQueryResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:runQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:runQuery","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runQuery","body":"*"}}}]},"RunAggregationQuery":{"requestType":"RunAggregationQueryRequest","responseType":"RunAggregationQueryResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:runAggregationQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runAggregationQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:runAggregationQuery","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:runAggregationQuery","body":"*"}}}]},"PartitionQuery":{"requestType":"PartitionQueryRequest","responseType":"PartitionQueryResponse","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:partitionQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:partitionQuery","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","body":"*"}}}]},"Write":{"requestType":"WriteRequest","requestStream":true,"responseType":"WriteResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:write","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:write","body":"*"}}]},"Listen":{"requestType":"ListenRequest","requestStream":true,"responseType":"ListenResponse","responseStream":true,"options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:listen","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:listen","body":"*"}}]},"ListCollectionIds":{"requestType":"ListCollectionIdsRequest","responseType":"ListCollectionIdsResponse","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents}:listCollectionIds","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","(google.api.http).additional_bindings.body":"*","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents}:listCollectionIds","body":"*","additional_bindings":{"post":"/v1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","body":"*"}}},{"(google.api.method_signature)":"parent"}]},"BatchWrite":{"requestType":"BatchWriteRequest","responseType":"BatchWriteResponse","options":{"(google.api.http).post":"/v1/{database=projects/*/databases/*}/documents:batchWrite","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{database=projects/*/databases/*}/documents:batchWrite","body":"*"}}]},"CreateDocument":{"requestType":"CreateDocumentRequest","responseType":"Document","options":{"(google.api.http).post":"/v1/{parent=projects/*/databases/*/documents/**}/{collection_id}","(google.api.http).body":"document"},"parsedOptions":[{"(google.api.http)":{"post":"/v1/{parent=projects/*/databases/*/documents/**}/{collection_id}","body":"document"}}]}}},"GetDocumentRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":5}}},"ListDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"pageSize":{"type":"int32","id":3,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"pageToken":{"type":"string","id":4,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"orderBy":{"type":"string","id":6,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"mask":{"type":"DocumentMask","id":7,"options":{"(google.api.field_behavior)":"OPTIONAL"}},"transaction":{"type":"bytes","id":8},"readTime":{"type":"google.protobuf.Timestamp","id":10},"showMissing":{"type":"bool","id":12}}},"ListDocumentsResponse":{"fields":{"documents":{"rule":"repeated","type":"Document","id":1},"nextPageToken":{"type":"string","id":2}}},"CreateDocumentRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documentId":{"type":"string","id":3},"document":{"type":"Document","id":4,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":5}}},"UpdateDocumentRequest":{"fields":{"document":{"type":"Document","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"DocumentMask","id":2},"mask":{"type":"DocumentMask","id":3},"currentDocument":{"type":"Precondition","id":4}}},"DeleteDocumentRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"currentDocument":{"type":"Precondition","id":2}}},"BatchGetDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documents":{"rule":"repeated","type":"string","id":2},"mask":{"type":"DocumentMask","id":3},"transaction":{"type":"bytes","id":4},"newTransaction":{"type":"TransactionOptions","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":7}}},"BatchGetDocumentsResponse":{"oneofs":{"result":{"oneof":["found","missing"]}},"fields":{"found":{"type":"Document","id":1},"missing":{"type":"string","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"BeginTransactionRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"options":{"type":"TransactionOptions","id":2}}},"BeginTransactionResponse":{"fields":{"transaction":{"type":"bytes","id":1}}},"CommitRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"transaction":{"type":"bytes","id":3}}},"CommitResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"commitTime":{"type":"google.protobuf.Timestamp","id":2}}},"RollbackRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"transaction":{"type":"bytes","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"RunQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]},"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"transaction":{"type":"bytes","id":5},"newTransaction":{"type":"TransactionOptions","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":7},"explainOptions":{"type":"ExplainOptions","id":10,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"RunQueryResponse":{"oneofs":{"continuationSelector":{"oneof":["done"]}},"fields":{"transaction":{"type":"bytes","id":2},"document":{"type":"Document","id":1},"readTime":{"type":"google.protobuf.Timestamp","id":3},"skippedResults":{"type":"int32","id":4},"done":{"type":"bool","id":6},"explainMetrics":{"type":"ExplainMetrics","id":11}}},"RunAggregationQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredAggregationQuery"]},"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredAggregationQuery":{"type":"StructuredAggregationQuery","id":2},"transaction":{"type":"bytes","id":4},"newTransaction":{"type":"TransactionOptions","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":6},"explainOptions":{"type":"ExplainOptions","id":8,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"RunAggregationQueryResponse":{"fields":{"result":{"type":"AggregationResult","id":1},"transaction":{"type":"bytes","id":2},"readTime":{"type":"google.protobuf.Timestamp","id":3},"explainMetrics":{"type":"ExplainMetrics","id":10}}},"PartitionQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]},"consistencySelector":{"oneof":["readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"partitionCount":{"type":"int64","id":3},"pageToken":{"type":"string","id":4},"pageSize":{"type":"int32","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":6}}},"PartitionQueryResponse":{"fields":{"partitions":{"rule":"repeated","type":"Cursor","id":1},"nextPageToken":{"type":"string","id":2}}},"WriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"streamId":{"type":"string","id":2},"writes":{"rule":"repeated","type":"Write","id":3},"streamToken":{"type":"bytes","id":4},"labels":{"keyType":"string","type":"string","id":5}}},"WriteResponse":{"fields":{"streamId":{"type":"string","id":1},"streamToken":{"type":"bytes","id":2},"writeResults":{"rule":"repeated","type":"WriteResult","id":3},"commitTime":{"type":"google.protobuf.Timestamp","id":4}}},"ListenRequest":{"oneofs":{"targetChange":{"oneof":["addTarget","removeTarget"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"addTarget":{"type":"Target","id":2},"removeTarget":{"type":"int32","id":3},"labels":{"keyType":"string","type":"string","id":4}}},"ListenResponse":{"oneofs":{"responseType":{"oneof":["targetChange","documentChange","documentDelete","documentRemove","filter"]}},"fields":{"targetChange":{"type":"TargetChange","id":2},"documentChange":{"type":"DocumentChange","id":3},"documentDelete":{"type":"DocumentDelete","id":4},"documentRemove":{"type":"DocumentRemove","id":6},"filter":{"type":"ExistenceFilter","id":5}}},"Target":{"oneofs":{"targetType":{"oneof":["query","documents"]},"resumeType":{"oneof":["resumeToken","readTime"]}},"fields":{"query":{"type":"QueryTarget","id":2},"documents":{"type":"DocumentsTarget","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":11},"targetId":{"type":"int32","id":5},"once":{"type":"bool","id":6},"expectedCount":{"type":"google.protobuf.Int32Value","id":12}},"nested":{"DocumentsTarget":{"fields":{"documents":{"rule":"repeated","type":"string","id":2}}},"QueryTarget":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"parent":{"type":"string","id":1},"structuredQuery":{"type":"StructuredQuery","id":2}}}}},"TargetChange":{"fields":{"targetChangeType":{"type":"TargetChangeType","id":1},"targetIds":{"rule":"repeated","type":"int32","id":2},"cause":{"type":"google.rpc.Status","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":6}},"nested":{"TargetChangeType":{"values":{"NO_CHANGE":0,"ADD":1,"REMOVE":2,"CURRENT":3,"RESET":4}}}},"ListCollectionIdsRequest":{"oneofs":{"consistencySelector":{"oneof":["readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"pageSize":{"type":"int32","id":2},"pageToken":{"type":"string","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"ListCollectionIdsResponse":{"fields":{"collectionIds":{"rule":"repeated","type":"string","id":1},"nextPageToken":{"type":"string","id":2}}},"BatchWriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"labels":{"keyType":"string","type":"string","id":3}}},"BatchWriteResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"status":{"rule":"repeated","type":"google.rpc.Status","id":2}}},"StructuredQuery":{"fields":{"select":{"type":"Projection","id":1},"from":{"rule":"repeated","type":"CollectionSelector","id":2},"where":{"type":"Filter","id":3},"orderBy":{"rule":"repeated","type":"Order","id":4},"startAt":{"type":"Cursor","id":7},"endAt":{"type":"Cursor","id":8},"offset":{"type":"int32","id":6},"limit":{"type":"google.protobuf.Int32Value","id":5},"findNearest":{"type":"FindNearest","id":9,"options":{"(google.api.field_behavior)":"OPTIONAL"}}},"nested":{"CollectionSelector":{"fields":{"collectionId":{"type":"string","id":2},"allDescendants":{"type":"bool","id":3}}},"Filter":{"oneofs":{"filterType":{"oneof":["compositeFilter","fieldFilter","unaryFilter"]}},"fields":{"compositeFilter":{"type":"CompositeFilter","id":1},"fieldFilter":{"type":"FieldFilter","id":2},"unaryFilter":{"type":"UnaryFilter","id":3}}},"CompositeFilter":{"fields":{"op":{"type":"Operator","id":1},"filters":{"rule":"repeated","type":"Filter","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"AND":1,"OR":2}}}},"FieldFilter":{"fields":{"field":{"type":"FieldReference","id":1},"op":{"type":"Operator","id":2},"value":{"type":"Value","id":3}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"LESS_THAN":1,"LESS_THAN_OR_EQUAL":2,"GREATER_THAN":3,"GREATER_THAN_OR_EQUAL":4,"EQUAL":5,"NOT_EQUAL":6,"ARRAY_CONTAINS":7,"IN":8,"ARRAY_CONTAINS_ANY":9,"NOT_IN":10}}}},"UnaryFilter":{"oneofs":{"operandType":{"oneof":["field"]}},"fields":{"op":{"type":"Operator","id":1},"field":{"type":"FieldReference","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"IS_NAN":2,"IS_NULL":3,"IS_NOT_NAN":4,"IS_NOT_NULL":5}}}},"Order":{"fields":{"field":{"type":"FieldReference","id":1},"direction":{"type":"Direction","id":2}}},"Direction":{"values":{"DIRECTION_UNSPECIFIED":0,"ASCENDING":1,"DESCENDING":2}},"FieldReference":{"fields":{"fieldPath":{"type":"string","id":2}}},"Projection":{"fields":{"fields":{"rule":"repeated","type":"FieldReference","id":2}}},"FindNearest":{"fields":{"vectorField":{"type":"FieldReference","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"queryVector":{"type":"Value","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"distanceMeasure":{"type":"DistanceMeasure","id":3,"options":{"(google.api.field_behavior)":"REQUIRED"}},"limit":{"type":"google.protobuf.Int32Value","id":4,"options":{"(google.api.field_behavior)":"REQUIRED"}}},"nested":{"DistanceMeasure":{"values":{"DISTANCE_MEASURE_UNSPECIFIED":0,"EUCLIDEAN":1,"COSINE":2,"DOT_PRODUCT":3}}}}}},"StructuredAggregationQuery":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"structuredQuery":{"type":"StructuredQuery","id":1},"aggregations":{"rule":"repeated","type":"Aggregation","id":3,"options":{"(google.api.field_behavior)":"OPTIONAL"}}},"nested":{"Aggregation":{"oneofs":{"operator":{"oneof":["count","sum","avg"]}},"fields":{"count":{"type":"Count","id":1},"sum":{"type":"Sum","id":2},"avg":{"type":"Avg","id":3},"alias":{"type":"string","id":7,"options":{"(google.api.field_behavior)":"OPTIONAL"}}},"nested":{"Count":{"fields":{"upTo":{"type":"google.protobuf.Int64Value","id":1,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"Sum":{"fields":{"field":{"type":"StructuredQuery.FieldReference","id":1}}},"Avg":{"fields":{"field":{"type":"StructuredQuery.FieldReference","id":1}}}}}}},"Cursor":{"fields":{"values":{"rule":"repeated","type":"Value","id":1},"before":{"type":"bool","id":2}}},"ExplainOptions":{"fields":{"analyze":{"type":"bool","id":1,"options":{"(google.api.field_behavior)":"OPTIONAL"}}}},"ExplainMetrics":{"fields":{"planSummary":{"type":"PlanSummary","id":1},"executionStats":{"type":"ExecutionStats","id":2}}},"PlanSummary":{"fields":{"indexesUsed":{"rule":"repeated","type":"google.protobuf.Struct","id":1}}},"ExecutionStats":{"fields":{"resultsReturned":{"type":"int64","id":1},"executionDuration":{"type":"google.protobuf.Duration","id":3},"readOperations":{"type":"int64","id":4},"debugStats":{"type":"google.protobuf.Struct","id":5}}},"Write":{"oneofs":{"operation":{"oneof":["update","delete","transform"]}},"fields":{"update":{"type":"Document","id":1},"delete":{"type":"string","id":2},"transform":{"type":"DocumentTransform","id":6},"updateMask":{"type":"DocumentMask","id":3},"updateTransforms":{"rule":"repeated","type":"DocumentTransform.FieldTransform","id":7},"currentDocument":{"type":"Precondition","id":4}}},"DocumentTransform":{"fields":{"document":{"type":"string","id":1},"fieldTransforms":{"rule":"repeated","type":"FieldTransform","id":2}},"nested":{"FieldTransform":{"oneofs":{"transformType":{"oneof":["setToServerValue","increment","maximum","minimum","appendMissingElements","removeAllFromArray"]}},"fields":{"fieldPath":{"type":"string","id":1},"setToServerValue":{"type":"ServerValue","id":2},"increment":{"type":"Value","id":3},"maximum":{"type":"Value","id":4},"minimum":{"type":"Value","id":5},"appendMissingElements":{"type":"ArrayValue","id":6},"removeAllFromArray":{"type":"ArrayValue","id":7}},"nested":{"ServerValue":{"values":{"SERVER_VALUE_UNSPECIFIED":0,"REQUEST_TIME":1}}}}}},"WriteResult":{"fields":{"updateTime":{"type":"google.protobuf.Timestamp","id":1},"transformResults":{"rule":"repeated","type":"Value","id":2}}},"DocumentChange":{"fields":{"document":{"type":"Document","id":1},"targetIds":{"rule":"repeated","type":"int32","id":5},"removedTargetIds":{"rule":"repeated","type":"int32","id":6}}},"DocumentDelete":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"DocumentRemove":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":2},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"ExistenceFilter":{"fields":{"targetId":{"type":"int32","id":1},"count":{"type":"int32","id":2},"unchangedNames":{"type":"BloomFilter","id":3}}}}}}},"type":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/type/dayofweek;dayofweek","java_multiple_files":true,"java_outer_classname":"DayOfWeekProto","java_package":"com.google.type","objc_class_prefix":"GTP"},"nested":{"LatLng":{"fields":{"latitude":{"type":"double","id":1},"longitude":{"type":"double","id":2}}},"DayOfWeek":{"values":{"DAY_OF_WEEK_UNSPECIFIED":0,"MONDAY":1,"TUESDAY":2,"WEDNESDAY":3,"THURSDAY":4,"FRIDAY":5,"SATURDAY":6,"SUNDAY":7}}}},"api":{"options":{"go_package":"google.golang.org/genproto/googleapis/api/annotations;annotations","java_multiple_files":true,"java_outer_classname":"ResourceProto","java_package":"com.google.api","objc_class_prefix":"GAPI","cc_enable_arenas":true},"nested":{"http":{"type":"HttpRule","id":72295728,"extend":"google.protobuf.MethodOptions"},"Http":{"fields":{"rules":{"rule":"repeated","type":"HttpRule","id":1},"fullyDecodeReservedExpansion":{"type":"bool","id":2}}},"HttpRule":{"oneofs":{"pattern":{"oneof":["get","put","post","delete","patch","custom"]}},"fields":{"selector":{"type":"string","id":1},"get":{"type":"string","id":2},"put":{"type":"string","id":3},"post":{"type":"string","id":4},"delete":{"type":"string","id":5},"patch":{"type":"string","id":6},"custom":{"type":"CustomHttpPattern","id":8},"body":{"type":"string","id":7},"responseBody":{"type":"string","id":12},"additionalBindings":{"rule":"repeated","type":"HttpRule","id":11}}},"CustomHttpPattern":{"fields":{"kind":{"type":"string","id":1},"path":{"type":"string","id":2}}},"methodSignature":{"rule":"repeated","type":"string","id":1051,"extend":"google.protobuf.MethodOptions"},"defaultHost":{"type":"string","id":1049,"extend":"google.protobuf.ServiceOptions"},"oauthScopes":{"type":"string","id":1050,"extend":"google.protobuf.ServiceOptions"},"apiVersion":{"type":"string","id":525000001,"extend":"google.protobuf.ServiceOptions"},"CommonLanguageSettings":{"fields":{"referenceDocsUri":{"type":"string","id":1,"options":{"deprecated":true}},"destinations":{"rule":"repeated","type":"ClientLibraryDestination","id":2}}},"ClientLibrarySettings":{"fields":{"version":{"type":"string","id":1},"launchStage":{"type":"LaunchStage","id":2},"restNumericEnums":{"type":"bool","id":3},"javaSettings":{"type":"JavaSettings","id":21},"cppSettings":{"type":"CppSettings","id":22},"phpSettings":{"type":"PhpSettings","id":23},"pythonSettings":{"type":"PythonSettings","id":24},"nodeSettings":{"type":"NodeSettings","id":25},"dotnetSettings":{"type":"DotnetSettings","id":26},"rubySettings":{"type":"RubySettings","id":27},"goSettings":{"type":"GoSettings","id":28}}},"Publishing":{"fields":{"methodSettings":{"rule":"repeated","type":"MethodSettings","id":2},"newIssueUri":{"type":"string","id":101},"documentationUri":{"type":"string","id":102},"apiShortName":{"type":"string","id":103},"githubLabel":{"type":"string","id":104},"codeownerGithubTeams":{"rule":"repeated","type":"string","id":105},"docTagPrefix":{"type":"string","id":106},"organization":{"type":"ClientLibraryOrganization","id":107},"librarySettings":{"rule":"repeated","type":"ClientLibrarySettings","id":109},"protoReferenceDocumentationUri":{"type":"string","id":110},"restReferenceDocumentationUri":{"type":"string","id":111}}},"JavaSettings":{"fields":{"libraryPackage":{"type":"string","id":1},"serviceClassNames":{"keyType":"string","type":"string","id":2},"common":{"type":"CommonLanguageSettings","id":3}}},"CppSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PhpSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PythonSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"NodeSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"DotnetSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1},"renamedServices":{"keyType":"string","type":"string","id":2},"renamedResources":{"keyType":"string","type":"string","id":3},"ignoredResources":{"rule":"repeated","type":"string","id":4},"forcedNamespaceAliases":{"rule":"repeated","type":"string","id":5},"handwrittenSignatures":{"rule":"repeated","type":"string","id":6}}},"RubySettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"GoSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"MethodSettings":{"fields":{"selector":{"type":"string","id":1},"longRunning":{"type":"LongRunning","id":2},"autoPopulatedFields":{"rule":"repeated","type":"string","id":3}},"nested":{"LongRunning":{"fields":{"initialPollDelay":{"type":"google.protobuf.Duration","id":1},"pollDelayMultiplier":{"type":"float","id":2},"maxPollDelay":{"type":"google.protobuf.Duration","id":3},"totalPollTimeout":{"type":"google.protobuf.Duration","id":4}}}}},"ClientLibraryOrganization":{"values":{"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0,"CLOUD":1,"ADS":2,"PHOTOS":3,"STREET_VIEW":4,"SHOPPING":5,"GEO":6,"GENERATIVE_AI":7}},"ClientLibraryDestination":{"values":{"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":0,"GITHUB":10,"PACKAGE_MANAGER":20}},"LaunchStage":{"values":{"LAUNCH_STAGE_UNSPECIFIED":0,"UNIMPLEMENTED":6,"PRELAUNCH":7,"EARLY_ACCESS":1,"ALPHA":2,"BETA":3,"GA":4,"DEPRECATED":5}},"fieldBehavior":{"rule":"repeated","type":"google.api.FieldBehavior","id":1052,"extend":"google.protobuf.FieldOptions","options":{"packed":false}},"FieldBehavior":{"values":{"FIELD_BEHAVIOR_UNSPECIFIED":0,"OPTIONAL":1,"REQUIRED":2,"OUTPUT_ONLY":3,"INPUT_ONLY":4,"IMMUTABLE":5,"UNORDERED_LIST":6,"NON_EMPTY_DEFAULT":7,"IDENTIFIER":8}},"resourceReference":{"type":"google.api.ResourceReference","id":1055,"extend":"google.protobuf.FieldOptions"},"resourceDefinition":{"rule":"repeated","type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.FileOptions"},"resource":{"type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.MessageOptions"},"ResourceDescriptor":{"fields":{"type":{"type":"string","id":1},"pattern":{"rule":"repeated","type":"string","id":2},"nameField":{"type":"string","id":3},"history":{"type":"History","id":4},"plural":{"type":"string","id":5},"singular":{"type":"string","id":6},"style":{"rule":"repeated","type":"Style","id":10}},"nested":{"History":{"values":{"HISTORY_UNSPECIFIED":0,"ORIGINALLY_SINGLE_PATTERN":1,"FUTURE_MULTI_PATTERN":2}},"Style":{"values":{"STYLE_UNSPECIFIED":0,"DECLARATIVE_FRIENDLY":1}}}},"ResourceReference":{"fields":{"type":{"type":"string","id":1},"childType":{"type":"string","id":2}}}}},"rpc":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/rpc/status;status","java_multiple_files":true,"java_outer_classname":"StatusProto","java_package":"com.google.rpc","objc_class_prefix":"RPC"},"nested":{"Status":{"fields":{"code":{"type":"int32","id":1},"message":{"type":"string","id":2},"details":{"rule":"repeated","type":"google.protobuf.Any","id":3}}}}}}}}} |
@@ -1,1 +0,1 @@ | ||
{"nested":{"google":{"nested":{"protobuf":{"options":{"go_package":"google.golang.org/protobuf/types/descriptorpb","java_package":"com.google.protobuf","java_outer_classname":"DescriptorProtos","csharp_namespace":"Google.Protobuf.Reflection","objc_class_prefix":"GPB","cc_enable_arenas":true,"optimize_for":"SPEED"},"nested":{"Timestamp":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"Struct":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Value":{"oneofs":{"kind":{"oneof":["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},"fields":{"nullValue":{"type":"NullValue","id":1},"numberValue":{"type":"double","id":2},"stringValue":{"type":"string","id":3},"boolValue":{"type":"bool","id":4},"structValue":{"type":"Struct","id":5},"listValue":{"type":"ListValue","id":6}}},"NullValue":{"values":{"NULL_VALUE":0}},"ListValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"FileDescriptorSet":{"fields":{"file":{"rule":"repeated","type":"FileDescriptorProto","id":1}}},"Edition":{"values":{"EDITION_UNKNOWN":0,"EDITION_PROTO2":998,"EDITION_PROTO3":999,"EDITION_2023":1e3,"EDITION_2024":1001,"EDITION_1_TEST_ONLY":1,"EDITION_2_TEST_ONLY":2,"EDITION_99997_TEST_ONLY":99997,"EDITION_99998_TEST_ONLY":99998,"EDITION_99999_TEST_ONLY":99999,"EDITION_MAX":2147483647}},"FileDescriptorProto":{"fields":{"name":{"type":"string","id":1},"package":{"type":"string","id":2},"dependency":{"rule":"repeated","type":"string","id":3},"publicDependency":{"rule":"repeated","type":"int32","id":10,"options":{"packed":false}},"weakDependency":{"rule":"repeated","type":"int32","id":11,"options":{"packed":false}},"messageType":{"rule":"repeated","type":"DescriptorProto","id":4},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":5},"service":{"rule":"repeated","type":"ServiceDescriptorProto","id":6},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":7},"options":{"type":"FileOptions","id":8},"sourceCodeInfo":{"type":"SourceCodeInfo","id":9},"syntax":{"type":"string","id":12},"edition":{"type":"Edition","id":14}}},"DescriptorProto":{"fields":{"name":{"type":"string","id":1},"field":{"rule":"repeated","type":"FieldDescriptorProto","id":2},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":6},"nestedType":{"rule":"repeated","type":"DescriptorProto","id":3},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":4},"extensionRange":{"rule":"repeated","type":"ExtensionRange","id":5},"oneofDecl":{"rule":"repeated","type":"OneofDescriptorProto","id":8},"options":{"type":"MessageOptions","id":7},"reservedRange":{"rule":"repeated","type":"ReservedRange","id":9},"reservedName":{"rule":"repeated","type":"string","id":10}},"nested":{"ExtensionRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2},"options":{"type":"ExtensionRangeOptions","id":3}}},"ReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"ExtensionRangeOptions":{"fields":{"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999},"declaration":{"rule":"repeated","type":"Declaration","id":2,"options":{"retention":"RETENTION_SOURCE"}},"features":{"type":"FeatureSet","id":50},"verification":{"type":"VerificationState","id":3,"options":{"default":"UNVERIFIED","retention":"RETENTION_SOURCE"}}},"extensions":[[1e3,536870911]],"nested":{"Declaration":{"fields":{"number":{"type":"int32","id":1},"fullName":{"type":"string","id":2},"type":{"type":"string","id":3},"reserved":{"type":"bool","id":5},"repeated":{"type":"bool","id":6}},"reserved":[[4,4]]},"VerificationState":{"values":{"DECLARATION":0,"UNVERIFIED":1}}}},"FieldDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":3},"label":{"type":"Label","id":4},"type":{"type":"Type","id":5},"typeName":{"type":"string","id":6},"extendee":{"type":"string","id":2},"defaultValue":{"type":"string","id":7},"oneofIndex":{"type":"int32","id":9},"jsonName":{"type":"string","id":10},"options":{"type":"FieldOptions","id":8},"proto3Optional":{"type":"bool","id":17}},"nested":{"Type":{"values":{"TYPE_DOUBLE":1,"TYPE_FLOAT":2,"TYPE_INT64":3,"TYPE_UINT64":4,"TYPE_INT32":5,"TYPE_FIXED64":6,"TYPE_FIXED32":7,"TYPE_BOOL":8,"TYPE_STRING":9,"TYPE_GROUP":10,"TYPE_MESSAGE":11,"TYPE_BYTES":12,"TYPE_UINT32":13,"TYPE_ENUM":14,"TYPE_SFIXED32":15,"TYPE_SFIXED64":16,"TYPE_SINT32":17,"TYPE_SINT64":18}},"Label":{"values":{"LABEL_OPTIONAL":1,"LABEL_REPEATED":3,"LABEL_REQUIRED":2}}}},"OneofDescriptorProto":{"fields":{"name":{"type":"string","id":1},"options":{"type":"OneofOptions","id":2}}},"EnumDescriptorProto":{"fields":{"name":{"type":"string","id":1},"value":{"rule":"repeated","type":"EnumValueDescriptorProto","id":2},"options":{"type":"EnumOptions","id":3},"reservedRange":{"rule":"repeated","type":"EnumReservedRange","id":4},"reservedName":{"rule":"repeated","type":"string","id":5}},"nested":{"EnumReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"EnumValueDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":2},"options":{"type":"EnumValueOptions","id":3}}},"ServiceDescriptorProto":{"fields":{"name":{"type":"string","id":1},"method":{"rule":"repeated","type":"MethodDescriptorProto","id":2},"options":{"type":"ServiceOptions","id":3}}},"MethodDescriptorProto":{"fields":{"name":{"type":"string","id":1},"inputType":{"type":"string","id":2},"outputType":{"type":"string","id":3},"options":{"type":"MethodOptions","id":4},"clientStreaming":{"type":"bool","id":5,"options":{"default":false}},"serverStreaming":{"type":"bool","id":6,"options":{"default":false}}}},"FileOptions":{"fields":{"javaPackage":{"type":"string","id":1},"javaOuterClassname":{"type":"string","id":8},"javaMultipleFiles":{"type":"bool","id":10,"options":{"default":false}},"javaGenerateEqualsAndHash":{"type":"bool","id":20,"options":{"deprecated":true}},"javaStringCheckUtf8":{"type":"bool","id":27,"options":{"default":false}},"optimizeFor":{"type":"OptimizeMode","id":9,"options":{"default":"SPEED"}},"goPackage":{"type":"string","id":11},"ccGenericServices":{"type":"bool","id":16,"options":{"default":false}},"javaGenericServices":{"type":"bool","id":17,"options":{"default":false}},"pyGenericServices":{"type":"bool","id":18,"options":{"default":false}},"deprecated":{"type":"bool","id":23,"options":{"default":false}},"ccEnableArenas":{"type":"bool","id":31,"options":{"default":true}},"objcClassPrefix":{"type":"string","id":36},"csharpNamespace":{"type":"string","id":37},"swiftPrefix":{"type":"string","id":39},"phpClassPrefix":{"type":"string","id":40},"phpNamespace":{"type":"string","id":41},"phpMetadataNamespace":{"type":"string","id":44},"rubyPackage":{"type":"string","id":45},"features":{"type":"FeatureSet","id":50},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[42,42],[38,38]],"nested":{"OptimizeMode":{"values":{"SPEED":1,"CODE_SIZE":2,"LITE_RUNTIME":3}}}},"MessageOptions":{"fields":{"messageSetWireFormat":{"type":"bool","id":1,"options":{"default":false}},"noStandardDescriptorAccessor":{"type":"bool","id":2,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"mapEntry":{"type":"bool","id":7},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":11,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":12},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[5,5],[6,6],[8,8],[9,9]]},"FieldOptions":{"fields":{"ctype":{"type":"CType","id":1,"options":{"default":"STRING"}},"packed":{"type":"bool","id":2},"jstype":{"type":"JSType","id":6,"options":{"default":"JS_NORMAL"}},"lazy":{"type":"bool","id":5,"options":{"default":false}},"unverifiedLazy":{"type":"bool","id":15,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"weak":{"type":"bool","id":10,"options":{"default":false}},"debugRedact":{"type":"bool","id":16,"options":{"default":false}},"retention":{"type":"OptionRetention","id":17},"targets":{"rule":"repeated","type":"OptionTargetType","id":19,"options":{"packed":false}},"editionDefaults":{"rule":"repeated","type":"EditionDefault","id":20},"features":{"type":"FeatureSet","id":21},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[18,18]],"nested":{"CType":{"values":{"STRING":0,"CORD":1,"STRING_PIECE":2}},"JSType":{"values":{"JS_NORMAL":0,"JS_STRING":1,"JS_NUMBER":2}},"OptionRetention":{"values":{"RETENTION_UNKNOWN":0,"RETENTION_RUNTIME":1,"RETENTION_SOURCE":2}},"OptionTargetType":{"values":{"TARGET_TYPE_UNKNOWN":0,"TARGET_TYPE_FILE":1,"TARGET_TYPE_EXTENSION_RANGE":2,"TARGET_TYPE_MESSAGE":3,"TARGET_TYPE_FIELD":4,"TARGET_TYPE_ONEOF":5,"TARGET_TYPE_ENUM":6,"TARGET_TYPE_ENUM_ENTRY":7,"TARGET_TYPE_SERVICE":8,"TARGET_TYPE_METHOD":9}},"EditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"value":{"type":"string","id":2}}}}},"OneofOptions":{"fields":{"features":{"type":"FeatureSet","id":1},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"EnumOptions":{"fields":{"allowAlias":{"type":"bool","id":2},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":6,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":7},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[5,5]]},"EnumValueOptions":{"fields":{"deprecated":{"type":"bool","id":1,"options":{"default":false}},"features":{"type":"FeatureSet","id":2},"debugRedact":{"type":"bool","id":3,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"ServiceOptions":{"fields":{"features":{"type":"FeatureSet","id":34},"deprecated":{"type":"bool","id":33,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"MethodOptions":{"fields":{"deprecated":{"type":"bool","id":33,"options":{"default":false}},"idempotencyLevel":{"type":"IdempotencyLevel","id":34,"options":{"default":"IDEMPOTENCY_UNKNOWN"}},"features":{"type":"FeatureSet","id":35},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"nested":{"IdempotencyLevel":{"values":{"IDEMPOTENCY_UNKNOWN":0,"NO_SIDE_EFFECTS":1,"IDEMPOTENT":2}}}},"UninterpretedOption":{"fields":{"name":{"rule":"repeated","type":"NamePart","id":2},"identifierValue":{"type":"string","id":3},"positiveIntValue":{"type":"uint64","id":4},"negativeIntValue":{"type":"int64","id":5},"doubleValue":{"type":"double","id":6},"stringValue":{"type":"bytes","id":7},"aggregateValue":{"type":"string","id":8}},"nested":{"NamePart":{"fields":{"namePart":{"rule":"required","type":"string","id":1},"isExtension":{"rule":"required","type":"bool","id":2}}}}},"FeatureSet":{"fields":{"fieldPresence":{"type":"FieldPresence","id":1,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_2023","edition_defaults.value":"EXPLICIT"}},"enumType":{"type":"EnumType","id":2,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"OPEN"}},"repeatedFieldEncoding":{"type":"RepeatedFieldEncoding","id":3,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"PACKED"}},"utf8Validation":{"type":"Utf8Validation","id":4,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"VERIFY"}},"messageEncoding":{"type":"MessageEncoding","id":5,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO2","edition_defaults.value":"LENGTH_PREFIXED"}},"jsonFormat":{"type":"JsonFormat","id":6,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"ALLOW"}}},"extensions":[[1e3,1e3],[1001,1001],[1002,1002],[9990,9990],[9995,9999],[1e4,1e4]],"reserved":[[999,999]],"nested":{"FieldPresence":{"values":{"FIELD_PRESENCE_UNKNOWN":0,"EXPLICIT":1,"IMPLICIT":2,"LEGACY_REQUIRED":3}},"EnumType":{"values":{"ENUM_TYPE_UNKNOWN":0,"OPEN":1,"CLOSED":2}},"RepeatedFieldEncoding":{"values":{"REPEATED_FIELD_ENCODING_UNKNOWN":0,"PACKED":1,"EXPANDED":2}},"Utf8Validation":{"values":{"UTF8_VALIDATION_UNKNOWN":0,"VERIFY":2,"NONE":3}},"MessageEncoding":{"values":{"MESSAGE_ENCODING_UNKNOWN":0,"LENGTH_PREFIXED":1,"DELIMITED":2}},"JsonFormat":{"values":{"JSON_FORMAT_UNKNOWN":0,"ALLOW":1,"LEGACY_BEST_EFFORT":2}}}},"FeatureSetDefaults":{"fields":{"defaults":{"rule":"repeated","type":"FeatureSetEditionDefault","id":1},"minimumEdition":{"type":"Edition","id":4},"maximumEdition":{"type":"Edition","id":5}},"nested":{"FeatureSetEditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"features":{"type":"FeatureSet","id":2}}}}},"SourceCodeInfo":{"fields":{"location":{"rule":"repeated","type":"Location","id":1}},"nested":{"Location":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"span":{"rule":"repeated","type":"int32","id":2},"leadingComments":{"type":"string","id":3},"trailingComments":{"type":"string","id":4},"leadingDetachedComments":{"rule":"repeated","type":"string","id":6}}}}},"GeneratedCodeInfo":{"fields":{"annotation":{"rule":"repeated","type":"Annotation","id":1}},"nested":{"Annotation":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"sourceFile":{"type":"string","id":2},"begin":{"type":"int32","id":3},"end":{"type":"int32","id":4},"semantic":{"type":"Semantic","id":5}},"nested":{"Semantic":{"values":{"NONE":0,"SET":1,"ALIAS":2}}}}}},"Duration":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"DoubleValue":{"fields":{"value":{"type":"double","id":1}}},"FloatValue":{"fields":{"value":{"type":"float","id":1}}},"Int64Value":{"fields":{"value":{"type":"int64","id":1}}},"UInt64Value":{"fields":{"value":{"type":"uint64","id":1}}},"Int32Value":{"fields":{"value":{"type":"int32","id":1}}},"UInt32Value":{"fields":{"value":{"type":"uint32","id":1}}},"BoolValue":{"fields":{"value":{"type":"bool","id":1}}},"StringValue":{"fields":{"value":{"type":"string","id":1}}},"BytesValue":{"fields":{"value":{"type":"bytes","id":1}}},"Empty":{"fields":{}},"Any":{"fields":{"type_url":{"type":"string","id":1},"value":{"type":"bytes","id":2}}},"FieldMask":{"fields":{"paths":{"rule":"repeated","type":"string","id":1}}}}},"firestore":{"nested":{"v1beta1":{"options":{"csharp_namespace":"Google.Cloud.Firestore.V1Beta1","go_package":"cloud.google.com/go/firestore/apiv1beta1/firestorepb;firestorepb","java_multiple_files":true,"java_outer_classname":"UndeliverableFirstGenEventProto","java_package":"com.google.firestore.v1beta1","objc_class_prefix":"GCFS","php_namespace":"Google\\Cloud\\Firestore\\V1beta1","ruby_package":"Google::Cloud::Firestore::V1beta1"},"nested":{"DocumentMask":{"fields":{"fieldPaths":{"rule":"repeated","type":"string","id":1}}},"Precondition":{"oneofs":{"conditionType":{"oneof":["exists","updateTime"]}},"fields":{"exists":{"type":"bool","id":1},"updateTime":{"type":"google.protobuf.Timestamp","id":2}}},"TransactionOptions":{"oneofs":{"mode":{"oneof":["readOnly","readWrite"]}},"fields":{"readOnly":{"type":"ReadOnly","id":2},"readWrite":{"type":"ReadWrite","id":3}},"nested":{"ReadWrite":{"fields":{"retryTransaction":{"type":"bytes","id":1}}},"ReadOnly":{"oneofs":{"consistencySelector":{"oneof":["readTime"]}},"fields":{"readTime":{"type":"google.protobuf.Timestamp","id":2}}}}},"Document":{"fields":{"name":{"type":"string","id":1},"fields":{"keyType":"string","type":"Value","id":2},"createTime":{"type":"google.protobuf.Timestamp","id":3},"updateTime":{"type":"google.protobuf.Timestamp","id":4}}},"Value":{"oneofs":{"valueType":{"oneof":["nullValue","booleanValue","integerValue","doubleValue","timestampValue","stringValue","bytesValue","referenceValue","geoPointValue","arrayValue","mapValue"]}},"fields":{"nullValue":{"type":"google.protobuf.NullValue","id":11},"booleanValue":{"type":"bool","id":1},"integerValue":{"type":"int64","id":2},"doubleValue":{"type":"double","id":3},"timestampValue":{"type":"google.protobuf.Timestamp","id":10},"stringValue":{"type":"string","id":17},"bytesValue":{"type":"bytes","id":18},"referenceValue":{"type":"string","id":5},"geoPointValue":{"type":"google.type.LatLng","id":8},"arrayValue":{"type":"ArrayValue","id":9},"mapValue":{"type":"MapValue","id":6}}},"ArrayValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"MapValue":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Firestore":{"options":{"(google.api.default_host)":"firestore.googleapis.com","(google.api.oauth_scopes)":"https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastore"},"methods":{"GetDocument":{"requestType":"GetDocumentRequest","responseType":"Document","options":{"(google.api.http).get":"/v1beta1/{name=projects/*/databases/*/documents/*/**}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1beta1/{name=projects/*/databases/*/documents/*/**}"}}]},"ListDocuments":{"requestType":"ListDocumentsRequest","responseType":"ListDocumentsResponse","options":{"(google.api.http).get":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}"}}]},"UpdateDocument":{"requestType":"UpdateDocumentRequest","responseType":"Document","options":{"(google.api.http).patch":"/v1beta1/{document.name=projects/*/databases/*/documents/*/**}","(google.api.http).body":"document","(google.api.method_signature)":"document,update_mask"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1beta1/{document.name=projects/*/databases/*/documents/*/**}","body":"document"}},{"(google.api.method_signature)":"document,update_mask"}]},"DeleteDocument":{"requestType":"DeleteDocumentRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1beta1/{name=projects/*/databases/*/documents/*/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1beta1/{name=projects/*/databases/*/documents/*/**}"}},{"(google.api.method_signature)":"name"}]},"BatchGetDocuments":{"requestType":"BatchGetDocumentsRequest","responseType":"BatchGetDocumentsResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:batchGet","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:batchGet","body":"*"}}]},"BeginTransaction":{"requestType":"BeginTransactionRequest","responseType":"BeginTransactionResponse","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:beginTransaction","(google.api.http).body":"*","(google.api.method_signature)":"database"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:beginTransaction","body":"*"}},{"(google.api.method_signature)":"database"}]},"Commit":{"requestType":"CommitRequest","responseType":"CommitResponse","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:commit","(google.api.http).body":"*","(google.api.method_signature)":"database,writes"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:commit","body":"*"}},{"(google.api.method_signature)":"database,writes"}]},"Rollback":{"requestType":"RollbackRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:rollback","(google.api.http).body":"*","(google.api.method_signature)":"database,transaction"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:rollback","body":"*"}},{"(google.api.method_signature)":"database,transaction"}]},"RunQuery":{"requestType":"RunQueryRequest","responseType":"RunQueryResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents}:runQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:runQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents}:runQuery","body":"*","additional_bindings":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:runQuery","body":"*"}}}]},"PartitionQuery":{"requestType":"PartitionQueryRequest","responseType":"PartitionQueryResponse","options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents}:partitionQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents}:partitionQuery","body":"*","additional_bindings":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","body":"*"}}}]},"Write":{"requestType":"WriteRequest","requestStream":true,"responseType":"WriteResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:write","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:write","body":"*"}}]},"Listen":{"requestType":"ListenRequest","requestStream":true,"responseType":"ListenResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:listen","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:listen","body":"*"}}]},"ListCollectionIds":{"requestType":"ListCollectionIdsRequest","responseType":"ListCollectionIdsResponse","options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents}:listCollectionIds","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","(google.api.http).additional_bindings.body":"*","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents}:listCollectionIds","body":"*","additional_bindings":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","body":"*"}}},{"(google.api.method_signature)":"parent"}]},"BatchWrite":{"requestType":"BatchWriteRequest","responseType":"BatchWriteResponse","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:batchWrite","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:batchWrite","body":"*"}}]},"CreateDocument":{"requestType":"CreateDocumentRequest","responseType":"Document","options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents/**}/{collection_id}","(google.api.http).body":"document"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/**}/{collection_id}","body":"document"}}]}}},"GetDocumentRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":5}}},"ListDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"pageSize":{"type":"int32","id":3},"pageToken":{"type":"string","id":4},"orderBy":{"type":"string","id":6},"mask":{"type":"DocumentMask","id":7},"transaction":{"type":"bytes","id":8},"readTime":{"type":"google.protobuf.Timestamp","id":10},"showMissing":{"type":"bool","id":12}}},"ListDocumentsResponse":{"fields":{"documents":{"rule":"repeated","type":"Document","id":1},"nextPageToken":{"type":"string","id":2}}},"CreateDocumentRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documentId":{"type":"string","id":3},"document":{"type":"Document","id":4,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":5}}},"UpdateDocumentRequest":{"fields":{"document":{"type":"Document","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"DocumentMask","id":2},"mask":{"type":"DocumentMask","id":3},"currentDocument":{"type":"Precondition","id":4}}},"DeleteDocumentRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"currentDocument":{"type":"Precondition","id":2}}},"BatchGetDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documents":{"rule":"repeated","type":"string","id":2},"mask":{"type":"DocumentMask","id":3},"transaction":{"type":"bytes","id":4},"newTransaction":{"type":"TransactionOptions","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":7}}},"BatchGetDocumentsResponse":{"oneofs":{"result":{"oneof":["found","missing"]}},"fields":{"found":{"type":"Document","id":1},"missing":{"type":"string","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"BeginTransactionRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"options":{"type":"TransactionOptions","id":2}}},"BeginTransactionResponse":{"fields":{"transaction":{"type":"bytes","id":1}}},"CommitRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"transaction":{"type":"bytes","id":3}}},"CommitResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"commitTime":{"type":"google.protobuf.Timestamp","id":2}}},"RollbackRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"transaction":{"type":"bytes","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"RunQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]},"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"transaction":{"type":"bytes","id":5},"newTransaction":{"type":"TransactionOptions","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":7}}},"RunQueryResponse":{"fields":{"transaction":{"type":"bytes","id":2},"document":{"type":"Document","id":1},"readTime":{"type":"google.protobuf.Timestamp","id":3},"skippedResults":{"type":"int32","id":4}}},"PartitionQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"partitionCount":{"type":"int64","id":3},"pageToken":{"type":"string","id":4},"pageSize":{"type":"int32","id":5}}},"PartitionQueryResponse":{"fields":{"partitions":{"rule":"repeated","type":"Cursor","id":1},"nextPageToken":{"type":"string","id":2}}},"WriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"streamId":{"type":"string","id":2},"writes":{"rule":"repeated","type":"Write","id":3},"streamToken":{"type":"bytes","id":4},"labels":{"keyType":"string","type":"string","id":5}}},"WriteResponse":{"fields":{"streamId":{"type":"string","id":1},"streamToken":{"type":"bytes","id":2},"writeResults":{"rule":"repeated","type":"WriteResult","id":3},"commitTime":{"type":"google.protobuf.Timestamp","id":4}}},"ListenRequest":{"oneofs":{"targetChange":{"oneof":["addTarget","removeTarget"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"addTarget":{"type":"Target","id":2},"removeTarget":{"type":"int32","id":3},"labels":{"keyType":"string","type":"string","id":4}}},"ListenResponse":{"oneofs":{"responseType":{"oneof":["targetChange","documentChange","documentDelete","documentRemove","filter"]}},"fields":{"targetChange":{"type":"TargetChange","id":2},"documentChange":{"type":"DocumentChange","id":3},"documentDelete":{"type":"DocumentDelete","id":4},"documentRemove":{"type":"DocumentRemove","id":6},"filter":{"type":"ExistenceFilter","id":5}}},"Target":{"oneofs":{"targetType":{"oneof":["query","documents"]},"resumeType":{"oneof":["resumeToken","readTime"]}},"fields":{"query":{"type":"QueryTarget","id":2},"documents":{"type":"DocumentsTarget","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":11},"targetId":{"type":"int32","id":5},"once":{"type":"bool","id":6}},"nested":{"DocumentsTarget":{"fields":{"documents":{"rule":"repeated","type":"string","id":2}}},"QueryTarget":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"parent":{"type":"string","id":1},"structuredQuery":{"type":"StructuredQuery","id":2}}}}},"TargetChange":{"fields":{"targetChangeType":{"type":"TargetChangeType","id":1},"targetIds":{"rule":"repeated","type":"int32","id":2},"cause":{"type":"google.rpc.Status","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":6}},"nested":{"TargetChangeType":{"values":{"NO_CHANGE":0,"ADD":1,"REMOVE":2,"CURRENT":3,"RESET":4}}}},"ListCollectionIdsRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"pageSize":{"type":"int32","id":2},"pageToken":{"type":"string","id":3}}},"ListCollectionIdsResponse":{"fields":{"collectionIds":{"rule":"repeated","type":"string","id":1},"nextPageToken":{"type":"string","id":2}}},"BatchWriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"labels":{"keyType":"string","type":"string","id":3}}},"BatchWriteResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"status":{"rule":"repeated","type":"google.rpc.Status","id":2}}},"StructuredQuery":{"fields":{"select":{"type":"Projection","id":1},"from":{"rule":"repeated","type":"CollectionSelector","id":2},"where":{"type":"Filter","id":3},"orderBy":{"rule":"repeated","type":"Order","id":4},"startAt":{"type":"Cursor","id":7},"endAt":{"type":"Cursor","id":8},"offset":{"type":"int32","id":6},"limit":{"type":"google.protobuf.Int32Value","id":5}},"nested":{"CollectionSelector":{"fields":{"collectionId":{"type":"string","id":2},"allDescendants":{"type":"bool","id":3}}},"Filter":{"oneofs":{"filterType":{"oneof":["compositeFilter","fieldFilter","unaryFilter"]}},"fields":{"compositeFilter":{"type":"CompositeFilter","id":1},"fieldFilter":{"type":"FieldFilter","id":2},"unaryFilter":{"type":"UnaryFilter","id":3}}},"CompositeFilter":{"fields":{"op":{"type":"Operator","id":1},"filters":{"rule":"repeated","type":"Filter","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"AND":1}}}},"FieldFilter":{"fields":{"field":{"type":"FieldReference","id":1},"op":{"type":"Operator","id":2},"value":{"type":"Value","id":3}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"LESS_THAN":1,"LESS_THAN_OR_EQUAL":2,"GREATER_THAN":3,"GREATER_THAN_OR_EQUAL":4,"EQUAL":5,"NOT_EQUAL":6,"ARRAY_CONTAINS":7,"IN":8,"ARRAY_CONTAINS_ANY":9,"NOT_IN":10}}}},"UnaryFilter":{"oneofs":{"operandType":{"oneof":["field"]}},"fields":{"op":{"type":"Operator","id":1},"field":{"type":"FieldReference","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"IS_NAN":2,"IS_NULL":3,"IS_NOT_NAN":4,"IS_NOT_NULL":5}}}},"FieldReference":{"fields":{"fieldPath":{"type":"string","id":2}}},"Order":{"fields":{"field":{"type":"FieldReference","id":1},"direction":{"type":"Direction","id":2}}},"Projection":{"fields":{"fields":{"rule":"repeated","type":"FieldReference","id":2}}},"Direction":{"values":{"DIRECTION_UNSPECIFIED":0,"ASCENDING":1,"DESCENDING":2}}}},"Cursor":{"fields":{"values":{"rule":"repeated","type":"Value","id":1},"before":{"type":"bool","id":2}}},"Write":{"oneofs":{"operation":{"oneof":["update","delete","transform"]}},"fields":{"update":{"type":"Document","id":1},"delete":{"type":"string","id":2},"transform":{"type":"DocumentTransform","id":6},"updateMask":{"type":"DocumentMask","id":3},"updateTransforms":{"rule":"repeated","type":"DocumentTransform.FieldTransform","id":7},"currentDocument":{"type":"Precondition","id":4}}},"DocumentTransform":{"fields":{"document":{"type":"string","id":1},"fieldTransforms":{"rule":"repeated","type":"FieldTransform","id":2}},"nested":{"FieldTransform":{"oneofs":{"transformType":{"oneof":["setToServerValue","increment","maximum","minimum","appendMissingElements","removeAllFromArray"]}},"fields":{"fieldPath":{"type":"string","id":1},"setToServerValue":{"type":"ServerValue","id":2},"increment":{"type":"Value","id":3},"maximum":{"type":"Value","id":4},"minimum":{"type":"Value","id":5},"appendMissingElements":{"type":"ArrayValue","id":6},"removeAllFromArray":{"type":"ArrayValue","id":7}},"nested":{"ServerValue":{"values":{"SERVER_VALUE_UNSPECIFIED":0,"REQUEST_TIME":1}}}}}},"WriteResult":{"fields":{"updateTime":{"type":"google.protobuf.Timestamp","id":1},"transformResults":{"rule":"repeated","type":"Value","id":2}}},"DocumentChange":{"fields":{"document":{"type":"Document","id":1},"targetIds":{"rule":"repeated","type":"int32","id":5},"removedTargetIds":{"rule":"repeated","type":"int32","id":6}}},"DocumentDelete":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"DocumentRemove":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":2},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"ExistenceFilter":{"fields":{"targetId":{"type":"int32","id":1},"count":{"type":"int32","id":2}}},"UndeliverableFirstGenEvent":{"fields":{"message":{"type":"string","id":1},"reason":{"type":"Reason","id":2},"documentName":{"type":"string","id":3},"documentChangeType":{"type":"DocumentChangeType","id":4},"functionName":{"rule":"repeated","type":"string","id":5},"triggeredTime":{"type":"google.protobuf.Timestamp","id":6}},"nested":{"Reason":{"values":{"REASON_UNSPECIFIED":0,"EXCEEDING_SIZE_LIMIT":1}},"DocumentChangeType":{"values":{"DOCUMENT_CHANGE_TYPE_UNSPECIFIED":0,"CREATE":1,"DELETE":2,"UPDATE":3}}}}}}}},"type":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/type/dayofweek;dayofweek","java_multiple_files":true,"java_outer_classname":"DayOfWeekProto","java_package":"com.google.type","objc_class_prefix":"GTP"},"nested":{"LatLng":{"fields":{"latitude":{"type":"double","id":1},"longitude":{"type":"double","id":2}}},"DayOfWeek":{"values":{"DAY_OF_WEEK_UNSPECIFIED":0,"MONDAY":1,"TUESDAY":2,"WEDNESDAY":3,"THURSDAY":4,"FRIDAY":5,"SATURDAY":6,"SUNDAY":7}}}},"api":{"options":{"go_package":"google.golang.org/genproto/googleapis/api/annotations;annotations","java_multiple_files":true,"java_outer_classname":"ResourceProto","java_package":"com.google.api","objc_class_prefix":"GAPI","cc_enable_arenas":true},"nested":{"http":{"type":"HttpRule","id":72295728,"extend":"google.protobuf.MethodOptions"},"Http":{"fields":{"rules":{"rule":"repeated","type":"HttpRule","id":1},"fullyDecodeReservedExpansion":{"type":"bool","id":2}}},"HttpRule":{"oneofs":{"pattern":{"oneof":["get","put","post","delete","patch","custom"]}},"fields":{"selector":{"type":"string","id":1},"get":{"type":"string","id":2},"put":{"type":"string","id":3},"post":{"type":"string","id":4},"delete":{"type":"string","id":5},"patch":{"type":"string","id":6},"custom":{"type":"CustomHttpPattern","id":8},"body":{"type":"string","id":7},"responseBody":{"type":"string","id":12},"additionalBindings":{"rule":"repeated","type":"HttpRule","id":11}}},"CustomHttpPattern":{"fields":{"kind":{"type":"string","id":1},"path":{"type":"string","id":2}}},"methodSignature":{"rule":"repeated","type":"string","id":1051,"extend":"google.protobuf.MethodOptions"},"defaultHost":{"type":"string","id":1049,"extend":"google.protobuf.ServiceOptions"},"oauthScopes":{"type":"string","id":1050,"extend":"google.protobuf.ServiceOptions"},"apiVersion":{"type":"string","id":525000001,"extend":"google.protobuf.ServiceOptions"},"CommonLanguageSettings":{"fields":{"referenceDocsUri":{"type":"string","id":1,"options":{"deprecated":true}},"destinations":{"rule":"repeated","type":"ClientLibraryDestination","id":2}}},"ClientLibrarySettings":{"fields":{"version":{"type":"string","id":1},"launchStage":{"type":"LaunchStage","id":2},"restNumericEnums":{"type":"bool","id":3},"javaSettings":{"type":"JavaSettings","id":21},"cppSettings":{"type":"CppSettings","id":22},"phpSettings":{"type":"PhpSettings","id":23},"pythonSettings":{"type":"PythonSettings","id":24},"nodeSettings":{"type":"NodeSettings","id":25},"dotnetSettings":{"type":"DotnetSettings","id":26},"rubySettings":{"type":"RubySettings","id":27},"goSettings":{"type":"GoSettings","id":28}}},"Publishing":{"fields":{"methodSettings":{"rule":"repeated","type":"MethodSettings","id":2},"newIssueUri":{"type":"string","id":101},"documentationUri":{"type":"string","id":102},"apiShortName":{"type":"string","id":103},"githubLabel":{"type":"string","id":104},"codeownerGithubTeams":{"rule":"repeated","type":"string","id":105},"docTagPrefix":{"type":"string","id":106},"organization":{"type":"ClientLibraryOrganization","id":107},"librarySettings":{"rule":"repeated","type":"ClientLibrarySettings","id":109},"protoReferenceDocumentationUri":{"type":"string","id":110},"restReferenceDocumentationUri":{"type":"string","id":111}}},"JavaSettings":{"fields":{"libraryPackage":{"type":"string","id":1},"serviceClassNames":{"keyType":"string","type":"string","id":2},"common":{"type":"CommonLanguageSettings","id":3}}},"CppSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PhpSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PythonSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"NodeSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"DotnetSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1},"renamedServices":{"keyType":"string","type":"string","id":2},"renamedResources":{"keyType":"string","type":"string","id":3},"ignoredResources":{"rule":"repeated","type":"string","id":4},"forcedNamespaceAliases":{"rule":"repeated","type":"string","id":5},"handwrittenSignatures":{"rule":"repeated","type":"string","id":6}}},"RubySettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"GoSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"MethodSettings":{"fields":{"selector":{"type":"string","id":1},"longRunning":{"type":"LongRunning","id":2},"autoPopulatedFields":{"rule":"repeated","type":"string","id":3}},"nested":{"LongRunning":{"fields":{"initialPollDelay":{"type":"google.protobuf.Duration","id":1},"pollDelayMultiplier":{"type":"float","id":2},"maxPollDelay":{"type":"google.protobuf.Duration","id":3},"totalPollTimeout":{"type":"google.protobuf.Duration","id":4}}}}},"ClientLibraryOrganization":{"values":{"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0,"CLOUD":1,"ADS":2,"PHOTOS":3,"STREET_VIEW":4,"SHOPPING":5,"GEO":6,"GENERATIVE_AI":7}},"ClientLibraryDestination":{"values":{"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":0,"GITHUB":10,"PACKAGE_MANAGER":20}},"LaunchStage":{"values":{"LAUNCH_STAGE_UNSPECIFIED":0,"UNIMPLEMENTED":6,"PRELAUNCH":7,"EARLY_ACCESS":1,"ALPHA":2,"BETA":3,"GA":4,"DEPRECATED":5}},"fieldBehavior":{"rule":"repeated","type":"google.api.FieldBehavior","id":1052,"extend":"google.protobuf.FieldOptions","options":{"packed":false}},"FieldBehavior":{"values":{"FIELD_BEHAVIOR_UNSPECIFIED":0,"OPTIONAL":1,"REQUIRED":2,"OUTPUT_ONLY":3,"INPUT_ONLY":4,"IMMUTABLE":5,"UNORDERED_LIST":6,"NON_EMPTY_DEFAULT":7,"IDENTIFIER":8}},"resourceReference":{"type":"google.api.ResourceReference","id":1055,"extend":"google.protobuf.FieldOptions"},"resourceDefinition":{"rule":"repeated","type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.FileOptions"},"resource":{"type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.MessageOptions"},"ResourceDescriptor":{"fields":{"type":{"type":"string","id":1},"pattern":{"rule":"repeated","type":"string","id":2},"nameField":{"type":"string","id":3},"history":{"type":"History","id":4},"plural":{"type":"string","id":5},"singular":{"type":"string","id":6},"style":{"rule":"repeated","type":"Style","id":10}},"nested":{"History":{"values":{"HISTORY_UNSPECIFIED":0,"ORIGINALLY_SINGLE_PATTERN":1,"FUTURE_MULTI_PATTERN":2}},"Style":{"values":{"STYLE_UNSPECIFIED":0,"DECLARATIVE_FRIENDLY":1}}}},"ResourceReference":{"fields":{"type":{"type":"string","id":1},"childType":{"type":"string","id":2}}}}},"rpc":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/rpc/status;status","java_multiple_files":true,"java_outer_classname":"StatusProto","java_package":"com.google.rpc","objc_class_prefix":"RPC"},"nested":{"Status":{"fields":{"code":{"type":"int32","id":1},"message":{"type":"string","id":2},"details":{"rule":"repeated","type":"google.protobuf.Any","id":3}}}}}}}}} | ||
{"nested":{"google":{"nested":{"protobuf":{"options":{"go_package":"google.golang.org/protobuf/types/descriptorpb","java_package":"com.google.protobuf","java_outer_classname":"DescriptorProtos","csharp_namespace":"Google.Protobuf.Reflection","objc_class_prefix":"GPB","cc_enable_arenas":true,"optimize_for":"SPEED"},"nested":{"Timestamp":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"Struct":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Value":{"oneofs":{"kind":{"oneof":["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},"fields":{"nullValue":{"type":"NullValue","id":1},"numberValue":{"type":"double","id":2},"stringValue":{"type":"string","id":3},"boolValue":{"type":"bool","id":4},"structValue":{"type":"Struct","id":5},"listValue":{"type":"ListValue","id":6}}},"NullValue":{"values":{"NULL_VALUE":0}},"ListValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"FileDescriptorSet":{"fields":{"file":{"rule":"repeated","type":"FileDescriptorProto","id":1}}},"Edition":{"values":{"EDITION_UNKNOWN":0,"EDITION_PROTO2":998,"EDITION_PROTO3":999,"EDITION_2023":1e3,"EDITION_2024":1001,"EDITION_1_TEST_ONLY":1,"EDITION_2_TEST_ONLY":2,"EDITION_99997_TEST_ONLY":99997,"EDITION_99998_TEST_ONLY":99998,"EDITION_99999_TEST_ONLY":99999,"EDITION_MAX":2147483647},"reserved":[[900,900]]},"FileDescriptorProto":{"fields":{"name":{"type":"string","id":1},"package":{"type":"string","id":2},"dependency":{"rule":"repeated","type":"string","id":3},"publicDependency":{"rule":"repeated","type":"int32","id":10,"options":{"packed":false}},"weakDependency":{"rule":"repeated","type":"int32","id":11,"options":{"packed":false}},"messageType":{"rule":"repeated","type":"DescriptorProto","id":4},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":5},"service":{"rule":"repeated","type":"ServiceDescriptorProto","id":6},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":7},"options":{"type":"FileOptions","id":8},"sourceCodeInfo":{"type":"SourceCodeInfo","id":9},"syntax":{"type":"string","id":12},"edition":{"type":"Edition","id":14}}},"DescriptorProto":{"fields":{"name":{"type":"string","id":1},"field":{"rule":"repeated","type":"FieldDescriptorProto","id":2},"extension":{"rule":"repeated","type":"FieldDescriptorProto","id":6},"nestedType":{"rule":"repeated","type":"DescriptorProto","id":3},"enumType":{"rule":"repeated","type":"EnumDescriptorProto","id":4},"extensionRange":{"rule":"repeated","type":"ExtensionRange","id":5},"oneofDecl":{"rule":"repeated","type":"OneofDescriptorProto","id":8},"options":{"type":"MessageOptions","id":7},"reservedRange":{"rule":"repeated","type":"ReservedRange","id":9},"reservedName":{"rule":"repeated","type":"string","id":10}},"nested":{"ExtensionRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2},"options":{"type":"ExtensionRangeOptions","id":3}}},"ReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"ExtensionRangeOptions":{"fields":{"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999},"declaration":{"rule":"repeated","type":"Declaration","id":2,"options":{"retention":"RETENTION_SOURCE"}},"features":{"type":"FeatureSet","id":50},"verification":{"type":"VerificationState","id":3,"options":{"default":"UNVERIFIED","retention":"RETENTION_SOURCE"}}},"extensions":[[1e3,536870911]],"nested":{"Declaration":{"fields":{"number":{"type":"int32","id":1},"fullName":{"type":"string","id":2},"type":{"type":"string","id":3},"reserved":{"type":"bool","id":5},"repeated":{"type":"bool","id":6}},"reserved":[[4,4]]},"VerificationState":{"values":{"DECLARATION":0,"UNVERIFIED":1}}}},"FieldDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":3},"label":{"type":"Label","id":4},"type":{"type":"Type","id":5},"typeName":{"type":"string","id":6},"extendee":{"type":"string","id":2},"defaultValue":{"type":"string","id":7},"oneofIndex":{"type":"int32","id":9},"jsonName":{"type":"string","id":10},"options":{"type":"FieldOptions","id":8},"proto3Optional":{"type":"bool","id":17}},"nested":{"Type":{"values":{"TYPE_DOUBLE":1,"TYPE_FLOAT":2,"TYPE_INT64":3,"TYPE_UINT64":4,"TYPE_INT32":5,"TYPE_FIXED64":6,"TYPE_FIXED32":7,"TYPE_BOOL":8,"TYPE_STRING":9,"TYPE_GROUP":10,"TYPE_MESSAGE":11,"TYPE_BYTES":12,"TYPE_UINT32":13,"TYPE_ENUM":14,"TYPE_SFIXED32":15,"TYPE_SFIXED64":16,"TYPE_SINT32":17,"TYPE_SINT64":18}},"Label":{"values":{"LABEL_OPTIONAL":1,"LABEL_REPEATED":3,"LABEL_REQUIRED":2}}}},"OneofDescriptorProto":{"fields":{"name":{"type":"string","id":1},"options":{"type":"OneofOptions","id":2}}},"EnumDescriptorProto":{"fields":{"name":{"type":"string","id":1},"value":{"rule":"repeated","type":"EnumValueDescriptorProto","id":2},"options":{"type":"EnumOptions","id":3},"reservedRange":{"rule":"repeated","type":"EnumReservedRange","id":4},"reservedName":{"rule":"repeated","type":"string","id":5}},"nested":{"EnumReservedRange":{"fields":{"start":{"type":"int32","id":1},"end":{"type":"int32","id":2}}}}},"EnumValueDescriptorProto":{"fields":{"name":{"type":"string","id":1},"number":{"type":"int32","id":2},"options":{"type":"EnumValueOptions","id":3}}},"ServiceDescriptorProto":{"fields":{"name":{"type":"string","id":1},"method":{"rule":"repeated","type":"MethodDescriptorProto","id":2},"options":{"type":"ServiceOptions","id":3}}},"MethodDescriptorProto":{"fields":{"name":{"type":"string","id":1},"inputType":{"type":"string","id":2},"outputType":{"type":"string","id":3},"options":{"type":"MethodOptions","id":4},"clientStreaming":{"type":"bool","id":5,"options":{"default":false}},"serverStreaming":{"type":"bool","id":6,"options":{"default":false}}}},"FileOptions":{"fields":{"javaPackage":{"type":"string","id":1},"javaOuterClassname":{"type":"string","id":8},"javaMultipleFiles":{"type":"bool","id":10,"options":{"default":false}},"javaGenerateEqualsAndHash":{"type":"bool","id":20,"options":{"deprecated":true}},"javaStringCheckUtf8":{"type":"bool","id":27,"options":{"default":false}},"optimizeFor":{"type":"OptimizeMode","id":9,"options":{"default":"SPEED"}},"goPackage":{"type":"string","id":11},"ccGenericServices":{"type":"bool","id":16,"options":{"default":false}},"javaGenericServices":{"type":"bool","id":17,"options":{"default":false}},"pyGenericServices":{"type":"bool","id":18,"options":{"default":false}},"deprecated":{"type":"bool","id":23,"options":{"default":false}},"ccEnableArenas":{"type":"bool","id":31,"options":{"default":true}},"objcClassPrefix":{"type":"string","id":36},"csharpNamespace":{"type":"string","id":37},"swiftPrefix":{"type":"string","id":39},"phpClassPrefix":{"type":"string","id":40},"phpNamespace":{"type":"string","id":41},"phpMetadataNamespace":{"type":"string","id":44},"rubyPackage":{"type":"string","id":45},"features":{"type":"FeatureSet","id":50},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[42,42],[38,38]],"nested":{"OptimizeMode":{"values":{"SPEED":1,"CODE_SIZE":2,"LITE_RUNTIME":3}}}},"MessageOptions":{"fields":{"messageSetWireFormat":{"type":"bool","id":1,"options":{"default":false}},"noStandardDescriptorAccessor":{"type":"bool","id":2,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"mapEntry":{"type":"bool","id":7},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":11,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":12},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[5,5],[6,6],[8,8],[9,9]]},"FieldOptions":{"fields":{"ctype":{"type":"CType","id":1,"options":{"default":"STRING"}},"packed":{"type":"bool","id":2},"jstype":{"type":"JSType","id":6,"options":{"default":"JS_NORMAL"}},"lazy":{"type":"bool","id":5,"options":{"default":false}},"unverifiedLazy":{"type":"bool","id":15,"options":{"default":false}},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"weak":{"type":"bool","id":10,"options":{"default":false}},"debugRedact":{"type":"bool","id":16,"options":{"default":false}},"retention":{"type":"OptionRetention","id":17},"targets":{"rule":"repeated","type":"OptionTargetType","id":19,"options":{"packed":false}},"editionDefaults":{"rule":"repeated","type":"EditionDefault","id":20},"features":{"type":"FeatureSet","id":21},"featureSupport":{"type":"FeatureSupport","id":22},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[4,4],[18,18]],"nested":{"CType":{"values":{"STRING":0,"CORD":1,"STRING_PIECE":2}},"JSType":{"values":{"JS_NORMAL":0,"JS_STRING":1,"JS_NUMBER":2}},"OptionRetention":{"values":{"RETENTION_UNKNOWN":0,"RETENTION_RUNTIME":1,"RETENTION_SOURCE":2}},"OptionTargetType":{"values":{"TARGET_TYPE_UNKNOWN":0,"TARGET_TYPE_FILE":1,"TARGET_TYPE_EXTENSION_RANGE":2,"TARGET_TYPE_MESSAGE":3,"TARGET_TYPE_FIELD":4,"TARGET_TYPE_ONEOF":5,"TARGET_TYPE_ENUM":6,"TARGET_TYPE_ENUM_ENTRY":7,"TARGET_TYPE_SERVICE":8,"TARGET_TYPE_METHOD":9}},"EditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"value":{"type":"string","id":2}}},"FeatureSupport":{"fields":{"editionIntroduced":{"type":"Edition","id":1},"editionDeprecated":{"type":"Edition","id":2},"deprecationWarning":{"type":"string","id":3},"editionRemoved":{"type":"Edition","id":4}}}}},"OneofOptions":{"fields":{"features":{"type":"FeatureSet","id":1},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"EnumOptions":{"fields":{"allowAlias":{"type":"bool","id":2},"deprecated":{"type":"bool","id":3,"options":{"default":false}},"deprecatedLegacyJsonFieldConflicts":{"type":"bool","id":6,"options":{"deprecated":true}},"features":{"type":"FeatureSet","id":7},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"reserved":[[5,5]]},"EnumValueOptions":{"fields":{"deprecated":{"type":"bool","id":1,"options":{"default":false}},"features":{"type":"FeatureSet","id":2},"debugRedact":{"type":"bool","id":3,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"ServiceOptions":{"fields":{"features":{"type":"FeatureSet","id":34},"deprecated":{"type":"bool","id":33,"options":{"default":false}},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]]},"MethodOptions":{"fields":{"deprecated":{"type":"bool","id":33,"options":{"default":false}},"idempotencyLevel":{"type":"IdempotencyLevel","id":34,"options":{"default":"IDEMPOTENCY_UNKNOWN"}},"features":{"type":"FeatureSet","id":35},"uninterpretedOption":{"rule":"repeated","type":"UninterpretedOption","id":999}},"extensions":[[1e3,536870911]],"nested":{"IdempotencyLevel":{"values":{"IDEMPOTENCY_UNKNOWN":0,"NO_SIDE_EFFECTS":1,"IDEMPOTENT":2}}}},"UninterpretedOption":{"fields":{"name":{"rule":"repeated","type":"NamePart","id":2},"identifierValue":{"type":"string","id":3},"positiveIntValue":{"type":"uint64","id":4},"negativeIntValue":{"type":"int64","id":5},"doubleValue":{"type":"double","id":6},"stringValue":{"type":"bytes","id":7},"aggregateValue":{"type":"string","id":8}},"nested":{"NamePart":{"fields":{"namePart":{"rule":"required","type":"string","id":1},"isExtension":{"rule":"required","type":"bool","id":2}}}}},"FeatureSet":{"fields":{"fieldPresence":{"type":"FieldPresence","id":1,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_2023","edition_defaults.value":"EXPLICIT"}},"enumType":{"type":"EnumType","id":2,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"OPEN"}},"repeatedFieldEncoding":{"type":"RepeatedFieldEncoding","id":3,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"PACKED"}},"utf8Validation":{"type":"Utf8Validation","id":4,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"VERIFY"}},"messageEncoding":{"type":"MessageEncoding","id":5,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO2","edition_defaults.value":"LENGTH_PREFIXED"}},"jsonFormat":{"type":"JsonFormat","id":6,"options":{"retention":"RETENTION_RUNTIME","targets":"TARGET_TYPE_FILE","edition_defaults.edition":"EDITION_PROTO3","edition_defaults.value":"ALLOW"}}},"extensions":[[1e3,1e3],[1001,1001],[1002,1002],[9990,9990],[9995,9999],[1e4,1e4]],"reserved":[[999,999]],"nested":{"FieldPresence":{"values":{"FIELD_PRESENCE_UNKNOWN":0,"EXPLICIT":1,"IMPLICIT":2,"LEGACY_REQUIRED":3}},"EnumType":{"values":{"ENUM_TYPE_UNKNOWN":0,"OPEN":1,"CLOSED":2}},"RepeatedFieldEncoding":{"values":{"REPEATED_FIELD_ENCODING_UNKNOWN":0,"PACKED":1,"EXPANDED":2}},"Utf8Validation":{"values":{"UTF8_VALIDATION_UNKNOWN":0,"VERIFY":2,"NONE":3}},"MessageEncoding":{"values":{"MESSAGE_ENCODING_UNKNOWN":0,"LENGTH_PREFIXED":1,"DELIMITED":2}},"JsonFormat":{"values":{"JSON_FORMAT_UNKNOWN":0,"ALLOW":1,"LEGACY_BEST_EFFORT":2}}}},"FeatureSetDefaults":{"fields":{"defaults":{"rule":"repeated","type":"FeatureSetEditionDefault","id":1},"minimumEdition":{"type":"Edition","id":4},"maximumEdition":{"type":"Edition","id":5}},"nested":{"FeatureSetEditionDefault":{"fields":{"edition":{"type":"Edition","id":3},"overridableFeatures":{"type":"FeatureSet","id":4},"fixedFeatures":{"type":"FeatureSet","id":5},"features":{"type":"FeatureSet","id":2}}}}},"SourceCodeInfo":{"fields":{"location":{"rule":"repeated","type":"Location","id":1}},"nested":{"Location":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"span":{"rule":"repeated","type":"int32","id":2},"leadingComments":{"type":"string","id":3},"trailingComments":{"type":"string","id":4},"leadingDetachedComments":{"rule":"repeated","type":"string","id":6}}}}},"GeneratedCodeInfo":{"fields":{"annotation":{"rule":"repeated","type":"Annotation","id":1}},"nested":{"Annotation":{"fields":{"path":{"rule":"repeated","type":"int32","id":1},"sourceFile":{"type":"string","id":2},"begin":{"type":"int32","id":3},"end":{"type":"int32","id":4},"semantic":{"type":"Semantic","id":5}},"nested":{"Semantic":{"values":{"NONE":0,"SET":1,"ALIAS":2}}}}}},"Duration":{"fields":{"seconds":{"type":"int64","id":1},"nanos":{"type":"int32","id":2}}},"DoubleValue":{"fields":{"value":{"type":"double","id":1}}},"FloatValue":{"fields":{"value":{"type":"float","id":1}}},"Int64Value":{"fields":{"value":{"type":"int64","id":1}}},"UInt64Value":{"fields":{"value":{"type":"uint64","id":1}}},"Int32Value":{"fields":{"value":{"type":"int32","id":1}}},"UInt32Value":{"fields":{"value":{"type":"uint32","id":1}}},"BoolValue":{"fields":{"value":{"type":"bool","id":1}}},"StringValue":{"fields":{"value":{"type":"string","id":1}}},"BytesValue":{"fields":{"value":{"type":"bytes","id":1}}},"Empty":{"fields":{}},"Any":{"fields":{"type_url":{"type":"string","id":1},"value":{"type":"bytes","id":2}}},"FieldMask":{"fields":{"paths":{"rule":"repeated","type":"string","id":1}}}}},"firestore":{"nested":{"v1beta1":{"options":{"csharp_namespace":"Google.Cloud.Firestore.V1Beta1","go_package":"cloud.google.com/go/firestore/apiv1beta1/firestorepb;firestorepb","java_multiple_files":true,"java_outer_classname":"UndeliverableFirstGenEventProto","java_package":"com.google.firestore.v1beta1","objc_class_prefix":"GCFS","php_namespace":"Google\\Cloud\\Firestore\\V1beta1","ruby_package":"Google::Cloud::Firestore::V1beta1"},"nested":{"DocumentMask":{"fields":{"fieldPaths":{"rule":"repeated","type":"string","id":1}}},"Precondition":{"oneofs":{"conditionType":{"oneof":["exists","updateTime"]}},"fields":{"exists":{"type":"bool","id":1},"updateTime":{"type":"google.protobuf.Timestamp","id":2}}},"TransactionOptions":{"oneofs":{"mode":{"oneof":["readOnly","readWrite"]}},"fields":{"readOnly":{"type":"ReadOnly","id":2},"readWrite":{"type":"ReadWrite","id":3}},"nested":{"ReadWrite":{"fields":{"retryTransaction":{"type":"bytes","id":1}}},"ReadOnly":{"oneofs":{"consistencySelector":{"oneof":["readTime"]}},"fields":{"readTime":{"type":"google.protobuf.Timestamp","id":2}}}}},"Document":{"fields":{"name":{"type":"string","id":1},"fields":{"keyType":"string","type":"Value","id":2},"createTime":{"type":"google.protobuf.Timestamp","id":3},"updateTime":{"type":"google.protobuf.Timestamp","id":4}}},"Value":{"oneofs":{"valueType":{"oneof":["nullValue","booleanValue","integerValue","doubleValue","timestampValue","stringValue","bytesValue","referenceValue","geoPointValue","arrayValue","mapValue"]}},"fields":{"nullValue":{"type":"google.protobuf.NullValue","id":11},"booleanValue":{"type":"bool","id":1},"integerValue":{"type":"int64","id":2},"doubleValue":{"type":"double","id":3},"timestampValue":{"type":"google.protobuf.Timestamp","id":10},"stringValue":{"type":"string","id":17},"bytesValue":{"type":"bytes","id":18},"referenceValue":{"type":"string","id":5},"geoPointValue":{"type":"google.type.LatLng","id":8},"arrayValue":{"type":"ArrayValue","id":9},"mapValue":{"type":"MapValue","id":6}}},"ArrayValue":{"fields":{"values":{"rule":"repeated","type":"Value","id":1}}},"MapValue":{"fields":{"fields":{"keyType":"string","type":"Value","id":1}}},"Firestore":{"options":{"(google.api.default_host)":"firestore.googleapis.com","(google.api.oauth_scopes)":"https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/datastore"},"methods":{"GetDocument":{"requestType":"GetDocumentRequest","responseType":"Document","options":{"(google.api.http).get":"/v1beta1/{name=projects/*/databases/*/documents/*/**}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1beta1/{name=projects/*/databases/*/documents/*/**}"}}]},"ListDocuments":{"requestType":"ListDocumentsRequest","responseType":"ListDocumentsResponse","options":{"(google.api.http).get":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}"},"parsedOptions":[{"(google.api.http)":{"get":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}/{collection_id}"}}]},"UpdateDocument":{"requestType":"UpdateDocumentRequest","responseType":"Document","options":{"(google.api.http).patch":"/v1beta1/{document.name=projects/*/databases/*/documents/*/**}","(google.api.http).body":"document","(google.api.method_signature)":"document,update_mask"},"parsedOptions":[{"(google.api.http)":{"patch":"/v1beta1/{document.name=projects/*/databases/*/documents/*/**}","body":"document"}},{"(google.api.method_signature)":"document,update_mask"}]},"DeleteDocument":{"requestType":"DeleteDocumentRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).delete":"/v1beta1/{name=projects/*/databases/*/documents/*/**}","(google.api.method_signature)":"name"},"parsedOptions":[{"(google.api.http)":{"delete":"/v1beta1/{name=projects/*/databases/*/documents/*/**}"}},{"(google.api.method_signature)":"name"}]},"BatchGetDocuments":{"requestType":"BatchGetDocumentsRequest","responseType":"BatchGetDocumentsResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:batchGet","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:batchGet","body":"*"}}]},"BeginTransaction":{"requestType":"BeginTransactionRequest","responseType":"BeginTransactionResponse","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:beginTransaction","(google.api.http).body":"*","(google.api.method_signature)":"database"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:beginTransaction","body":"*"}},{"(google.api.method_signature)":"database"}]},"Commit":{"requestType":"CommitRequest","responseType":"CommitResponse","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:commit","(google.api.http).body":"*","(google.api.method_signature)":"database,writes"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:commit","body":"*"}},{"(google.api.method_signature)":"database,writes"}]},"Rollback":{"requestType":"RollbackRequest","responseType":"google.protobuf.Empty","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:rollback","(google.api.http).body":"*","(google.api.method_signature)":"database,transaction"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:rollback","body":"*"}},{"(google.api.method_signature)":"database,transaction"}]},"RunQuery":{"requestType":"RunQueryRequest","responseType":"RunQueryResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents}:runQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:runQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents}:runQuery","body":"*","additional_bindings":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:runQuery","body":"*"}}}]},"PartitionQuery":{"requestType":"PartitionQueryRequest","responseType":"PartitionQueryResponse","options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents}:partitionQuery","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","(google.api.http).additional_bindings.body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents}:partitionQuery","body":"*","additional_bindings":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:partitionQuery","body":"*"}}}]},"Write":{"requestType":"WriteRequest","requestStream":true,"responseType":"WriteResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:write","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:write","body":"*"}}]},"Listen":{"requestType":"ListenRequest","requestStream":true,"responseType":"ListenResponse","responseStream":true,"options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:listen","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:listen","body":"*"}}]},"ListCollectionIds":{"requestType":"ListCollectionIdsRequest","responseType":"ListCollectionIdsResponse","options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents}:listCollectionIds","(google.api.http).body":"*","(google.api.http).additional_bindings.post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","(google.api.http).additional_bindings.body":"*","(google.api.method_signature)":"parent"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents}:listCollectionIds","body":"*","additional_bindings":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/*/**}:listCollectionIds","body":"*"}}},{"(google.api.method_signature)":"parent"}]},"BatchWrite":{"requestType":"BatchWriteRequest","responseType":"BatchWriteResponse","options":{"(google.api.http).post":"/v1beta1/{database=projects/*/databases/*}/documents:batchWrite","(google.api.http).body":"*"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{database=projects/*/databases/*}/documents:batchWrite","body":"*"}}]},"CreateDocument":{"requestType":"CreateDocumentRequest","responseType":"Document","options":{"(google.api.http).post":"/v1beta1/{parent=projects/*/databases/*/documents/**}/{collection_id}","(google.api.http).body":"document"},"parsedOptions":[{"(google.api.http)":{"post":"/v1beta1/{parent=projects/*/databases/*/documents/**}/{collection_id}","body":"document"}}]}}},"GetDocumentRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":5}}},"ListDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"pageSize":{"type":"int32","id":3},"pageToken":{"type":"string","id":4},"orderBy":{"type":"string","id":6},"mask":{"type":"DocumentMask","id":7},"transaction":{"type":"bytes","id":8},"readTime":{"type":"google.protobuf.Timestamp","id":10},"showMissing":{"type":"bool","id":12}}},"ListDocumentsResponse":{"fields":{"documents":{"rule":"repeated","type":"Document","id":1},"nextPageToken":{"type":"string","id":2}}},"CreateDocumentRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"collectionId":{"type":"string","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documentId":{"type":"string","id":3},"document":{"type":"Document","id":4,"options":{"(google.api.field_behavior)":"REQUIRED"}},"mask":{"type":"DocumentMask","id":5}}},"UpdateDocumentRequest":{"fields":{"document":{"type":"Document","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"updateMask":{"type":"DocumentMask","id":2},"mask":{"type":"DocumentMask","id":3},"currentDocument":{"type":"Precondition","id":4}}},"DeleteDocumentRequest":{"fields":{"name":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"currentDocument":{"type":"Precondition","id":2}}},"BatchGetDocumentsRequest":{"oneofs":{"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"documents":{"rule":"repeated","type":"string","id":2},"mask":{"type":"DocumentMask","id":3},"transaction":{"type":"bytes","id":4},"newTransaction":{"type":"TransactionOptions","id":5},"readTime":{"type":"google.protobuf.Timestamp","id":7}}},"BatchGetDocumentsResponse":{"oneofs":{"result":{"oneof":["found","missing"]}},"fields":{"found":{"type":"Document","id":1},"missing":{"type":"string","id":2},"transaction":{"type":"bytes","id":3},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"BeginTransactionRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"options":{"type":"TransactionOptions","id":2}}},"BeginTransactionResponse":{"fields":{"transaction":{"type":"bytes","id":1}}},"CommitRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"transaction":{"type":"bytes","id":3}}},"CommitResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"commitTime":{"type":"google.protobuf.Timestamp","id":2}}},"RollbackRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"transaction":{"type":"bytes","id":2,"options":{"(google.api.field_behavior)":"REQUIRED"}}}},"RunQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]},"consistencySelector":{"oneof":["transaction","newTransaction","readTime"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"transaction":{"type":"bytes","id":5},"newTransaction":{"type":"TransactionOptions","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":7}}},"RunQueryResponse":{"fields":{"transaction":{"type":"bytes","id":2},"document":{"type":"Document","id":1},"readTime":{"type":"google.protobuf.Timestamp","id":3},"skippedResults":{"type":"int32","id":4}}},"PartitionQueryRequest":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"structuredQuery":{"type":"StructuredQuery","id":2},"partitionCount":{"type":"int64","id":3},"pageToken":{"type":"string","id":4},"pageSize":{"type":"int32","id":5}}},"PartitionQueryResponse":{"fields":{"partitions":{"rule":"repeated","type":"Cursor","id":1},"nextPageToken":{"type":"string","id":2}}},"WriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"streamId":{"type":"string","id":2},"writes":{"rule":"repeated","type":"Write","id":3},"streamToken":{"type":"bytes","id":4},"labels":{"keyType":"string","type":"string","id":5}}},"WriteResponse":{"fields":{"streamId":{"type":"string","id":1},"streamToken":{"type":"bytes","id":2},"writeResults":{"rule":"repeated","type":"WriteResult","id":3},"commitTime":{"type":"google.protobuf.Timestamp","id":4}}},"ListenRequest":{"oneofs":{"targetChange":{"oneof":["addTarget","removeTarget"]}},"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"addTarget":{"type":"Target","id":2},"removeTarget":{"type":"int32","id":3},"labels":{"keyType":"string","type":"string","id":4}}},"ListenResponse":{"oneofs":{"responseType":{"oneof":["targetChange","documentChange","documentDelete","documentRemove","filter"]}},"fields":{"targetChange":{"type":"TargetChange","id":2},"documentChange":{"type":"DocumentChange","id":3},"documentDelete":{"type":"DocumentDelete","id":4},"documentRemove":{"type":"DocumentRemove","id":6},"filter":{"type":"ExistenceFilter","id":5}}},"Target":{"oneofs":{"targetType":{"oneof":["query","documents"]},"resumeType":{"oneof":["resumeToken","readTime"]}},"fields":{"query":{"type":"QueryTarget","id":2},"documents":{"type":"DocumentsTarget","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":11},"targetId":{"type":"int32","id":5},"once":{"type":"bool","id":6}},"nested":{"DocumentsTarget":{"fields":{"documents":{"rule":"repeated","type":"string","id":2}}},"QueryTarget":{"oneofs":{"queryType":{"oneof":["structuredQuery"]}},"fields":{"parent":{"type":"string","id":1},"structuredQuery":{"type":"StructuredQuery","id":2}}}}},"TargetChange":{"fields":{"targetChangeType":{"type":"TargetChangeType","id":1},"targetIds":{"rule":"repeated","type":"int32","id":2},"cause":{"type":"google.rpc.Status","id":3},"resumeToken":{"type":"bytes","id":4},"readTime":{"type":"google.protobuf.Timestamp","id":6}},"nested":{"TargetChangeType":{"values":{"NO_CHANGE":0,"ADD":1,"REMOVE":2,"CURRENT":3,"RESET":4}}}},"ListCollectionIdsRequest":{"fields":{"parent":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"pageSize":{"type":"int32","id":2},"pageToken":{"type":"string","id":3}}},"ListCollectionIdsResponse":{"fields":{"collectionIds":{"rule":"repeated","type":"string","id":1},"nextPageToken":{"type":"string","id":2}}},"BatchWriteRequest":{"fields":{"database":{"type":"string","id":1,"options":{"(google.api.field_behavior)":"REQUIRED"}},"writes":{"rule":"repeated","type":"Write","id":2},"labels":{"keyType":"string","type":"string","id":3}}},"BatchWriteResponse":{"fields":{"writeResults":{"rule":"repeated","type":"WriteResult","id":1},"status":{"rule":"repeated","type":"google.rpc.Status","id":2}}},"StructuredQuery":{"fields":{"select":{"type":"Projection","id":1},"from":{"rule":"repeated","type":"CollectionSelector","id":2},"where":{"type":"Filter","id":3},"orderBy":{"rule":"repeated","type":"Order","id":4},"startAt":{"type":"Cursor","id":7},"endAt":{"type":"Cursor","id":8},"offset":{"type":"int32","id":6},"limit":{"type":"google.protobuf.Int32Value","id":5}},"nested":{"CollectionSelector":{"fields":{"collectionId":{"type":"string","id":2},"allDescendants":{"type":"bool","id":3}}},"Filter":{"oneofs":{"filterType":{"oneof":["compositeFilter","fieldFilter","unaryFilter"]}},"fields":{"compositeFilter":{"type":"CompositeFilter","id":1},"fieldFilter":{"type":"FieldFilter","id":2},"unaryFilter":{"type":"UnaryFilter","id":3}}},"CompositeFilter":{"fields":{"op":{"type":"Operator","id":1},"filters":{"rule":"repeated","type":"Filter","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"AND":1}}}},"FieldFilter":{"fields":{"field":{"type":"FieldReference","id":1},"op":{"type":"Operator","id":2},"value":{"type":"Value","id":3}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"LESS_THAN":1,"LESS_THAN_OR_EQUAL":2,"GREATER_THAN":3,"GREATER_THAN_OR_EQUAL":4,"EQUAL":5,"NOT_EQUAL":6,"ARRAY_CONTAINS":7,"IN":8,"ARRAY_CONTAINS_ANY":9,"NOT_IN":10}}}},"UnaryFilter":{"oneofs":{"operandType":{"oneof":["field"]}},"fields":{"op":{"type":"Operator","id":1},"field":{"type":"FieldReference","id":2}},"nested":{"Operator":{"values":{"OPERATOR_UNSPECIFIED":0,"IS_NAN":2,"IS_NULL":3,"IS_NOT_NAN":4,"IS_NOT_NULL":5}}}},"FieldReference":{"fields":{"fieldPath":{"type":"string","id":2}}},"Order":{"fields":{"field":{"type":"FieldReference","id":1},"direction":{"type":"Direction","id":2}}},"Projection":{"fields":{"fields":{"rule":"repeated","type":"FieldReference","id":2}}},"Direction":{"values":{"DIRECTION_UNSPECIFIED":0,"ASCENDING":1,"DESCENDING":2}}}},"Cursor":{"fields":{"values":{"rule":"repeated","type":"Value","id":1},"before":{"type":"bool","id":2}}},"Write":{"oneofs":{"operation":{"oneof":["update","delete","transform"]}},"fields":{"update":{"type":"Document","id":1},"delete":{"type":"string","id":2},"transform":{"type":"DocumentTransform","id":6},"updateMask":{"type":"DocumentMask","id":3},"updateTransforms":{"rule":"repeated","type":"DocumentTransform.FieldTransform","id":7},"currentDocument":{"type":"Precondition","id":4}}},"DocumentTransform":{"fields":{"document":{"type":"string","id":1},"fieldTransforms":{"rule":"repeated","type":"FieldTransform","id":2}},"nested":{"FieldTransform":{"oneofs":{"transformType":{"oneof":["setToServerValue","increment","maximum","minimum","appendMissingElements","removeAllFromArray"]}},"fields":{"fieldPath":{"type":"string","id":1},"setToServerValue":{"type":"ServerValue","id":2},"increment":{"type":"Value","id":3},"maximum":{"type":"Value","id":4},"minimum":{"type":"Value","id":5},"appendMissingElements":{"type":"ArrayValue","id":6},"removeAllFromArray":{"type":"ArrayValue","id":7}},"nested":{"ServerValue":{"values":{"SERVER_VALUE_UNSPECIFIED":0,"REQUEST_TIME":1}}}}}},"WriteResult":{"fields":{"updateTime":{"type":"google.protobuf.Timestamp","id":1},"transformResults":{"rule":"repeated","type":"Value","id":2}}},"DocumentChange":{"fields":{"document":{"type":"Document","id":1},"targetIds":{"rule":"repeated","type":"int32","id":5},"removedTargetIds":{"rule":"repeated","type":"int32","id":6}}},"DocumentDelete":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":6},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"DocumentRemove":{"fields":{"document":{"type":"string","id":1},"removedTargetIds":{"rule":"repeated","type":"int32","id":2},"readTime":{"type":"google.protobuf.Timestamp","id":4}}},"ExistenceFilter":{"fields":{"targetId":{"type":"int32","id":1},"count":{"type":"int32","id":2}}},"UndeliverableFirstGenEvent":{"fields":{"message":{"type":"string","id":1},"reason":{"type":"Reason","id":2},"documentName":{"type":"string","id":3},"documentChangeType":{"type":"DocumentChangeType","id":4},"functionName":{"rule":"repeated","type":"string","id":5},"triggeredTime":{"type":"google.protobuf.Timestamp","id":6}},"nested":{"Reason":{"values":{"REASON_UNSPECIFIED":0,"EXCEEDING_SIZE_LIMIT":1}},"DocumentChangeType":{"values":{"DOCUMENT_CHANGE_TYPE_UNSPECIFIED":0,"CREATE":1,"DELETE":2,"UPDATE":3}}}}}}}},"type":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/type/dayofweek;dayofweek","java_multiple_files":true,"java_outer_classname":"DayOfWeekProto","java_package":"com.google.type","objc_class_prefix":"GTP"},"nested":{"LatLng":{"fields":{"latitude":{"type":"double","id":1},"longitude":{"type":"double","id":2}}},"DayOfWeek":{"values":{"DAY_OF_WEEK_UNSPECIFIED":0,"MONDAY":1,"TUESDAY":2,"WEDNESDAY":3,"THURSDAY":4,"FRIDAY":5,"SATURDAY":6,"SUNDAY":7}}}},"api":{"options":{"go_package":"google.golang.org/genproto/googleapis/api/annotations;annotations","java_multiple_files":true,"java_outer_classname":"ResourceProto","java_package":"com.google.api","objc_class_prefix":"GAPI","cc_enable_arenas":true},"nested":{"http":{"type":"HttpRule","id":72295728,"extend":"google.protobuf.MethodOptions"},"Http":{"fields":{"rules":{"rule":"repeated","type":"HttpRule","id":1},"fullyDecodeReservedExpansion":{"type":"bool","id":2}}},"HttpRule":{"oneofs":{"pattern":{"oneof":["get","put","post","delete","patch","custom"]}},"fields":{"selector":{"type":"string","id":1},"get":{"type":"string","id":2},"put":{"type":"string","id":3},"post":{"type":"string","id":4},"delete":{"type":"string","id":5},"patch":{"type":"string","id":6},"custom":{"type":"CustomHttpPattern","id":8},"body":{"type":"string","id":7},"responseBody":{"type":"string","id":12},"additionalBindings":{"rule":"repeated","type":"HttpRule","id":11}}},"CustomHttpPattern":{"fields":{"kind":{"type":"string","id":1},"path":{"type":"string","id":2}}},"methodSignature":{"rule":"repeated","type":"string","id":1051,"extend":"google.protobuf.MethodOptions"},"defaultHost":{"type":"string","id":1049,"extend":"google.protobuf.ServiceOptions"},"oauthScopes":{"type":"string","id":1050,"extend":"google.protobuf.ServiceOptions"},"apiVersion":{"type":"string","id":525000001,"extend":"google.protobuf.ServiceOptions"},"CommonLanguageSettings":{"fields":{"referenceDocsUri":{"type":"string","id":1,"options":{"deprecated":true}},"destinations":{"rule":"repeated","type":"ClientLibraryDestination","id":2}}},"ClientLibrarySettings":{"fields":{"version":{"type":"string","id":1},"launchStage":{"type":"LaunchStage","id":2},"restNumericEnums":{"type":"bool","id":3},"javaSettings":{"type":"JavaSettings","id":21},"cppSettings":{"type":"CppSettings","id":22},"phpSettings":{"type":"PhpSettings","id":23},"pythonSettings":{"type":"PythonSettings","id":24},"nodeSettings":{"type":"NodeSettings","id":25},"dotnetSettings":{"type":"DotnetSettings","id":26},"rubySettings":{"type":"RubySettings","id":27},"goSettings":{"type":"GoSettings","id":28}}},"Publishing":{"fields":{"methodSettings":{"rule":"repeated","type":"MethodSettings","id":2},"newIssueUri":{"type":"string","id":101},"documentationUri":{"type":"string","id":102},"apiShortName":{"type":"string","id":103},"githubLabel":{"type":"string","id":104},"codeownerGithubTeams":{"rule":"repeated","type":"string","id":105},"docTagPrefix":{"type":"string","id":106},"organization":{"type":"ClientLibraryOrganization","id":107},"librarySettings":{"rule":"repeated","type":"ClientLibrarySettings","id":109},"protoReferenceDocumentationUri":{"type":"string","id":110},"restReferenceDocumentationUri":{"type":"string","id":111}}},"JavaSettings":{"fields":{"libraryPackage":{"type":"string","id":1},"serviceClassNames":{"keyType":"string","type":"string","id":2},"common":{"type":"CommonLanguageSettings","id":3}}},"CppSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PhpSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"PythonSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"NodeSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"DotnetSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1},"renamedServices":{"keyType":"string","type":"string","id":2},"renamedResources":{"keyType":"string","type":"string","id":3},"ignoredResources":{"rule":"repeated","type":"string","id":4},"forcedNamespaceAliases":{"rule":"repeated","type":"string","id":5},"handwrittenSignatures":{"rule":"repeated","type":"string","id":6}}},"RubySettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"GoSettings":{"fields":{"common":{"type":"CommonLanguageSettings","id":1}}},"MethodSettings":{"fields":{"selector":{"type":"string","id":1},"longRunning":{"type":"LongRunning","id":2},"autoPopulatedFields":{"rule":"repeated","type":"string","id":3}},"nested":{"LongRunning":{"fields":{"initialPollDelay":{"type":"google.protobuf.Duration","id":1},"pollDelayMultiplier":{"type":"float","id":2},"maxPollDelay":{"type":"google.protobuf.Duration","id":3},"totalPollTimeout":{"type":"google.protobuf.Duration","id":4}}}}},"ClientLibraryOrganization":{"values":{"CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED":0,"CLOUD":1,"ADS":2,"PHOTOS":3,"STREET_VIEW":4,"SHOPPING":5,"GEO":6,"GENERATIVE_AI":7}},"ClientLibraryDestination":{"values":{"CLIENT_LIBRARY_DESTINATION_UNSPECIFIED":0,"GITHUB":10,"PACKAGE_MANAGER":20}},"LaunchStage":{"values":{"LAUNCH_STAGE_UNSPECIFIED":0,"UNIMPLEMENTED":6,"PRELAUNCH":7,"EARLY_ACCESS":1,"ALPHA":2,"BETA":3,"GA":4,"DEPRECATED":5}},"fieldBehavior":{"rule":"repeated","type":"google.api.FieldBehavior","id":1052,"extend":"google.protobuf.FieldOptions","options":{"packed":false}},"FieldBehavior":{"values":{"FIELD_BEHAVIOR_UNSPECIFIED":0,"OPTIONAL":1,"REQUIRED":2,"OUTPUT_ONLY":3,"INPUT_ONLY":4,"IMMUTABLE":5,"UNORDERED_LIST":6,"NON_EMPTY_DEFAULT":7,"IDENTIFIER":8}},"resourceReference":{"type":"google.api.ResourceReference","id":1055,"extend":"google.protobuf.FieldOptions"},"resourceDefinition":{"rule":"repeated","type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.FileOptions"},"resource":{"type":"google.api.ResourceDescriptor","id":1053,"extend":"google.protobuf.MessageOptions"},"ResourceDescriptor":{"fields":{"type":{"type":"string","id":1},"pattern":{"rule":"repeated","type":"string","id":2},"nameField":{"type":"string","id":3},"history":{"type":"History","id":4},"plural":{"type":"string","id":5},"singular":{"type":"string","id":6},"style":{"rule":"repeated","type":"Style","id":10}},"nested":{"History":{"values":{"HISTORY_UNSPECIFIED":0,"ORIGINALLY_SINGLE_PATTERN":1,"FUTURE_MULTI_PATTERN":2}},"Style":{"values":{"STYLE_UNSPECIFIED":0,"DECLARATIVE_FRIENDLY":1}}}},"ResourceReference":{"fields":{"type":{"type":"string","id":1},"childType":{"type":"string","id":2}}}}},"rpc":{"options":{"cc_enable_arenas":true,"go_package":"google.golang.org/genproto/googleapis/rpc/status;status","java_multiple_files":true,"java_outer_classname":"StatusProto","java_package":"com.google.rpc","objc_class_prefix":"RPC"},"nested":{"Status":{"fields":{"code":{"type":"int32","id":1},"message":{"type":"string","id":2},"details":{"rule":"repeated","type":"google.protobuf.Any","id":3}}}}}}}}} |
@@ -20,5 +20,15 @@ /*! | ||
import { FieldPath } from './path'; | ||
import { google } from '../protos/firestore_v1_proto_api'; | ||
import { Firestore } from './index'; | ||
import { Timestamp } from './timestamp'; | ||
import { DocumentData } from '@google-cloud/firestore'; | ||
import api = google.firestore.v1; | ||
interface BatchGetResponse<AppModelType, DbModelType extends DocumentData> { | ||
result: Array<DocumentSnapshot<AppModelType, DbModelType>>; | ||
/** | ||
* The transaction that was started as part of this request. Will only be if | ||
* `DocumentReader.transactionIdOrNewTransaction` was `api.ITransactionOptions`. | ||
*/ | ||
transaction?: Uint8Array; | ||
} | ||
/** | ||
@@ -32,12 +42,9 @@ * A wrapper around BatchGetDocumentsRequest that retries request upon stream | ||
export declare class DocumentReader<AppModelType, DbModelType extends DocumentData> { | ||
private firestore; | ||
private allDocuments; | ||
/** An optional field mask to apply to this read. */ | ||
fieldMask?: FieldPath[]; | ||
/** An optional transaction ID to use for this read. */ | ||
transactionId?: Uint8Array; | ||
/** An optional readTime to use for this read. */ | ||
readTime?: Timestamp; | ||
private outstandingDocuments; | ||
private retrievedDocuments; | ||
private readonly firestore; | ||
private readonly allDocuments; | ||
private readonly fieldMask?; | ||
private readonly transactionOrReadTime?; | ||
private readonly outstandingDocuments; | ||
private readonly retrievedDocuments; | ||
private retrievedTransactionId?; | ||
/** | ||
@@ -49,6 +56,10 @@ * Creates a new DocumentReader that fetches the provided documents (via | ||
* @param allDocuments The documents to get. | ||
* @param fieldMask An optional field mask to apply to this read | ||
* @param transactionOrReadTime An optional transaction ID to use for this | ||
* read or options for beginning a new transaction with this read | ||
*/ | ||
constructor(firestore: Firestore, allDocuments: Array<DocumentReference<AppModelType, DbModelType>>); | ||
constructor(firestore: Firestore, allDocuments: ReadonlyArray<DocumentReference<AppModelType, DbModelType>>, fieldMask?: FieldPath[] | undefined, transactionOrReadTime?: Uint8Array | api.ITransactionOptions | Timestamp | undefined); | ||
/** | ||
* Invokes the BatchGetDocuments RPC and returns the results. | ||
* Invokes the BatchGetDocuments RPC and returns the results as an array of | ||
* documents. | ||
* | ||
@@ -58,3 +69,11 @@ * @param requestTag A unique client-assigned identifier for this request. | ||
get(requestTag: string): Promise<Array<DocumentSnapshot<AppModelType, DbModelType>>>; | ||
/** | ||
* Invokes the BatchGetDocuments RPC and returns the results with transaction | ||
* metadata. | ||
* | ||
* @param requestTag A unique client-assigned identifier for this request. | ||
*/ | ||
_get(requestTag: string): Promise<BatchGetResponse<AppModelType, DbModelType>>; | ||
private fetchDocuments; | ||
} | ||
export {}; |
@@ -22,2 +22,3 @@ "use strict"; | ||
const logger_1 = require("./logger"); | ||
const timestamp_1 = require("./timestamp"); | ||
/** | ||
@@ -37,6 +38,11 @@ * A wrapper around BatchGetDocumentsRequest that retries request upon stream | ||
* @param allDocuments The documents to get. | ||
* @param fieldMask An optional field mask to apply to this read | ||
* @param transactionOrReadTime An optional transaction ID to use for this | ||
* read or options for beginning a new transaction with this read | ||
*/ | ||
constructor(firestore, allDocuments) { | ||
constructor(firestore, allDocuments, fieldMask, transactionOrReadTime) { | ||
this.firestore = firestore; | ||
this.allDocuments = allDocuments; | ||
this.fieldMask = fieldMask; | ||
this.transactionOrReadTime = transactionOrReadTime; | ||
this.outstandingDocuments = new Set(); | ||
@@ -49,3 +55,4 @@ this.retrievedDocuments = new Map(); | ||
/** | ||
* Invokes the BatchGetDocuments RPC and returns the results. | ||
* Invokes the BatchGetDocuments RPC and returns the results as an array of | ||
* documents. | ||
* | ||
@@ -55,2 +62,12 @@ * @param requestTag A unique client-assigned identifier for this request. | ||
async get(requestTag) { | ||
const { result } = await this._get(requestTag); | ||
return result; | ||
} | ||
/** | ||
* Invokes the BatchGetDocuments RPC and returns the results with transaction | ||
* metadata. | ||
* | ||
* @param requestTag A unique client-assigned identifier for this request. | ||
*/ | ||
async _get(requestTag) { | ||
await this.fetchDocuments(requestTag); | ||
@@ -76,5 +93,9 @@ // BatchGetDocuments doesn't preserve document order. We use the request | ||
} | ||
return orderedDocuments; | ||
return { | ||
result: orderedDocuments, | ||
transaction: this.retrievedTransactionId, | ||
}; | ||
} | ||
async fetchDocuments(requestTag) { | ||
var _a; | ||
if (!this.outstandingDocuments.size) { | ||
@@ -87,8 +108,11 @@ return; | ||
}; | ||
if (this.transactionId) { | ||
request.transaction = this.transactionId; | ||
if (this.transactionOrReadTime instanceof Uint8Array) { | ||
request.transaction = this.transactionOrReadTime; | ||
} | ||
else if (this.readTime) { | ||
request.readTime = this.readTime.toProto().timestampValue; | ||
else if (this.transactionOrReadTime instanceof timestamp_1.Timestamp) { | ||
request.readTime = this.transactionOrReadTime.toProto().timestampValue; | ||
} | ||
else if (this.transactionOrReadTime) { | ||
request.newTransaction = this.transactionOrReadTime; | ||
} | ||
if (this.fieldMask) { | ||
@@ -104,2 +128,6 @@ const fieldPaths = this.fieldMask.map(fieldPath => fieldPath.formattedName); | ||
for await (const response of stream) { | ||
// Proto comes with zero-length buffer by default | ||
if ((_a = response.transaction) === null || _a === void 0 ? void 0 : _a.length) { | ||
this.retrievedTransactionId = response.transaction; | ||
} | ||
let snapshot; | ||
@@ -110,10 +138,12 @@ if (response.found) { | ||
} | ||
else { | ||
else if (response.missing) { | ||
(0, logger_1.logger)('DocumentReader.fetchDocuments', requestTag, 'Document missing: %s', response.missing); | ||
snapshot = this.firestore.snapshot_(response.missing, response.readTime); | ||
} | ||
const path = snapshot.ref.formattedName; | ||
this.outstandingDocuments.delete(path); | ||
this.retrievedDocuments.set(path, snapshot); | ||
++resultCount; | ||
if (snapshot) { | ||
const path = snapshot.ref.formattedName; | ||
this.outstandingDocuments.delete(path); | ||
this.retrievedDocuments.set(path, snapshot); | ||
++resultCount; | ||
} | ||
} | ||
@@ -124,3 +154,4 @@ } | ||
// Transactional reads are retried via the transaction runner. | ||
!this.transactionId && | ||
!request.transaction && | ||
!request.newTransaction && | ||
// Only retry if we made progress. | ||
@@ -127,0 +158,0 @@ resultCount > 0 && |
@@ -1006,4 +1006,3 @@ "use strict"; | ||
.then(() => { | ||
const reader = new document_reader_1.DocumentReader(this, documents); | ||
reader.fieldMask = fieldMask || undefined; | ||
const reader = new document_reader_1.DocumentReader(this, documents, fieldMask); | ||
return reader.get(tag); | ||
@@ -1010,0 +1009,0 @@ }) |
@@ -33,10 +33,18 @@ /*! | ||
private readonly _firestore; | ||
private readonly _readOnly; | ||
private readonly _maxAttempts; | ||
private readonly _requestTag; | ||
/** Optional, could be set only if transaction is read only */ | ||
private readonly _readOnlyReadTime; | ||
/** `undefined` if transaction is read only */ | ||
private readonly _writeBatch; | ||
/** `undefined` if transaction is read only */ | ||
private readonly _backoff; | ||
private readonly _requestTag; | ||
private _transactionId?; | ||
private readonly _readTime; | ||
/** | ||
* Promise that resolves to the transaction ID of the current attempt. | ||
* It is lazily initialised upon the first read. Upon retry, it is reset and | ||
* `_prevTransactionId` is set | ||
*/ | ||
private _transactionIdPromise?; | ||
private _prevTransactionId?; | ||
/** | ||
* @private | ||
@@ -198,9 +206,2 @@ * | ||
/** | ||
* Starts a transaction and obtains the transaction id from the server. | ||
* | ||
* @private | ||
* @internal | ||
*/ | ||
begin(): Promise<void>; | ||
/** | ||
* Commits all queued-up changes in this transaction and releases all locks. | ||
@@ -213,3 +214,5 @@ * | ||
/** | ||
* Releases all locks and rolls back this transaction. | ||
* Releases all locks and rolls back this transaction. The rollback process | ||
* is completed asynchronously and this function resolves before the operation | ||
* is completed. | ||
* | ||
@@ -240,9 +243,10 @@ * @private | ||
/** | ||
* Delays further operations based on the provided error. | ||
* | ||
* @private | ||
* @internal | ||
* @return A Promise that resolves after the delay expired. | ||
* Given a function that performs a read operation, ensures that the first one | ||
* is provided with new transaction options and all subsequent ones are queued | ||
* upon the resulting transaction ID. | ||
*/ | ||
private maybeBackoff; | ||
private withLazyStartedTransaction; | ||
private getSingleFn; | ||
private getBatchFn; | ||
private getQueryFn; | ||
} | ||
@@ -260,3 +264,3 @@ /** | ||
documents: Array<DocumentReference<AppModelType, DbModelType>>; | ||
fieldMask: FieldPath[] | null; | ||
fieldMask: FieldPath[] | undefined; | ||
}; |
@@ -52,19 +52,16 @@ "use strict"; | ||
constructor(firestore, requestTag, transactionOptions) { | ||
this._readOnly = false; | ||
this._maxAttempts = index_1.DEFAULT_MAX_TRANSACTION_ATTEMPTS; | ||
this._firestore = firestore; | ||
this._writeBatch = firestore.batch(); | ||
this._requestTag = requestTag; | ||
this._backoff = new backoff_1.ExponentialBackoff(); | ||
if (transactionOptions) { | ||
if (transactionOptions.readOnly) { | ||
this._readOnly = true; | ||
this._maxAttempts = 1; | ||
this._readTime = transactionOptions.readTime; | ||
} | ||
else { | ||
this._maxAttempts = | ||
transactionOptions.maxAttempts || index_1.DEFAULT_MAX_TRANSACTION_ATTEMPTS; | ||
} | ||
if (transactionOptions === null || transactionOptions === void 0 ? void 0 : transactionOptions.readOnly) { | ||
// Avoid initialising write batch and backoff unnecessarily for read-only transactions | ||
this._maxAttempts = 1; | ||
this._readOnlyReadTime = transactionOptions.readTime; | ||
} | ||
else { | ||
this._maxAttempts = | ||
(transactionOptions === null || transactionOptions === void 0 ? void 0 : transactionOptions.maxAttempts) || index_1.DEFAULT_MAX_TRANSACTION_ATTEMPTS; | ||
this._writeBatch = firestore.batch(); | ||
this._backoff = new backoff_1.ExponentialBackoff(); | ||
} | ||
} | ||
@@ -95,17 +92,11 @@ /** | ||
get(refOrQuery) { | ||
if (!this._writeBatch.isEmpty) { | ||
if (this._writeBatch && !this._writeBatch.isEmpty) { | ||
throw new Error(READ_AFTER_WRITE_ERROR_MSG); | ||
} | ||
if (refOrQuery instanceof reference_1.DocumentReference) { | ||
const documentReader = new document_reader_1.DocumentReader(this._firestore, [refOrQuery]); | ||
documentReader.transactionId = this._transactionId; | ||
documentReader.readTime = this._readTime; | ||
return documentReader.get(this._requestTag).then(([res]) => res); | ||
return this.withLazyStartedTransaction(refOrQuery, this.getSingleFn); | ||
} | ||
if (refOrQuery instanceof reference_1.Query) { | ||
return refOrQuery._get(this._transactionId || this._readTime); | ||
if (refOrQuery instanceof reference_1.Query || refOrQuery instanceof reference_1.AggregateQuery) { | ||
return this.withLazyStartedTransaction(refOrQuery, this.getQueryFn); | ||
} | ||
if (refOrQuery instanceof reference_1.AggregateQuery) { | ||
return refOrQuery._get(this._transactionId || this._readTime); | ||
} | ||
throw new Error('Value for argument "refOrQuery" must be a DocumentReference, Query, or AggregateQuery.'); | ||
@@ -142,12 +133,7 @@ } | ||
getAll(...documentRefsOrReadOptions) { | ||
if (!this._writeBatch.isEmpty) { | ||
if (this._writeBatch && !this._writeBatch.isEmpty) { | ||
throw new Error(READ_AFTER_WRITE_ERROR_MSG); | ||
} | ||
(0, validate_1.validateMinNumberOfArguments)('Transaction.getAll', documentRefsOrReadOptions, 1); | ||
const { documents, fieldMask } = parseGetAllArguments(documentRefsOrReadOptions); | ||
const documentReader = new document_reader_1.DocumentReader(this._firestore, documents); | ||
documentReader.fieldMask = fieldMask || undefined; | ||
documentReader.transactionId = this._transactionId; | ||
documentReader.readTime = this._readTime; | ||
return documentReader.get(this._requestTag); | ||
return this.withLazyStartedTransaction(parseGetAllArguments(documentRefsOrReadOptions), this.getBatchFn); | ||
} | ||
@@ -178,3 +164,3 @@ /** | ||
create(documentRef, data) { | ||
if (this._readOnly) { | ||
if (!this._writeBatch) { | ||
throw new Error(READ_ONLY_WRITE_ERROR_MSG); | ||
@@ -218,3 +204,3 @@ } | ||
set(documentRef, data, options) { | ||
if (this._readOnly) { | ||
if (!this._writeBatch) { | ||
throw new Error(READ_ONLY_WRITE_ERROR_MSG); | ||
@@ -272,3 +258,3 @@ } | ||
update(documentRef, dataOrField, ...preconditionOrValues) { | ||
if (this._readOnly) { | ||
if (!this._writeBatch) { | ||
throw new Error(READ_ONLY_WRITE_ERROR_MSG); | ||
@@ -309,3 +295,3 @@ } | ||
documentRef, precondition) { | ||
if (this._readTime) { | ||
if (!this._writeBatch) { | ||
throw new Error(READ_ONLY_WRITE_ERROR_MSG); | ||
@@ -317,27 +303,2 @@ } | ||
/** | ||
* Starts a transaction and obtains the transaction id from the server. | ||
* | ||
* @private | ||
* @internal | ||
*/ | ||
async begin() { | ||
const request = { | ||
database: this._firestore.formattedName, | ||
}; | ||
if (this._readOnly) { | ||
request.options = { | ||
readOnly: {}, | ||
}; | ||
} | ||
else if (this._transactionId) { | ||
request.options = { | ||
readWrite: { | ||
retryTransaction: this._transactionId, | ||
}, | ||
}; | ||
} | ||
const resp = await this._firestore.request('beginTransaction', request, this._requestTag); | ||
this._transactionId = resp.transaction; | ||
} | ||
/** | ||
* Commits all queued-up changes in this transaction and releases all locks. | ||
@@ -349,12 +310,27 @@ * | ||
async commit() { | ||
if (this._readTime) { | ||
if (!this._writeBatch) { | ||
throw new Error(READ_ONLY_WRITE_ERROR_MSG); | ||
} | ||
// If we have not performed any reads in this particular attempt | ||
// then the writes will be atomically committed without a transaction ID | ||
let transactionId; | ||
if (this._transactionIdPromise) { | ||
transactionId = await this._transactionIdPromise; | ||
} | ||
else if (this._writeBatch.isEmpty) { | ||
// If we have not started a transaction (no reads) and we have no writes | ||
// then the commit is a no-op (success) | ||
return; | ||
} | ||
await this._writeBatch._commit({ | ||
transactionId: this._transactionId, | ||
transactionId, | ||
requestTag: this._requestTag, | ||
}); | ||
this._transactionIdPromise = undefined; | ||
this._prevTransactionId = transactionId; | ||
} | ||
/** | ||
* Releases all locks and rolls back this transaction. | ||
* Releases all locks and rolls back this transaction. The rollback process | ||
* is completed asynchronously and this function resolves before the operation | ||
* is completed. | ||
* | ||
@@ -365,15 +341,32 @@ * @private | ||
async rollback() { | ||
if (!this._transactionId || this._readOnly) { | ||
// No need to roll back if we have not lazily started the transaction | ||
// or if we are read only | ||
if (!this._transactionIdPromise || !this._writeBatch) { | ||
return; | ||
} | ||
let transactionId; | ||
try { | ||
transactionId = await this._transactionIdPromise; | ||
} | ||
catch (_a) { | ||
// This means the initial read operation rejected | ||
// and we do not have a transaction ID to roll back | ||
this._transactionIdPromise = undefined; | ||
return; | ||
} | ||
const request = { | ||
database: this._firestore.formattedName, | ||
transaction: this._transactionId, | ||
transaction: transactionId, | ||
}; | ||
try { | ||
await this._firestore.request('rollback', request, this._requestTag); | ||
} | ||
catch (reason) { | ||
(0, logger_1.logger)('Firestore.runTransaction', this._requestTag, 'Best effort to rollback failed with error:', reason); | ||
} | ||
this._transactionIdPromise = undefined; | ||
this._prevTransactionId = transactionId; | ||
// We don't need to wait for rollback to completed before continuing. | ||
// If there are any locks held, then rollback will eventually release them. | ||
// Rollback can be done concurrently thereby reducing latency caused by | ||
// otherwise blocking. | ||
this._firestore | ||
.request('rollback', request, this._requestTag) | ||
.catch(err => { | ||
(0, logger_1.logger)('Firestore.runTransaction', this._requestTag, 'Best effort to rollback failed with error:', err); | ||
}); | ||
} | ||
@@ -389,3 +382,4 @@ /** | ||
async runTransaction(updateFunction) { | ||
if (this._maxAttempts === 1) { | ||
// No backoff is set for readonly transactions (i.e. attempts == 1) | ||
if (!this._writeBatch) { | ||
return this.runTransactionOnce(updateFunction); | ||
@@ -400,3 +394,3 @@ } | ||
this._writeBatch._reset(); | ||
await this.maybeBackoff(lastError); | ||
await maybeBackoff(this._backoff, lastError); | ||
return await this.runTransactionOnce(updateFunction); | ||
@@ -406,3 +400,3 @@ } | ||
lastError = err; | ||
if (!this._transactionId || !isRetryableTransactionError(err)) { | ||
if (!isRetryableTransactionError(err)) { | ||
break; | ||
@@ -425,5 +419,2 @@ } | ||
async runTransactionOnce(updateFunction) { | ||
if (!this._readTime) { | ||
await this.begin(); | ||
} | ||
try { | ||
@@ -435,3 +426,3 @@ const promise = updateFunction(this); | ||
const result = await promise; | ||
if (!this._readOnly) { | ||
if (this._writeBatch) { | ||
await this.commit(); | ||
@@ -448,14 +439,63 @@ } | ||
/** | ||
* Delays further operations based on the provided error. | ||
* | ||
* @private | ||
* @internal | ||
* @return A Promise that resolves after the delay expired. | ||
* Given a function that performs a read operation, ensures that the first one | ||
* is provided with new transaction options and all subsequent ones are queued | ||
* upon the resulting transaction ID. | ||
*/ | ||
async maybeBackoff(error) { | ||
if ((error === null || error === void 0 ? void 0 : error.code) === 8 /* StatusCode.RESOURCE_EXHAUSTED */) { | ||
this._backoff.resetToMax(); | ||
withLazyStartedTransaction(param, resultFn) { | ||
if (this._transactionIdPromise) { | ||
// Simply queue this subsequent read operation after the first read | ||
// operation has resolved and we don't expect a transaction ID in the | ||
// response because we are not starting a new transaction | ||
return this._transactionIdPromise | ||
.then(opts => resultFn.call(this, param, opts)) | ||
.then(r => r.result); | ||
} | ||
await this._backoff.backoffAndWait(); | ||
else { | ||
if (this._readOnlyReadTime) { | ||
// We do not start a transaction for read-only transactions | ||
// do not set _prevTransactionId | ||
return resultFn | ||
.call(this, param, this._readOnlyReadTime) | ||
.then(r => r.result); | ||
} | ||
else { | ||
// This is the first read of the transaction so we create the appropriate | ||
// options for lazily starting the transaction inside this first read op | ||
const opts = {}; | ||
if (this._writeBatch) { | ||
opts.readWrite = this._prevTransactionId | ||
? { retryTransaction: this._prevTransactionId } | ||
: {}; | ||
} | ||
else { | ||
opts.readOnly = {}; | ||
} | ||
const resultPromise = resultFn.call(this, param, opts); | ||
// Ensure the _transactionIdPromise is set synchronously so that | ||
// subsequent operations will not race to start another transaction | ||
this._transactionIdPromise = resultPromise.then(r => { | ||
if (!r.transaction) { | ||
// Illegal state | ||
// The read operation was provided with new transaction options but did not return a transaction ID | ||
// Rejecting here will cause all queued reads to reject | ||
throw new Error('Transaction ID was missing from server response'); | ||
} | ||
return r.transaction; | ||
}); | ||
return resultPromise.then(r => r.result); | ||
} | ||
} | ||
} | ||
async getSingleFn(document, opts) { | ||
const documentReader = new document_reader_1.DocumentReader(this._firestore, [document], undefined, opts); | ||
const { transaction, result: [result], } = await documentReader._get(this._requestTag); | ||
return { transaction, result }; | ||
} | ||
async getBatchFn({ documents, fieldMask, }, opts) { | ||
const documentReader = new document_reader_1.DocumentReader(this._firestore, documents, fieldMask, opts); | ||
return documentReader._get(this._requestTag); | ||
} | ||
async getQueryFn(query, opts) { | ||
return query._get(opts); | ||
} | ||
} | ||
@@ -493,3 +533,3 @@ exports.Transaction = Transaction; | ||
? readOptions.fieldMask.map(fieldPath => path_1.FieldPath.fromArgument(fieldPath)) | ||
: null; | ||
: undefined; | ||
return { fieldMask, documents }; | ||
@@ -553,2 +593,15 @@ } | ||
} | ||
/** | ||
* Delays further operations based on the provided error. | ||
* | ||
* @private | ||
* @internal | ||
* @return A Promise that resolves after the delay expired. | ||
*/ | ||
async function maybeBackoff(backoff, error) { | ||
if ((error === null || error === void 0 ? void 0 : error.code) === 8 /* StatusCode.RESOURCE_EXHAUSTED */) { | ||
backoff.resetToMax(); | ||
} | ||
await backoff.backoffAndWait(); | ||
} | ||
//# sourceMappingURL=transaction.js.map |
@@ -85,3 +85,3 @@ "use strict"; | ||
constructor(opts, gaxInstance) { | ||
var _a, _b, _c, _d; | ||
var _a, _b, _c, _d, _e; | ||
this._terminated = false; | ||
@@ -101,4 +101,7 @@ this.descriptors = { | ||
} | ||
const universeDomainEnvVar = typeof process === 'object' && typeof process.env === 'object' | ||
? process.env['GOOGLE_CLOUD_UNIVERSE_DOMAIN'] | ||
: undefined; | ||
this._universeDomain = | ||
(_b = (_a = opts === null || opts === void 0 ? void 0 : opts.universeDomain) !== null && _a !== void 0 ? _a : opts === null || opts === void 0 ? void 0 : opts.universe_domain) !== null && _b !== void 0 ? _b : 'googleapis.com'; | ||
(_c = (_b = (_a = opts === null || opts === void 0 ? void 0 : opts.universeDomain) !== null && _a !== void 0 ? _a : opts === null || opts === void 0 ? void 0 : opts.universe_domain) !== null && _b !== void 0 ? _b : universeDomainEnvVar) !== null && _c !== void 0 ? _c : 'googleapis.com'; | ||
this._servicePath = 'firestore.' + this._universeDomain; | ||
@@ -108,4 +111,4 @@ const servicePath = (opts === null || opts === void 0 ? void 0 : opts.servicePath) || (opts === null || opts === void 0 ? void 0 : opts.apiEndpoint) || this._servicePath; | ||
const port = (opts === null || opts === void 0 ? void 0 : opts.port) || staticMembers.port; | ||
const clientConfig = (_c = opts === null || opts === void 0 ? void 0 : opts.clientConfig) !== null && _c !== void 0 ? _c : {}; | ||
const fallback = (_d = opts === null || opts === void 0 ? void 0 : opts.fallback) !== null && _d !== void 0 ? _d : (typeof window !== 'undefined' && typeof (window === null || window === void 0 ? void 0 : window.fetch) === 'function'); | ||
const clientConfig = (_d = opts === null || opts === void 0 ? void 0 : opts.clientConfig) !== null && _d !== void 0 ? _d : {}; | ||
const fallback = (_e = opts === null || opts === void 0 ? void 0 : opts.fallback) !== null && _e !== void 0 ? _e : (typeof window !== 'undefined' && typeof (window === null || window === void 0 ? void 0 : window.fetch) === 'function'); | ||
opts = Object.assign({ servicePath, port, clientConfig, fallback }, opts); | ||
@@ -140,3 +143,3 @@ // Request numeric enum values if REST transport is used. | ||
const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; | ||
if (typeof process !== 'undefined' && 'versions' in process) { | ||
if (typeof process === 'object' && 'versions' in process) { | ||
clientHeader.push(`gl-node/${process.versions.node}`); | ||
@@ -259,3 +262,3 @@ } | ||
static get servicePath() { | ||
if (typeof process !== undefined && | ||
if (typeof process === 'object' && | ||
typeof process.emitWarning === 'function') { | ||
@@ -272,3 +275,3 @@ process.emitWarning('Static servicePath is deprecated, please use the instance method instead.', 'DeprecationWarning'); | ||
static get apiEndpoint() { | ||
if (typeof process !== undefined && | ||
if (typeof process === 'object' && | ||
typeof process.emitWarning === 'function') { | ||
@@ -275,0 +278,0 @@ process.emitWarning('Static apiEndpoint is deprecated, please use the instance method instead.', 'DeprecationWarning'); |
{ | ||
"name": "@google-cloud/firestore", | ||
"description": "Firestore Client Library for Node.js", | ||
"version": "7.6.0", | ||
"version": "7.7.0", | ||
"license": "Apache-2.0", | ||
@@ -68,3 +68,3 @@ "author": "Google Inc.", | ||
"functional-red-black-tree": "^1.0.1", | ||
"google-gax": "^4.3.1", | ||
"google-gax": "^4.3.3", | ||
"protobufjs": "^7.2.6" | ||
@@ -71,0 +71,0 @@ }, |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 2 instances in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
4973224
74770
11
Updatedgoogle-gax@^4.3.3