From 7871df43a59af2dfd9e6d3a1d306e2345789ee98 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Date: Wed, 9 Oct 2024 01:36:02 +0000 Subject: [PATCH] feat(developerconnect): update the API #### developerconnect:v1 The following keys were added: - schemas.Connection.properties.cryptoKeyConfig.$ref - schemas.Connection.properties.cryptoKeyConfig.description - schemas.Connection.properties.githubEnterpriseConfig.$ref - schemas.Connection.properties.githubEnterpriseConfig.description - schemas.Connection.properties.gitlabConfig.$ref - schemas.Connection.properties.gitlabConfig.description - schemas.Connection.properties.gitlabEnterpriseConfig.$ref - schemas.Connection.properties.gitlabEnterpriseConfig.description - schemas.CryptoKeyConfig.description - schemas.CryptoKeyConfig.id - schemas.CryptoKeyConfig.properties.keyReference.description - schemas.CryptoKeyConfig.properties.keyReference.type - schemas.CryptoKeyConfig.type - schemas.GitHubEnterpriseConfig.description - schemas.GitHubEnterpriseConfig.id - schemas.GitHubEnterpriseConfig.properties.appId.description - schemas.GitHubEnterpriseConfig.properties.appId.format - schemas.GitHubEnterpriseConfig.properties.appId.type - schemas.GitHubEnterpriseConfig.properties.appInstallationId.description - schemas.GitHubEnterpriseConfig.properties.appInstallationId.format - schemas.GitHubEnterpriseConfig.properties.appInstallationId.type - schemas.GitHubEnterpriseConfig.properties.appSlug.description - schemas.GitHubEnterpriseConfig.properties.appSlug.readOnly - schemas.GitHubEnterpriseConfig.properties.appSlug.type - schemas.GitHubEnterpriseConfig.properties.hostUri.description - schemas.GitHubEnterpriseConfig.properties.hostUri.type - schemas.GitHubEnterpriseConfig.properties.installationUri.description - schemas.GitHubEnterpriseConfig.properties.installationUri.readOnly - schemas.GitHubEnterpriseConfig.properties.installationUri.type - schemas.GitHubEnterpriseConfig.properties.privateKeySecretVersion.description - schemas.GitHubEnterpriseConfig.properties.privateKeySecretVersion.type - schemas.GitHubEnterpriseConfig.properties.serverVersion.description - schemas.GitHubEnterpriseConfig.properties.serverVersion.readOnly - schemas.GitHubEnterpriseConfig.properties.serverVersion.type - schemas.GitHubEnterpriseConfig.properties.serviceDirectoryConfig.$ref - schemas.GitHubEnterpriseConfig.properties.serviceDirectoryConfig.description - schemas.GitHubEnterpriseConfig.properties.sslCaCertificate.description - schemas.GitHubEnterpriseConfig.properties.sslCaCertificate.type - schemas.GitHubEnterpriseConfig.properties.webhookSecretSecretVersion.description - schemas.GitHubEnterpriseConfig.properties.webhookSecretSecretVersion.type - schemas.GitHubEnterpriseConfig.type - schemas.GitLabConfig.description - schemas.GitLabConfig.id - schemas.GitLabConfig.properties.authorizerCredential.$ref - schemas.GitLabConfig.properties.authorizerCredential.description - schemas.GitLabConfig.properties.readAuthorizerCredential.$ref - schemas.GitLabConfig.properties.readAuthorizerCredential.description - schemas.GitLabConfig.properties.webhookSecretSecretVersion.description - schemas.GitLabConfig.properties.webhookSecretSecretVersion.type - schemas.GitLabConfig.type - schemas.GitLabEnterpriseConfig.description - schemas.GitLabEnterpriseConfig.id - schemas.GitLabEnterpriseConfig.properties.authorizerCredential.$ref - schemas.GitLabEnterpriseConfig.properties.authorizerCredential.description - schemas.GitLabEnterpriseConfig.properties.hostUri.description - schemas.GitLabEnterpriseConfig.properties.hostUri.type - schemas.GitLabEnterpriseConfig.properties.readAuthorizerCredential.$ref - schemas.GitLabEnterpriseConfig.properties.readAuthorizerCredential.description - schemas.GitLabEnterpriseConfig.properties.serverVersion.description - schemas.GitLabEnterpriseConfig.properties.serverVersion.readOnly - schemas.GitLabEnterpriseConfig.properties.serverVersion.type - schemas.GitLabEnterpriseConfig.properties.serviceDirectoryConfig.$ref - schemas.GitLabEnterpriseConfig.properties.serviceDirectoryConfig.description - schemas.GitLabEnterpriseConfig.properties.sslCaCertificate.description - schemas.GitLabEnterpriseConfig.properties.sslCaCertificate.type - schemas.GitLabEnterpriseConfig.properties.webhookSecretSecretVersion.description - schemas.GitLabEnterpriseConfig.properties.webhookSecretSecretVersion.type - schemas.GitLabEnterpriseConfig.type - schemas.GitRepositoryLink.properties.webhookId.description - schemas.GitRepositoryLink.properties.webhookId.readOnly - schemas.GitRepositoryLink.properties.webhookId.type - schemas.ServiceDirectoryConfig.description - schemas.ServiceDirectoryConfig.id - schemas.ServiceDirectoryConfig.properties.service.description - schemas.ServiceDirectoryConfig.properties.service.type - schemas.ServiceDirectoryConfig.type - schemas.UserCredential.description - schemas.UserCredential.id - schemas.UserCredential.properties.userTokenSecretVersion.description - schemas.UserCredential.properties.userTokenSecretVersion.type - schemas.UserCredential.properties.username.description - schemas.UserCredential.properties.username.readOnly - schemas.UserCredential.properties.username.type - schemas.UserCredential.type The following keys were changed: - endpoints - resources.projects.resources.locations.resources.connections.methods.patch.parameters.updateMask.description --- discovery/developerconnect-v1.json | 215 ++++++++++++++++++++++++++++- src/apis/developerconnect/v1.ts | 148 +++++++++++++++++++- 2 files changed, 360 insertions(+), 3 deletions(-) diff --git a/discovery/developerconnect-v1.json b/discovery/developerconnect-v1.json index 990516e29d..a0ebd2a6f7 100644 --- a/discovery/developerconnect-v1.json +++ b/discovery/developerconnect-v1.json @@ -20,6 +20,51 @@ "description": "Regional Endpoint", "endpointUrl": "https://developerconnect.us-central1.rep.googleapis.com/", "location": "us-central1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.europe-west1.rep.googleapis.com/", + "location": "europe-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.asia-east1.rep.googleapis.com/", + "location": "asia-east1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.asia-east2.rep.googleapis.com/", + "location": "asia-east2" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.europe-west4.rep.googleapis.com/", + "location": "europe-west4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.us-east4.rep.googleapis.com/", + "location": "us-east4" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.us-east5.rep.googleapis.com/", + "location": "us-east5" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.asia-southeast1.rep.googleapis.com/", + "location": "asia-southeast1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.us-west1.rep.googleapis.com/", + "location": "us-west1" + }, + { + "description": "Regional Endpoint", + "endpointUrl": "https://developerconnect.us-west2.rep.googleapis.com/", + "location": "us-west2" } ], "fullyEncodeReservedExpansion": true, @@ -428,7 +473,7 @@ "type": "string" }, "updateMask": { - "description": "Required. Field mask is used to specify the fields to be overwritten in the Connection resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "description": "Optional. Required. Field mask is used to specify the fields to be overwritten in the Connection resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -847,7 +892,7 @@ } } }, - "revision": "20240822", + "revision": "20240926", "rootUrl": "https://developerconnect.googleapis.com/", "schemas": { "CancelOperationRequest": { @@ -873,6 +918,10 @@ "readOnly": true, "type": "string" }, + "cryptoKeyConfig": { + "$ref": "CryptoKeyConfig", + "description": "Optional. The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature." + }, "deleteTime": { "description": "Output only. [Output only] Delete timestamp", "format": "google-datetime", @@ -891,6 +940,18 @@ "$ref": "GitHubConfig", "description": "Configuration for connections to github.com." }, + "githubEnterpriseConfig": { + "$ref": "GitHubEnterpriseConfig", + "description": "Configuration for connections to an instance of GitHub Enterprise." + }, + "gitlabConfig": { + "$ref": "GitLabConfig", + "description": "Configuration for connections to gitlab.com." + }, + "gitlabEnterpriseConfig": { + "$ref": "GitLabEnterpriseConfig", + "description": "Configuration for connections to an instance of GitLab Enterprise." + }, "installationState": { "$ref": "InstallationState", "description": "Output only. Installation state of the Connection.", @@ -926,6 +987,17 @@ }, "type": "object" }, + "CryptoKeyConfig": { + "description": "The crypto key configuration. This field is used by the Customer-managed encryption keys (CMEK) feature.", + "id": "CryptoKeyConfig", + "properties": { + "keyReference": { + "description": "Required. The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of `projects/*/locations/*/keyRings/*/cryptoKeys/*`.", + "type": "string" + } + }, + "type": "object" + }, "Empty": { "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }", "id": "Empty", @@ -1069,6 +1141,113 @@ }, "type": "object" }, + "GitHubEnterpriseConfig": { + "description": "Configuration for connections to an instance of GitHub Enterprise.", + "id": "GitHubEnterpriseConfig", + "properties": { + "appId": { + "description": "Optional. ID of the GitHub App created from the manifest.", + "format": "int64", + "type": "string" + }, + "appInstallationId": { + "description": "Optional. ID of the installation of the GitHub App.", + "format": "int64", + "type": "string" + }, + "appSlug": { + "description": "Output only. The URL-friendly name of the GitHub App.", + "readOnly": true, + "type": "string" + }, + "hostUri": { + "description": "Required. The URI of the GitHub Enterprise host this connection is for.", + "type": "string" + }, + "installationUri": { + "description": "Output only. The URI to navigate to in order to manage the installation associated with this GitHubEnterpriseConfig.", + "readOnly": true, + "type": "string" + }, + "privateKeySecretVersion": { + "description": "Optional. SecretManager resource containing the private key of the GitHub App, formatted as `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "serverVersion": { + "description": "Output only. GitHub Enterprise version installed at the host_uri.", + "readOnly": true, + "type": "string" + }, + "serviceDirectoryConfig": { + "$ref": "ServiceDirectoryConfig", + "description": "Optional. Configuration for using Service Directory to privately connect to a GitHub Enterprise server. This should only be set if the GitHub Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, calls to the GitHub Enterprise server will be made over the public internet." + }, + "sslCaCertificate": { + "description": "Optional. SSL certificate to use for requests to GitHub Enterprise.", + "type": "string" + }, + "webhookSecretSecretVersion": { + "description": "Optional. SecretManager resource containing the webhook secret of the GitHub App, formatted as `projects/*/secrets/*/versions/*`.", + "type": "string" + } + }, + "type": "object" + }, + "GitLabConfig": { + "description": "Configuration for connections to gitlab.com.", + "id": "GitLabConfig", + "properties": { + "authorizerCredential": { + "$ref": "UserCredential", + "description": "Required. A GitLab personal access token with the minimum `api` scope access and a minimum role of `maintainer`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to." + }, + "readAuthorizerCredential": { + "$ref": "UserCredential", + "description": "Required. A GitLab personal access token with the minimum `read_api` scope access and a minimum role of `reporter`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to." + }, + "webhookSecretSecretVersion": { + "description": "Required. Immutable. SecretManager resource containing the webhook secret of a GitLab project, formatted as `projects/*/secrets/*/versions/*`. This is used to validate webhooks.", + "type": "string" + } + }, + "type": "object" + }, + "GitLabEnterpriseConfig": { + "description": "Configuration for connections to an instance of GitLab Enterprise.", + "id": "GitLabEnterpriseConfig", + "properties": { + "authorizerCredential": { + "$ref": "UserCredential", + "description": "Required. A GitLab personal access token with the minimum `api` scope access and a minimum role of `maintainer`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to." + }, + "hostUri": { + "description": "Required. The URI of the GitLab Enterprise host this connection is for.", + "type": "string" + }, + "readAuthorizerCredential": { + "$ref": "UserCredential", + "description": "Required. A GitLab personal access token with the minimum `read_api` scope access and a minimum role of `reporter`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to." + }, + "serverVersion": { + "description": "Output only. Version of the GitLab Enterprise server running on the `host_uri`.", + "readOnly": true, + "type": "string" + }, + "serviceDirectoryConfig": { + "$ref": "ServiceDirectoryConfig", + "description": "Optional. Configuration for using Service Directory to privately connect to a GitLab Enterprise instance. This should only be set if the GitLab Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, calls to the GitLab Enterprise server will be made over the public internet." + }, + "sslCaCertificate": { + "description": "Optional. SSL Certificate Authority certificate to use for requests to GitLab Enterprise instance.", + "type": "string" + }, + "webhookSecretSecretVersion": { + "description": "Required. Immutable. SecretManager resource containing the webhook secret of a GitLab project, formatted as `projects/*/secrets/*/versions/*`. This is used to validate webhooks.", + "type": "string" + } + }, + "type": "object" + }, "GitRepositoryLink": { "description": "Message describing the GitRepositoryLink object", "id": "GitRepositoryLink", @@ -1126,6 +1305,11 @@ "format": "google-datetime", "readOnly": true, "type": "string" + }, + "webhookId": { + "description": "Output only. External ID of the webhook created for the repository.", + "readOnly": true, + "type": "string" } }, "type": "object" @@ -1412,6 +1596,17 @@ }, "type": "object" }, + "ServiceDirectoryConfig": { + "description": "ServiceDirectoryConfig represents Service Directory configuration for a connection.", + "id": "ServiceDirectoryConfig", + "properties": { + "service": { + "description": "Required. The Service Directory service name. Format: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}.", + "type": "string" + } + }, + "type": "object" + }, "Status": { "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", "id": "Status", @@ -1438,6 +1633,22 @@ } }, "type": "object" + }, + "UserCredential": { + "description": "Represents a personal access token that authorized the Connection, and associated metadata.", + "id": "UserCredential", + "properties": { + "userTokenSecretVersion": { + "description": "Required. A SecretManager resource containing the user token that authorizes the Developer Connect connection. Format: `projects/*/secrets/*/versions/*`.", + "type": "string" + }, + "username": { + "description": "Output only. The username associated with this token.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/src/apis/developerconnect/v1.ts b/src/apis/developerconnect/v1.ts index 0c565a29c3..04ac87eac6 100644 --- a/src/apis/developerconnect/v1.ts +++ b/src/apis/developerconnect/v1.ts @@ -140,6 +140,10 @@ export namespace developerconnect_v1 { * Output only. [Output only] Create timestamp */ createTime?: string | null; + /** + * Optional. The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature. + */ + cryptoKeyConfig?: Schema$CryptoKeyConfig; /** * Output only. [Output only] Delete timestamp */ @@ -156,6 +160,18 @@ export namespace developerconnect_v1 { * Configuration for connections to github.com. */ githubConfig?: Schema$GitHubConfig; + /** + * Configuration for connections to an instance of GitHub Enterprise. + */ + githubEnterpriseConfig?: Schema$GitHubEnterpriseConfig; + /** + * Configuration for connections to gitlab.com. + */ + gitlabConfig?: Schema$GitLabConfig; + /** + * Configuration for connections to an instance of GitLab Enterprise. + */ + gitlabEnterpriseConfig?: Schema$GitLabEnterpriseConfig; /** * Output only. Installation state of the Connection. */ @@ -181,6 +197,15 @@ export namespace developerconnect_v1 { */ updateTime?: string | null; } + /** + * The crypto key configuration. This field is used by the Customer-managed encryption keys (CMEK) feature. + */ + export interface Schema$CryptoKeyConfig { + /** + * Required. The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of `projects/x/locations/x/keyRings/x/cryptoKeys/x`. + */ + keyReference?: string | null; + } /** * A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); \} */ @@ -283,6 +308,101 @@ export namespace developerconnect_v1 { */ installationUri?: string | null; } + /** + * Configuration for connections to an instance of GitHub Enterprise. + */ + export interface Schema$GitHubEnterpriseConfig { + /** + * Optional. ID of the GitHub App created from the manifest. + */ + appId?: string | null; + /** + * Optional. ID of the installation of the GitHub App. + */ + appInstallationId?: string | null; + /** + * Output only. The URL-friendly name of the GitHub App. + */ + appSlug?: string | null; + /** + * Required. The URI of the GitHub Enterprise host this connection is for. + */ + hostUri?: string | null; + /** + * Output only. The URI to navigate to in order to manage the installation associated with this GitHubEnterpriseConfig. + */ + installationUri?: string | null; + /** + * Optional. SecretManager resource containing the private key of the GitHub App, formatted as `projects/x/secrets/x/versions/x`. + */ + privateKeySecretVersion?: string | null; + /** + * Output only. GitHub Enterprise version installed at the host_uri. + */ + serverVersion?: string | null; + /** + * Optional. Configuration for using Service Directory to privately connect to a GitHub Enterprise server. This should only be set if the GitHub Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, calls to the GitHub Enterprise server will be made over the public internet. + */ + serviceDirectoryConfig?: Schema$ServiceDirectoryConfig; + /** + * Optional. SSL certificate to use for requests to GitHub Enterprise. + */ + sslCaCertificate?: string | null; + /** + * Optional. SecretManager resource containing the webhook secret of the GitHub App, formatted as `projects/x/secrets/x/versions/x`. + */ + webhookSecretSecretVersion?: string | null; + } + /** + * Configuration for connections to gitlab.com. + */ + export interface Schema$GitLabConfig { + /** + * Required. A GitLab personal access token with the minimum `api` scope access and a minimum role of `maintainer`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to. + */ + authorizerCredential?: Schema$UserCredential; + /** + * Required. A GitLab personal access token with the minimum `read_api` scope access and a minimum role of `reporter`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to. + */ + readAuthorizerCredential?: Schema$UserCredential; + /** + * Required. Immutable. SecretManager resource containing the webhook secret of a GitLab project, formatted as `projects/x/secrets/x/versions/x`. This is used to validate webhooks. + */ + webhookSecretSecretVersion?: string | null; + } + /** + * Configuration for connections to an instance of GitLab Enterprise. + */ + export interface Schema$GitLabEnterpriseConfig { + /** + * Required. A GitLab personal access token with the minimum `api` scope access and a minimum role of `maintainer`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to. + */ + authorizerCredential?: Schema$UserCredential; + /** + * Required. The URI of the GitLab Enterprise host this connection is for. + */ + hostUri?: string | null; + /** + * Required. A GitLab personal access token with the minimum `read_api` scope access and a minimum role of `reporter`. The GitLab Projects visible to this Personal Access Token will control which Projects Developer Connect has access to. + */ + readAuthorizerCredential?: Schema$UserCredential; + /** + * Output only. Version of the GitLab Enterprise server running on the `host_uri`. + */ + serverVersion?: string | null; + /** + * Optional. Configuration for using Service Directory to privately connect to a GitLab Enterprise instance. This should only be set if the GitLab Enterprise server is hosted on-premises and not reachable by public internet. If this field is left empty, calls to the GitLab Enterprise server will be made over the public internet. + */ + serviceDirectoryConfig?: Schema$ServiceDirectoryConfig; + /** + * Optional. SSL Certificate Authority certificate to use for requests to GitLab Enterprise instance. + */ + sslCaCertificate?: string | null; + /** + * Required. Immutable. SecretManager resource containing the webhook secret of a GitLab project, formatted as `projects/x/secrets/x/versions/x`. This is used to validate webhooks. + */ + webhookSecretSecretVersion?: string | null; + } /** * Message describing the GitRepositoryLink object */ @@ -327,6 +447,10 @@ export namespace developerconnect_v1 { * Output only. [Output only] Update timestamp */ updateTime?: string | null; + /** + * Output only. External ID of the webhook created for the repository. + */ + webhookId?: string | null; } /** * Represents an installation of the GitHub App. @@ -527,6 +651,15 @@ export namespace developerconnect_v1 { */ verb?: string | null; } + /** + * ServiceDirectoryConfig represents Service Directory configuration for a connection. + */ + export interface Schema$ServiceDirectoryConfig { + /** + * Required. The Service Directory service name. Format: projects/{project\}/locations/{location\}/namespaces/{namespace\}/services/{service\}. + */ + service?: string | null; + } /** * The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). */ @@ -544,6 +677,19 @@ export namespace developerconnect_v1 { */ message?: string | null; } + /** + * Represents a personal access token that authorized the Connection, and associated metadata. + */ + export interface Schema$UserCredential { + /** + * Output only. The username associated with this token. + */ + username?: string | null; + /** + * Required. A SecretManager resource containing the user token that authorizes the Developer Connect connection. Format: `projects/x/secrets/x/versions/x`. + */ + userTokenSecretVersion?: string | null; + } export class Resource$Projects { context: APIRequestContext; @@ -1535,7 +1681,7 @@ export namespace developerconnect_v1 { */ requestId?: string; /** - * Required. Field mask is used to specify the fields to be overwritten in the Connection resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * Optional. Required. Field mask is used to specify the fields to be overwritten in the Connection resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. */ updateMask?: string; /**