diff --git a/Firestore/metadata/Admin/V1/Field.php b/Firestore/metadata/Admin/V1/Field.php
index a663f8c6d9c..bdfc8da72b8 100644
--- a/Firestore/metadata/Admin/V1/Field.php
+++ b/Firestore/metadata/Admin/V1/Field.php
@@ -17,8 +17,9 @@ public static function initOnce() {
\GPBMetadata\Google\Api\FieldBehavior::initOnce();
\GPBMetadata\Google\Api\Resource::initOnce();
\GPBMetadata\Google\Firestore\Admin\V1\Index::initOnce();
+ \GPBMetadata\Google\Protobuf\Duration::initOnce();
$pool->internalAddGeneratedFile(
- "\x0A\xB0\x07\x0A%google/firestore/admin/v1/field.proto\x12\x19google.firestore.admin.v1\x1A\x19google/api/resource.proto\x1A%google/firestore/admin/v1/index.proto\"\xC5\x04\x0A\x05Field\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x02\x12B\x0A\x0Cindex_config\x18\x02 \x01(\x0B2,.google.firestore.admin.v1.Field.IndexConfig\x12>\x0A\x0Attl_config\x18\x03 \x01(\x0B2*.google.firestore.admin.v1.Field.TtlConfig\x1A\x89\x01\x0A\x0BIndexConfig\x121\x0A\x07indexes\x18\x01 \x03(\x0B2 .google.firestore.admin.v1.Index\x12\x1C\x0A\x14uses_ancestor_config\x18\x02 \x01(\x08\x12\x16\x0A\x0Eancestor_field\x18\x03 \x01(\x09\x12\x11\x0A\x09reverting\x18\x04 \x01(\x08\x1A\x9D\x01\x0A\x09TtlConfig\x12D\x0A\x05state\x18\x01 \x01(\x0E20.google.firestore.admin.v1.Field.TtlConfig.StateB\x03\xE0A\x03\"J\x0A\x05State\x12\x15\x0A\x11STATE_UNSPECIFIED\x10\x00\x12\x0C\x0A\x08CREATING\x10\x01\x12\x0A\x0A\x06ACTIVE\x10\x02\x12\x10\x0A\x0CNEEDS_REPAIR\x10\x03:y\xEAAv\x0A\x1Efirestore.googleapis.com/Field\x12Tprojects/{project}/databases/{database}/collectionGroups/{collection}/fields/{field}B\xD9\x01\x0A\x1Dcom.google.firestore.admin.v1B\x0AFieldProtoP\x01Z9cloud.google.com/go/firestore/apiv1/admin/adminpb;adminpb\xA2\x02\x04GCFS\xAA\x02\x1FGoogle.Cloud.Firestore.Admin.V1\xCA\x02\x1FGoogle\\Cloud\\Firestore\\Admin\\V1\xEA\x02#Google::Cloud::Firestore::Admin::V1b\x06proto3"
+ "\x0A\x8B\x08\x0A%google/firestore/admin/v1/field.proto\x12\x19google.firestore.admin.v1\x1A\x19google/api/resource.proto\x1A%google/firestore/admin/v1/index.proto\x1A\x1Egoogle/protobuf/duration.proto\"\x80\x05\x0A\x05Field\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x02\x12B\x0A\x0Cindex_config\x18\x02 \x01(\x0B2,.google.firestore.admin.v1.Field.IndexConfig\x12>\x0A\x0Attl_config\x18\x03 \x01(\x0B2*.google.firestore.admin.v1.Field.TtlConfig\x1A\x89\x01\x0A\x0BIndexConfig\x121\x0A\x07indexes\x18\x01 \x03(\x0B2 .google.firestore.admin.v1.Index\x12\x1C\x0A\x14uses_ancestor_config\x18\x02 \x01(\x08\x12\x16\x0A\x0Eancestor_field\x18\x03 \x01(\x09\x12\x11\x0A\x09reverting\x18\x04 \x01(\x08\x1A\xD8\x01\x0A\x09TtlConfig\x12D\x0A\x05state\x18\x01 \x01(\x0E20.google.firestore.admin.v1.Field.TtlConfig.StateB\x03\xE0A\x03\x129\x0A\x11expiration_offset\x18\x03 \x01(\x0B2\x19.google.protobuf.DurationB\x03\xE0A\x01\"J\x0A\x05State\x12\x15\x0A\x11STATE_UNSPECIFIED\x10\x00\x12\x0C\x0A\x08CREATING\x10\x01\x12\x0A\x0A\x06ACTIVE\x10\x02\x12\x10\x0A\x0CNEEDS_REPAIR\x10\x03:y\xEAAv\x0A\x1Efirestore.googleapis.com/Field\x12Tprojects/{project}/databases/{database}/collectionGroups/{collection}/fields/{field}B\xD9\x01\x0A\x1Dcom.google.firestore.admin.v1B\x0AFieldProtoP\x01Z9cloud.google.com/go/firestore/apiv1/admin/adminpb;adminpb\xA2\x02\x04GCFS\xAA\x02\x1FGoogle.Cloud.Firestore.Admin.V1\xCA\x02\x1FGoogle\\Cloud\\Firestore\\Admin\\V1\xEA\x02#Google::Cloud::Firestore::Admin::V1b\x06proto3"
, true);
static::$is_initialized = true;
diff --git a/Firestore/metadata/Admin/V1/Operation.php b/Firestore/metadata/Admin/V1/Operation.php
index 2cdcea36ae3..9c8527e9e62 100644
--- a/Firestore/metadata/Admin/V1/Operation.php
+++ b/Firestore/metadata/Admin/V1/Operation.php
@@ -17,9 +17,10 @@ public static function initOnce() {
\GPBMetadata\Google\Api\Resource::initOnce();
\GPBMetadata\Google\Firestore\Admin\V1\Index::initOnce();
\GPBMetadata\Google\Firestore\Admin\V1\Snapshot::initOnce();
+ \GPBMetadata\Google\Protobuf\Duration::initOnce();
\GPBMetadata\Google\Protobuf\Timestamp::initOnce();
$pool->internalAddGeneratedFile(
- "\x0A\xD7\x1E\x0A)google/firestore/admin/v1/operation.proto\x12\x19google.firestore.admin.v1\x1A%google/firestore/admin/v1/index.proto\x1A(google/firestore/admin/v1/snapshot.proto\x1A\x1Fgoogle/protobuf/timestamp.proto\"\xBD\x02\x0A\x16IndexOperationMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12\x0D\x0A\x05index\x18\x03 \x01(\x09\x128\x0A\x05state\x18\x04 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x06 \x01(\x0B2#.google.firestore.admin.v1.Progress\"\x99\x07\x0A\x16FieldOperationMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12\x0D\x0A\x05field\x18\x03 \x01(\x09\x12_\x0A\x13index_config_deltas\x18\x04 \x03(\x0B2B.google.firestore.admin.v1.FieldOperationMetadata.IndexConfigDelta\x128\x0A\x05state\x18\x05 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x06 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x07 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12Z\x0A\x10ttl_config_delta\x18\x08 \x01(\x0B2@.google.firestore.admin.v1.FieldOperationMetadata.TtlConfigDelta\x1A\xE7\x01\x0A\x10IndexConfigDelta\x12b\x0A\x0Bchange_type\x18\x01 \x01(\x0E2M.google.firestore.admin.v1.FieldOperationMetadata.IndexConfigDelta.ChangeType\x12/\x0A\x05index\x18\x02 \x01(\x0B2 .google.firestore.admin.v1.Index\">\x0A\x0AChangeType\x12\x1B\x0A\x17CHANGE_TYPE_UNSPECIFIED\x10\x00\x12\x07\x0A\x03ADD\x10\x01\x12\x0A\x0A\x06REMOVE\x10\x02\x1A\xB2\x01\x0A\x0ETtlConfigDelta\x12`\x0A\x0Bchange_type\x18\x01 \x01(\x0E2K.google.firestore.admin.v1.FieldOperationMetadata.TtlConfigDelta.ChangeType\">\x0A\x0AChangeType\x12\x1B\x0A\x17CHANGE_TYPE_UNSPECIFIED\x10\x00\x12\x07\x0A\x03ADD\x10\x01\x12\x0A\x0A\x06REMOVE\x10\x02\"\xB6\x03\x0A\x17ExportDocumentsMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x04 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12\x16\x0A\x0Ecollection_ids\x18\x06 \x03(\x09\x12\x19\x0A\x11output_uri_prefix\x18\x07 \x01(\x09\x12\x15\x0A\x0Dnamespace_ids\x18\x08 \x03(\x09\x121\x0A\x0Dsnapshot_time\x18\x09 \x01(\x0B2\x1A.google.protobuf.Timestamp\"\x82\x03\x0A\x17ImportDocumentsMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x04 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12\x16\x0A\x0Ecollection_ids\x18\x06 \x03(\x09\x12\x18\x0A\x10input_uri_prefix\x18\x07 \x01(\x09\x12\x15\x0A\x0Dnamespace_ids\x18\x08 \x03(\x09\"\x9F\x03\x0A\x1BBulkDeleteDocumentsMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x04 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12\x16\x0A\x0Ecollection_ids\x18\x06 \x03(\x09\x12\x15\x0A\x0Dnamespace_ids\x18\x07 \x03(\x09\x121\x0A\x0Dsnapshot_time\x18\x08 \x01(\x0B2\x1A.google.protobuf.Timestamp\"4\x0A\x17ExportDocumentsResponse\x12\x19\x0A\x11output_uri_prefix\x18\x01 \x01(\x09\"\xED\x02\x0A\x17RestoreDatabaseMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x128\x0A\x08database\x18\x04 \x01(\x09B&\xFAA#\x0A!firestore.googleapis.com/Database\x124\x0A\x06backup\x18\x05 \x01(\x09B\$\xFAA!\x0A\x1Ffirestore.googleapis.com/Backup\x12@\x0A\x13progress_percentage\x18\x08 \x01(\x0B2#.google.firestore.admin.v1.Progress\"\xF5\x02\x0A\x15CloneDatabaseMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x128\x0A\x08database\x18\x04 \x01(\x09B&\xFAA#\x0A!firestore.googleapis.com/Database\x12>\x0A\x0Dpitr_snapshot\x18\x07 \x01(\x0B2'.google.firestore.admin.v1.PitrSnapshot\x12@\x0A\x13progress_percentage\x18\x06 \x01(\x0B2#.google.firestore.admin.v1.Progress\":\x0A\x08Progress\x12\x16\x0A\x0Eestimated_work\x18\x01 \x01(\x03\x12\x16\x0A\x0Ecompleted_work\x18\x02 \x01(\x03*\x9E\x01\x0A\x0EOperationState\x12\x1F\x0A\x1BOPERATION_STATE_UNSPECIFIED\x10\x00\x12\x10\x0A\x0CINITIALIZING\x10\x01\x12\x0E\x0A\x0APROCESSING\x10\x02\x12\x0E\x0A\x0ACANCELLING\x10\x03\x12\x0E\x0A\x0AFINALIZING\x10\x04\x12\x0E\x0A\x0ASUCCESSFUL\x10\x05\x12\x0A\x0A\x06FAILED\x10\x06\x12\x0D\x0A\x09CANCELLED\x10\x07B\xDD\x01\x0A\x1Dcom.google.firestore.admin.v1B\x0EOperationProtoP\x01Z9cloud.google.com/go/firestore/apiv1/admin/adminpb;adminpb\xA2\x02\x04GCFS\xAA\x02\x1FGoogle.Cloud.Firestore.Admin.V1\xCA\x02\x1FGoogle\\Cloud\\Firestore\\Admin\\V1\xEA\x02#Google::Cloud::Firestore::Admin::V1b\x06proto3"
+ "\x0A\xAD\x1F\x0A)google/firestore/admin/v1/operation.proto\x12\x19google.firestore.admin.v1\x1A%google/firestore/admin/v1/index.proto\x1A(google/firestore/admin/v1/snapshot.proto\x1A\x1Egoogle/protobuf/duration.proto\x1A\x1Fgoogle/protobuf/timestamp.proto\"\xBD\x02\x0A\x16IndexOperationMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12\x0D\x0A\x05index\x18\x03 \x01(\x09\x128\x0A\x05state\x18\x04 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x06 \x01(\x0B2#.google.firestore.admin.v1.Progress\"\xCF\x07\x0A\x16FieldOperationMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12\x0D\x0A\x05field\x18\x03 \x01(\x09\x12_\x0A\x13index_config_deltas\x18\x04 \x03(\x0B2B.google.firestore.admin.v1.FieldOperationMetadata.IndexConfigDelta\x128\x0A\x05state\x18\x05 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x06 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x07 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12Z\x0A\x10ttl_config_delta\x18\x08 \x01(\x0B2@.google.firestore.admin.v1.FieldOperationMetadata.TtlConfigDelta\x1A\xE7\x01\x0A\x10IndexConfigDelta\x12b\x0A\x0Bchange_type\x18\x01 \x01(\x0E2M.google.firestore.admin.v1.FieldOperationMetadata.IndexConfigDelta.ChangeType\x12/\x0A\x05index\x18\x02 \x01(\x0B2 .google.firestore.admin.v1.Index\">\x0A\x0AChangeType\x12\x1B\x0A\x17CHANGE_TYPE_UNSPECIFIED\x10\x00\x12\x07\x0A\x03ADD\x10\x01\x12\x0A\x0A\x06REMOVE\x10\x02\x1A\xE8\x01\x0A\x0ETtlConfigDelta\x12`\x0A\x0Bchange_type\x18\x01 \x01(\x0E2K.google.firestore.admin.v1.FieldOperationMetadata.TtlConfigDelta.ChangeType\x124\x0A\x11expiration_offset\x18\x03 \x01(\x0B2\x19.google.protobuf.Duration\">\x0A\x0AChangeType\x12\x1B\x0A\x17CHANGE_TYPE_UNSPECIFIED\x10\x00\x12\x07\x0A\x03ADD\x10\x01\x12\x0A\x0A\x06REMOVE\x10\x02\"\xB6\x03\x0A\x17ExportDocumentsMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x04 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12\x16\x0A\x0Ecollection_ids\x18\x06 \x03(\x09\x12\x19\x0A\x11output_uri_prefix\x18\x07 \x01(\x09\x12\x15\x0A\x0Dnamespace_ids\x18\x08 \x03(\x09\x121\x0A\x0Dsnapshot_time\x18\x09 \x01(\x0B2\x1A.google.protobuf.Timestamp\"\x82\x03\x0A\x17ImportDocumentsMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x04 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12\x16\x0A\x0Ecollection_ids\x18\x06 \x03(\x09\x12\x18\x0A\x10input_uri_prefix\x18\x07 \x01(\x09\x12\x15\x0A\x0Dnamespace_ids\x18\x08 \x03(\x09\"\x9F\x03\x0A\x1BBulkDeleteDocumentsMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x12?\x0A\x12progress_documents\x18\x04 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12;\x0A\x0Eprogress_bytes\x18\x05 \x01(\x0B2#.google.firestore.admin.v1.Progress\x12\x16\x0A\x0Ecollection_ids\x18\x06 \x03(\x09\x12\x15\x0A\x0Dnamespace_ids\x18\x07 \x03(\x09\x121\x0A\x0Dsnapshot_time\x18\x08 \x01(\x0B2\x1A.google.protobuf.Timestamp\"4\x0A\x17ExportDocumentsResponse\x12\x19\x0A\x11output_uri_prefix\x18\x01 \x01(\x09\"\xED\x02\x0A\x17RestoreDatabaseMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x128\x0A\x08database\x18\x04 \x01(\x09B&\xFAA#\x0A!firestore.googleapis.com/Database\x124\x0A\x06backup\x18\x05 \x01(\x09B\$\xFAA!\x0A\x1Ffirestore.googleapis.com/Backup\x12@\x0A\x13progress_percentage\x18\x08 \x01(\x0B2#.google.firestore.admin.v1.Progress\"\xF5\x02\x0A\x15CloneDatabaseMetadata\x12.\x0A\x0Astart_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12,\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.Timestamp\x12B\x0A\x0Foperation_state\x18\x03 \x01(\x0E2).google.firestore.admin.v1.OperationState\x128\x0A\x08database\x18\x04 \x01(\x09B&\xFAA#\x0A!firestore.googleapis.com/Database\x12>\x0A\x0Dpitr_snapshot\x18\x07 \x01(\x0B2'.google.firestore.admin.v1.PitrSnapshot\x12@\x0A\x13progress_percentage\x18\x06 \x01(\x0B2#.google.firestore.admin.v1.Progress\":\x0A\x08Progress\x12\x16\x0A\x0Eestimated_work\x18\x01 \x01(\x03\x12\x16\x0A\x0Ecompleted_work\x18\x02 \x01(\x03*\x9E\x01\x0A\x0EOperationState\x12\x1F\x0A\x1BOPERATION_STATE_UNSPECIFIED\x10\x00\x12\x10\x0A\x0CINITIALIZING\x10\x01\x12\x0E\x0A\x0APROCESSING\x10\x02\x12\x0E\x0A\x0ACANCELLING\x10\x03\x12\x0E\x0A\x0AFINALIZING\x10\x04\x12\x0E\x0A\x0ASUCCESSFUL\x10\x05\x12\x0A\x0A\x06FAILED\x10\x06\x12\x0D\x0A\x09CANCELLED\x10\x07B\xDD\x01\x0A\x1Dcom.google.firestore.admin.v1B\x0EOperationProtoP\x01Z9cloud.google.com/go/firestore/apiv1/admin/adminpb;adminpb\xA2\x02\x04GCFS\xAA\x02\x1FGoogle.Cloud.Firestore.Admin.V1\xCA\x02\x1FGoogle\\Cloud\\Firestore\\Admin\\V1\xEA\x02#Google::Cloud::Firestore::Admin::V1b\x06proto3"
, true);
static::$is_initialized = true;
diff --git a/Firestore/src/Admin/V1/Field/TtlConfig.php b/Firestore/src/Admin/V1/Field/TtlConfig.php
index 6a7353dd8c2..3fb96407126 100644
--- a/Firestore/src/Admin/V1/Field/TtlConfig.php
+++ b/Firestore/src/Admin/V1/Field/TtlConfig.php
@@ -11,11 +11,12 @@
/**
* The TTL (time-to-live) configuration for documents that have this `Field`
* set.
- * Storing a timestamp value into a TTL-enabled field will be treated as
- * the document's absolute expiration time. For Enterprise edition databases,
- * the timestamp value may also be stored in an array value in the
- * TTL-enabled field.
- * Timestamp values in the past indicate that the document is eligible for
+ * A timestamp stored in a TTL-enabled field will be used to determine the
+ * expiration time of the document. The expiration time is the sum
+ * of the timestamp value and the `expiration_offset`.
+ * For Enterprise edition databases, the timestamp value may alternatively be
+ * stored in an array value in the TTL-enabled field.
+ * An expiration time in the past indicates that the document is eligible for
* immediate expiration. Using any other data type or leaving the field absent
* will disable expiration for the individual document.
*
@@ -29,6 +30,17 @@ class TtlConfig extends \Google\Protobuf\Internal\Message
* Generated from protobuf field .google.firestore.admin.v1.Field.TtlConfig.State state = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
*/
private $state = 0;
+ /**
+ * Optional. The offset, relative to the timestamp value from the
+ * TTL-enabled field, used to determine the document's expiration time.
+ * `expiration_offset.seconds` must be between 0 and 2,147,483,647
+ * inclusive. Values more precise than seconds are rejected.
+ * If unset, defaults to 0, in which case the expiration time is the same
+ * as the timestamp value from the TTL-enabled field.
+ *
+ * Generated from protobuf field .google.protobuf.Duration expiration_offset = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ private $expiration_offset = null;
/**
* Constructor.
@@ -38,6 +50,13 @@ class TtlConfig extends \Google\Protobuf\Internal\Message
*
* @type int $state
* Output only. The state of the TTL configuration.
+ * @type \Google\Protobuf\Duration $expiration_offset
+ * Optional. The offset, relative to the timestamp value from the
+ * TTL-enabled field, used to determine the document's expiration time.
+ * `expiration_offset.seconds` must be between 0 and 2,147,483,647
+ * inclusive. Values more precise than seconds are rejected.
+ * If unset, defaults to 0, in which case the expiration time is the same
+ * as the timestamp value from the TTL-enabled field.
* }
*/
public function __construct($data = NULL) {
@@ -71,5 +90,51 @@ public function setState($var)
return $this;
}
+ /**
+ * Optional. The offset, relative to the timestamp value from the
+ * TTL-enabled field, used to determine the document's expiration time.
+ * `expiration_offset.seconds` must be between 0 and 2,147,483,647
+ * inclusive. Values more precise than seconds are rejected.
+ * If unset, defaults to 0, in which case the expiration time is the same
+ * as the timestamp value from the TTL-enabled field.
+ *
+ * Generated from protobuf field .google.protobuf.Duration expiration_offset = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getExpirationOffset()
+ {
+ return $this->expiration_offset;
+ }
+
+ public function hasExpirationOffset()
+ {
+ return isset($this->expiration_offset);
+ }
+
+ public function clearExpirationOffset()
+ {
+ unset($this->expiration_offset);
+ }
+
+ /**
+ * Optional. The offset, relative to the timestamp value from the
+ * TTL-enabled field, used to determine the document's expiration time.
+ * `expiration_offset.seconds` must be between 0 and 2,147,483,647
+ * inclusive. Values more precise than seconds are rejected.
+ * If unset, defaults to 0, in which case the expiration time is the same
+ * as the timestamp value from the TTL-enabled field.
+ *
+ * Generated from protobuf field .google.protobuf.Duration expiration_offset = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setExpirationOffset($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->expiration_offset = $var;
+
+ return $this;
+ }
+
}
diff --git a/Firestore/src/Admin/V1/FieldOperationMetadata/TtlConfigDelta.php b/Firestore/src/Admin/V1/FieldOperationMetadata/TtlConfigDelta.php
index 7c610bfb44c..f66e5ff0876 100644
--- a/Firestore/src/Admin/V1/FieldOperationMetadata/TtlConfigDelta.php
+++ b/Firestore/src/Admin/V1/FieldOperationMetadata/TtlConfigDelta.php
@@ -21,6 +21,13 @@ class TtlConfigDelta extends \Google\Protobuf\Internal\Message
* Generated from protobuf field .google.firestore.admin.v1.FieldOperationMetadata.TtlConfigDelta.ChangeType change_type = 1;
*/
private $change_type = 0;
+ /**
+ * The offset, relative to the timestamp value in the TTL-enabled field,
+ * used determine the document's expiration time.
+ *
+ * Generated from protobuf field .google.protobuf.Duration expiration_offset = 3;
+ */
+ private $expiration_offset = null;
/**
* Constructor.
@@ -30,6 +37,9 @@ class TtlConfigDelta extends \Google\Protobuf\Internal\Message
*
* @type int $change_type
* Specifies how the TTL configuration is changing.
+ * @type \Google\Protobuf\Duration $expiration_offset
+ * The offset, relative to the timestamp value in the TTL-enabled field,
+ * used determine the document's expiration time.
* }
*/
public function __construct($data = NULL) {
@@ -63,5 +73,43 @@ public function setChangeType($var)
return $this;
}
+ /**
+ * The offset, relative to the timestamp value in the TTL-enabled field,
+ * used determine the document's expiration time.
+ *
+ * Generated from protobuf field .google.protobuf.Duration expiration_offset = 3;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getExpirationOffset()
+ {
+ return $this->expiration_offset;
+ }
+
+ public function hasExpirationOffset()
+ {
+ return isset($this->expiration_offset);
+ }
+
+ public function clearExpirationOffset()
+ {
+ unset($this->expiration_offset);
+ }
+
+ /**
+ * The offset, relative to the timestamp value in the TTL-enabled field,
+ * used determine the document's expiration time.
+ *
+ * Generated from protobuf field .google.protobuf.Duration expiration_offset = 3;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setExpirationOffset($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->expiration_offset = $var;
+
+ return $this;
+ }
+
}