diff --git a/protos/google/cloud/binaryauthorization/v1/resources.proto b/protos/google/cloud/binaryauthorization/v1/resources.proto new file mode 100644 index 0000000..9d72a9f --- /dev/null +++ b/protos/google/cloud/binaryauthorization/v1/resources.proto @@ -0,0 +1,334 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.binaryauthorization.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.BinaryAuthorization.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1;binaryauthorization"; +option java_multiple_files = false; +option java_package = "com.google.protos.google.cloud.binaryauthorization.v1"; +option php_namespace = "Google\\Cloud\\BinaryAuthorization\\V1"; +option ruby_package = "Google::Cloud::BinaryAuthorization::V1"; + +// A [policy][google.cloud.binaryauthorization.v1.Policy] for container image binary authorization. +message Policy { + option (google.api.resource) = { + type: "binaryauthorization.googleapis.com/Policy" + pattern: "projects/{project}/policy" + pattern: "locations/{location}/policy" + }; + + enum GlobalPolicyEvaluationMode { + // Not specified: DISABLE is assumed. + GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED = 0; + + // Enables system policy evaluation. + ENABLE = 1; + + // Disables system policy evaluation. + DISABLE = 2; + } + + // Output only. The resource name, in the format `projects/*/policy`. There is + // at most one policy per project. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. A descriptive comment. + string description = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Controls the evaluation of a Google-maintained global admission + // policy for common system-level images. Images not covered by the global + // policy will be subject to the project admission policy. This setting + // has no effect when specified inside a global admission policy. + GlobalPolicyEvaluationMode global_policy_evaluation_mode = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Admission policy allowlisting. A matching admission request will + // always be permitted. This feature is typically used to exclude Google or + // third-party infrastructure images from Binary Authorization policies. + repeated AdmissionWhitelistPattern admission_whitelist_patterns = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-cluster admission rules. Cluster spec format: + // `location.clusterId`. There can be at most one admission rule per cluster + // spec. + // A `location` is either a compute zone (e.g. us-central1-a) or a region + // (e.g. us-central1). + // For `clusterId` syntax restrictions see + // https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters. + map cluster_admission_rules = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-kubernetes-namespace admission rules. K8s namespace spec format: + // [a-z.-]+, e.g. 'some-namespace' + map kubernetes_namespace_admission_rules = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-kubernetes-service-account admission rules. Service account + // spec format: `namespace:serviceaccount`. e.g. 'test-ns:default' + map kubernetes_service_account_admission_rules = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-istio-service-identity admission rules. Istio service + // identity spec format: + // spiffe:///ns//sa/ or + // /ns//sa/ + // e.g. spiffe://example.com/ns/test-ns/sa/default + map istio_service_identity_admission_rules = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Default admission rule for a cluster without a per-cluster, per- + // kubernetes-service-account, or per-istio-service-identity admission rule. + AdmissionRule default_admission_rule = 4 [(google.api.field_behavior) = REQUIRED]; + + // Output only. Time when the policy was last updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// An [admission allowlist pattern][google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern] exempts images +// from checks by [admission rules][google.cloud.binaryauthorization.v1.AdmissionRule]. +message AdmissionWhitelistPattern { + // An image name pattern to allowlist, in the form `registry/path/to/image`. + // This supports a trailing `*` wildcard, but this is allowed only in + // text after the `registry/` part. This also supports a trailing `**` + // wildcard which matches subdirectories of a given entry. + string name_pattern = 1; +} + +// An [admission rule][google.cloud.binaryauthorization.v1.AdmissionRule] specifies either that all container images +// used in a pod creation request must be attested to by one or more +// [attestors][google.cloud.binaryauthorization.v1.Attestor], that all pod creations will be allowed, or that all +// pod creations will be denied. +// +// Images matching an [admission allowlist pattern][google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern] +// are exempted from admission rules and will never block a pod creation. +message AdmissionRule { + enum EvaluationMode { + // Do not use. + EVALUATION_MODE_UNSPECIFIED = 0; + + // This rule allows all all pod creations. + ALWAYS_ALLOW = 1; + + // This rule allows a pod creation if all the attestors listed in + // 'require_attestations_by' have valid attestations for all of the + // images in the pod spec. + REQUIRE_ATTESTATION = 2; + + // This rule denies all pod creations. + ALWAYS_DENY = 3; + } + + // Defines the possible actions when a pod creation is denied by an admission + // rule. + enum EnforcementMode { + // Do not use. + ENFORCEMENT_MODE_UNSPECIFIED = 0; + + // Enforce the admission rule by blocking the pod creation. + ENFORCED_BLOCK_AND_AUDIT_LOG = 1; + + // Dryrun mode: Audit logging only. This will allow the pod creation as if + // the admission request had specified break-glass. + DRYRUN_AUDIT_LOG_ONLY = 2; + } + + // Required. How this admission rule will be evaluated. + EvaluationMode evaluation_mode = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The resource names of the attestors that must attest to + // a container image, in the format `projects/*/attestors/*`. Each + // attestor must exist before a policy can reference it. To add an attestor + // to a policy the principal issuing the policy change request must be able + // to read the attestor resource. + // + // Note: this field must be non-empty when the evaluation_mode field specifies + // REQUIRE_ATTESTATION, otherwise it must be empty. + repeated string require_attestations_by = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The action when a pod creation is denied by the admission rule. + EnforcementMode enforcement_mode = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// An [attestor][google.cloud.binaryauthorization.v1.Attestor] that attests to container image +// artifacts. An existing attestor cannot be modified except where +// indicated. +message Attestor { + option (google.api.resource) = { + type: "binaryauthorization.googleapis.com/Attestor" + pattern: "projects/{project}/attestors/{attestor}" + }; + + // Required. The resource name, in the format: + // `projects/*/attestors/*`. This field may not be updated. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A descriptive comment. This field may be updated. + // The field may be displayed in chooser dialogs. + string description = 6 [(google.api.field_behavior) = OPTIONAL]; + + oneof attestor_type { + // This specifies how an attestation will be read, and how it will be used + // during policy enforcement. + UserOwnedGrafeasNote user_owned_grafeas_note = 3; + } + + // Output only. Time when the attestor was last updated. + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// An [user owned Grafeas note][google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote] references a Grafeas +// Attestation.Authority Note created by the user. +message UserOwnedGrafeasNote { + // Required. The Grafeas resource name of a Attestation.Authority Note, + // created by the user, in the format: `projects/*/notes/*`. This field may + // not be updated. + // + // An attestation by this attestor is stored as a Grafeas + // Attestation.Authority Occurrence that names a container image and that + // links to this Note. Grafeas is an external dependency. + string note_reference = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Public keys that verify attestations signed by this + // attestor. This field may be updated. + // + // If this field is non-empty, one of the specified public keys must + // verify that an attestation was signed by this attestor for the + // image specified in the admission request. + // + // If this field is empty, this attestor always returns that no + // valid attestations exist. + repeated AttestorPublicKey public_keys = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. This field will contain the service account email address + // that this Attestor will use as the principal when querying Container + // Analysis. Attestor administrators must grant this service account the + // IAM role needed to read attestations from the [note_reference][Note] in + // Container Analysis (`containeranalysis.notes.occurrences.viewer`). + // + // This email address is fixed for the lifetime of the Attestor, but callers + // should not make any other assumptions about the service account email; + // future versions may use an email based on a different naming pattern. + string delegation_service_account_email = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// A public key in the PkixPublicKey format (see +// https://tools.ietf.org/html/rfc5280#section-4.1.2.7 for details). +// Public keys of this type are typically textually encoded using the PEM +// format. +message PkixPublicKey { + // Represents a signature algorithm and other information necessary to verify + // signatures with a given public key. + // This is based primarily on the public key types supported by Tink's + // PemKeyType, which is in turn based on KMS's supported signing algorithms. + // See https://cloud.google.com/kms/docs/algorithms. In the future, BinAuthz + // might support additional public key types independently of Tink and/or KMS. + enum SignatureAlgorithm { + option allow_alias = true; + + // Not specified. + SIGNATURE_ALGORITHM_UNSPECIFIED = 0; + + // RSASSA-PSS 2048 bit key with a SHA256 digest. + RSA_PSS_2048_SHA256 = 1; + + // RSASSA-PSS 3072 bit key with a SHA256 digest. + RSA_PSS_3072_SHA256 = 2; + + // RSASSA-PSS 4096 bit key with a SHA256 digest. + RSA_PSS_4096_SHA256 = 3; + + // RSASSA-PSS 4096 bit key with a SHA512 digest. + RSA_PSS_4096_SHA512 = 4; + + // RSASSA-PKCS1-v1_5 with a 2048 bit key and a SHA256 digest. + RSA_SIGN_PKCS1_2048_SHA256 = 5; + + // RSASSA-PKCS1-v1_5 with a 3072 bit key and a SHA256 digest. + RSA_SIGN_PKCS1_3072_SHA256 = 6; + + // RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA256 digest. + RSA_SIGN_PKCS1_4096_SHA256 = 7; + + // RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA512 digest. + RSA_SIGN_PKCS1_4096_SHA512 = 8; + + // ECDSA on the NIST P-256 curve with a SHA256 digest. + ECDSA_P256_SHA256 = 9; + + // ECDSA on the NIST P-256 curve with a SHA256 digest. + EC_SIGN_P256_SHA256 = 9; + + // ECDSA on the NIST P-384 curve with a SHA384 digest. + ECDSA_P384_SHA384 = 10; + + // ECDSA on the NIST P-384 curve with a SHA384 digest. + EC_SIGN_P384_SHA384 = 10; + + // ECDSA on the NIST P-521 curve with a SHA512 digest. + ECDSA_P521_SHA512 = 11; + + // ECDSA on the NIST P-521 curve with a SHA512 digest. + EC_SIGN_P521_SHA512 = 11; + } + + // A PEM-encoded public key, as described in + // https://tools.ietf.org/html/rfc7468#section-13 + string public_key_pem = 1; + + // The signature algorithm used to verify a message against a signature using + // this key. + // These signature algorithm must match the structure and any object + // identifiers encoded in `public_key_pem` (i.e. this algorithm must match + // that of the public key). + SignatureAlgorithm signature_algorithm = 2; +} + +// An [attestor public key][google.cloud.binaryauthorization.v1.AttestorPublicKey] that will be used to verify +// attestations signed by this attestor. +message AttestorPublicKey { + // Optional. A descriptive comment. This field may be updated. + string comment = 1 [(google.api.field_behavior) = OPTIONAL]; + + // The ID of this public key. + // Signatures verified by BinAuthz must include the ID of the public key that + // can be used to verify them, and that ID must match the contents of this + // field exactly. + // Additional restrictions on this field can be imposed based on which public + // key type is encapsulated. See the documentation on `public_key` cases below + // for details. + string id = 2; + + oneof public_key { + // ASCII-armored representation of a PGP public key, as the entire output by + // the command `gpg --export --armor foo@example.com` (either LF or CRLF + // line endings). + // When using this field, `id` should be left blank. The BinAuthz API + // handlers will calculate the ID and fill it in automatically. BinAuthz + // computes this ID as the OpenPGP RFC4880 V4 fingerprint, represented as + // upper-case hex. If `id` is provided by the caller, it will be + // overwritten by the API-calculated ID. + string ascii_armored_pgp_public_key = 3; + + // A raw PKIX SubjectPublicKeyInfo format public key. + // + // NOTE: `id` may be explicitly provided by the caller when using this + // type of public key, but it MUST be a valid RFC3986 URI. If `id` is left + // blank, a default one will be computed based on the digest of the DER + // encoding of the public key. + PkixPublicKey pkix_public_key = 5; + } +} diff --git a/protos/google/cloud/binaryauthorization/v1/service.proto b/protos/google/cloud/binaryauthorization/v1/service.proto new file mode 100644 index 0000000..e063aac --- /dev/null +++ b/protos/google/cloud/binaryauthorization/v1/service.proto @@ -0,0 +1,312 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.binaryauthorization.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/binaryauthorization/v1/resources.proto"; +import "google/protobuf/empty.proto"; +import "grafeas/v1/attestation.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.BinaryAuthorization.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1;binaryauthorization"; +option java_multiple_files = false; +option java_package = "com.google.protos.google.cloud.binaryauthorization.v1"; +option php_namespace = "Google\\Cloud\\BinaryAuthorization\\V1"; +option ruby_package = "Google::Cloud::BinaryAuthorization::V1"; + +// Customer-facing API for Cloud Binary Authorization. + +// Google Cloud Management Service for Binary Authorization admission policies +// and attestation authorities. +// +// This API implements a REST model with the following objects: +// +// * [Policy][google.cloud.binaryauthorization.v1.Policy] +// * [Attestor][google.cloud.binaryauthorization.v1.Attestor] +service BinauthzManagementServiceV1 { + option (google.api.default_host) = "binaryauthorization.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // A [policy][google.cloud.binaryauthorization.v1.Policy] specifies the [attestors][google.cloud.binaryauthorization.v1.Attestor] that must attest to + // a container image, before the project is allowed to deploy that + // image. There is at most one policy per project. All image admission + // requests are permitted if a project has no policy. + // + // Gets the [policy][google.cloud.binaryauthorization.v1.Policy] for this project. Returns a default + // [policy][google.cloud.binaryauthorization.v1.Policy] if the project does not have one. + rpc GetPolicy(GetPolicyRequest) returns (Policy) { + option (google.api.http) = { + get: "/v1/{name=projects/*/policy}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates or updates a project's [policy][google.cloud.binaryauthorization.v1.Policy], and returns a copy of the + // new [policy][google.cloud.binaryauthorization.v1.Policy]. A policy is always updated as a whole, to avoid race + // conditions with concurrent policy enforcement (or management!) + // requests. Returns NOT_FOUND if the project does not exist, INVALID_ARGUMENT + // if the request is malformed. + rpc UpdatePolicy(UpdatePolicyRequest) returns (Policy) { + option (google.api.http) = { + put: "/v1/{policy.name=projects/*/policy}" + body: "policy" + }; + option (google.api.method_signature) = "policy"; + } + + // Creates an [attestor][google.cloud.binaryauthorization.v1.Attestor], and returns a copy of the new + // [attestor][google.cloud.binaryauthorization.v1.Attestor]. Returns NOT_FOUND if the project does not exist, + // INVALID_ARGUMENT if the request is malformed, ALREADY_EXISTS if the + // [attestor][google.cloud.binaryauthorization.v1.Attestor] already exists. + rpc CreateAttestor(CreateAttestorRequest) returns (Attestor) { + option (google.api.http) = { + post: "/v1/{parent=projects/*}/attestors" + body: "attestor" + }; + option (google.api.method_signature) = "parent,attestor_id,attestor"; + } + + // Gets an [attestor][google.cloud.binaryauthorization.v1.Attestor]. + // Returns NOT_FOUND if the [attestor][google.cloud.binaryauthorization.v1.Attestor] does not exist. + rpc GetAttestor(GetAttestorRequest) returns (Attestor) { + option (google.api.http) = { + get: "/v1/{name=projects/*/attestors/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates an [attestor][google.cloud.binaryauthorization.v1.Attestor]. + // Returns NOT_FOUND if the [attestor][google.cloud.binaryauthorization.v1.Attestor] does not exist. + rpc UpdateAttestor(UpdateAttestorRequest) returns (Attestor) { + option (google.api.http) = { + put: "/v1/{attestor.name=projects/*/attestors/*}" + body: "attestor" + }; + option (google.api.method_signature) = "attestor"; + } + + // Lists [attestors][google.cloud.binaryauthorization.v1.Attestor]. + // Returns INVALID_ARGUMENT if the project does not exist. + rpc ListAttestors(ListAttestorsRequest) returns (ListAttestorsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*}/attestors" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes an [attestor][google.cloud.binaryauthorization.v1.Attestor]. Returns NOT_FOUND if the + // [attestor][google.cloud.binaryauthorization.v1.Attestor] does not exist. + rpc DeleteAttestor(DeleteAttestorRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/attestors/*}" + }; + option (google.api.method_signature) = "name"; + } +} + +// API for working with the system policy. +service SystemPolicyV1 { + option (google.api.default_host) = "binaryauthorization.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Gets the current system policy in the specified location. + rpc GetSystemPolicy(GetSystemPolicyRequest) returns (Policy) { + option (google.api.http) = { + get: "/v1/{name=locations/*/policy}" + }; + option (google.api.method_signature) = "name"; + } +} + +// BinAuthz Attestor verification +service ValidationHelperV1 { + option (google.api.default_host) = "binaryauthorization.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Returns whether the given Attestation for the given image URI + // was signed by the given Attestor + rpc ValidateAttestationOccurrence(ValidateAttestationOccurrenceRequest) returns (ValidateAttestationOccurrenceResponse) { + option (google.api.http) = { + post: "/v1/{attestor=projects/*/attestors/*}:validateAttestationOccurrence" + body: "*" + }; + } +} + +// Request message for [BinauthzManagementService.GetPolicy][]. +message GetPolicyRequest { + // Required. The resource name of the [policy][google.cloud.binaryauthorization.v1.Policy] to retrieve, + // in the format `projects/*/policy`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Policy" + } + ]; +} + +// Request message for [BinauthzManagementService.UpdatePolicy][]. +message UpdatePolicyRequest { + // Required. A new or updated [policy][google.cloud.binaryauthorization.v1.Policy] value. The service will + // overwrite the [policy name][google.cloud.binaryauthorization.v1.Policy.name] field with the resource name in + // the request URL, in the format `projects/*/policy`. + Policy policy = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [BinauthzManagementService.CreateAttestor][]. +message CreateAttestorRequest { + // Required. The parent of this [attestor][google.cloud.binaryauthorization.v1.Attestor]. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "cloudresourcemanager.googleapis.com/Project" + } + ]; + + // Required. The [attestors][google.cloud.binaryauthorization.v1.Attestor] ID. + string attestor_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The initial [attestor][google.cloud.binaryauthorization.v1.Attestor] value. The service will + // overwrite the [attestor name][google.cloud.binaryauthorization.v1.Attestor.name] field with the resource name, + // in the format `projects/*/attestors/*`. + Attestor attestor = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [BinauthzManagementService.GetAttestor][]. +message GetAttestorRequest { + // Required. The name of the [attestor][google.cloud.binaryauthorization.v1.Attestor] to retrieve, in the format + // `projects/*/attestors/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Attestor" + } + ]; +} + +// Request message for [BinauthzManagementService.UpdateAttestor][]. +message UpdateAttestorRequest { + // Required. The updated [attestor][google.cloud.binaryauthorization.v1.Attestor] value. The service will + // overwrite the [attestor name][google.cloud.binaryauthorization.v1.Attestor.name] field with the resource name + // in the request URL, in the format `projects/*/attestors/*`. + Attestor attestor = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [BinauthzManagementService.ListAttestors][]. +message ListAttestorsRequest { + // Required. The resource name of the project associated with the + // [attestors][google.cloud.binaryauthorization.v1.Attestor], in the format `projects/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "cloudresourcemanager.googleapis.com/Project" + } + ]; + + // Requested page size. The server may return fewer results than requested. If + // unspecified, the server will pick an appropriate default. + int32 page_size = 2; + + // A token identifying a page of results the server should return. Typically, + // this is the value of [ListAttestorsResponse.next_page_token][google.cloud.binaryauthorization.v1.ListAttestorsResponse.next_page_token] returned + // from the previous call to the `ListAttestors` method. + string page_token = 3; +} + +// Response message for [BinauthzManagementService.ListAttestors][]. +message ListAttestorsResponse { + // The list of [attestors][google.cloud.binaryauthorization.v1.Attestor]. + repeated Attestor attestors = 1; + + // A token to retrieve the next page of results. Pass this value in the + // [ListAttestorsRequest.page_token][google.cloud.binaryauthorization.v1.ListAttestorsRequest.page_token] field in the subsequent call to the + // `ListAttestors` method to retrieve the next page of results. + string next_page_token = 2; +} + +// Request message for [BinauthzManagementService.DeleteAttestor][]. +message DeleteAttestorRequest { + // Required. The name of the [attestors][google.cloud.binaryauthorization.v1.Attestor] to delete, in the format + // `projects/*/attestors/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Attestor" + } + ]; +} + +// Request to read the current system policy. +message GetSystemPolicyRequest { + // Required. The resource name, in the format `locations/*/policy`. + // Note that the system policy is not associated with a project. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Policy" + } + ]; +} + +// Request message for +// [ValidationHelperV1.ValidateAttestationOccurrence][google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrence]. +message ValidateAttestationOccurrenceRequest { + // Required. The resource name of the [Attestor][google.cloud.binaryauthorization.v1.Attestor] of the + // [occurrence][grafeas.v1.Occurrence], in the format + // `projects/*/attestors/*`. + string attestor = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. An [AttestationOccurrence][grafeas.v1.AttestationOccurrence] to + // be checked that it can be verified by the Attestor. It does not have to be + // an existing entity in Container Analysis. It must otherwise be a valid + // AttestationOccurrence. + grafeas.v1.AttestationOccurrence attestation = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The resource name of the [Note][grafeas.v1.Note] to which the + // containing [Occurrence][grafeas.v1.Occurrence] is associated. + string occurrence_note = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. The URI of the artifact (e.g. container image) that is the + // subject of the containing [Occurrence][grafeas.v1.Occurrence]. + string occurrence_resource_uri = 4 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for +// [ValidationHelperV1.ValidateAttestationOccurrence][google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrence]. +message ValidateAttestationOccurrenceResponse { + // The enum returned in the "result" field. + enum Result { + // Unspecified. + RESULT_UNSPECIFIED = 0; + + // The Attestation was able to verified by the Attestor. + VERIFIED = 1; + + // The Attestation was not able to verified by the Attestor. + ATTESTATION_NOT_VERIFIABLE = 2; + } + + // The result of the Attestation validation. + Result result = 1; + + // The reason for denial if the Attestation couldn't be validated. + string denial_reason = 2; +} diff --git a/protos/grafeas/v1/attestation.proto b/protos/grafeas/v1/attestation.proto new file mode 100644 index 0000000..61423d3 --- /dev/null +++ b/protos/grafeas/v1/attestation.proto @@ -0,0 +1,73 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "grafeas/v1/common.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// An attestation wrapper with a PGP-compatible signature. This message only +// supports `ATTACHED` signatures, where the payload that is signed is included +// alongside the signature itself in the same file. + +// Note kind that represents a logical attestation "role" or "authority". For +// example, an organization might have one `Authority` for "QA" and one for +// "build". This note is intended to act strictly as a grouping mechanism for +// the attached occurrences (Attestations). This grouping mechanism also +// provides a security boundary, since IAM ACLs gate the ability for a principle +// to attach an occurrence to a given note. It also provides a single point of +// lookup to find all attached attestation occurrences, even if they don't all +// live in the same project. +message AttestationNote { + // This submessage provides human-readable hints about the purpose of the + // authority. Because the name of a note acts as its resource reference, it is + // important to disambiguate the canonical name of the Note (which might be a + // UUID for security purposes) from "readable" names more suitable for debug + // output. Note that these hints should not be used to look up authorities in + // security sensitive contexts, such as when looking up attestations to + // verify. + message Hint { + // Required. The human readable name of this attestation authority, for + // example "qa". + string human_readable_name = 1; + } + + // Hint hints at the purpose of the attestation authority. + Hint hint = 1; +} + +// Occurrence that represents a single "attestation". The authenticity of an +// attestation can be verified using the attached signature. If the verifier +// trusts the public key of the signer, then verifying the signature is +// sufficient to establish trust. In this circumstance, the authority to which +// this attestation is attached is primarily useful for lookup (how to find +// this attestation if you already know the authority and artifact to be +// verified) and intent (for which authority this attestation was intended to +// sign. +message AttestationOccurrence { + // Required. The serialized payload that is verified by one or more + // `signatures`. + bytes serialized_payload = 1; + // One or more signatures over `serialized_payload`. Verifier implementations + // should consider this attestation message verified if at least one + // `signature` verifies `serialized_payload`. See `Signature` in common.proto + // for more details on signature structure and verification. + repeated Signature signatures = 2; +} diff --git a/protos/grafeas/v1/build.proto b/protos/grafeas/v1/build.proto new file mode 100644 index 0000000..c0e9c75 --- /dev/null +++ b/protos/grafeas/v1/build.proto @@ -0,0 +1,50 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "grafeas/v1/provenance.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// Note holding the version of the provider's builder and the signature of the +// provenance message in the build details occurrence. +message BuildNote { + // Required. Immutable. Version of the builder which produced this build. + string builder_version = 1; +} + +// Details of a build occurrence. +message BuildOccurrence { + // Required. The actual provenance for the build. + grafeas.v1.BuildProvenance provenance = 1; + + // Serialized JSON representation of the provenance, used in generating the + // build signature in the corresponding build note. After verifying the + // signature, `provenance_bytes` can be unmarshalled and compared to the + // provenance to confirm that it is unchanged. A base64-encoded string + // representation of the provenance bytes is used for the signature in order + // to interoperate with openssl which expects this format for signature + // verification. + // + // The serialized form is captured both to avoid ambiguity in how the + // provenance is marshalled to json as well to prevent incompatibilities with + // future changes. + string provenance_bytes = 2; +} diff --git a/protos/grafeas/v1/common.proto b/protos/grafeas/v1/common.proto new file mode 100644 index 0000000..db780bb --- /dev/null +++ b/protos/grafeas/v1/common.proto @@ -0,0 +1,103 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// Kind represents the kinds of notes supported. +enum NoteKind { + // Unknown. + NOTE_KIND_UNSPECIFIED = 0; + // The note and occurrence represent a package vulnerability. + VULNERABILITY = 1; + // The note and occurrence assert build provenance. + BUILD = 2; + // This represents an image basis relationship. + IMAGE = 3; + // This represents a package installed via a package manager. + PACKAGE = 4; + // The note and occurrence track deployment events. + DEPLOYMENT = 5; + // The note and occurrence track the initial discovery status of a resource. + DISCOVERY = 6; + // This represents a logical "role" that can attest to artifacts. + ATTESTATION = 7; + // This represents an available package upgrade. + UPGRADE = 8; +} + +// Metadata for any related URL information. +message RelatedUrl { + // Specific URL associated with the resource. + string url = 1; + // Label to describe usage of the URL. + string label = 2; +} + +// Verifiers (e.g. Kritis implementations) MUST verify signatures +// with respect to the trust anchors defined in policy (e.g. a Kritis policy). +// Typically this means that the verifier has been configured with a map from +// `public_key_id` to public key material (and any required parameters, e.g. +// signing algorithm). +// +// In particular, verification implementations MUST NOT treat the signature +// `public_key_id` as anything more than a key lookup hint. The `public_key_id` +// DOES NOT validate or authenticate a public key; it only provides a mechanism +// for quickly selecting a public key ALREADY CONFIGURED on the verifier through +// a trusted channel. Verification implementations MUST reject signatures in any +// of the following circumstances: +// * The `public_key_id` is not recognized by the verifier. +// * The public key that `public_key_id` refers to does not verify the +// signature with respect to the payload. +// +// The `signature` contents SHOULD NOT be "attached" (where the payload is +// included with the serialized `signature` bytes). Verifiers MUST ignore any +// "attached" payload and only verify signatures with respect to explicitly +// provided payload (e.g. a `payload` field on the proto message that holds +// this Signature, or the canonical serialization of the proto message that +// holds this signature). +message Signature { + // The content of the signature, an opaque bytestring. + // The payload that this signature verifies MUST be unambiguously provided + // with the Signature during verification. A wrapper message might provide + // the payload explicitly. Alternatively, a message might have a canonical + // serialization that can always be unambiguously computed to derive the + // payload. + bytes signature = 1; + + // The identifier for the public key that verifies this signature. + // * The `public_key_id` is required. + // * The `public_key_id` MUST be an RFC3986 conformant URI. + // * When possible, the `public_key_id` SHOULD be an immutable reference, + // such as a cryptographic digest. + // + // Examples of valid `public_key_id`s: + // + // OpenPGP V4 public key fingerprint: + // * "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA" + // See https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for more + // details on this scheme. + // + // RFC6920 digest-named SubjectPublicKeyInfo (digest of the DER + // serialization): + // * "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU" + // * "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95a1271589a5" + string public_key_id = 2; +} diff --git a/protos/grafeas/v1/cvss.proto b/protos/grafeas/v1/cvss.proto new file mode 100644 index 0000000..b41cd63 --- /dev/null +++ b/protos/grafeas/v1/cvss.proto @@ -0,0 +1,85 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// Common Vulnerability Scoring System version 3. +// For details, see https://www.first.org/cvss/specification-document +message CVSSv3 { + // The base score is a function of the base metric scores. + float base_score = 1; + + float exploitability_score = 2; + + float impact_score = 3; + + // Base Metrics + // Represents the intrinsic characteristics of a vulnerability that are + // constant over time and across user environments. + AttackVector attack_vector = 5; + AttackComplexity attack_complexity = 6; + PrivilegesRequired privileges_required = 7; + UserInteraction user_interaction = 8; + Scope scope = 9; + Impact confidentiality_impact = 10; + Impact integrity_impact = 11; + Impact availability_impact = 12; + + enum AttackVector { + ATTACK_VECTOR_UNSPECIFIED = 0; + ATTACK_VECTOR_NETWORK = 1; + ATTACK_VECTOR_ADJACENT = 2; + ATTACK_VECTOR_LOCAL = 3; + ATTACK_VECTOR_PHYSICAL = 4; + } + + enum AttackComplexity { + ATTACK_COMPLEXITY_UNSPECIFIED = 0; + ATTACK_COMPLEXITY_LOW = 1; + ATTACK_COMPLEXITY_HIGH = 2; + } + + enum PrivilegesRequired { + PRIVILEGES_REQUIRED_UNSPECIFIED = 0; + PRIVILEGES_REQUIRED_NONE = 1; + PRIVILEGES_REQUIRED_LOW = 2; + PRIVILEGES_REQUIRED_HIGH = 3; + } + + enum UserInteraction { + USER_INTERACTION_UNSPECIFIED = 0; + USER_INTERACTION_NONE = 1; + USER_INTERACTION_REQUIRED = 2; + } + + enum Scope { + SCOPE_UNSPECIFIED = 0; + SCOPE_UNCHANGED = 1; + SCOPE_CHANGED = 2; + } + + enum Impact { + IMPACT_UNSPECIFIED = 0; + IMPACT_HIGH = 1; + IMPACT_LOW = 2; + IMPACT_NONE = 3; + } +} diff --git a/protos/grafeas/v1/deployment.proto b/protos/grafeas/v1/deployment.proto new file mode 100644 index 0000000..5204004 --- /dev/null +++ b/protos/grafeas/v1/deployment.proto @@ -0,0 +1,66 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// An artifact that can be deployed in some runtime. +message DeploymentNote { + // Required. Resource URI for the artifact being deployed. + repeated string resource_uri = 1; +} + +// The period during which some deployable was active in a runtime. +message DeploymentOccurrence { + // Identity of the user that triggered this deployment. + string user_email = 1; + + // Required. Beginning of the lifetime of this deployment. + google.protobuf.Timestamp deploy_time = 2; + + // End of the lifetime of this deployment. + google.protobuf.Timestamp undeploy_time = 3; + + // Configuration used to create this deployment. + string config = 4; + + // Address of the runtime element hosting this deployment. + string address = 5; + + // Output only. Resource URI for the artifact being deployed taken from + // the deployable field with the same name. + repeated string resource_uri = 6; + + // Types of platforms. + enum Platform { + // Unknown. + PLATFORM_UNSPECIFIED = 0; + // Google Container Engine. + GKE = 1; + // Google App Engine: Flexible Environment. + FLEX = 2; + // Custom user-defined platform. + CUSTOM = 3; + } + // Platform hosting this deployment. + Platform platform = 7; +} diff --git a/protos/grafeas/v1/discovery.proto b/protos/grafeas/v1/discovery.proto new file mode 100644 index 0000000..e079925 --- /dev/null +++ b/protos/grafeas/v1/discovery.proto @@ -0,0 +1,83 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; +import "grafeas/v1/common.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// A note that indicates a type of analysis a provider would perform. This note +// exists in a provider's project. A `Discovery` occurrence is created in a +// consumer's project at the start of analysis. +message DiscoveryNote { + // Required. Immutable. The kind of analysis that is handled by this + // discovery. + grafeas.v1.NoteKind analysis_kind = 1; +} + +// Provides information about the analysis status of a discovered resource. +message DiscoveryOccurrence { + // Whether the resource is continuously analyzed. + enum ContinuousAnalysis { + // Unknown. + CONTINUOUS_ANALYSIS_UNSPECIFIED = 0; + // The resource is continuously analyzed. + ACTIVE = 1; + // The resource is ignored for continuous analysis. + INACTIVE = 2; + } + + // Whether the resource is continuously analyzed. + ContinuousAnalysis continuous_analysis = 1; + + // Analysis status for a resource. Currently for initial analysis only (not + // updated in continuous analysis). + enum AnalysisStatus { + // Unknown. + ANALYSIS_STATUS_UNSPECIFIED = 0; + // Resource is known but no action has been taken yet. + PENDING = 1; + // Resource is being analyzed. + SCANNING = 2; + // Analysis has finished successfully. + FINISHED_SUCCESS = 3; + // Analysis has finished unsuccessfully, the analysis itself is in a bad + // state. + FINISHED_FAILED = 4; + // The resource is known not to be supported + FINISHED_UNSUPPORTED = 5; + } + + // The status of discovery for the resource. + AnalysisStatus analysis_status = 2; + + // When an error is encountered this will contain a LocalizedMessage under + // details to show to the user. The LocalizedMessage is output only and + // populated by the API. + google.rpc.Status analysis_status_error = 3; + + // The CPE of the resource being scanned. + string cpe = 4; + + // The last time this resource was scanned. + google.protobuf.Timestamp last_scan_time = 5; +} diff --git a/protos/grafeas/v1/grafeas.proto b/protos/grafeas/v1/grafeas.proto new file mode 100644 index 0000000..57b2fc2 --- /dev/null +++ b/protos/grafeas/v1/grafeas.proto @@ -0,0 +1,531 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; +import "grafeas/v1/attestation.proto"; +import "grafeas/v1/build.proto"; +import "grafeas/v1/common.proto"; +import "grafeas/v1/deployment.proto"; +import "grafeas/v1/discovery.proto"; +import "grafeas/v1/image.proto"; +import "grafeas/v1/package.proto"; +import "grafeas/v1/upgrade.proto"; +import "grafeas/v1/vulnerability.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; +option (google.api.resource_definition) = { + type: "grafeas.io/Project" + pattern: "projects/{project}" +}; + +// [Grafeas](https://grafeas.io) API. +// +// Retrieves analysis results of Cloud components such as Docker container +// images. +// +// Analysis results are stored as a series of occurrences. An `Occurrence` +// contains information about a specific analysis instance on a resource. An +// occurrence refers to a `Note`. A note contains details describing the +// analysis and is generally stored in a separate project, called a `Provider`. +// Multiple occurrences can refer to the same note. +// +// For example, an SSL vulnerability could affect multiple images. In this case, +// there would be one note for the vulnerability and an occurrence for each +// image with the vulnerability referring to that note. +service Grafeas { + option (google.api.default_host) = "containeranalysis.googleapis.com"; + + // Gets the specified occurrence. + rpc GetOccurrence(GetOccurrenceRequest) returns (Occurrence) { + option (google.api.http) = { + get: "/v1/{name=projects/*/occurrences/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists occurrences for the specified project. + rpc ListOccurrences(ListOccurrencesRequest) + returns (ListOccurrencesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*}/occurrences" + }; + option (google.api.method_signature) = "parent,filter"; + } + + // Deletes the specified occurrence. For example, use this method to delete an + // occurrence when the occurrence is no longer applicable for the given + // resource. + rpc DeleteOccurrence(DeleteOccurrenceRequest) + returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/occurrences/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates a new occurrence. + rpc CreateOccurrence(CreateOccurrenceRequest) returns (Occurrence) { + option (google.api.http) = { + post: "/v1/{parent=projects/*}/occurrences" + body: "occurrence" + }; + option (google.api.method_signature) = "parent,occurrence"; + } + + // Creates new occurrences in batch. + rpc BatchCreateOccurrences(BatchCreateOccurrencesRequest) + returns (BatchCreateOccurrencesResponse) { + option (google.api.http) = { + post: "/v1/{parent=projects/*}/occurrences:batchCreate" + body: "*" + }; + option (google.api.method_signature) = "parent,occurrences"; + } + + // Updates the specified occurrence. + rpc UpdateOccurrence(UpdateOccurrenceRequest) returns (Occurrence) { + option (google.api.http) = { + patch: "/v1/{name=projects/*/occurrences/*}" + body: "occurrence" + }; + option (google.api.method_signature) = "name,occurrence,update_mask"; + } + + // Gets the note attached to the specified occurrence. Consumer projects can + // use this method to get a note that belongs to a provider project. + rpc GetOccurrenceNote(GetOccurrenceNoteRequest) returns (Note) { + option (google.api.http) = { + get: "/v1/{name=projects/*/occurrences/*}/notes" + }; + option (google.api.method_signature) = "name"; + } + + // Gets the specified note. + rpc GetNote(GetNoteRequest) returns (Note) { + option (google.api.http) = { + get: "/v1/{name=projects/*/notes/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists notes for the specified project. + rpc ListNotes(ListNotesRequest) returns (ListNotesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*}/notes" + }; + option (google.api.method_signature) = "parent,filter"; + } + + // Deletes the specified note. + rpc DeleteNote(DeleteNoteRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/notes/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates a new note. + rpc CreateNote(CreateNoteRequest) returns (Note) { + option (google.api.http) = { + post: "/v1/{parent=projects/*}/notes" + body: "note" + }; + option (google.api.method_signature) = "parent,note_id,note"; + } + + // Creates new notes in batch. + rpc BatchCreateNotes(BatchCreateNotesRequest) + returns (BatchCreateNotesResponse) { + option (google.api.http) = { + post: "/v1/{parent=projects/*}/notes:batchCreate" + body: "*" + }; + option (google.api.method_signature) = "parent,notes"; + } + + // Updates the specified note. + rpc UpdateNote(UpdateNoteRequest) returns (Note) { + option (google.api.http) = { + patch: "/v1/{name=projects/*/notes/*}" + body: "note" + }; + option (google.api.method_signature) = "name,note,update_mask"; + } + + // Lists occurrences referencing the specified note. Provider projects can use + // this method to get all occurrences across consumer projects referencing the + // specified note. + rpc ListNoteOccurrences(ListNoteOccurrencesRequest) + returns (ListNoteOccurrencesResponse) { + option (google.api.http) = { + get: "/v1/{name=projects/*/notes/*}/occurrences" + }; + option (google.api.method_signature) = "name,filter"; + } +} + +// An instance of an analysis type that has been found on a resource. +message Occurrence { + option (google.api.resource) = { + type: "grafeas.io/Occurrence" + pattern: "projects/{project}/occurrences/{occurrence}" + }; + + // Output only. The name of the occurrence in the form of + // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + string name = 1; + + // Required. Immutable. A URI that represents the resource for which the + // occurrence applies. For example, + // `https://gcr.io/project/image@sha256:123abc` for a Docker image. + string resource_uri = 2; + + // Required. Immutable. The analysis note associated with this occurrence, in + // the form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. This field can be + // used as a filter in list requests. + string note_name = 3; + + // Output only. This explicitly denotes which of the occurrence details are + // specified. This field can be used as a filter in list requests. + grafeas.v1.NoteKind kind = 4; + + // A description of actions that can be taken to remedy the note. + string remediation = 5; + + // Output only. The time this occurrence was created. + google.protobuf.Timestamp create_time = 6; + + // Output only. The time this occurrence was last updated. + google.protobuf.Timestamp update_time = 7; + + // Required. Immutable. Describes the details of the note kind found on this + // resource. + oneof details { + // Describes a security vulnerability. + grafeas.v1.VulnerabilityOccurrence vulnerability = 8; + // Describes a verifiable build. + grafeas.v1.BuildOccurrence build = 9; + // Describes how this resource derives from the basis in the associated + // note. + grafeas.v1.ImageOccurrence image = 10; + // Describes the installation of a package on the linked resource. + grafeas.v1.PackageOccurrence package = 11; + // Describes the deployment of an artifact on a runtime. + grafeas.v1.DeploymentOccurrence deployment = 12; + // Describes when a resource was discovered. + grafeas.v1.DiscoveryOccurrence discovery = 13; + // Describes an attestation of an artifact. + grafeas.v1.AttestationOccurrence attestation = 14; + // Describes an available package upgrade on the linked resource. + grafeas.v1.UpgradeOccurrence upgrade = 15; + } +} + +// A type of analysis that can be done for a resource. +message Note { + option (google.api.resource) = { + type: "grafeas.io/Note" + pattern: "projects/{project}/notes/{note}" + }; + + // Output only. The name of the note in the form of + // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + string name = 1; + + // A one sentence description of this note. + string short_description = 2; + + // A detailed description of this note. + string long_description = 3; + + // Output only. The type of analysis. This field can be used as a filter in + // list requests. + grafeas.v1.NoteKind kind = 4; + + // URLs associated with this note. + repeated grafeas.v1.RelatedUrl related_url = 5; + + // Time of expiration for this note. Empty if note does not expire. + google.protobuf.Timestamp expiration_time = 6; + + // Output only. The time this note was created. This field can be used as a + // filter in list requests. + google.protobuf.Timestamp create_time = 7; + + // Output only. The time this note was last updated. This field can be used as + // a filter in list requests. + google.protobuf.Timestamp update_time = 8; + + // Other notes related to this note. + repeated string related_note_names = 9; + + // Required. Immutable. The type of analysis this note represents. + oneof type { + // A note describing a package vulnerability. + grafeas.v1.VulnerabilityNote vulnerability = 10; + // A note describing build provenance for a verifiable build. + grafeas.v1.BuildNote build = 11; + // A note describing a base image. + grafeas.v1.ImageNote image = 12; + // A note describing a package hosted by various package managers. + grafeas.v1.PackageNote package = 13; + // A note describing something that can be deployed. + grafeas.v1.DeploymentNote deployment = 14; + // A note describing the initial analysis of a resource. + grafeas.v1.DiscoveryNote discovery = 15; + // A note describing an attestation role. + grafeas.v1.AttestationNote attestation = 16; + // A note describing available package upgrades. + grafeas.v1.UpgradeNote upgrade = 17; + } +} + +// Request to get an occurrence. +message GetOccurrenceRequest { + // The name of the occurrence in the form of + // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Occurrence" + ]; +} + +// Request to list occurrences. +message ListOccurrencesRequest { + // The name of the project to list occurrences for in the form of + // `projects/[PROJECT_ID]`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Project" + ]; + + // The filter expression. + string filter = 2; + + // Number of occurrences to return in the list. Must be positive. Max allowed + // page size is 1000. If not specified, page size defaults to 20. + int32 page_size = 3; + + // Token to provide to skip to a particular spot in the list. + string page_token = 4; +} + +// Response for listing occurrences. +message ListOccurrencesResponse { + // The occurrences requested. + repeated Occurrence occurrences = 1; + // The next pagination token in the list response. It should be used as + // `page_token` for the following request. An empty value means no more + // results. + string next_page_token = 2; +} + +// Request to delete an occurrence. +message DeleteOccurrenceRequest { + // The name of the occurrence in the form of + // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Occurrence" + ]; +} + +// Request to create a new occurrence. +message CreateOccurrenceRequest { + // The name of the project in the form of `projects/[PROJECT_ID]`, under which + // the occurrence is to be created. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Project" + ]; + // The occurrence to create. + Occurrence occurrence = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request to update an occurrence. +message UpdateOccurrenceRequest { + // The name of the occurrence in the form of + // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Occurrence" + ]; + // The updated occurrence. + Occurrence occurrence = 2 [(google.api.field_behavior) = REQUIRED]; + // The fields to update. + google.protobuf.FieldMask update_mask = 3; +} + +// Request to get a note. +message GetNoteRequest { + // The name of the note in the form of + // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Note" + ]; +} + +// Request to get the note to which the specified occurrence is attached. +message GetOccurrenceNoteRequest { + // The name of the occurrence in the form of + // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Occurrence" + ]; +} + +// Request to list notes. +message ListNotesRequest { + // The name of the project to list notes for in the form of + // `projects/[PROJECT_ID]`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Project" + ]; + + // The filter expression. + string filter = 2; + + // Number of notes to return in the list. Must be positive. Max allowed page + // size is 1000. If not specified, page size defaults to 20. + int32 page_size = 3; + + // Token to provide to skip to a particular spot in the list. + string page_token = 4; +} + +// Response for listing notes. +message ListNotesResponse { + // The notes requested. + repeated Note notes = 1; + // The next pagination token in the list response. It should be used as + // `page_token` for the following request. An empty value means no more + // results. + string next_page_token = 2; +} + +// Request to delete a note. +message DeleteNoteRequest { + // The name of the note in the form of + // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Note" + ]; +} + +// Request to create a new note. +message CreateNoteRequest { + // The name of the project in the form of `projects/[PROJECT_ID]`, under which + // the note is to be created. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Project" + ]; + // The ID to use for this note. + string note_id = 2 [(google.api.field_behavior) = REQUIRED]; + // The note to create. + Note note = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request to update a note. +message UpdateNoteRequest { + // The name of the note in the form of + // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Note" + ]; + // The updated note. + Note note = 2 [(google.api.field_behavior) = REQUIRED]; + // The fields to update. + google.protobuf.FieldMask update_mask = 3; +} + +// Request to list occurrences for a note. +message ListNoteOccurrencesRequest { + // The name of the note to list occurrences for in the form of + // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Note" + ]; + // The filter expression. + string filter = 2; + // Number of occurrences to return in the list. + int32 page_size = 3; + // Token to provide to skip to a particular spot in the list. + string page_token = 4; +} + +// Response for listing occurrences for a note. +message ListNoteOccurrencesResponse { + // The occurrences attached to the specified note. + repeated Occurrence occurrences = 1; + // Token to provide to skip to a particular spot in the list. + string next_page_token = 2; +} + +// Request to create notes in batch. +message BatchCreateNotesRequest { + // The name of the project in the form of `projects/[PROJECT_ID]`, under which + // the notes are to be created. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Project" + ]; + + // The notes to create. Max allowed length is 1000. + map notes = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response for creating notes in batch. +message BatchCreateNotesResponse { + // The notes that were created. + repeated Note notes = 1; +} + +// Request to create occurrences in batch. +message BatchCreateOccurrencesRequest { + // The name of the project in the form of `projects/[PROJECT_ID]`, under which + // the occurrences are to be created. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference).type = "grafeas.io/Project" + ]; + + // The occurrences to create. Max allowed length is 1000. + repeated Occurrence occurrences = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response for creating occurrences in batch. +message BatchCreateOccurrencesResponse { + // The occurrences that were created. + repeated Occurrence occurrences = 1; +} diff --git a/protos/grafeas/v1/image.proto b/protos/grafeas/v1/image.proto new file mode 100644 index 0000000..9ac162c --- /dev/null +++ b/protos/grafeas/v1/image.proto @@ -0,0 +1,83 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// Layer holds metadata specific to a layer of a Docker image. +message Layer { + // Required. The recovered Dockerfile directive used to construct this layer. + // See https://docs.docker.com/engine/reference/builder/ for more information. + string directive = 1; + + // The recovered arguments to the Dockerfile directive. + string arguments = 2; +} + +// A set of properties that uniquely identify a given Docker image. +message Fingerprint { + // Required. The layer ID of the final layer in the Docker image's v1 + // representation. + string v1_name = 1; + + // Required. The ordered list of v2 blobs that represent a given image. + repeated string v2_blob = 2; + + // Output only. The name of the image's v2 blobs computed via: + // [bottom] := v2_blob[bottom] + // [N] := sha256(v2_blob[N] + " " + v2_name[N+1]) + // Only the name of the final blob is kept. + string v2_name = 3; +} + +// Basis describes the base image portion (Note) of the DockerImage +// relationship. Linked occurrences are derived from this or an equivalent image +// via: +// FROM +// Or an equivalent reference, e.g., a tag of the resource_url. +message ImageNote { + // Required. Immutable. The resource_url for the resource representing the + // basis of associated occurrence images. + string resource_url = 1; + + // Required. Immutable. The fingerprint of the base image. + Fingerprint fingerprint = 2; +} + +// Details of the derived image portion of the DockerImage relationship. This +// image would be produced from a Dockerfile with FROM . +message ImageOccurrence { + // Required. The fingerprint of the derived image. + Fingerprint fingerprint = 1; + + // Output only. The number of layers by which this image differs from the + // associated image basis. + int32 distance = 2; + + // This contains layer-specific metadata, if populated it has length + // "distance" and is ordered with [distance] being the layer immediately + // following the base image and [1] being the final layer. + repeated Layer layer_info = 3; + + // Output only. This contains the base image URL for the derived image + // occurrence. + string base_resource_url = 4; +} diff --git a/protos/grafeas/v1/package.proto b/protos/grafeas/v1/package.proto new file mode 100644 index 0000000..b04686d --- /dev/null +++ b/protos/grafeas/v1/package.proto @@ -0,0 +1,124 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// Instruction set architectures supported by various package managers. +enum Architecture { + // Unknown architecture. + ARCHITECTURE_UNSPECIFIED = 0; + // X86 architecture. + X86 = 1; + // X64 architecture. + X64 = 2; +} + +// This represents a particular channel of distribution for a given package. +// E.g., Debian's jessie-backports dpkg mirror. +message Distribution { + // Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/) + // denoting the package manager version distributing a package. + string cpe_uri = 1; + + // The CPU architecture for which packages in this distribution channel were + // built. + Architecture architecture = 2; + + // The latest available version of this package in this distribution channel. + Version latest_version = 3; + + // A freeform string denoting the maintainer of this package. + string maintainer = 4; + + // The distribution channel-specific homepage for this package. + string url = 5; + + // The distribution channel-specific description of this package. + string description = 6; +} + +// An occurrence of a particular package installation found within a system's +// filesystem. E.g., glibc was found in `/var/lib/dpkg/status`. +message Location { + // Required. The CPE URI in [CPE format](https://cpe.mitre.org/specification/) + // denoting the package manager version distributing a package. + string cpe_uri = 1; + + // The version installed at this location. + Version version = 2; + + // The path from which we gathered that this package/version is installed. + string path = 3; +} + +// This represents a particular package that is distributed over various +// channels. E.g., glibc (aka libc6) is distributed by many, at various +// versions. +message PackageNote { + // Required. Immutable. The name of the package. + string name = 1; + + // The various channels by which a package is distributed. + repeated Distribution distribution = 10; +} + +// Details on how a particular software package was installed on a system. +message PackageOccurrence { + // Output only. The name of the installed package. + string name = 1; + + // Required. All of the places within the filesystem versions of this package + // have been found. + repeated Location location = 2; +} + +// Version contains structured information about the version of a package. +message Version { + // Used to correct mistakes in the version numbering scheme. + int32 epoch = 1; + + // Required only when version kind is NORMAL. The main part of the version + // name. + string name = 2; + + // The iteration of the package build from the above version. + string revision = 3; + + // Whether this is an ordinary package version or a sentinel MIN/MAX version. + enum VersionKind { + // Unknown. + VERSION_KIND_UNSPECIFIED = 0; + // A standard package version. + NORMAL = 1; + // A special version representing negative infinity. + MINIMUM = 2; + // A special version representing positive infinity. + MAXIMUM = 3; + }; + + // Required. Distinguishes between sentinel MIN/MAX versions and normal + // versions. + VersionKind kind = 4; + + // Human readable version string. This string is of the form + // :- and is only set when kind is NORMAL. + string full_name = 5; +} diff --git a/protos/grafeas/v1/provenance.proto b/protos/grafeas/v1/provenance.proto new file mode 100644 index 0000000..06b1097 --- /dev/null +++ b/protos/grafeas/v1/provenance.proto @@ -0,0 +1,265 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// Provenance of a build. Contains all information needed to verify the full +// details about the build from source to completion. +message BuildProvenance { + // Required. Unique identifier of the build. + string id = 1; + + // ID of the project. + string project_id = 2; + + // Commands requested by the build. + repeated Command commands = 3; + + // Output of the build. + repeated Artifact built_artifacts = 4; + + // Time at which the build was created. + google.protobuf.Timestamp create_time = 5; + + // Time at which execution of the build was started. + google.protobuf.Timestamp start_time = 6; + + // Time at which execution of the build was finished. + google.protobuf.Timestamp end_time = 7; + + // E-mail address of the user who initiated this build. Note that this was the + // user's e-mail address at the time the build was initiated; this address may + // not represent the same end-user for all time. + string creator = 8; + + // URI where any logs for this provenance were written. + string logs_uri = 9; + + // Details of the Source input to the build. + Source source_provenance = 10; + + // Trigger identifier if the build was triggered automatically; empty if not. + string trigger_id = 11; + + // Special options applied to this build. This is a catch-all field where + // build providers can enter any desired additional details. + map build_options = 12; + + // Version string of the builder at the time this build was executed. + string builder_version = 13; +} + +// Source describes the location of the source used for the build. +message Source { + // If provided, the input binary artifacts for the build came from this + // location. + string artifact_storage_source_uri = 1; + + // Hash(es) of the build source, which can be used to verify that the original + // source integrity was maintained in the build. + // + // The keys to this map are file paths used as build source and the values + // contain the hash values for those files. + // + // If the build source came in a single package such as a gzipped tarfile + // (.tar.gz), the FileHash will be for the single path to that file. + map file_hashes = 2; + + // If provided, the source code used for the build came from this location. + SourceContext context = 3; + + // If provided, some of the source code used for the build may be found in + // these locations, in the case where the source repository had multiple + // remotes or submodules. This list will not include the context specified in + // the context field. + repeated SourceContext additional_contexts = 4; +} + +// Container message for hashes of byte content of files, used in source +// messages to verify integrity of source input to the build. +message FileHashes { + // Required. Collection of file hashes. + repeated Hash file_hash = 1; +} + +// Container message for hash values. +message Hash { + // Required. The type of hash that was performed, e.g. "SHA-256". + string type = 1; + // Required. The hash value. + bytes value = 2; +} + +// Command describes a step performed as part of the build pipeline. +message Command { + // Required. Name of the command, as presented on the command line, or if the + // command is packaged as a Docker container, as presented to `docker pull`. + string name = 1; + + // Environment variables set before running this command. + repeated string env = 2; + + // Command-line arguments used when executing this command. + repeated string args = 3; + + // Working directory (relative to project source root) used when running this + // command. + string dir = 4; + + // Optional unique identifier for this command, used in wait_for to reference + // this command as a dependency. + string id = 5; + + // The ID(s) of the command(s) that this command depends on. + repeated string wait_for = 6; +} + +// Artifact describes a build product. +message Artifact { + // Hash or checksum value of a binary, or Docker Registry 2.0 digest of a + // container. + string checksum = 1; + + // Artifact ID, if any; for container images, this will be a URL by digest + // like `gcr.io/projectID/imagename@sha256:123456`. + string id = 2; + + // Related artifact names. This may be the path to a binary or jar file, or in + // the case of a container build, the name used to push the container image to + // Google Container Registry, as presented to `docker push`. Note that a + // single Artifact ID can have multiple names, for example if two tags are + // applied to one image. + repeated string names = 3; +} + +// A SourceContext is a reference to a tree of files. A SourceContext together +// with a path point to a unique revision of a single file or directory. +message SourceContext { + // A SourceContext can refer any one of the following types of repositories. + oneof context { + // A SourceContext referring to a revision in a Google Cloud Source Repo. + CloudRepoSourceContext cloud_repo = 1; + + // A SourceContext referring to a Gerrit project. + GerritSourceContext gerrit = 2; + + // A SourceContext referring to any third party Git repo (e.g., GitHub). + GitSourceContext git = 3; + } + + // Labels with user defined metadata. + map labels = 4; +} + +// An alias to a repo revision. +message AliasContext { + // The type of an alias. + enum Kind { + // Unknown. + KIND_UNSPECIFIED = 0; + // Git tag. + FIXED = 1; + // Git branch. + MOVABLE = 2; + // Used to specify non-standard aliases. For example, if a Git repo has a + // ref named "refs/foo/bar". + OTHER = 4; + } + + // The alias kind. + Kind kind = 1; + + // The alias name. + string name = 2; +} + +// A CloudRepoSourceContext denotes a particular revision in a Google Cloud +// Source Repo. +message CloudRepoSourceContext { + // The ID of the repo. + RepoId repo_id = 1; + + // A revision in a Cloud Repo can be identified by either its revision ID or + // its alias. + oneof revision { + // A revision ID. + string revision_id = 2; + + // An alias, which may be a branch or tag. + AliasContext alias_context = 3; + } +} + +// A SourceContext referring to a Gerrit project. +message GerritSourceContext { + // The URI of a running Gerrit instance. + string host_uri = 1; + + // The full project name within the host. Projects may be nested, so + // "project/subproject" is a valid project name. The "repo name" is the + // hostURI/project. + string gerrit_project = 2; + + // A revision in a Gerrit project can be identified by either its revision ID + // or its alias. + oneof revision { + // A revision (commit) ID. + string revision_id = 3; + + // An alias, which may be a branch or tag. + AliasContext alias_context = 4; + } +} + +// A GitSourceContext denotes a particular revision in a third party Git +// repository (e.g., GitHub). +message GitSourceContext { + // Git repository URL. + string url = 1; + + // Git commit hash. + string revision_id = 2; +} + +// A unique identifier for a Cloud Repo. +message RepoId { + // A cloud repo can be identified by either its project ID and repository name + // combination, or its globally unique identifier. + oneof id { + // A combination of a project ID and a repo name. + ProjectRepoId project_repo_id = 1; + + // A server-assigned, globally unique identifier. + string uid = 2; + } +} + +// Selects a repo using a Google Cloud Platform project ID (e.g., +// winged-cargo-31) and a repo name within that project. +message ProjectRepoId { + // The ID of the project. + string project_id = 1; + + // The name of the repo. Leave empty for the default repo. + string repo_name = 2; +} diff --git a/protos/grafeas/v1/upgrade.proto b/protos/grafeas/v1/upgrade.proto new file mode 100644 index 0000000..89d3892 --- /dev/null +++ b/protos/grafeas/v1/upgrade.proto @@ -0,0 +1,114 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "google/protobuf/timestamp.proto"; +import "grafeas/v1/package.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// An Upgrade Note represents a potential upgrade of a package to a given +// version. For each package version combination (i.e. bash 4.0, bash 4.1, +// bash 4.1.2), there will be an Upgrade Note. For Windows, windows_update field +// represents the information related to the update. +message UpgradeNote { + // Required for non-Windows OS. The package this Upgrade is for. + string package = 1; + // Required for non-Windows OS. The version of the package in machine + human + // readable form. + grafeas.v1.Version version = 2; + // Metadata about the upgrade for each specific operating system. + repeated UpgradeDistribution distributions = 3; + // Required for Windows OS. Represents the metadata about the Windows update. + WindowsUpdate windows_update = 4; +} + +// The Upgrade Distribution represents metadata about the Upgrade for each +// operating system (CPE). Some distributions have additional metadata around +// updates, classifying them into various categories and severities. +message UpgradeDistribution { + // Required - The specific operating system this metadata applies to. See + // https://cpe.mitre.org/specification/. + string cpe_uri = 1; + // The operating system classification of this Upgrade, as specified by the + // upstream operating system upgrade feed. For Windows the classification is + // one of the category_ids listed at + // https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ff357803(v=vs.85) + string classification = 2; + // The severity as specified by the upstream operating system. + string severity = 3; + // The cve tied to this Upgrade. + repeated string cve = 4; +} + +// Windows Update represents the metadata about the update for the Windows +// operating system. The fields in this message come from the Windows Update API +// documented at +// https://docs.microsoft.com/en-us/windows/win32/api/wuapi/nn-wuapi-iupdate. +message WindowsUpdate { + // The unique identifier of the update. + message Identity { + // The revision independent identifier of the update. + string update_id = 1; + // The revision number of the update. + int32 revision = 2; + } + // Required - The unique identifier for the update. + Identity identity = 1; + // The localized title of the update. + string title = 2; + // The localized description of the update. + string description = 3; + // The category to which the update belongs. + message Category { + // The identifier of the category. + string category_id = 1; + // The localized name of the category. + string name = 2; + } + // The list of categories to which the update belongs. + repeated Category categories = 4; + // The Microsoft Knowledge Base article IDs that are associated with the + // update. + repeated string kb_article_ids = 5; + // The hyperlink to the support information for the update. + string support_url = 6; + // The last published timestamp of the update. + google.protobuf.Timestamp last_published_timestamp = 7; +} + +// An Upgrade Occurrence represents that a specific resource_url could install a +// specific upgrade. This presence is supplied via local sources (i.e. it is +// present in the mirror and the running system has noticed its availability). +// For Windows, both distribution and windows_update contain information for the +// Windows update. +message UpgradeOccurrence { + // Required for non-Windows OS. The package this Upgrade is for. + string package = 1; + // Required for non-Windows OS. The version of the package in a machine + + // human readable form. + grafeas.v1.Version parsed_version = 3; + // Metadata about the upgrade for available for the specific operating system + // for the resource_url. This allows efficient filtering, as well as + // making it easier to use the occurrence. + UpgradeDistribution distribution = 4; + // Required for Windows OS. Represents the metadata about the Windows update. + WindowsUpdate windows_update = 5; +} diff --git a/protos/grafeas/v1/vulnerability.proto b/protos/grafeas/v1/vulnerability.proto new file mode 100644 index 0000000..6c94cdf --- /dev/null +++ b/protos/grafeas/v1/vulnerability.proto @@ -0,0 +1,226 @@ +// Copyright 2019 The Grafeas Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package grafeas.v1; + +import "google/protobuf/timestamp.proto"; +import "grafeas/v1/common.proto"; +import "grafeas/v1/cvss.proto"; +import "grafeas/v1/package.proto"; + +option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas"; +option java_multiple_files = true; +option java_package = "io.grafeas.v1"; +option objc_class_prefix = "GRA"; + +// Note provider assigned severity/impact ranking. +enum Severity { + // Unknown. + SEVERITY_UNSPECIFIED = 0; + // Minimal severity. + MINIMAL = 1; + // Low severity. + LOW = 2; + // Medium severity. + MEDIUM = 3; + // High severity. + HIGH = 4; + // Critical severity. + CRITICAL = 5; +} + +// A security vulnerability that can be found in resources. +message VulnerabilityNote { + // The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10 + // where 0 indicates low severity and 10 indicates high severity. + float cvss_score = 1; + + // The note provider assigned severity of this vulnerability. + Severity severity = 2; + + // Details of all known distros and packages affected by this vulnerability. + repeated Detail details = 3; + + // A detail for a distro and package affected by this vulnerability and its + // associated fix (if one is available). + message Detail { + // The distro assigned severity of this vulnerability. + string severity_name = 1; + + // A vendor-specific description of this vulnerability. + string description = 2; + + // The type of package; whether native or non native (e.g., ruby gems, + // node.js packages, etc.). + string package_type = 3; + + // Required. The [CPE URI](https://cpe.mitre.org/specification/) this + // vulnerability affects. + string affected_cpe_uri = 4; + + // Required. The package this vulnerability affects. + string affected_package = 5; + + // The version number at the start of an interval in which this + // vulnerability exists. A vulnerability can affect a package between + // version numbers that are disjoint sets of intervals (example: + // [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be + // represented in its own Detail. If a specific affected version is provided + // by a vulnerability database, affected_version_start and + // affected_version_end will be the same in that Detail. + grafeas.v1.Version affected_version_start = 6; + + // The version number at the end of an interval in which this vulnerability + // exists. A vulnerability can affect a package between version numbers + // that are disjoint sets of intervals (example: [1.0.0-1.1.0], + // [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its + // own Detail. If a specific affected version is provided by a vulnerability + // database, affected_version_start and affected_version_end will be the + // same in that Detail. + grafeas.v1.Version affected_version_end = 7; + + // The distro recommended [CPE URI](https://cpe.mitre.org/specification/) + // to update to that contains a fix for this vulnerability. It is possible + // for this to be different from the affected_cpe_uri. + string fixed_cpe_uri = 8; + + // The distro recommended package to update to that contains a fix for this + // vulnerability. It is possible for this to be different from the + // affected_package. + string fixed_package = 9; + + // The distro recommended version to update to that contains a + // fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no + // such version is yet available. + grafeas.v1.Version fixed_version = 10; + + // Whether this detail is obsolete. Occurrences are expected not to point to + // obsolete details. + bool is_obsolete = 11; + + // The time this information was last changed at the source. This is an + // upstream timestamp from the underlying information source - e.g. Ubuntu + // security tracker. + google.protobuf.Timestamp source_update_time = 12; + } + + // The full description of the CVSSv3 for this vulnerability. + CVSSv3 cvss_v3 = 4; + + // Windows details get their own format because the information format and + // model don't match a normal detail. Specifically Windows updates are done as + // patches, thus Windows vulnerabilities really are a missing package, rather + // than a package being at an incorrect version. + repeated WindowsDetail windows_details = 5; + + message WindowsDetail { + // Required. The [CPE URI](https://cpe.mitre.org/specification/) this + // vulnerability affects. + string cpe_uri = 1; + + // Required. The name of this vulnerability. + string name = 2; + + // The description of this vulnerability. + string description = 3; + + // Required. The names of the KBs which have hotfixes to mitigate this + // vulnerability. Note that there may be multiple hotfixes (and thus + // multiple KBs) that mitigate a given vulnerability. Currently any listed + // KBs presence is considered a fix. + repeated KnowledgeBase fixing_kbs = 4; + + message KnowledgeBase { + // The KB name (generally of the form KB[0-9]+ (e.g., KB123456)). + string name = 1; + // A link to the KB in the [Windows update catalog] + // (https://www.catalog.update.microsoft.com/). + string url = 2; + } + } + + // The time this information was last changed at the source. This is an + // upstream timestamp from the underlying information source - e.g. Ubuntu + // security tracker. + google.protobuf.Timestamp source_update_time = 6; +} + +// An occurrence of a severity vulnerability on a resource. +message VulnerabilityOccurrence { + // The type of package; whether native or non native (e.g., ruby gems, node.js + // packages, etc.). + string type = 1; + + // Output only. The note provider assigned severity of this vulnerability. + Severity severity = 2; + + // Output only. The CVSS score of this vulnerability. CVSS score is on a + // scale of 0 - 10 where 0 indicates low severity and 10 indicates high + // severity. + float cvss_score = 3; + + // Required. The set of affected locations and their fixes (if available) + // within the associated resource. + repeated PackageIssue package_issue = 4; + + // A detail for a distro and package this vulnerability occurrence was found + // in and its associated fix (if one is available). + message PackageIssue { + // Required. The [CPE URI](https://cpe.mitre.org/specification/) this + // vulnerability was found in. + string affected_cpe_uri = 1; + + // Required. The package this vulnerability was found in. + string affected_package = 2; + + // Required. The version of the package that is installed on the resource + // affected by this vulnerability. + grafeas.v1.Version affected_version = 3; + + // The [CPE URI](https://cpe.mitre.org/specification/) this vulnerability + // was fixed in. It is possible for this to be different from the + // affected_cpe_uri. + string fixed_cpe_uri = 4; + + // The package this vulnerability was fixed in. It is possible for this to + // be different from the affected_package. + string fixed_package = 5; + + // Required. The version of the package this vulnerability was fixed in. + // Setting this to VersionKind.MAXIMUM means no fix is yet available. + grafeas.v1.Version fixed_version = 6; + + // Output only. Whether a fix is available for this package. + bool fix_available = 7; + } + + // Output only. A one sentence description of this vulnerability. + string short_description = 5; + + // Output only. A detailed description of this vulnerability. + string long_description = 6; + + // Output only. URLs related to this vulnerability. + repeated grafeas.v1.RelatedUrl related_urls = 7; + + // The distro assigned severity for this vulnerability when it is available, + // otherwise this is the note provider assigned severity. + Severity effective_severity = 8; + + // Output only. Whether at least one of the affected packages has a fix + // available. + bool fix_available = 9; +} diff --git a/protos/protos.d.ts b/protos/protos.d.ts index 8a0203c..4141aa0 100644 --- a/protos/protos.d.ts +++ b/protos/protos.d.ts @@ -17,6047 +17,8664 @@ import {protobuf as $protobuf} from "google-gax"; /** Namespace google. */ export namespace google { - /** Namespace protobuf. */ - namespace protobuf { + /** Namespace cloud. */ + namespace cloud { - /** Properties of a Timestamp. */ - interface ITimestamp { + /** Namespace binaryauthorization. */ + namespace binaryauthorization { - /** Timestamp seconds */ - seconds?: (number|Long|string|null); + /** Namespace v1. */ + namespace v1 { - /** Timestamp nanos */ - nanos?: (number|null); - } + /** Properties of a Policy. */ + interface IPolicy { - /** Represents a Timestamp. */ - class Timestamp implements ITimestamp { + /** Policy name */ + name?: (string|null); - /** - * Constructs a new Timestamp. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.ITimestamp); + /** Policy description */ + description?: (string|null); - /** Timestamp seconds. */ - public seconds: (number|Long|string); + /** Policy globalPolicyEvaluationMode */ + globalPolicyEvaluationMode?: (google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode|keyof typeof google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode|null); - /** Timestamp nanos. */ - public nanos: number; + /** Policy admissionWhitelistPatterns */ + admissionWhitelistPatterns?: (google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern[]|null); - /** - * Creates a new Timestamp instance using the specified properties. - * @param [properties] Properties to set - * @returns Timestamp instance - */ - public static create(properties?: google.protobuf.ITimestamp): google.protobuf.Timestamp; + /** Policy clusterAdmissionRules */ + clusterAdmissionRules?: ({ [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }|null); - /** - * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. - * @param message Timestamp message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer; + /** Policy kubernetesNamespaceAdmissionRules */ + kubernetesNamespaceAdmissionRules?: ({ [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }|null); - /** - * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. - * @param message Timestamp message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer; + /** Policy kubernetesServiceAccountAdmissionRules */ + kubernetesServiceAccountAdmissionRules?: ({ [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }|null); - /** - * Decodes a Timestamp message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Timestamp - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Timestamp; + /** Policy istioServiceIdentityAdmissionRules */ + istioServiceIdentityAdmissionRules?: ({ [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }|null); - /** - * Decodes a Timestamp message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Timestamp - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Timestamp; + /** Policy defaultAdmissionRule */ + defaultAdmissionRule?: (google.cloud.binaryauthorization.v1.IAdmissionRule|null); - /** - * Verifies a Timestamp message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Policy updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } - /** - * Creates a Timestamp message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Timestamp - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.Timestamp; + /** Represents a Policy. */ + class Policy implements IPolicy { - /** - * Creates a plain object from a Timestamp message. Also converts values to other types if specified. - * @param message Timestamp - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.Timestamp, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Constructs a new Policy. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IPolicy); - /** - * Converts this Timestamp to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Policy name. */ + public name: string; - /** Properties of a FileDescriptorSet. */ - interface IFileDescriptorSet { + /** Policy description. */ + public description: string; - /** FileDescriptorSet file */ - file?: (google.protobuf.IFileDescriptorProto[]|null); - } + /** Policy globalPolicyEvaluationMode. */ + public globalPolicyEvaluationMode: (google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode|keyof typeof google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode); - /** Represents a FileDescriptorSet. */ - class FileDescriptorSet implements IFileDescriptorSet { + /** Policy admissionWhitelistPatterns. */ + public admissionWhitelistPatterns: google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern[]; - /** - * Constructs a new FileDescriptorSet. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFileDescriptorSet); + /** Policy clusterAdmissionRules. */ + public clusterAdmissionRules: { [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }; - /** FileDescriptorSet file. */ - public file: google.protobuf.IFileDescriptorProto[]; + /** Policy kubernetesNamespaceAdmissionRules. */ + public kubernetesNamespaceAdmissionRules: { [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }; - /** - * Creates a new FileDescriptorSet instance using the specified properties. - * @param [properties] Properties to set - * @returns FileDescriptorSet instance - */ - public static create(properties?: google.protobuf.IFileDescriptorSet): google.protobuf.FileDescriptorSet; + /** Policy kubernetesServiceAccountAdmissionRules. */ + public kubernetesServiceAccountAdmissionRules: { [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }; - /** - * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. - * @param message FileDescriptorSet message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer; + /** Policy istioServiceIdentityAdmissionRules. */ + public istioServiceIdentityAdmissionRules: { [k: string]: google.cloud.binaryauthorization.v1.IAdmissionRule }; - /** - * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. - * @param message FileDescriptorSet message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer; + /** Policy defaultAdmissionRule. */ + public defaultAdmissionRule?: (google.cloud.binaryauthorization.v1.IAdmissionRule|null); - /** - * Decodes a FileDescriptorSet message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns FileDescriptorSet - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorSet; + /** Policy updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); - /** - * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns FileDescriptorSet - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorSet; + /** + * Creates a new Policy instance using the specified properties. + * @param [properties] Properties to set + * @returns Policy instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IPolicy): google.cloud.binaryauthorization.v1.Policy; - /** - * Verifies a FileDescriptorSet message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Encodes the specified Policy message. Does not implicitly {@link google.cloud.binaryauthorization.v1.Policy.verify|verify} messages. + * @param message Policy message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns FileDescriptorSet - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorSet; + /** + * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.Policy.verify|verify} messages. + * @param message Policy message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. - * @param message FileDescriptorSet - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.FileDescriptorSet, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Decodes a Policy message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.Policy; - /** - * Converts this FileDescriptorSet to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Decodes a Policy message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.Policy; - /** Properties of a FileDescriptorProto. */ - interface IFileDescriptorProto { + /** + * Verifies a Policy message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** FileDescriptorProto name */ - name?: (string|null); + /** + * Creates a Policy message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Policy + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.Policy; - /** FileDescriptorProto package */ - "package"?: (string|null); + /** + * Creates a plain object from a Policy message. Also converts values to other types if specified. + * @param message Policy + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.Policy, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** FileDescriptorProto dependency */ - dependency?: (string[]|null); + /** + * Converts this Policy to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileDescriptorProto publicDependency */ - publicDependency?: (number[]|null); + namespace Policy { - /** FileDescriptorProto weakDependency */ - weakDependency?: (number[]|null); + /** GlobalPolicyEvaluationMode enum. */ + enum GlobalPolicyEvaluationMode { + GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED = 0, + ENABLE = 1, + DISABLE = 2 + } + } - /** FileDescriptorProto messageType */ - messageType?: (google.protobuf.IDescriptorProto[]|null); + /** Properties of an AdmissionWhitelistPattern. */ + interface IAdmissionWhitelistPattern { - /** FileDescriptorProto enumType */ - enumType?: (google.protobuf.IEnumDescriptorProto[]|null); + /** AdmissionWhitelistPattern namePattern */ + namePattern?: (string|null); + } - /** FileDescriptorProto service */ - service?: (google.protobuf.IServiceDescriptorProto[]|null); + /** Represents an AdmissionWhitelistPattern. */ + class AdmissionWhitelistPattern implements IAdmissionWhitelistPattern { - /** FileDescriptorProto extension */ - extension?: (google.protobuf.IFieldDescriptorProto[]|null); + /** + * Constructs a new AdmissionWhitelistPattern. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern); - /** FileDescriptorProto options */ - options?: (google.protobuf.IFileOptions|null); + /** AdmissionWhitelistPattern namePattern. */ + public namePattern: string; - /** FileDescriptorProto sourceCodeInfo */ - sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); + /** + * Creates a new AdmissionWhitelistPattern instance using the specified properties. + * @param [properties] Properties to set + * @returns AdmissionWhitelistPattern instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern): google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern; - /** FileDescriptorProto syntax */ - syntax?: (string|null); - } + /** + * Encodes the specified AdmissionWhitelistPattern message. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.verify|verify} messages. + * @param message AdmissionWhitelistPattern message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents a FileDescriptorProto. */ - class FileDescriptorProto implements IFileDescriptorProto { + /** + * Encodes the specified AdmissionWhitelistPattern message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.verify|verify} messages. + * @param message AdmissionWhitelistPattern message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new FileDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFileDescriptorProto); + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern; - /** FileDescriptorProto name. */ - public name: string; + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern; - /** FileDescriptorProto package. */ - public package: string; + /** + * Verifies an AdmissionWhitelistPattern message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** FileDescriptorProto dependency. */ - public dependency: string[]; + /** + * Creates an AdmissionWhitelistPattern message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AdmissionWhitelistPattern + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern; - /** FileDescriptorProto publicDependency. */ - public publicDependency: number[]; + /** + * Creates a plain object from an AdmissionWhitelistPattern message. Also converts values to other types if specified. + * @param message AdmissionWhitelistPattern + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** FileDescriptorProto weakDependency. */ - public weakDependency: number[]; + /** + * Converts this AdmissionWhitelistPattern to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileDescriptorProto messageType. */ - public messageType: google.protobuf.IDescriptorProto[]; + /** Properties of an AdmissionRule. */ + interface IAdmissionRule { - /** FileDescriptorProto enumType. */ - public enumType: google.protobuf.IEnumDescriptorProto[]; + /** AdmissionRule evaluationMode */ + evaluationMode?: (google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode|keyof typeof google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode|null); - /** FileDescriptorProto service. */ - public service: google.protobuf.IServiceDescriptorProto[]; + /** AdmissionRule requireAttestationsBy */ + requireAttestationsBy?: (string[]|null); - /** FileDescriptorProto extension. */ - public extension: google.protobuf.IFieldDescriptorProto[]; + /** AdmissionRule enforcementMode */ + enforcementMode?: (google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode|keyof typeof google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode|null); + } - /** FileDescriptorProto options. */ - public options?: (google.protobuf.IFileOptions|null); + /** Represents an AdmissionRule. */ + class AdmissionRule implements IAdmissionRule { - /** FileDescriptorProto sourceCodeInfo. */ - public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); + /** + * Constructs a new AdmissionRule. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IAdmissionRule); - /** FileDescriptorProto syntax. */ - public syntax: string; + /** AdmissionRule evaluationMode. */ + public evaluationMode: (google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode|keyof typeof google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode); - /** - * Creates a new FileDescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns FileDescriptorProto instance - */ - public static create(properties?: google.protobuf.IFileDescriptorProto): google.protobuf.FileDescriptorProto; + /** AdmissionRule requireAttestationsBy. */ + public requireAttestationsBy: string[]; - /** - * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. - * @param message FileDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** AdmissionRule enforcementMode. */ + public enforcementMode: (google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode|keyof typeof google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode); - /** - * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. - * @param message FileDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a new AdmissionRule instance using the specified properties. + * @param [properties] Properties to set + * @returns AdmissionRule instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IAdmissionRule): google.cloud.binaryauthorization.v1.AdmissionRule; - /** - * Decodes a FileDescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns FileDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorProto; + /** + * Encodes the specified AdmissionRule message. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionRule.verify|verify} messages. + * @param message AdmissionRule message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IAdmissionRule, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns FileDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorProto; + /** + * Encodes the specified AdmissionRule message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionRule.verify|verify} messages. + * @param message AdmissionRule message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IAdmissionRule, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Verifies a FileDescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Decodes an AdmissionRule message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.AdmissionRule; - /** - * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns FileDescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorProto; + /** + * Decodes an AdmissionRule message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.AdmissionRule; - /** - * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. - * @param message FileDescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.FileDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Verifies an AdmissionRule message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Converts this FileDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates an AdmissionRule message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AdmissionRule + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.AdmissionRule; - /** Properties of a DescriptorProto. */ - interface IDescriptorProto { + /** + * Creates a plain object from an AdmissionRule message. Also converts values to other types if specified. + * @param message AdmissionRule + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.AdmissionRule, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** DescriptorProto name */ - name?: (string|null); + /** + * Converts this AdmissionRule to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** DescriptorProto field */ - field?: (google.protobuf.IFieldDescriptorProto[]|null); + namespace AdmissionRule { - /** DescriptorProto extension */ - extension?: (google.protobuf.IFieldDescriptorProto[]|null); + /** EvaluationMode enum. */ + enum EvaluationMode { + EVALUATION_MODE_UNSPECIFIED = 0, + ALWAYS_ALLOW = 1, + REQUIRE_ATTESTATION = 2, + ALWAYS_DENY = 3 + } - /** DescriptorProto nestedType */ - nestedType?: (google.protobuf.IDescriptorProto[]|null); + /** EnforcementMode enum. */ + enum EnforcementMode { + ENFORCEMENT_MODE_UNSPECIFIED = 0, + ENFORCED_BLOCK_AND_AUDIT_LOG = 1, + DRYRUN_AUDIT_LOG_ONLY = 2 + } + } - /** DescriptorProto enumType */ - enumType?: (google.protobuf.IEnumDescriptorProto[]|null); + /** Properties of an Attestor. */ + interface IAttestor { - /** DescriptorProto extensionRange */ - extensionRange?: (google.protobuf.DescriptorProto.IExtensionRange[]|null); + /** Attestor name */ + name?: (string|null); - /** DescriptorProto oneofDecl */ - oneofDecl?: (google.protobuf.IOneofDescriptorProto[]|null); + /** Attestor description */ + description?: (string|null); - /** DescriptorProto options */ - options?: (google.protobuf.IMessageOptions|null); + /** Attestor userOwnedGrafeasNote */ + userOwnedGrafeasNote?: (google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote|null); - /** DescriptorProto reservedRange */ - reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null); + /** Attestor updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } - /** DescriptorProto reservedName */ - reservedName?: (string[]|null); - } + /** Represents an Attestor. */ + class Attestor implements IAttestor { - /** Represents a DescriptorProto. */ - class DescriptorProto implements IDescriptorProto { + /** + * Constructs a new Attestor. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IAttestor); - /** - * Constructs a new DescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IDescriptorProto); + /** Attestor name. */ + public name: string; - /** DescriptorProto name. */ - public name: string; + /** Attestor description. */ + public description: string; - /** DescriptorProto field. */ - public field: google.protobuf.IFieldDescriptorProto[]; + /** Attestor userOwnedGrafeasNote. */ + public userOwnedGrafeasNote?: (google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote|null); - /** DescriptorProto extension. */ - public extension: google.protobuf.IFieldDescriptorProto[]; + /** Attestor updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); - /** DescriptorProto nestedType. */ - public nestedType: google.protobuf.IDescriptorProto[]; + /** Attestor attestorType. */ + public attestorType?: "userOwnedGrafeasNote"; - /** DescriptorProto enumType. */ - public enumType: google.protobuf.IEnumDescriptorProto[]; + /** + * Creates a new Attestor instance using the specified properties. + * @param [properties] Properties to set + * @returns Attestor instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IAttestor): google.cloud.binaryauthorization.v1.Attestor; - /** DescriptorProto extensionRange. */ - public extensionRange: google.protobuf.DescriptorProto.IExtensionRange[]; + /** + * Encodes the specified Attestor message. Does not implicitly {@link google.cloud.binaryauthorization.v1.Attestor.verify|verify} messages. + * @param message Attestor message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IAttestor, writer?: $protobuf.Writer): $protobuf.Writer; - /** DescriptorProto oneofDecl. */ - public oneofDecl: google.protobuf.IOneofDescriptorProto[]; + /** + * Encodes the specified Attestor message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.Attestor.verify|verify} messages. + * @param message Attestor message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IAttestor, writer?: $protobuf.Writer): $protobuf.Writer; - /** DescriptorProto options. */ - public options?: (google.protobuf.IMessageOptions|null); + /** + * Decodes an Attestor message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.Attestor; - /** DescriptorProto reservedRange. */ - public reservedRange: google.protobuf.DescriptorProto.IReservedRange[]; + /** + * Decodes an Attestor message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.Attestor; - /** DescriptorProto reservedName. */ - public reservedName: string[]; + /** + * Verifies an Attestor message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Creates a new DescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns DescriptorProto instance - */ - public static create(properties?: google.protobuf.IDescriptorProto): google.protobuf.DescriptorProto; + /** + * Creates an Attestor message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Attestor + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.Attestor; - /** - * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. - * @param message DescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a plain object from an Attestor message. Also converts values to other types if specified. + * @param message Attestor + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.Attestor, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. - * @param message DescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this Attestor to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes a DescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns DescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto; + /** Properties of a UserOwnedGrafeasNote. */ + interface IUserOwnedGrafeasNote { - /** - * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns DescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto; + /** UserOwnedGrafeasNote noteReference */ + noteReference?: (string|null); - /** - * Verifies a DescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** UserOwnedGrafeasNote publicKeys */ + publicKeys?: (google.cloud.binaryauthorization.v1.IAttestorPublicKey[]|null); - /** - * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns DescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto; + /** UserOwnedGrafeasNote delegationServiceAccountEmail */ + delegationServiceAccountEmail?: (string|null); + } - /** - * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. - * @param message DescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.DescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Represents a UserOwnedGrafeasNote. */ + class UserOwnedGrafeasNote implements IUserOwnedGrafeasNote { - /** - * Converts this DescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Constructs a new UserOwnedGrafeasNote. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote); - namespace DescriptorProto { + /** UserOwnedGrafeasNote noteReference. */ + public noteReference: string; - /** Properties of an ExtensionRange. */ - interface IExtensionRange { + /** UserOwnedGrafeasNote publicKeys. */ + public publicKeys: google.cloud.binaryauthorization.v1.IAttestorPublicKey[]; - /** ExtensionRange start */ - start?: (number|null); + /** UserOwnedGrafeasNote delegationServiceAccountEmail. */ + public delegationServiceAccountEmail: string; - /** ExtensionRange end */ - end?: (number|null); + /** + * Creates a new UserOwnedGrafeasNote instance using the specified properties. + * @param [properties] Properties to set + * @returns UserOwnedGrafeasNote instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote): google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote; - /** ExtensionRange options */ - options?: (google.protobuf.IExtensionRangeOptions|null); - } + /** + * Encodes the specified UserOwnedGrafeasNote message. Does not implicitly {@link google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.verify|verify} messages. + * @param message UserOwnedGrafeasNote message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents an ExtensionRange. */ - class ExtensionRange implements IExtensionRange { + /** + * Encodes the specified UserOwnedGrafeasNote message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.verify|verify} messages. + * @param message UserOwnedGrafeasNote message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new ExtensionRange. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange); + /** + * Decodes a UserOwnedGrafeasNote message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UserOwnedGrafeasNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote; - /** ExtensionRange start. */ - public start: number; + /** + * Decodes a UserOwnedGrafeasNote message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UserOwnedGrafeasNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote; - /** ExtensionRange end. */ - public end: number; + /** + * Verifies a UserOwnedGrafeasNote message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** ExtensionRange options. */ - public options?: (google.protobuf.IExtensionRangeOptions|null); + /** + * Creates a UserOwnedGrafeasNote message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UserOwnedGrafeasNote + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote; - /** - * Creates a new ExtensionRange instance using the specified properties. - * @param [properties] Properties to set - * @returns ExtensionRange instance - */ - public static create(properties?: google.protobuf.DescriptorProto.IExtensionRange): google.protobuf.DescriptorProto.ExtensionRange; + /** + * Creates a plain object from a UserOwnedGrafeasNote message. Also converts values to other types if specified. + * @param message UserOwnedGrafeasNote + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. - * @param message ExtensionRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this UserOwnedGrafeasNote to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. - * @param message ExtensionRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer; + /** Properties of a PkixPublicKey. */ + interface IPkixPublicKey { - /** - * Decodes an ExtensionRange message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ExtensionRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ExtensionRange; + /** PkixPublicKey publicKeyPem */ + publicKeyPem?: (string|null); - /** - * Decodes an ExtensionRange message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ExtensionRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ExtensionRange; + /** PkixPublicKey signatureAlgorithm */ + signatureAlgorithm?: (google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm|keyof typeof google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm|null); + } - /** - * Verifies an ExtensionRange message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Represents a PkixPublicKey. */ + class PkixPublicKey implements IPkixPublicKey { - /** - * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ExtensionRange - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ExtensionRange; + /** + * Constructs a new PkixPublicKey. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IPkixPublicKey); - /** - * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified. - * @param message ExtensionRange - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.DescriptorProto.ExtensionRange, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** PkixPublicKey publicKeyPem. */ + public publicKeyPem: string; - /** - * Converts this ExtensionRange to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** PkixPublicKey signatureAlgorithm. */ + public signatureAlgorithm: (google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm|keyof typeof google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm); - /** Properties of a ReservedRange. */ - interface IReservedRange { + /** + * Creates a new PkixPublicKey instance using the specified properties. + * @param [properties] Properties to set + * @returns PkixPublicKey instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IPkixPublicKey): google.cloud.binaryauthorization.v1.PkixPublicKey; - /** ReservedRange start */ - start?: (number|null); + /** + * Encodes the specified PkixPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1.PkixPublicKey.verify|verify} messages. + * @param message PkixPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IPkixPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** ReservedRange end */ - end?: (number|null); - } + /** + * Encodes the specified PkixPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.PkixPublicKey.verify|verify} messages. + * @param message PkixPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IPkixPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents a ReservedRange. */ - class ReservedRange implements IReservedRange { + /** + * Decodes a PkixPublicKey message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.PkixPublicKey; - /** - * Constructs a new ReservedRange. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.DescriptorProto.IReservedRange); + /** + * Decodes a PkixPublicKey message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.PkixPublicKey; - /** ReservedRange start. */ - public start: number; + /** + * Verifies a PkixPublicKey message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** ReservedRange end. */ - public end: number; + /** + * Creates a PkixPublicKey message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PkixPublicKey + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.PkixPublicKey; - /** - * Creates a new ReservedRange instance using the specified properties. - * @param [properties] Properties to set - * @returns ReservedRange instance - */ - public static create(properties?: google.protobuf.DescriptorProto.IReservedRange): google.protobuf.DescriptorProto.ReservedRange; + /** + * Creates a plain object from a PkixPublicKey message. Also converts values to other types if specified. + * @param message PkixPublicKey + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.PkixPublicKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. - * @param message ReservedRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this PkixPublicKey to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. - * @param message ReservedRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + namespace PkixPublicKey { - /** - * Decodes a ReservedRange message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ReservedRange; + /** SignatureAlgorithm enum. */ + enum SignatureAlgorithm { + SIGNATURE_ALGORITHM_UNSPECIFIED = 0, + RSA_PSS_2048_SHA256 = 1, + RSA_PSS_3072_SHA256 = 2, + RSA_PSS_4096_SHA256 = 3, + RSA_PSS_4096_SHA512 = 4, + RSA_SIGN_PKCS1_2048_SHA256 = 5, + RSA_SIGN_PKCS1_3072_SHA256 = 6, + RSA_SIGN_PKCS1_4096_SHA256 = 7, + RSA_SIGN_PKCS1_4096_SHA512 = 8, + ECDSA_P256_SHA256 = 9, + EC_SIGN_P256_SHA256 = 9, + ECDSA_P384_SHA384 = 10, + EC_SIGN_P384_SHA384 = 10, + ECDSA_P521_SHA512 = 11, + EC_SIGN_P521_SHA512 = 11 + } + } - /** - * Decodes a ReservedRange message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ReservedRange; + /** Properties of an AttestorPublicKey. */ + interface IAttestorPublicKey { - /** - * Verifies a ReservedRange message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** AttestorPublicKey comment */ + comment?: (string|null); - /** - * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ReservedRange - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ReservedRange; + /** AttestorPublicKey id */ + id?: (string|null); - /** - * Creates a plain object from a ReservedRange message. Also converts values to other types if specified. - * @param message ReservedRange - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.DescriptorProto.ReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** AttestorPublicKey asciiArmoredPgpPublicKey */ + asciiArmoredPgpPublicKey?: (string|null); - /** - * Converts this ReservedRange to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** AttestorPublicKey pkixPublicKey */ + pkixPublicKey?: (google.cloud.binaryauthorization.v1.IPkixPublicKey|null); + } - /** Properties of an ExtensionRangeOptions. */ - interface IExtensionRangeOptions { + /** Represents an AttestorPublicKey. */ + class AttestorPublicKey implements IAttestorPublicKey { - /** ExtensionRangeOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - } + /** + * Constructs a new AttestorPublicKey. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IAttestorPublicKey); - /** Represents an ExtensionRangeOptions. */ - class ExtensionRangeOptions implements IExtensionRangeOptions { + /** AttestorPublicKey comment. */ + public comment: string; - /** - * Constructs a new ExtensionRangeOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IExtensionRangeOptions); + /** AttestorPublicKey id. */ + public id: string; - /** ExtensionRangeOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** AttestorPublicKey asciiArmoredPgpPublicKey. */ + public asciiArmoredPgpPublicKey?: (string|null); - /** - * Creates a new ExtensionRangeOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns ExtensionRangeOptions instance - */ - public static create(properties?: google.protobuf.IExtensionRangeOptions): google.protobuf.ExtensionRangeOptions; + /** AttestorPublicKey pkixPublicKey. */ + public pkixPublicKey?: (google.cloud.binaryauthorization.v1.IPkixPublicKey|null); - /** - * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. - * @param message ExtensionRangeOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** AttestorPublicKey publicKey. */ + public publicKey?: ("asciiArmoredPgpPublicKey"|"pkixPublicKey"); - /** - * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. - * @param message ExtensionRangeOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a new AttestorPublicKey instance using the specified properties. + * @param [properties] Properties to set + * @returns AttestorPublicKey instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IAttestorPublicKey): google.cloud.binaryauthorization.v1.AttestorPublicKey; - /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ExtensionRangeOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ExtensionRangeOptions; + /** + * Encodes the specified AttestorPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1.AttestorPublicKey.verify|verify} messages. + * @param message AttestorPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IAttestorPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ExtensionRangeOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ExtensionRangeOptions; + /** + * Encodes the specified AttestorPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.AttestorPublicKey.verify|verify} messages. + * @param message AttestorPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IAttestorPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Verifies an ExtensionRangeOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.AttestorPublicKey; - /** - * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ExtensionRangeOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.ExtensionRangeOptions; + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.AttestorPublicKey; - /** - * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. - * @param message ExtensionRangeOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.ExtensionRangeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Verifies an AttestorPublicKey message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Converts this ExtensionRangeOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates an AttestorPublicKey message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AttestorPublicKey + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.AttestorPublicKey; - /** Properties of a FieldDescriptorProto. */ - interface IFieldDescriptorProto { + /** + * Creates a plain object from an AttestorPublicKey message. Also converts values to other types if specified. + * @param message AttestorPublicKey + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.AttestorPublicKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** FieldDescriptorProto name */ - name?: (string|null); + /** + * Converts this AttestorPublicKey to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FieldDescriptorProto number */ - number?: (number|null); + /** Represents a BinauthzManagementServiceV1 */ + class BinauthzManagementServiceV1 extends $protobuf.rpc.Service { - /** FieldDescriptorProto label */ - label?: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label|null); + /** + * Constructs a new BinauthzManagementServiceV1 service. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + */ + constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); - /** FieldDescriptorProto type */ - type?: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type|null); + /** + * Creates new BinauthzManagementServiceV1 service using the specified rpc implementation. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + * @returns RPC service. Useful where requests and/or responses are streamed. + */ + public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): BinauthzManagementServiceV1; - /** FieldDescriptorProto typeName */ - typeName?: (string|null); + /** + * Calls GetPolicy. + * @param request GetPolicyRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Policy + */ + public getPolicy(request: google.cloud.binaryauthorization.v1.IGetPolicyRequest, callback: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.GetPolicyCallback): void; - /** FieldDescriptorProto extendee */ - extendee?: (string|null); + /** + * Calls GetPolicy. + * @param request GetPolicyRequest message or plain object + * @returns Promise + */ + public getPolicy(request: google.cloud.binaryauthorization.v1.IGetPolicyRequest): Promise; - /** FieldDescriptorProto defaultValue */ - defaultValue?: (string|null); + /** + * Calls UpdatePolicy. + * @param request UpdatePolicyRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Policy + */ + public updatePolicy(request: google.cloud.binaryauthorization.v1.IUpdatePolicyRequest, callback: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.UpdatePolicyCallback): void; - /** FieldDescriptorProto oneofIndex */ - oneofIndex?: (number|null); + /** + * Calls UpdatePolicy. + * @param request UpdatePolicyRequest message or plain object + * @returns Promise + */ + public updatePolicy(request: google.cloud.binaryauthorization.v1.IUpdatePolicyRequest): Promise; - /** FieldDescriptorProto jsonName */ - jsonName?: (string|null); + /** + * Calls CreateAttestor. + * @param request CreateAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Attestor + */ + public createAttestor(request: google.cloud.binaryauthorization.v1.ICreateAttestorRequest, callback: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.CreateAttestorCallback): void; - /** FieldDescriptorProto options */ - options?: (google.protobuf.IFieldOptions|null); + /** + * Calls CreateAttestor. + * @param request CreateAttestorRequest message or plain object + * @returns Promise + */ + public createAttestor(request: google.cloud.binaryauthorization.v1.ICreateAttestorRequest): Promise; - /** FieldDescriptorProto proto3Optional */ - proto3Optional?: (boolean|null); - } + /** + * Calls GetAttestor. + * @param request GetAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Attestor + */ + public getAttestor(request: google.cloud.binaryauthorization.v1.IGetAttestorRequest, callback: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.GetAttestorCallback): void; - /** Represents a FieldDescriptorProto. */ - class FieldDescriptorProto implements IFieldDescriptorProto { + /** + * Calls GetAttestor. + * @param request GetAttestorRequest message or plain object + * @returns Promise + */ + public getAttestor(request: google.cloud.binaryauthorization.v1.IGetAttestorRequest): Promise; - /** - * Constructs a new FieldDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFieldDescriptorProto); + /** + * Calls UpdateAttestor. + * @param request UpdateAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Attestor + */ + public updateAttestor(request: google.cloud.binaryauthorization.v1.IUpdateAttestorRequest, callback: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.UpdateAttestorCallback): void; - /** FieldDescriptorProto name. */ - public name: string; + /** + * Calls UpdateAttestor. + * @param request UpdateAttestorRequest message or plain object + * @returns Promise + */ + public updateAttestor(request: google.cloud.binaryauthorization.v1.IUpdateAttestorRequest): Promise; - /** FieldDescriptorProto number. */ - public number: number; + /** + * Calls ListAttestors. + * @param request ListAttestorsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListAttestorsResponse + */ + public listAttestors(request: google.cloud.binaryauthorization.v1.IListAttestorsRequest, callback: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.ListAttestorsCallback): void; - /** FieldDescriptorProto label. */ - public label: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label); + /** + * Calls ListAttestors. + * @param request ListAttestorsRequest message or plain object + * @returns Promise + */ + public listAttestors(request: google.cloud.binaryauthorization.v1.IListAttestorsRequest): Promise; - /** FieldDescriptorProto type. */ - public type: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type); + /** + * Calls DeleteAttestor. + * @param request DeleteAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Empty + */ + public deleteAttestor(request: google.cloud.binaryauthorization.v1.IDeleteAttestorRequest, callback: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.DeleteAttestorCallback): void; - /** FieldDescriptorProto typeName. */ - public typeName: string; + /** + * Calls DeleteAttestor. + * @param request DeleteAttestorRequest message or plain object + * @returns Promise + */ + public deleteAttestor(request: google.cloud.binaryauthorization.v1.IDeleteAttestorRequest): Promise; + } - /** FieldDescriptorProto extendee. */ - public extendee: string; + namespace BinauthzManagementServiceV1 { - /** FieldDescriptorProto defaultValue. */ - public defaultValue: string; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#getPolicy}. + * @param error Error, if any + * @param [response] Policy + */ + type GetPolicyCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.Policy) => void; - /** FieldDescriptorProto oneofIndex. */ - public oneofIndex: number; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#updatePolicy}. + * @param error Error, if any + * @param [response] Policy + */ + type UpdatePolicyCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.Policy) => void; - /** FieldDescriptorProto jsonName. */ - public jsonName: string; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#createAttestor}. + * @param error Error, if any + * @param [response] Attestor + */ + type CreateAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.Attestor) => void; - /** FieldDescriptorProto options. */ - public options?: (google.protobuf.IFieldOptions|null); + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#getAttestor}. + * @param error Error, if any + * @param [response] Attestor + */ + type GetAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.Attestor) => void; - /** FieldDescriptorProto proto3Optional. */ - public proto3Optional: boolean; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#updateAttestor}. + * @param error Error, if any + * @param [response] Attestor + */ + type UpdateAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.Attestor) => void; - /** - * Creates a new FieldDescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns FieldDescriptorProto instance - */ - public static create(properties?: google.protobuf.IFieldDescriptorProto): google.protobuf.FieldDescriptorProto; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#listAttestors}. + * @param error Error, if any + * @param [response] ListAttestorsResponse + */ + type ListAttestorsCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.ListAttestorsResponse) => void; - /** - * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. - * @param message FieldDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#deleteAttestor}. + * @param error Error, if any + * @param [response] Empty + */ + type DeleteAttestorCallback = (error: (Error|null), response?: google.protobuf.Empty) => void; + } - /** - * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. - * @param message FieldDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents a SystemPolicyV1 */ + class SystemPolicyV1 extends $protobuf.rpc.Service { - /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns FieldDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldDescriptorProto; + /** + * Constructs a new SystemPolicyV1 service. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + */ + constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); - /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns FieldDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldDescriptorProto; + /** + * Creates new SystemPolicyV1 service using the specified rpc implementation. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + * @returns RPC service. Useful where requests and/or responses are streamed. + */ + public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): SystemPolicyV1; - /** - * Verifies a FieldDescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Calls GetSystemPolicy. + * @param request GetSystemPolicyRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Policy + */ + public getSystemPolicy(request: google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest, callback: google.cloud.binaryauthorization.v1.SystemPolicyV1.GetSystemPolicyCallback): void; - /** - * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns FieldDescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FieldDescriptorProto; + /** + * Calls GetSystemPolicy. + * @param request GetSystemPolicyRequest message or plain object + * @returns Promise + */ + public getSystemPolicy(request: google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest): Promise; + } - /** - * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. - * @param message FieldDescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.FieldDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + namespace SystemPolicyV1 { - /** - * Converts this FieldDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.SystemPolicyV1#getSystemPolicy}. + * @param error Error, if any + * @param [response] Policy + */ + type GetSystemPolicyCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.Policy) => void; + } - namespace FieldDescriptorProto { + /** Represents a ValidationHelperV1 */ + class ValidationHelperV1 extends $protobuf.rpc.Service { - /** Type enum. */ - enum Type { - 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 - } + /** + * Constructs a new ValidationHelperV1 service. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + */ + constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); - /** Label enum. */ - enum Label { - LABEL_OPTIONAL = 1, - LABEL_REQUIRED = 2, - LABEL_REPEATED = 3 - } - } + /** + * Creates new ValidationHelperV1 service using the specified rpc implementation. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + * @returns RPC service. Useful where requests and/or responses are streamed. + */ + public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): ValidationHelperV1; - /** Properties of an OneofDescriptorProto. */ - interface IOneofDescriptorProto { + /** + * Calls ValidateAttestationOccurrence. + * @param request ValidateAttestationOccurrenceRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ValidateAttestationOccurrenceResponse + */ + public validateAttestationOccurrence(request: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest, callback: google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrenceCallback): void; - /** OneofDescriptorProto name */ - name?: (string|null); + /** + * Calls ValidateAttestationOccurrence. + * @param request ValidateAttestationOccurrenceRequest message or plain object + * @returns Promise + */ + public validateAttestationOccurrence(request: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest): Promise; + } - /** OneofDescriptorProto options */ - options?: (google.protobuf.IOneofOptions|null); - } + namespace ValidationHelperV1 { - /** Represents an OneofDescriptorProto. */ - class OneofDescriptorProto implements IOneofDescriptorProto { + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.ValidationHelperV1#validateAttestationOccurrence}. + * @param error Error, if any + * @param [response] ValidateAttestationOccurrenceResponse + */ + type ValidateAttestationOccurrenceCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse) => void; + } - /** - * Constructs a new OneofDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IOneofDescriptorProto); + /** Properties of a GetPolicyRequest. */ + interface IGetPolicyRequest { - /** OneofDescriptorProto name. */ - public name: string; + /** GetPolicyRequest name */ + name?: (string|null); + } - /** OneofDescriptorProto options. */ - public options?: (google.protobuf.IOneofOptions|null); + /** Represents a GetPolicyRequest. */ + class GetPolicyRequest implements IGetPolicyRequest { - /** - * Creates a new OneofDescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns OneofDescriptorProto instance - */ - public static create(properties?: google.protobuf.IOneofDescriptorProto): google.protobuf.OneofDescriptorProto; + /** + * Constructs a new GetPolicyRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IGetPolicyRequest); - /** - * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. - * @param message OneofDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** GetPolicyRequest name. */ + public name: string; - /** - * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. - * @param message OneofDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a new GetPolicyRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetPolicyRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IGetPolicyRequest): google.cloud.binaryauthorization.v1.GetPolicyRequest; - /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns OneofDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofDescriptorProto; + /** + * Encodes the specified GetPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetPolicyRequest.verify|verify} messages. + * @param message GetPolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IGetPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns OneofDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofDescriptorProto; + /** + * Encodes the specified GetPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetPolicyRequest.verify|verify} messages. + * @param message GetPolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IGetPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Verifies an OneofDescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.GetPolicyRequest; - /** - * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns OneofDescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.OneofDescriptorProto; + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.GetPolicyRequest; - /** - * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. - * @param message OneofDescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.OneofDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Verifies a GetPolicyRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Converts this OneofDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates a GetPolicyRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetPolicyRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.GetPolicyRequest; - /** Properties of an EnumDescriptorProto. */ - interface IEnumDescriptorProto { + /** + * Creates a plain object from a GetPolicyRequest message. Also converts values to other types if specified. + * @param message GetPolicyRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.GetPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** EnumDescriptorProto name */ - name?: (string|null); + /** + * Converts this GetPolicyRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** EnumDescriptorProto value */ - value?: (google.protobuf.IEnumValueDescriptorProto[]|null); + /** Properties of an UpdatePolicyRequest. */ + interface IUpdatePolicyRequest { - /** EnumDescriptorProto options */ - options?: (google.protobuf.IEnumOptions|null); + /** UpdatePolicyRequest policy */ + policy?: (google.cloud.binaryauthorization.v1.IPolicy|null); + } - /** EnumDescriptorProto reservedRange */ - reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null); + /** Represents an UpdatePolicyRequest. */ + class UpdatePolicyRequest implements IUpdatePolicyRequest { - /** EnumDescriptorProto reservedName */ - reservedName?: (string[]|null); - } + /** + * Constructs a new UpdatePolicyRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IUpdatePolicyRequest); - /** Represents an EnumDescriptorProto. */ - class EnumDescriptorProto implements IEnumDescriptorProto { + /** UpdatePolicyRequest policy. */ + public policy?: (google.cloud.binaryauthorization.v1.IPolicy|null); - /** - * Constructs a new EnumDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumDescriptorProto); + /** + * Creates a new UpdatePolicyRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdatePolicyRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IUpdatePolicyRequest): google.cloud.binaryauthorization.v1.UpdatePolicyRequest; - /** EnumDescriptorProto name. */ - public name: string; + /** + * Encodes the specified UpdatePolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdatePolicyRequest.verify|verify} messages. + * @param message UpdatePolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IUpdatePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** EnumDescriptorProto value. */ - public value: google.protobuf.IEnumValueDescriptorProto[]; + /** + * Encodes the specified UpdatePolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdatePolicyRequest.verify|verify} messages. + * @param message UpdatePolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IUpdatePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** EnumDescriptorProto options. */ - public options?: (google.protobuf.IEnumOptions|null); + /** + * Decodes an UpdatePolicyRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdatePolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.UpdatePolicyRequest; - /** EnumDescriptorProto reservedRange. */ - public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[]; + /** + * Decodes an UpdatePolicyRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdatePolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.UpdatePolicyRequest; - /** EnumDescriptorProto reservedName. */ - public reservedName: string[]; + /** + * Verifies an UpdatePolicyRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Creates a new EnumDescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns EnumDescriptorProto instance - */ - public static create(properties?: google.protobuf.IEnumDescriptorProto): google.protobuf.EnumDescriptorProto; + /** + * Creates an UpdatePolicyRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdatePolicyRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.UpdatePolicyRequest; - /** - * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. - * @param message EnumDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a plain object from an UpdatePolicyRequest message. Also converts values to other types if specified. + * @param message UpdatePolicyRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.UpdatePolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. - * @param message EnumDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this UpdatePolicyRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes an EnumDescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns EnumDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto; + /** Properties of a CreateAttestorRequest. */ + interface ICreateAttestorRequest { - /** - * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns EnumDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto; + /** CreateAttestorRequest parent */ + parent?: (string|null); - /** - * Verifies an EnumDescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** CreateAttestorRequest attestorId */ + attestorId?: (string|null); - /** - * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns EnumDescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto; + /** CreateAttestorRequest attestor */ + attestor?: (google.cloud.binaryauthorization.v1.IAttestor|null); + } - /** - * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified. - * @param message EnumDescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.EnumDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Represents a CreateAttestorRequest. */ + class CreateAttestorRequest implements ICreateAttestorRequest { - /** - * Converts this EnumDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Constructs a new CreateAttestorRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.ICreateAttestorRequest); - namespace EnumDescriptorProto { + /** CreateAttestorRequest parent. */ + public parent: string; - /** Properties of an EnumReservedRange. */ - interface IEnumReservedRange { + /** CreateAttestorRequest attestorId. */ + public attestorId: string; - /** EnumReservedRange start */ - start?: (number|null); + /** CreateAttestorRequest attestor. */ + public attestor?: (google.cloud.binaryauthorization.v1.IAttestor|null); - /** EnumReservedRange end */ - end?: (number|null); - } + /** + * Creates a new CreateAttestorRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateAttestorRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.ICreateAttestorRequest): google.cloud.binaryauthorization.v1.CreateAttestorRequest; - /** Represents an EnumReservedRange. */ - class EnumReservedRange implements IEnumReservedRange { + /** + * Encodes the specified CreateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.CreateAttestorRequest.verify|verify} messages. + * @param message CreateAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.ICreateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new EnumReservedRange. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange); + /** + * Encodes the specified CreateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.CreateAttestorRequest.verify|verify} messages. + * @param message CreateAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.ICreateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** EnumReservedRange start. */ - public start: number; + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.CreateAttestorRequest; - /** EnumReservedRange end. */ - public end: number; + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.CreateAttestorRequest; - /** - * Creates a new EnumReservedRange instance using the specified properties. - * @param [properties] Properties to set - * @returns EnumReservedRange instance - */ - public static create(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange): google.protobuf.EnumDescriptorProto.EnumReservedRange; + /** + * Verifies a CreateAttestorRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. - * @param message EnumReservedRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a CreateAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateAttestorRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.CreateAttestorRequest; - /** - * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. - * @param message EnumReservedRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a plain object from a CreateAttestorRequest message. Also converts values to other types if specified. + * @param message CreateAttestorRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.CreateAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Decodes an EnumReservedRange message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns EnumReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto.EnumReservedRange; + /** + * Converts this CreateAttestorRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns EnumReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto.EnumReservedRange; + /** Properties of a GetAttestorRequest. */ + interface IGetAttestorRequest { - /** - * Verifies an EnumReservedRange message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** GetAttestorRequest name */ + name?: (string|null); + } - /** - * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns EnumReservedRange - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto.EnumReservedRange; + /** Represents a GetAttestorRequest. */ + class GetAttestorRequest implements IGetAttestorRequest { - /** - * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified. - * @param message EnumReservedRange - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.EnumDescriptorProto.EnumReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Constructs a new GetAttestorRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IGetAttestorRequest); - /** - * Converts this EnumReservedRange to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** GetAttestorRequest name. */ + public name: string; - /** Properties of an EnumValueDescriptorProto. */ - interface IEnumValueDescriptorProto { + /** + * Creates a new GetAttestorRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetAttestorRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IGetAttestorRequest): google.cloud.binaryauthorization.v1.GetAttestorRequest; - /** EnumValueDescriptorProto name */ - name?: (string|null); + /** + * Encodes the specified GetAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetAttestorRequest.verify|verify} messages. + * @param message GetAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IGetAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** EnumValueDescriptorProto number */ - number?: (number|null); + /** + * Encodes the specified GetAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetAttestorRequest.verify|verify} messages. + * @param message GetAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IGetAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** EnumValueDescriptorProto options */ - options?: (google.protobuf.IEnumValueOptions|null); - } + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.GetAttestorRequest; - /** Represents an EnumValueDescriptorProto. */ - class EnumValueDescriptorProto implements IEnumValueDescriptorProto { + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.GetAttestorRequest; - /** - * Constructs a new EnumValueDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumValueDescriptorProto); + /** + * Verifies a GetAttestorRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** EnumValueDescriptorProto name. */ - public name: string; + /** + * Creates a GetAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetAttestorRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.GetAttestorRequest; - /** EnumValueDescriptorProto number. */ - public number: number; + /** + * Creates a plain object from a GetAttestorRequest message. Also converts values to other types if specified. + * @param message GetAttestorRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.GetAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** EnumValueDescriptorProto options. */ - public options?: (google.protobuf.IEnumValueOptions|null); + /** + * Converts this GetAttestorRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a new EnumValueDescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns EnumValueDescriptorProto instance - */ - public static create(properties?: google.protobuf.IEnumValueDescriptorProto): google.protobuf.EnumValueDescriptorProto; + /** Properties of an UpdateAttestorRequest. */ + interface IUpdateAttestorRequest { - /** - * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. - * @param message EnumValueDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** UpdateAttestorRequest attestor */ + attestor?: (google.cloud.binaryauthorization.v1.IAttestor|null); + } - /** - * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. - * @param message EnumValueDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents an UpdateAttestorRequest. */ + class UpdateAttestorRequest implements IUpdateAttestorRequest { - /** - * Decodes an EnumValueDescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns EnumValueDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueDescriptorProto; + /** + * Constructs a new UpdateAttestorRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IUpdateAttestorRequest); - /** - * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns EnumValueDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueDescriptorProto; + /** UpdateAttestorRequest attestor. */ + public attestor?: (google.cloud.binaryauthorization.v1.IAttestor|null); - /** - * Verifies an EnumValueDescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Creates a new UpdateAttestorRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns UpdateAttestorRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IUpdateAttestorRequest): google.cloud.binaryauthorization.v1.UpdateAttestorRequest; - /** - * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns EnumValueDescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueDescriptorProto; + /** + * Encodes the specified UpdateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdateAttestorRequest.verify|verify} messages. + * @param message UpdateAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IUpdateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified. - * @param message EnumValueDescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.EnumValueDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Encodes the specified UpdateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdateAttestorRequest.verify|verify} messages. + * @param message UpdateAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IUpdateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Converts this EnumValueDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Decodes an UpdateAttestorRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UpdateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.UpdateAttestorRequest; - /** Properties of a ServiceDescriptorProto. */ - interface IServiceDescriptorProto { + /** + * Decodes an UpdateAttestorRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UpdateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.UpdateAttestorRequest; - /** ServiceDescriptorProto name */ - name?: (string|null); + /** + * Verifies an UpdateAttestorRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** ServiceDescriptorProto method */ - method?: (google.protobuf.IMethodDescriptorProto[]|null); + /** + * Creates an UpdateAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UpdateAttestorRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.UpdateAttestorRequest; - /** ServiceDescriptorProto options */ - options?: (google.protobuf.IServiceOptions|null); - } + /** + * Creates a plain object from an UpdateAttestorRequest message. Also converts values to other types if specified. + * @param message UpdateAttestorRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.UpdateAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** Represents a ServiceDescriptorProto. */ - class ServiceDescriptorProto implements IServiceDescriptorProto { + /** + * Converts this UpdateAttestorRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Constructs a new ServiceDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IServiceDescriptorProto); + /** Properties of a ListAttestorsRequest. */ + interface IListAttestorsRequest { - /** ServiceDescriptorProto name. */ - public name: string; + /** ListAttestorsRequest parent */ + parent?: (string|null); - /** ServiceDescriptorProto method. */ - public method: google.protobuf.IMethodDescriptorProto[]; + /** ListAttestorsRequest pageSize */ + pageSize?: (number|null); - /** ServiceDescriptorProto options. */ - public options?: (google.protobuf.IServiceOptions|null); + /** ListAttestorsRequest pageToken */ + pageToken?: (string|null); + } - /** - * Creates a new ServiceDescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns ServiceDescriptorProto instance - */ - public static create(properties?: google.protobuf.IServiceDescriptorProto): google.protobuf.ServiceDescriptorProto; + /** Represents a ListAttestorsRequest. */ + class ListAttestorsRequest implements IListAttestorsRequest { - /** - * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. - * @param message ServiceDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new ListAttestorsRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IListAttestorsRequest); - /** - * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. - * @param message ServiceDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** ListAttestorsRequest parent. */ + public parent: string; - /** - * Decodes a ServiceDescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ServiceDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceDescriptorProto; + /** ListAttestorsRequest pageSize. */ + public pageSize: number; - /** - * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ServiceDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceDescriptorProto; + /** ListAttestorsRequest pageToken. */ + public pageToken: string; - /** - * Verifies a ServiceDescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Creates a new ListAttestorsRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ListAttestorsRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IListAttestorsRequest): google.cloud.binaryauthorization.v1.ListAttestorsRequest; - /** - * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ServiceDescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceDescriptorProto; + /** + * Encodes the specified ListAttestorsRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsRequest.verify|verify} messages. + * @param message ListAttestorsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IListAttestorsRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified. - * @param message ServiceDescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.ServiceDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Encodes the specified ListAttestorsRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsRequest.verify|verify} messages. + * @param message ListAttestorsRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IListAttestorsRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Converts this ServiceDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Decodes a ListAttestorsRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListAttestorsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.ListAttestorsRequest; - /** Properties of a MethodDescriptorProto. */ - interface IMethodDescriptorProto { + /** + * Decodes a ListAttestorsRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListAttestorsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.ListAttestorsRequest; - /** MethodDescriptorProto name */ - name?: (string|null); + /** + * Verifies a ListAttestorsRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** MethodDescriptorProto inputType */ - inputType?: (string|null); + /** + * Creates a ListAttestorsRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListAttestorsRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.ListAttestorsRequest; - /** MethodDescriptorProto outputType */ - outputType?: (string|null); + /** + * Creates a plain object from a ListAttestorsRequest message. Also converts values to other types if specified. + * @param message ListAttestorsRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.ListAttestorsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** MethodDescriptorProto options */ - options?: (google.protobuf.IMethodOptions|null); + /** + * Converts this ListAttestorsRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MethodDescriptorProto clientStreaming */ - clientStreaming?: (boolean|null); + /** Properties of a ListAttestorsResponse. */ + interface IListAttestorsResponse { - /** MethodDescriptorProto serverStreaming */ - serverStreaming?: (boolean|null); - } + /** ListAttestorsResponse attestors */ + attestors?: (google.cloud.binaryauthorization.v1.IAttestor[]|null); - /** Represents a MethodDescriptorProto. */ - class MethodDescriptorProto implements IMethodDescriptorProto { + /** ListAttestorsResponse nextPageToken */ + nextPageToken?: (string|null); + } - /** - * Constructs a new MethodDescriptorProto. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IMethodDescriptorProto); + /** Represents a ListAttestorsResponse. */ + class ListAttestorsResponse implements IListAttestorsResponse { - /** MethodDescriptorProto name. */ - public name: string; + /** + * Constructs a new ListAttestorsResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IListAttestorsResponse); - /** MethodDescriptorProto inputType. */ - public inputType: string; + /** ListAttestorsResponse attestors. */ + public attestors: google.cloud.binaryauthorization.v1.IAttestor[]; - /** MethodDescriptorProto outputType. */ - public outputType: string; + /** ListAttestorsResponse nextPageToken. */ + public nextPageToken: string; - /** MethodDescriptorProto options. */ - public options?: (google.protobuf.IMethodOptions|null); + /** + * Creates a new ListAttestorsResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ListAttestorsResponse instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IListAttestorsResponse): google.cloud.binaryauthorization.v1.ListAttestorsResponse; - /** MethodDescriptorProto clientStreaming. */ - public clientStreaming: boolean; + /** + * Encodes the specified ListAttestorsResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsResponse.verify|verify} messages. + * @param message ListAttestorsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IListAttestorsResponse, writer?: $protobuf.Writer): $protobuf.Writer; - /** MethodDescriptorProto serverStreaming. */ - public serverStreaming: boolean; + /** + * Encodes the specified ListAttestorsResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsResponse.verify|verify} messages. + * @param message ListAttestorsResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IListAttestorsResponse, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a new MethodDescriptorProto instance using the specified properties. - * @param [properties] Properties to set - * @returns MethodDescriptorProto instance - */ - public static create(properties?: google.protobuf.IMethodDescriptorProto): google.protobuf.MethodDescriptorProto; + /** + * Decodes a ListAttestorsResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ListAttestorsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.ListAttestorsResponse; - /** - * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. - * @param message MethodDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Decodes a ListAttestorsResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ListAttestorsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.ListAttestorsResponse; - /** - * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. - * @param message MethodDescriptorProto message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Verifies a ListAttestorsResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Decodes a MethodDescriptorProto message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MethodDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodDescriptorProto; + /** + * Creates a ListAttestorsResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ListAttestorsResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.ListAttestorsResponse; - /** - * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MethodDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodDescriptorProto; + /** + * Creates a plain object from a ListAttestorsResponse message. Also converts values to other types if specified. + * @param message ListAttestorsResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.ListAttestorsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Verifies a MethodDescriptorProto message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Converts this ListAttestorsResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MethodDescriptorProto - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.MethodDescriptorProto; + /** Properties of a DeleteAttestorRequest. */ + interface IDeleteAttestorRequest { - /** - * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified. - * @param message MethodDescriptorProto - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.MethodDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** DeleteAttestorRequest name */ + name?: (string|null); + } - /** - * Converts this MethodDescriptorProto to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Represents a DeleteAttestorRequest. */ + class DeleteAttestorRequest implements IDeleteAttestorRequest { - /** Properties of a FileOptions. */ - interface IFileOptions { + /** + * Constructs a new DeleteAttestorRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IDeleteAttestorRequest); - /** FileOptions javaPackage */ - javaPackage?: (string|null); + /** DeleteAttestorRequest name. */ + public name: string; - /** FileOptions javaOuterClassname */ - javaOuterClassname?: (string|null); + /** + * Creates a new DeleteAttestorRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns DeleteAttestorRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IDeleteAttestorRequest): google.cloud.binaryauthorization.v1.DeleteAttestorRequest; - /** FileOptions javaMultipleFiles */ - javaMultipleFiles?: (boolean|null); + /** + * Encodes the specified DeleteAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.DeleteAttestorRequest.verify|verify} messages. + * @param message DeleteAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IDeleteAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** FileOptions javaGenerateEqualsAndHash */ - javaGenerateEqualsAndHash?: (boolean|null); + /** + * Encodes the specified DeleteAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.DeleteAttestorRequest.verify|verify} messages. + * @param message DeleteAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IDeleteAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** FileOptions javaStringCheckUtf8 */ - javaStringCheckUtf8?: (boolean|null); + /** + * Decodes a DeleteAttestorRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DeleteAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.DeleteAttestorRequest; - /** FileOptions optimizeFor */ - optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null); + /** + * Decodes a DeleteAttestorRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DeleteAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.DeleteAttestorRequest; - /** FileOptions goPackage */ - goPackage?: (string|null); + /** + * Verifies a DeleteAttestorRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** FileOptions ccGenericServices */ - ccGenericServices?: (boolean|null); + /** + * Creates a DeleteAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DeleteAttestorRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.DeleteAttestorRequest; - /** FileOptions javaGenericServices */ - javaGenericServices?: (boolean|null); + /** + * Creates a plain object from a DeleteAttestorRequest message. Also converts values to other types if specified. + * @param message DeleteAttestorRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.DeleteAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** FileOptions pyGenericServices */ - pyGenericServices?: (boolean|null); + /** + * Converts this DeleteAttestorRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions phpGenericServices */ - phpGenericServices?: (boolean|null); + /** Properties of a GetSystemPolicyRequest. */ + interface IGetSystemPolicyRequest { - /** FileOptions deprecated */ - deprecated?: (boolean|null); + /** GetSystemPolicyRequest name */ + name?: (string|null); + } - /** FileOptions ccEnableArenas */ - ccEnableArenas?: (boolean|null); + /** Represents a GetSystemPolicyRequest. */ + class GetSystemPolicyRequest implements IGetSystemPolicyRequest { - /** FileOptions objcClassPrefix */ - objcClassPrefix?: (string|null); + /** + * Constructs a new GetSystemPolicyRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest); - /** FileOptions csharpNamespace */ - csharpNamespace?: (string|null); + /** GetSystemPolicyRequest name. */ + public name: string; - /** FileOptions swiftPrefix */ - swiftPrefix?: (string|null); + /** + * Creates a new GetSystemPolicyRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetSystemPolicyRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest): google.cloud.binaryauthorization.v1.GetSystemPolicyRequest; - /** FileOptions phpClassPrefix */ - phpClassPrefix?: (string|null); + /** + * Encodes the specified GetSystemPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetSystemPolicyRequest.verify|verify} messages. + * @param message GetSystemPolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** FileOptions phpNamespace */ - phpNamespace?: (string|null); + /** + * Encodes the specified GetSystemPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetSystemPolicyRequest.verify|verify} messages. + * @param message GetSystemPolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** FileOptions phpMetadataNamespace */ - phpMetadataNamespace?: (string|null); + /** + * Decodes a GetSystemPolicyRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetSystemPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.GetSystemPolicyRequest; - /** FileOptions rubyPackage */ - rubyPackage?: (string|null); + /** + * Decodes a GetSystemPolicyRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetSystemPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.GetSystemPolicyRequest; - /** FileOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** + * Verifies a GetSystemPolicyRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** FileOptions .google.api.resourceDefinition */ - ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null); - } + /** + * Creates a GetSystemPolicyRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetSystemPolicyRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.GetSystemPolicyRequest; - /** Represents a FileOptions. */ - class FileOptions implements IFileOptions { + /** + * Creates a plain object from a GetSystemPolicyRequest message. Also converts values to other types if specified. + * @param message GetSystemPolicyRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.GetSystemPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Constructs a new FileOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFileOptions); + /** + * Converts this GetSystemPolicyRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions javaPackage. */ - public javaPackage: string; + /** Properties of a ValidateAttestationOccurrenceRequest. */ + interface IValidateAttestationOccurrenceRequest { - /** FileOptions javaOuterClassname. */ - public javaOuterClassname: string; + /** ValidateAttestationOccurrenceRequest attestor */ + attestor?: (string|null); - /** FileOptions javaMultipleFiles. */ - public javaMultipleFiles: boolean; + /** ValidateAttestationOccurrenceRequest attestation */ + attestation?: (grafeas.v1.IAttestationOccurrence|null); - /** FileOptions javaGenerateEqualsAndHash. */ - public javaGenerateEqualsAndHash: boolean; + /** ValidateAttestationOccurrenceRequest occurrenceNote */ + occurrenceNote?: (string|null); - /** FileOptions javaStringCheckUtf8. */ - public javaStringCheckUtf8: boolean; + /** ValidateAttestationOccurrenceRequest occurrenceResourceUri */ + occurrenceResourceUri?: (string|null); + } - /** FileOptions optimizeFor. */ - public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode); + /** Represents a ValidateAttestationOccurrenceRequest. */ + class ValidateAttestationOccurrenceRequest implements IValidateAttestationOccurrenceRequest { - /** FileOptions goPackage. */ - public goPackage: string; + /** + * Constructs a new ValidateAttestationOccurrenceRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest); - /** FileOptions ccGenericServices. */ - public ccGenericServices: boolean; + /** ValidateAttestationOccurrenceRequest attestor. */ + public attestor: string; - /** FileOptions javaGenericServices. */ - public javaGenericServices: boolean; + /** ValidateAttestationOccurrenceRequest attestation. */ + public attestation?: (grafeas.v1.IAttestationOccurrence|null); - /** FileOptions pyGenericServices. */ - public pyGenericServices: boolean; + /** ValidateAttestationOccurrenceRequest occurrenceNote. */ + public occurrenceNote: string; - /** FileOptions phpGenericServices. */ - public phpGenericServices: boolean; + /** ValidateAttestationOccurrenceRequest occurrenceResourceUri. */ + public occurrenceResourceUri: string; - /** FileOptions deprecated. */ - public deprecated: boolean; + /** + * Creates a new ValidateAttestationOccurrenceRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns ValidateAttestationOccurrenceRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest; - /** FileOptions ccEnableArenas. */ - public ccEnableArenas: boolean; + /** + * Encodes the specified ValidateAttestationOccurrenceRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest.verify|verify} messages. + * @param message ValidateAttestationOccurrenceRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** FileOptions objcClassPrefix. */ - public objcClassPrefix: string; + /** + * Encodes the specified ValidateAttestationOccurrenceRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest.verify|verify} messages. + * @param message ValidateAttestationOccurrenceRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** FileOptions csharpNamespace. */ - public csharpNamespace: string; + /** + * Decodes a ValidateAttestationOccurrenceRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ValidateAttestationOccurrenceRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest; - /** FileOptions swiftPrefix. */ - public swiftPrefix: string; + /** + * Decodes a ValidateAttestationOccurrenceRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ValidateAttestationOccurrenceRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest; - /** FileOptions phpClassPrefix. */ - public phpClassPrefix: string; + /** + * Verifies a ValidateAttestationOccurrenceRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** FileOptions phpNamespace. */ - public phpNamespace: string; + /** + * Creates a ValidateAttestationOccurrenceRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ValidateAttestationOccurrenceRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest; - /** FileOptions phpMetadataNamespace. */ - public phpMetadataNamespace: string; + /** + * Creates a plain object from a ValidateAttestationOccurrenceRequest message. Also converts values to other types if specified. + * @param message ValidateAttestationOccurrenceRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** FileOptions rubyPackage. */ - public rubyPackage: string; + /** + * Converts this ValidateAttestationOccurrenceRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FileOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** Properties of a ValidateAttestationOccurrenceResponse. */ + interface IValidateAttestationOccurrenceResponse { - /** - * Creates a new FileOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns FileOptions instance - */ - public static create(properties?: google.protobuf.IFileOptions): google.protobuf.FileOptions; + /** ValidateAttestationOccurrenceResponse result */ + result?: (google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result|keyof typeof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result|null); - /** - * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. - * @param message FileOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** ValidateAttestationOccurrenceResponse denialReason */ + denialReason?: (string|null); + } - /** - * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. - * @param message FileOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents a ValidateAttestationOccurrenceResponse. */ + class ValidateAttestationOccurrenceResponse implements IValidateAttestationOccurrenceResponse { - /** - * Decodes a FileOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns FileOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileOptions; + /** + * Constructs a new ValidateAttestationOccurrenceResponse. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse); - /** - * Decodes a FileOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns FileOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileOptions; + /** ValidateAttestationOccurrenceResponse result. */ + public result: (google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result|keyof typeof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result); - /** - * Verifies a FileOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** ValidateAttestationOccurrenceResponse denialReason. */ + public denialReason: string; - /** - * Creates a FileOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns FileOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FileOptions; + /** + * Creates a new ValidateAttestationOccurrenceResponse instance using the specified properties. + * @param [properties] Properties to set + * @returns ValidateAttestationOccurrenceResponse instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse; - /** - * Creates a plain object from a FileOptions message. Also converts values to other types if specified. - * @param message FileOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.FileOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Encodes the specified ValidateAttestationOccurrenceResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.verify|verify} messages. + * @param message ValidateAttestationOccurrenceResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Converts this FileOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Encodes the specified ValidateAttestationOccurrenceResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.verify|verify} messages. + * @param message ValidateAttestationOccurrenceResponse message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, writer?: $protobuf.Writer): $protobuf.Writer; - namespace FileOptions { + /** + * Decodes a ValidateAttestationOccurrenceResponse message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ValidateAttestationOccurrenceResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse; - /** OptimizeMode enum. */ - enum OptimizeMode { - SPEED = 1, - CODE_SIZE = 2, - LITE_RUNTIME = 3 - } - } + /** + * Decodes a ValidateAttestationOccurrenceResponse message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ValidateAttestationOccurrenceResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse; - /** Properties of a MessageOptions. */ - interface IMessageOptions { + /** + * Verifies a ValidateAttestationOccurrenceResponse message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** MessageOptions messageSetWireFormat */ - messageSetWireFormat?: (boolean|null); + /** + * Creates a ValidateAttestationOccurrenceResponse message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ValidateAttestationOccurrenceResponse + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse; - /** MessageOptions noStandardDescriptorAccessor */ - noStandardDescriptorAccessor?: (boolean|null); - - /** MessageOptions deprecated */ - deprecated?: (boolean|null); - - /** MessageOptions mapEntry */ - mapEntry?: (boolean|null); + /** + * Creates a plain object from a ValidateAttestationOccurrenceResponse message. Also converts values to other types if specified. + * @param message ValidateAttestationOccurrenceResponse + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** MessageOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** + * Converts this ValidateAttestationOccurrenceResponse to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MessageOptions .google.api.resource */ - ".google.api.resource"?: (google.api.IResourceDescriptor|null); - } + namespace ValidateAttestationOccurrenceResponse { - /** Represents a MessageOptions. */ - class MessageOptions implements IMessageOptions { + /** Result enum. */ + enum Result { + RESULT_UNSPECIFIED = 0, + VERIFIED = 1, + ATTESTATION_NOT_VERIFIABLE = 2 + } + } + } - /** - * Constructs a new MessageOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IMessageOptions); + /** Namespace v1beta1. */ + namespace v1beta1 { - /** MessageOptions messageSetWireFormat. */ - public messageSetWireFormat: boolean; + /** Properties of a ContinuousValidationEvent. */ + interface IContinuousValidationEvent { - /** MessageOptions noStandardDescriptorAccessor. */ - public noStandardDescriptorAccessor: boolean; + /** ContinuousValidationEvent podEvent */ + podEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null); - /** MessageOptions deprecated. */ - public deprecated: boolean; + /** ContinuousValidationEvent unsupportedPolicyEvent */ + unsupportedPolicyEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null); + } - /** MessageOptions mapEntry. */ - public mapEntry: boolean; + /** Represents a ContinuousValidationEvent. */ + class ContinuousValidationEvent implements IContinuousValidationEvent { - /** MessageOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** + * Constructs a new ContinuousValidationEvent. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent); - /** - * Creates a new MessageOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns MessageOptions instance - */ - public static create(properties?: google.protobuf.IMessageOptions): google.protobuf.MessageOptions; + /** ContinuousValidationEvent podEvent. */ + public podEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null); - /** - * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. - * @param message MessageOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** ContinuousValidationEvent unsupportedPolicyEvent. */ + public unsupportedPolicyEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null); - /** - * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. - * @param message MessageOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** ContinuousValidationEvent eventType. */ + public eventType?: ("podEvent"|"unsupportedPolicyEvent"); - /** - * Decodes a MessageOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MessageOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MessageOptions; + /** + * Creates a new ContinuousValidationEvent instance using the specified properties. + * @param [properties] Properties to set + * @returns ContinuousValidationEvent instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; - /** - * Decodes a MessageOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MessageOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MessageOptions; + /** + * Encodes the specified ContinuousValidationEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. + * @param message ContinuousValidationEvent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Verifies a MessageOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Encodes the specified ContinuousValidationEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. + * @param message ContinuousValidationEvent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MessageOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.MessageOptions; + /** + * Decodes a ContinuousValidationEvent message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ContinuousValidationEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; - /** - * Creates a plain object from a MessageOptions message. Also converts values to other types if specified. - * @param message MessageOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.MessageOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Decodes a ContinuousValidationEvent message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ContinuousValidationEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; - /** - * Converts this MessageOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Verifies a ContinuousValidationEvent message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** Properties of a FieldOptions. */ - interface IFieldOptions { + /** + * Creates a ContinuousValidationEvent message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ContinuousValidationEvent + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; - /** FieldOptions ctype */ - ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null); + /** + * Creates a plain object from a ContinuousValidationEvent message. Also converts values to other types if specified. + * @param message ContinuousValidationEvent + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** FieldOptions packed */ - packed?: (boolean|null); + /** + * Converts this ContinuousValidationEvent to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** FieldOptions jstype */ - jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null); + namespace ContinuousValidationEvent { - /** FieldOptions lazy */ - lazy?: (boolean|null); + /** Properties of a ContinuousValidationPodEvent. */ + interface IContinuousValidationPodEvent { - /** FieldOptions deprecated */ - deprecated?: (boolean|null); + /** ContinuousValidationPodEvent pod */ + pod?: (string|null); - /** FieldOptions weak */ - weak?: (boolean|null); + /** ContinuousValidationPodEvent deployTime */ + deployTime?: (google.protobuf.ITimestamp|null); - /** FieldOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** ContinuousValidationPodEvent endTime */ + endTime?: (google.protobuf.ITimestamp|null); - /** FieldOptions .google.api.fieldBehavior */ - ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null); + /** ContinuousValidationPodEvent verdict */ + verdict?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|null); - /** FieldOptions .google.api.resourceReference */ - ".google.api.resourceReference"?: (google.api.IResourceReference|null); - } + /** ContinuousValidationPodEvent images */ + images?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails[]|null); + } - /** Represents a FieldOptions. */ - class FieldOptions implements IFieldOptions { + /** Represents a ContinuousValidationPodEvent. */ + class ContinuousValidationPodEvent implements IContinuousValidationPodEvent { - /** - * Constructs a new FieldOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IFieldOptions); + /** + * Constructs a new ContinuousValidationPodEvent. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent); - /** FieldOptions ctype. */ - public ctype: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType); + /** ContinuousValidationPodEvent pod. */ + public pod: string; - /** FieldOptions packed. */ - public packed: boolean; + /** ContinuousValidationPodEvent deployTime. */ + public deployTime?: (google.protobuf.ITimestamp|null); - /** FieldOptions jstype. */ - public jstype: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType); + /** ContinuousValidationPodEvent endTime. */ + public endTime?: (google.protobuf.ITimestamp|null); - /** FieldOptions lazy. */ - public lazy: boolean; + /** ContinuousValidationPodEvent verdict. */ + public verdict: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict); - /** FieldOptions deprecated. */ - public deprecated: boolean; + /** ContinuousValidationPodEvent images. */ + public images: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails[]; - /** FieldOptions weak. */ - public weak: boolean; + /** + * Creates a new ContinuousValidationPodEvent instance using the specified properties. + * @param [properties] Properties to set + * @returns ContinuousValidationPodEvent instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; - /** FieldOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** + * Encodes the specified ContinuousValidationPodEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. + * @param message ContinuousValidationPodEvent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a new FieldOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns FieldOptions instance - */ - public static create(properties?: google.protobuf.IFieldOptions): google.protobuf.FieldOptions; + /** + * Encodes the specified ContinuousValidationPodEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. + * @param message ContinuousValidationPodEvent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. - * @param message FieldOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ContinuousValidationPodEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; - /** - * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. - * @param message FieldOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ContinuousValidationPodEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; - /** - * Decodes a FieldOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns FieldOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldOptions; + /** + * Verifies a ContinuousValidationPodEvent message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Decodes a FieldOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns FieldOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldOptions; + /** + * Creates a ContinuousValidationPodEvent message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ContinuousValidationPodEvent + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; - /** - * Verifies a FieldOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Creates a plain object from a ContinuousValidationPodEvent message. Also converts values to other types if specified. + * @param message ContinuousValidationPodEvent + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns FieldOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.FieldOptions; + /** + * Converts this ContinuousValidationPodEvent to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a plain object from a FieldOptions message. Also converts values to other types if specified. - * @param message FieldOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.FieldOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + namespace ContinuousValidationPodEvent { - /** - * Converts this FieldOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Properties of an ImageDetails. */ + interface IImageDetails { - namespace FieldOptions { + /** ImageDetails image */ + image?: (string|null); - /** CType enum. */ - enum CType { - STRING = 0, - CORD = 1, - STRING_PIECE = 2 - } + /** ImageDetails result */ + result?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|null); - /** JSType enum. */ - enum JSType { - JS_NORMAL = 0, - JS_STRING = 1, - JS_NUMBER = 2 - } - } + /** ImageDetails description */ + description?: (string|null); + } - /** Properties of an OneofOptions. */ - interface IOneofOptions { + /** Represents an ImageDetails. */ + class ImageDetails implements IImageDetails { - /** OneofOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - } + /** + * Constructs a new ImageDetails. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails); - /** Represents an OneofOptions. */ - class OneofOptions implements IOneofOptions { + /** ImageDetails image. */ + public image: string; - /** - * Constructs a new OneofOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IOneofOptions); + /** ImageDetails result. */ + public result: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult); - /** OneofOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** ImageDetails description. */ + public description: string; - /** - * Creates a new OneofOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns OneofOptions instance - */ - public static create(properties?: google.protobuf.IOneofOptions): google.protobuf.OneofOptions; + /** + * Creates a new ImageDetails instance using the specified properties. + * @param [properties] Properties to set + * @returns ImageDetails instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - /** - * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. - * @param message OneofOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Encodes the specified ImageDetails message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. + * @param message ImageDetails message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. - * @param message OneofOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Encodes the specified ImageDetails message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. + * @param message ImageDetails message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes an OneofOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns OneofOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofOptions; + /** + * Decodes an ImageDetails message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ImageDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - /** - * Decodes an OneofOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns OneofOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofOptions; + /** + * Decodes an ImageDetails message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ImageDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - /** - * Verifies an OneofOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns OneofOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.OneofOptions; + /** + * Verifies an ImageDetails message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Creates a plain object from an OneofOptions message. Also converts values to other types if specified. - * @param message OneofOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.OneofOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Creates an ImageDetails message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ImageDetails + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - /** - * Converts this OneofOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates a plain object from an ImageDetails message. Also converts values to other types if specified. + * @param message ImageDetails + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** Properties of an EnumOptions. */ - interface IEnumOptions { + /** + * Converts this ImageDetails to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** EnumOptions allowAlias */ - allowAlias?: (boolean|null); + namespace ImageDetails { - /** EnumOptions deprecated */ - deprecated?: (boolean|null); + /** AuditResult enum. */ + enum AuditResult { + AUDIT_RESULT_UNSPECIFIED = 0, + ALLOW = 1, + DENY = 2 + } + } - /** EnumOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - } + /** PolicyConformanceVerdict enum. */ + enum PolicyConformanceVerdict { + POLICY_CONFORMANCE_VERDICT_UNSPECIFIED = 0, + VIOLATES_POLICY = 1 + } + } - /** Represents an EnumOptions. */ - class EnumOptions implements IEnumOptions { + /** Properties of an UnsupportedPolicyEvent. */ + interface IUnsupportedPolicyEvent { - /** - * Constructs a new EnumOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumOptions); + /** UnsupportedPolicyEvent description */ + description?: (string|null); + } - /** EnumOptions allowAlias. */ - public allowAlias: boolean; + /** Represents an UnsupportedPolicyEvent. */ + class UnsupportedPolicyEvent implements IUnsupportedPolicyEvent { - /** EnumOptions deprecated. */ - public deprecated: boolean; + /** + * Constructs a new UnsupportedPolicyEvent. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent); - /** EnumOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** UnsupportedPolicyEvent description. */ + public description: string; - /** - * Creates a new EnumOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns EnumOptions instance - */ - public static create(properties?: google.protobuf.IEnumOptions): google.protobuf.EnumOptions; + /** + * Creates a new UnsupportedPolicyEvent instance using the specified properties. + * @param [properties] Properties to set + * @returns UnsupportedPolicyEvent instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - /** - * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. - * @param message EnumOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Encodes the specified UnsupportedPolicyEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. + * @param message UnsupportedPolicyEvent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. - * @param message EnumOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Encodes the specified UnsupportedPolicyEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. + * @param message UnsupportedPolicyEvent message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes an EnumOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns EnumOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumOptions; + /** + * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UnsupportedPolicyEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - /** - * Decodes an EnumOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns EnumOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumOptions; + /** + * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UnsupportedPolicyEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - /** - * Verifies an EnumOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Verifies an UnsupportedPolicyEvent message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns EnumOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.EnumOptions; + /** + * Creates an UnsupportedPolicyEvent message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UnsupportedPolicyEvent + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - /** - * Creates a plain object from an EnumOptions message. Also converts values to other types if specified. - * @param message EnumOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.EnumOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Creates a plain object from an UnsupportedPolicyEvent message. Also converts values to other types if specified. + * @param message UnsupportedPolicyEvent + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Converts this EnumOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Converts this UnsupportedPolicyEvent to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** Properties of an EnumValueOptions. */ - interface IEnumValueOptions { + /** Properties of a Policy. */ + interface IPolicy { - /** EnumValueOptions deprecated */ - deprecated?: (boolean|null); + /** Policy name */ + name?: (string|null); - /** EnumValueOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); - } + /** Policy description */ + description?: (string|null); - /** Represents an EnumValueOptions. */ - class EnumValueOptions implements IEnumValueOptions { + /** Policy globalPolicyEvaluationMode */ + globalPolicyEvaluationMode?: (google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|null); - /** - * Constructs a new EnumValueOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEnumValueOptions); + /** Policy admissionWhitelistPatterns */ + admissionWhitelistPatterns?: (google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern[]|null); - /** EnumValueOptions deprecated. */ - public deprecated: boolean; + /** Policy clusterAdmissionRules */ + clusterAdmissionRules?: ({ [k: string]: google.cloud.binaryauthorization.v1beta1.IAdmissionRule }|null); - /** EnumValueOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** Policy defaultAdmissionRule */ + defaultAdmissionRule?: (google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null); - /** - * Creates a new EnumValueOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns EnumValueOptions instance - */ - public static create(properties?: google.protobuf.IEnumValueOptions): google.protobuf.EnumValueOptions; - - /** - * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. - * @param message EnumValueOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** Policy updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } - /** - * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. - * @param message EnumValueOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents a Policy. */ + class Policy implements IPolicy { - /** - * Decodes an EnumValueOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns EnumValueOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueOptions; + /** + * Constructs a new Policy. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IPolicy); - /** - * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns EnumValueOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueOptions; + /** Policy name. */ + public name: string; - /** - * Verifies an EnumValueOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Policy description. */ + public description: string; - /** - * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns EnumValueOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueOptions; + /** Policy globalPolicyEvaluationMode. */ + public globalPolicyEvaluationMode: (google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode); - /** - * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified. - * @param message EnumValueOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.EnumValueOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Policy admissionWhitelistPatterns. */ + public admissionWhitelistPatterns: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern[]; - /** - * Converts this EnumValueOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Policy clusterAdmissionRules. */ + public clusterAdmissionRules: { [k: string]: google.cloud.binaryauthorization.v1beta1.IAdmissionRule }; - /** Properties of a ServiceOptions. */ - interface IServiceOptions { + /** Policy defaultAdmissionRule. */ + public defaultAdmissionRule?: (google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null); - /** ServiceOptions deprecated */ - deprecated?: (boolean|null); + /** Policy updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); - /** ServiceOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** + * Creates a new Policy instance using the specified properties. + * @param [properties] Properties to set + * @returns Policy instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IPolicy): google.cloud.binaryauthorization.v1beta1.Policy; - /** ServiceOptions .google.api.defaultHost */ - ".google.api.defaultHost"?: (string|null); + /** + * Encodes the specified Policy message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. + * @param message Policy message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer; - /** ServiceOptions .google.api.oauthScopes */ - ".google.api.oauthScopes"?: (string|null); - } + /** + * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. + * @param message Policy message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents a ServiceOptions. */ - class ServiceOptions implements IServiceOptions { + /** + * Decodes a Policy message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.Policy; - /** - * Constructs a new ServiceOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IServiceOptions); + /** + * Decodes a Policy message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.Policy; - /** ServiceOptions deprecated. */ - public deprecated: boolean; + /** + * Verifies a Policy message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** ServiceOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** + * Creates a Policy message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Policy + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.Policy; - /** - * Creates a new ServiceOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns ServiceOptions instance - */ - public static create(properties?: google.protobuf.IServiceOptions): google.protobuf.ServiceOptions; + /** + * Creates a plain object from a Policy message. Also converts values to other types if specified. + * @param message Policy + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.Policy, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. - * @param message ServiceOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this Policy to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. - * @param message ServiceOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + namespace Policy { - /** - * Decodes a ServiceOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ServiceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceOptions; + /** GlobalPolicyEvaluationMode enum. */ + enum GlobalPolicyEvaluationMode { + GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED = 0, + ENABLE = 1, + DISABLE = 2 + } + } - /** - * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ServiceOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceOptions; + /** Properties of an AdmissionWhitelistPattern. */ + interface IAdmissionWhitelistPattern { - /** - * Verifies a ServiceOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** AdmissionWhitelistPattern namePattern */ + namePattern?: (string|null); + } - /** - * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ServiceOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceOptions; + /** Represents an AdmissionWhitelistPattern. */ + class AdmissionWhitelistPattern implements IAdmissionWhitelistPattern { - /** - * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified. - * @param message ServiceOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.ServiceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Constructs a new AdmissionWhitelistPattern. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern); - /** - * Converts this ServiceOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** AdmissionWhitelistPattern namePattern. */ + public namePattern: string; - /** Properties of a MethodOptions. */ - interface IMethodOptions { - - /** MethodOptions deprecated */ - deprecated?: (boolean|null); + /** + * Creates a new AdmissionWhitelistPattern instance using the specified properties. + * @param [properties] Properties to set + * @returns AdmissionWhitelistPattern instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; - /** MethodOptions idempotencyLevel */ - idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null); + /** + * Encodes the specified AdmissionWhitelistPattern message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. + * @param message AdmissionWhitelistPattern message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern, writer?: $protobuf.Writer): $protobuf.Writer; - /** MethodOptions uninterpretedOption */ - uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + /** + * Encodes the specified AdmissionWhitelistPattern message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. + * @param message AdmissionWhitelistPattern message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern, writer?: $protobuf.Writer): $protobuf.Writer; - /** MethodOptions .google.api.http */ - ".google.api.http"?: (google.api.IHttpRule|null); + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; - /** MethodOptions .google.api.methodSignature */ - ".google.api.methodSignature"?: (string[]|null); - } + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; - /** Represents a MethodOptions. */ - class MethodOptions implements IMethodOptions { + /** + * Verifies an AdmissionWhitelistPattern message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Constructs a new MethodOptions. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IMethodOptions); + /** + * Creates an AdmissionWhitelistPattern message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AdmissionWhitelistPattern + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; - /** MethodOptions deprecated. */ - public deprecated: boolean; + /** + * Creates a plain object from an AdmissionWhitelistPattern message. Also converts values to other types if specified. + * @param message AdmissionWhitelistPattern + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** MethodOptions idempotencyLevel. */ - public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel); + /** + * Converts this AdmissionWhitelistPattern to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** MethodOptions uninterpretedOption. */ - public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + /** Properties of an AdmissionRule. */ + interface IAdmissionRule { - /** - * Creates a new MethodOptions instance using the specified properties. - * @param [properties] Properties to set - * @returns MethodOptions instance - */ - public static create(properties?: google.protobuf.IMethodOptions): google.protobuf.MethodOptions; + /** AdmissionRule evaluationMode */ + evaluationMode?: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|null); - /** - * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. - * @param message MethodOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** AdmissionRule requireAttestationsBy */ + requireAttestationsBy?: (string[]|null); - /** - * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. - * @param message MethodOptions message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer; + /** AdmissionRule enforcementMode */ + enforcementMode?: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|null); + } - /** - * Decodes a MethodOptions message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MethodOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodOptions; + /** Represents an AdmissionRule. */ + class AdmissionRule implements IAdmissionRule { - /** - * Decodes a MethodOptions message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MethodOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodOptions; + /** + * Constructs a new AdmissionRule. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionRule); - /** - * Verifies a MethodOptions message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** AdmissionRule evaluationMode. */ + public evaluationMode: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode); - /** - * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MethodOptions - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.MethodOptions; + /** AdmissionRule requireAttestationsBy. */ + public requireAttestationsBy: string[]; - /** - * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. - * @param message MethodOptions - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.MethodOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** AdmissionRule enforcementMode. */ + public enforcementMode: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode); - /** - * Converts this MethodOptions to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates a new AdmissionRule instance using the specified properties. + * @param [properties] Properties to set + * @returns AdmissionRule instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionRule): google.cloud.binaryauthorization.v1beta1.AdmissionRule; - namespace MethodOptions { + /** + * Encodes the specified AdmissionRule message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. + * @param message AdmissionRule message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IAdmissionRule, writer?: $protobuf.Writer): $protobuf.Writer; - /** IdempotencyLevel enum. */ - enum IdempotencyLevel { - IDEMPOTENCY_UNKNOWN = 0, - NO_SIDE_EFFECTS = 1, - IDEMPOTENT = 2 - } - } + /** + * Encodes the specified AdmissionRule message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. + * @param message AdmissionRule message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAdmissionRule, writer?: $protobuf.Writer): $protobuf.Writer; - /** Properties of an UninterpretedOption. */ - interface IUninterpretedOption { + /** + * Decodes an AdmissionRule message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.AdmissionRule; - /** UninterpretedOption name */ - name?: (google.protobuf.UninterpretedOption.INamePart[]|null); + /** + * Decodes an AdmissionRule message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.AdmissionRule; - /** UninterpretedOption identifierValue */ - identifierValue?: (string|null); + /** + * Verifies an AdmissionRule message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** UninterpretedOption positiveIntValue */ - positiveIntValue?: (number|Long|string|null); + /** + * Creates an AdmissionRule message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AdmissionRule + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.AdmissionRule; - /** UninterpretedOption negativeIntValue */ - negativeIntValue?: (number|Long|string|null); + /** + * Creates a plain object from an AdmissionRule message. Also converts values to other types if specified. + * @param message AdmissionRule + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.AdmissionRule, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** UninterpretedOption doubleValue */ - doubleValue?: (number|null); + /** + * Converts this AdmissionRule to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** UninterpretedOption stringValue */ - stringValue?: (Uint8Array|string|null); + namespace AdmissionRule { - /** UninterpretedOption aggregateValue */ - aggregateValue?: (string|null); - } + /** EvaluationMode enum. */ + enum EvaluationMode { + EVALUATION_MODE_UNSPECIFIED = 0, + ALWAYS_ALLOW = 1, + REQUIRE_ATTESTATION = 2, + ALWAYS_DENY = 3 + } - /** Represents an UninterpretedOption. */ - class UninterpretedOption implements IUninterpretedOption { + /** EnforcementMode enum. */ + enum EnforcementMode { + ENFORCEMENT_MODE_UNSPECIFIED = 0, + ENFORCED_BLOCK_AND_AUDIT_LOG = 1, + DRYRUN_AUDIT_LOG_ONLY = 2 + } + } - /** - * Constructs a new UninterpretedOption. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IUninterpretedOption); + /** Properties of an Attestor. */ + interface IAttestor { - /** UninterpretedOption name. */ - public name: google.protobuf.UninterpretedOption.INamePart[]; + /** Attestor name */ + name?: (string|null); - /** UninterpretedOption identifierValue. */ - public identifierValue: string; + /** Attestor description */ + description?: (string|null); - /** UninterpretedOption positiveIntValue. */ - public positiveIntValue: (number|Long|string); + /** Attestor userOwnedDrydockNote */ + userOwnedDrydockNote?: (google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null); - /** UninterpretedOption negativeIntValue. */ - public negativeIntValue: (number|Long|string); + /** Attestor updateTime */ + updateTime?: (google.protobuf.ITimestamp|null); + } - /** UninterpretedOption doubleValue. */ - public doubleValue: number; + /** Represents an Attestor. */ + class Attestor implements IAttestor { - /** UninterpretedOption stringValue. */ - public stringValue: (Uint8Array|string); + /** + * Constructs a new Attestor. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAttestor); - /** UninterpretedOption aggregateValue. */ - public aggregateValue: string; + /** Attestor name. */ + public name: string; - /** - * Creates a new UninterpretedOption instance using the specified properties. - * @param [properties] Properties to set - * @returns UninterpretedOption instance - */ - public static create(properties?: google.protobuf.IUninterpretedOption): google.protobuf.UninterpretedOption; + /** Attestor description. */ + public description: string; - /** - * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. - * @param message UninterpretedOption message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer; + /** Attestor userOwnedDrydockNote. */ + public userOwnedDrydockNote?: (google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null); - /** - * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. - * @param message UninterpretedOption message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer; + /** Attestor updateTime. */ + public updateTime?: (google.protobuf.ITimestamp|null); - /** - * Decodes an UninterpretedOption message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UninterpretedOption - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption; + /** Attestor attestorType. */ + public attestorType?: "userOwnedDrydockNote"; - /** - * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UninterpretedOption - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption; + /** + * Creates a new Attestor instance using the specified properties. + * @param [properties] Properties to set + * @returns Attestor instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAttestor): google.cloud.binaryauthorization.v1beta1.Attestor; - /** - * Verifies an UninterpretedOption message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Encodes the specified Attestor message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. + * @param message Attestor message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IAttestor, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UninterpretedOption - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption; + /** + * Encodes the specified Attestor message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. + * @param message Attestor message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAttestor, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified. - * @param message UninterpretedOption - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.UninterpretedOption, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Decodes an Attestor message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.Attestor; - /** - * Converts this UninterpretedOption to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Decodes an Attestor message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.Attestor; - namespace UninterpretedOption { + /** + * Verifies an Attestor message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** Properties of a NamePart. */ - interface INamePart { + /** + * Creates an Attestor message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Attestor + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.Attestor; - /** NamePart namePart */ - namePart: string; + /** + * Creates a plain object from an Attestor message. Also converts values to other types if specified. + * @param message Attestor + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.Attestor, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** NamePart isExtension */ - isExtension: boolean; - } + /** + * Converts this Attestor to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Represents a NamePart. */ - class NamePart implements INamePart { + /** Properties of a UserOwnedDrydockNote. */ + interface IUserOwnedDrydockNote { - /** - * Constructs a new NamePart. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.UninterpretedOption.INamePart); + /** UserOwnedDrydockNote noteReference */ + noteReference?: (string|null); - /** NamePart namePart. */ - public namePart: string; + /** UserOwnedDrydockNote publicKeys */ + publicKeys?: (google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey[]|null); - /** NamePart isExtension. */ - public isExtension: boolean; + /** UserOwnedDrydockNote delegationServiceAccountEmail */ + delegationServiceAccountEmail?: (string|null); + } - /** - * Creates a new NamePart instance using the specified properties. - * @param [properties] Properties to set - * @returns NamePart instance - */ - public static create(properties?: google.protobuf.UninterpretedOption.INamePart): google.protobuf.UninterpretedOption.NamePart; + /** Represents a UserOwnedDrydockNote. */ + class UserOwnedDrydockNote implements IUserOwnedDrydockNote { - /** - * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. - * @param message NamePart message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new UserOwnedDrydockNote. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote); - /** - * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. - * @param message NamePart message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer; + /** UserOwnedDrydockNote noteReference. */ + public noteReference: string; - /** - * Decodes a NamePart message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns NamePart - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption.NamePart; - - /** - * Decodes a NamePart message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns NamePart - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption.NamePart; + /** UserOwnedDrydockNote publicKeys. */ + public publicKeys: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey[]; - /** - * Verifies a NamePart message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** UserOwnedDrydockNote delegationServiceAccountEmail. */ + public delegationServiceAccountEmail: string; - /** - * Creates a NamePart message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns NamePart - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption.NamePart; + /** + * Creates a new UserOwnedDrydockNote instance using the specified properties. + * @param [properties] Properties to set + * @returns UserOwnedDrydockNote instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; - /** - * Creates a plain object from a NamePart message. Also converts values to other types if specified. - * @param message NamePart - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.UninterpretedOption.NamePart, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Encodes the specified UserOwnedDrydockNote message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. + * @param message UserOwnedDrydockNote message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Converts this NamePart to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** + * Encodes the specified UserOwnedDrydockNote message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. + * @param message UserOwnedDrydockNote message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote, writer?: $protobuf.Writer): $protobuf.Writer; - /** Properties of a SourceCodeInfo. */ - interface ISourceCodeInfo { + /** + * Decodes a UserOwnedDrydockNote message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UserOwnedDrydockNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; - /** SourceCodeInfo location */ - location?: (google.protobuf.SourceCodeInfo.ILocation[]|null); - } + /** + * Decodes a UserOwnedDrydockNote message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UserOwnedDrydockNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; - /** Represents a SourceCodeInfo. */ - class SourceCodeInfo implements ISourceCodeInfo { + /** + * Verifies a UserOwnedDrydockNote message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Constructs a new SourceCodeInfo. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.ISourceCodeInfo); + /** + * Creates a UserOwnedDrydockNote message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UserOwnedDrydockNote + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; - /** SourceCodeInfo location. */ - public location: google.protobuf.SourceCodeInfo.ILocation[]; + /** + * Creates a plain object from a UserOwnedDrydockNote message. Also converts values to other types if specified. + * @param message UserOwnedDrydockNote + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Creates a new SourceCodeInfo instance using the specified properties. - * @param [properties] Properties to set - * @returns SourceCodeInfo instance - */ - public static create(properties?: google.protobuf.ISourceCodeInfo): google.protobuf.SourceCodeInfo; + /** + * Converts this UserOwnedDrydockNote to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. - * @param message SourceCodeInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; + /** Properties of a PkixPublicKey. */ + interface IPkixPublicKey { - /** - * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. - * @param message SourceCodeInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; + /** PkixPublicKey publicKeyPem */ + publicKeyPem?: (string|null); - /** - * Decodes a SourceCodeInfo message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SourceCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo; + /** PkixPublicKey signatureAlgorithm */ + signatureAlgorithm?: (google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|keyof typeof google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|null); + } - /** - * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SourceCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo; + /** Represents a PkixPublicKey. */ + class PkixPublicKey implements IPkixPublicKey { - /** - * Verifies a SourceCodeInfo message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Constructs a new PkixPublicKey. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey); - /** - * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SourceCodeInfo - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo; + /** PkixPublicKey publicKeyPem. */ + public publicKeyPem: string; - /** - * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified. - * @param message SourceCodeInfo - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.SourceCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** PkixPublicKey signatureAlgorithm. */ + public signatureAlgorithm: (google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|keyof typeof google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm); - /** - * Converts this SourceCodeInfo to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates a new PkixPublicKey instance using the specified properties. + * @param [properties] Properties to set + * @returns PkixPublicKey instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; - namespace SourceCodeInfo { + /** + * Encodes the specified PkixPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. + * @param message PkixPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** Properties of a Location. */ - interface ILocation { + /** + * Encodes the specified PkixPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. + * @param message PkixPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** Location path */ - path?: (number[]|null); + /** + * Decodes a PkixPublicKey message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; - /** Location span */ - span?: (number[]|null); + /** + * Decodes a PkixPublicKey message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; - /** Location leadingComments */ - leadingComments?: (string|null); + /** + * Verifies a PkixPublicKey message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** Location trailingComments */ - trailingComments?: (string|null); + /** + * Creates a PkixPublicKey message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PkixPublicKey + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; - /** Location leadingDetachedComments */ - leadingDetachedComments?: (string[]|null); - } - - /** Represents a Location. */ - class Location implements ILocation { + /** + * Creates a plain object from a PkixPublicKey message. Also converts values to other types if specified. + * @param message PkixPublicKey + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.PkixPublicKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Constructs a new Location. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.SourceCodeInfo.ILocation); + /** + * Converts this PkixPublicKey to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Location path. */ - public path: number[]; + namespace PkixPublicKey { - /** Location span. */ - public span: number[]; + /** SignatureAlgorithm enum. */ + enum SignatureAlgorithm { + SIGNATURE_ALGORITHM_UNSPECIFIED = 0, + RSA_PSS_2048_SHA256 = 1, + RSA_PSS_3072_SHA256 = 2, + RSA_PSS_4096_SHA256 = 3, + RSA_PSS_4096_SHA512 = 4, + RSA_SIGN_PKCS1_2048_SHA256 = 5, + RSA_SIGN_PKCS1_3072_SHA256 = 6, + RSA_SIGN_PKCS1_4096_SHA256 = 7, + RSA_SIGN_PKCS1_4096_SHA512 = 8, + ECDSA_P256_SHA256 = 9, + ECDSA_P384_SHA384 = 10, + ECDSA_P521_SHA512 = 11 + } + } - /** Location leadingComments. */ - public leadingComments: string; + /** Properties of an AttestorPublicKey. */ + interface IAttestorPublicKey { - /** Location trailingComments. */ - public trailingComments: string; + /** AttestorPublicKey comment */ + comment?: (string|null); - /** Location leadingDetachedComments. */ - public leadingDetachedComments: string[]; + /** AttestorPublicKey id */ + id?: (string|null); - /** - * Creates a new Location instance using the specified properties. - * @param [properties] Properties to set - * @returns Location instance - */ - public static create(properties?: google.protobuf.SourceCodeInfo.ILocation): google.protobuf.SourceCodeInfo.Location; + /** AttestorPublicKey asciiArmoredPgpPublicKey */ + asciiArmoredPgpPublicKey?: (string|null); - /** - * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. - * @param message Location message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer; + /** AttestorPublicKey pkixPublicKey */ + pkixPublicKey?: (google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null); + } - /** - * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. - * @param message Location message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents an AttestorPublicKey. */ + class AttestorPublicKey implements IAttestorPublicKey { - /** - * Decodes a Location message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Location - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo.Location; + /** + * Constructs a new AttestorPublicKey. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey); - /** - * Decodes a Location message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Location - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo.Location; + /** AttestorPublicKey comment. */ + public comment: string; - /** - * Verifies a Location message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** AttestorPublicKey id. */ + public id: string; - /** - * Creates a Location message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Location - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo.Location; + /** AttestorPublicKey asciiArmoredPgpPublicKey. */ + public asciiArmoredPgpPublicKey?: (string|null); - /** - * Creates a plain object from a Location message. Also converts values to other types if specified. - * @param message Location - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.SourceCodeInfo.Location, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** AttestorPublicKey pkixPublicKey. */ + public pkixPublicKey?: (google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null); - /** - * Converts this Location to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** AttestorPublicKey publicKey. */ + public publicKey?: ("asciiArmoredPgpPublicKey"|"pkixPublicKey"); - /** Properties of a GeneratedCodeInfo. */ - interface IGeneratedCodeInfo { + /** + * Creates a new AttestorPublicKey instance using the specified properties. + * @param [properties] Properties to set + * @returns AttestorPublicKey instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; - /** GeneratedCodeInfo annotation */ - annotation?: (google.protobuf.GeneratedCodeInfo.IAnnotation[]|null); - } + /** + * Encodes the specified AttestorPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. + * @param message AttestorPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents a GeneratedCodeInfo. */ - class GeneratedCodeInfo implements IGeneratedCodeInfo { + /** + * Encodes the specified AttestorPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. + * @param message AttestorPublicKey message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new GeneratedCodeInfo. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IGeneratedCodeInfo); + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; - /** GeneratedCodeInfo annotation. */ - public annotation: google.protobuf.GeneratedCodeInfo.IAnnotation[]; + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; - /** - * Creates a new GeneratedCodeInfo instance using the specified properties. - * @param [properties] Properties to set - * @returns GeneratedCodeInfo instance - */ - public static create(properties?: google.protobuf.IGeneratedCodeInfo): google.protobuf.GeneratedCodeInfo; + /** + * Verifies an AttestorPublicKey message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. - * @param message GeneratedCodeInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates an AttestorPublicKey message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns AttestorPublicKey + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; - /** - * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. - * @param message GeneratedCodeInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a plain object from an AttestorPublicKey message. Also converts values to other types if specified. + * @param message AttestorPublicKey + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.AttestorPublicKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Decodes a GeneratedCodeInfo message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GeneratedCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo; + /** + * Converts this AttestorPublicKey to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GeneratedCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo; + /** Represents a BinauthzManagementServiceV1Beta1 */ + class BinauthzManagementServiceV1Beta1 extends $protobuf.rpc.Service { - /** - * Verifies a GeneratedCodeInfo message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Constructs a new BinauthzManagementServiceV1Beta1 service. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + */ + constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); - /** - * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GeneratedCodeInfo - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo; + /** + * Creates new BinauthzManagementServiceV1Beta1 service using the specified rpc implementation. + * @param rpcImpl RPC implementation + * @param [requestDelimited=false] Whether requests are length-delimited + * @param [responseDelimited=false] Whether responses are length-delimited + * @returns RPC service. Useful where requests and/or responses are streamed. + */ + public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): BinauthzManagementServiceV1Beta1; - /** - * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified. - * @param message GeneratedCodeInfo - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.GeneratedCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Calls GetPolicy. + * @param request GetPolicyRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Policy + */ + public getPolicy(request: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetPolicyCallback): void; - /** - * Converts this GeneratedCodeInfo to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Calls GetPolicy. + * @param request GetPolicyRequest message or plain object + * @returns Promise + */ + public getPolicy(request: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest): Promise; - namespace GeneratedCodeInfo { + /** + * Calls UpdatePolicy. + * @param request UpdatePolicyRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Policy + */ + public updatePolicy(request: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdatePolicyCallback): void; - /** Properties of an Annotation. */ - interface IAnnotation { + /** + * Calls UpdatePolicy. + * @param request UpdatePolicyRequest message or plain object + * @returns Promise + */ + public updatePolicy(request: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest): Promise; - /** Annotation path */ - path?: (number[]|null); + /** + * Calls CreateAttestor. + * @param request CreateAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Attestor + */ + public createAttestor(request: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.CreateAttestorCallback): void; - /** Annotation sourceFile */ - sourceFile?: (string|null); + /** + * Calls CreateAttestor. + * @param request CreateAttestorRequest message or plain object + * @returns Promise + */ + public createAttestor(request: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest): Promise; - /** Annotation begin */ - begin?: (number|null); + /** + * Calls GetAttestor. + * @param request GetAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Attestor + */ + public getAttestor(request: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetAttestorCallback): void; - /** Annotation end */ - end?: (number|null); - } + /** + * Calls GetAttestor. + * @param request GetAttestorRequest message or plain object + * @returns Promise + */ + public getAttestor(request: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest): Promise; - /** Represents an Annotation. */ - class Annotation implements IAnnotation { + /** + * Calls UpdateAttestor. + * @param request UpdateAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Attestor + */ + public updateAttestor(request: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdateAttestorCallback): void; - /** - * Constructs a new Annotation. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation); + /** + * Calls UpdateAttestor. + * @param request UpdateAttestorRequest message or plain object + * @returns Promise + */ + public updateAttestor(request: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest): Promise; - /** Annotation path. */ - public path: number[]; + /** + * Calls ListAttestors. + * @param request ListAttestorsRequest message or plain object + * @param callback Node-style callback called with the error, if any, and ListAttestorsResponse + */ + public listAttestors(request: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.ListAttestorsCallback): void; - /** Annotation sourceFile. */ - public sourceFile: string; + /** + * Calls ListAttestors. + * @param request ListAttestorsRequest message or plain object + * @returns Promise + */ + public listAttestors(request: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest): Promise; - /** Annotation begin. */ - public begin: number; + /** + * Calls DeleteAttestor. + * @param request DeleteAttestorRequest message or plain object + * @param callback Node-style callback called with the error, if any, and Empty + */ + public deleteAttestor(request: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.DeleteAttestorCallback): void; - /** Annotation end. */ - public end: number; + /** + * Calls DeleteAttestor. + * @param request DeleteAttestorRequest message or plain object + * @returns Promise + */ + public deleteAttestor(request: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest): Promise; + } - /** - * Creates a new Annotation instance using the specified properties. - * @param [properties] Properties to set - * @returns Annotation instance - */ - public static create(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation): google.protobuf.GeneratedCodeInfo.Annotation; + namespace BinauthzManagementServiceV1Beta1 { - /** - * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. - * @param message Annotation message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getPolicy}. + * @param error Error, if any + * @param [response] Policy + */ + type GetPolicyCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Policy) => void; - /** - * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. - * @param message Annotation message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updatePolicy}. + * @param error Error, if any + * @param [response] Policy + */ + type UpdatePolicyCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Policy) => void; - /** - * Decodes an Annotation message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Annotation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo.Annotation; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#createAttestor}. + * @param error Error, if any + * @param [response] Attestor + */ + type CreateAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Attestor) => void; - /** - * Decodes an Annotation message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Annotation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo.Annotation; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getAttestor}. + * @param error Error, if any + * @param [response] Attestor + */ + type GetAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Attestor) => void; - /** - * Verifies an Annotation message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updateAttestor}. + * @param error Error, if any + * @param [response] Attestor + */ + type UpdateAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Attestor) => void; - /** - * Creates an Annotation message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Annotation - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo.Annotation; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#listAttestors}. + * @param error Error, if any + * @param [response] ListAttestorsResponse + */ + type ListAttestorsCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse) => void; - /** - * Creates a plain object from an Annotation message. Also converts values to other types if specified. - * @param message Annotation - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.GeneratedCodeInfo.Annotation, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#deleteAttestor}. + * @param error Error, if any + * @param [response] Empty + */ + type DeleteAttestorCallback = (error: (Error|null), response?: google.protobuf.Empty) => void; + } - /** - * Converts this Annotation to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } - - /** Properties of an Empty. */ - interface IEmpty { - } - - /** Represents an Empty. */ - class Empty implements IEmpty { - - /** - * Constructs a new Empty. - * @param [properties] Properties to set - */ - constructor(properties?: google.protobuf.IEmpty); + /** Properties of a GetPolicyRequest. */ + interface IGetPolicyRequest { - /** - * Creates a new Empty instance using the specified properties. - * @param [properties] Properties to set - * @returns Empty instance - */ - public static create(properties?: google.protobuf.IEmpty): google.protobuf.Empty; + /** GetPolicyRequest name */ + name?: (string|null); + } - /** - * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. - * @param message Empty message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents a GetPolicyRequest. */ + class GetPolicyRequest implements IGetPolicyRequest { - /** - * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. - * @param message Empty message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new GetPolicyRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest); - /** - * Decodes an Empty message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Empty - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Empty; + /** GetPolicyRequest name. */ + public name: string; - /** - * Decodes an Empty message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Empty - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Empty; + /** + * Creates a new GetPolicyRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetPolicyRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; - /** - * Verifies an Empty message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Encodes the specified GetPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. + * @param message GetPolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates an Empty message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Empty - */ - public static fromObject(object: { [k: string]: any }): google.protobuf.Empty; + /** + * Encodes the specified GetPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. + * @param message GetPolicyRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a plain object from an Empty message. Also converts values to other types if specified. - * @param message Empty - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.protobuf.Empty, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; - /** - * Converts this Empty to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; - /** Namespace cloud. */ - namespace cloud { + /** + * Verifies a GetPolicyRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** Namespace binaryauthorization. */ - namespace binaryauthorization { + /** + * Creates a GetPolicyRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetPolicyRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; - /** Namespace v1beta1. */ - namespace v1beta1 { + /** + * Creates a plain object from a GetPolicyRequest message. Also converts values to other types if specified. + * @param message GetPolicyRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.GetPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** Properties of a ContinuousValidationEvent. */ - interface IContinuousValidationEvent { + /** + * Converts this GetPolicyRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** ContinuousValidationEvent podEvent */ - podEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null); + /** Properties of an UpdatePolicyRequest. */ + interface IUpdatePolicyRequest { - /** ContinuousValidationEvent unsupportedPolicyEvent */ - unsupportedPolicyEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null); + /** UpdatePolicyRequest policy */ + policy?: (google.cloud.binaryauthorization.v1beta1.IPolicy|null); } - /** Represents a ContinuousValidationEvent. */ - class ContinuousValidationEvent implements IContinuousValidationEvent { + /** Represents an UpdatePolicyRequest. */ + class UpdatePolicyRequest implements IUpdatePolicyRequest { /** - * Constructs a new ContinuousValidationEvent. + * Constructs a new UpdatePolicyRequest. * @param [properties] Properties to set */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent); - - /** ContinuousValidationEvent podEvent. */ - public podEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null); - - /** ContinuousValidationEvent unsupportedPolicyEvent. */ - public unsupportedPolicyEvent?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null); + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest); - /** ContinuousValidationEvent eventType. */ - public eventType?: ("podEvent"|"unsupportedPolicyEvent"); + /** UpdatePolicyRequest policy. */ + public policy?: (google.cloud.binaryauthorization.v1beta1.IPolicy|null); /** - * Creates a new ContinuousValidationEvent instance using the specified properties. + * Creates a new UpdatePolicyRequest instance using the specified properties. * @param [properties] Properties to set - * @returns ContinuousValidationEvent instance + * @returns UpdatePolicyRequest instance */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; /** - * Encodes the specified ContinuousValidationEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. - * @param message ContinuousValidationEvent message or plain object to encode + * Encodes the specified UpdatePolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. + * @param message UpdatePolicyRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified ContinuousValidationEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. - * @param message ContinuousValidationEvent message or plain object to encode + * Encodes the specified UpdatePolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. + * @param message UpdatePolicyRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a ContinuousValidationEvent message from the specified reader or buffer. + * Decodes an UpdatePolicyRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns ContinuousValidationEvent + * @returns UpdatePolicyRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; /** - * Decodes a ContinuousValidationEvent message from the specified reader or buffer, length delimited. + * Decodes an UpdatePolicyRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns ContinuousValidationEvent + * @returns UpdatePolicyRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; /** - * Verifies a ContinuousValidationEvent message. + * Verifies an UpdatePolicyRequest message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a ContinuousValidationEvent message from a plain object. Also converts values to their respective internal types. + * Creates an UpdatePolicyRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns ContinuousValidationEvent + * @returns UpdatePolicyRequest */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent; + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; /** - * Creates a plain object from a ContinuousValidationEvent message. Also converts values to other types if specified. - * @param message ContinuousValidationEvent + * Creates a plain object from an UpdatePolicyRequest message. Also converts values to other types if specified. + * @param message UpdatePolicyRequest * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this ContinuousValidationEvent to JSON. + * Converts this UpdatePolicyRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - namespace ContinuousValidationEvent { + /** Properties of a CreateAttestorRequest. */ + interface ICreateAttestorRequest { - /** Properties of a ContinuousValidationPodEvent. */ - interface IContinuousValidationPodEvent { + /** CreateAttestorRequest parent */ + parent?: (string|null); - /** ContinuousValidationPodEvent pod */ - pod?: (string|null); + /** CreateAttestorRequest attestorId */ + attestorId?: (string|null); - /** ContinuousValidationPodEvent deployTime */ - deployTime?: (google.protobuf.ITimestamp|null); + /** CreateAttestorRequest attestor */ + attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); + } - /** ContinuousValidationPodEvent endTime */ - endTime?: (google.protobuf.ITimestamp|null); + /** Represents a CreateAttestorRequest. */ + class CreateAttestorRequest implements ICreateAttestorRequest { - /** ContinuousValidationPodEvent verdict */ - verdict?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|null); - - /** ContinuousValidationPodEvent images */ - images?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails[]|null); - } + /** + * Constructs a new CreateAttestorRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest); - /** Represents a ContinuousValidationPodEvent. */ - class ContinuousValidationPodEvent implements IContinuousValidationPodEvent { + /** CreateAttestorRequest parent. */ + public parent: string; - /** - * Constructs a new ContinuousValidationPodEvent. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent); + /** CreateAttestorRequest attestorId. */ + public attestorId: string; - /** ContinuousValidationPodEvent pod. */ - public pod: string; + /** CreateAttestorRequest attestor. */ + public attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); - /** ContinuousValidationPodEvent deployTime. */ - public deployTime?: (google.protobuf.ITimestamp|null); + /** + * Creates a new CreateAttestorRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns CreateAttestorRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; - /** ContinuousValidationPodEvent endTime. */ - public endTime?: (google.protobuf.ITimestamp|null); + /** + * Encodes the specified CreateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. + * @param message CreateAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** ContinuousValidationPodEvent verdict. */ - public verdict: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict); + /** + * Encodes the specified CreateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. + * @param message CreateAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** ContinuousValidationPodEvent images. */ - public images: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails[]; + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; - /** - * Creates a new ContinuousValidationPodEvent instance using the specified properties. - * @param [properties] Properties to set - * @returns ContinuousValidationPodEvent instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; - /** - * Encodes the specified ContinuousValidationPodEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. - * @param message ContinuousValidationPodEvent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Verifies a CreateAttestorRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Encodes the specified ContinuousValidationPodEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. - * @param message ContinuousValidationPodEvent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a CreateAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CreateAttestorRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; - /** - * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ContinuousValidationPodEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; + /** + * Creates a plain object from a CreateAttestorRequest message. Also converts values to other types if specified. + * @param message CreateAttestorRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ContinuousValidationPodEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; + /** + * Converts this CreateAttestorRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Verifies a ContinuousValidationPodEvent message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Properties of a GetAttestorRequest. */ + interface IGetAttestorRequest { - /** - * Creates a ContinuousValidationPodEvent message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ContinuousValidationPodEvent - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent; + /** GetAttestorRequest name */ + name?: (string|null); + } - /** - * Creates a plain object from a ContinuousValidationPodEvent message. Also converts values to other types if specified. - * @param message ContinuousValidationPodEvent - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Represents a GetAttestorRequest. */ + class GetAttestorRequest implements IGetAttestorRequest { - /** - * Converts this ContinuousValidationPodEvent to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Constructs a new GetAttestorRequest. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest); - namespace ContinuousValidationPodEvent { + /** GetAttestorRequest name. */ + public name: string; - /** Properties of an ImageDetails. */ - interface IImageDetails { + /** + * Creates a new GetAttestorRequest instance using the specified properties. + * @param [properties] Properties to set + * @returns GetAttestorRequest instance + */ + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; - /** ImageDetails image */ - image?: (string|null); + /** + * Encodes the specified GetAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. + * @param message GetAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** ImageDetails result */ - result?: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|null); + /** + * Encodes the specified GetAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. + * @param message GetAttestorRequest message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; - /** ImageDetails description */ - description?: (string|null); - } + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; - /** Represents an ImageDetails. */ - class ImageDetails implements IImageDetails { + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; - /** - * Constructs a new ImageDetails. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails); + /** + * Verifies a GetAttestorRequest message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** ImageDetails image. */ - public image: string; + /** + * Creates a GetAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GetAttestorRequest + */ + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; - /** ImageDetails result. */ - public result: (google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|keyof typeof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult); + /** + * Creates a plain object from a GetAttestorRequest message. Also converts values to other types if specified. + * @param message GetAttestorRequest + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.binaryauthorization.v1beta1.GetAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** ImageDetails description. */ - public description: string; + /** + * Converts this GetAttestorRequest to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a new ImageDetails instance using the specified properties. - * @param [properties] Properties to set - * @returns ImageDetails instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - - /** - * Encodes the specified ImageDetails message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. - * @param message ImageDetails message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ImageDetails message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. - * @param message ImageDetails message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an ImageDetails message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ImageDetails - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - - /** - * Decodes an ImageDetails message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ImageDetails - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - - /** - * Verifies an ImageDetails message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an ImageDetails message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ImageDetails - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails; - - /** - * Creates a plain object from an ImageDetails message. Also converts values to other types if specified. - * @param message ImageDetails - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ImageDetails to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace ImageDetails { - - /** AuditResult enum. */ - enum AuditResult { - AUDIT_RESULT_UNSPECIFIED = 0, - ALLOW = 1, - DENY = 2 - } - } - - /** PolicyConformanceVerdict enum. */ - enum PolicyConformanceVerdict { - POLICY_CONFORMANCE_VERDICT_UNSPECIFIED = 0, - VIOLATES_POLICY = 1 - } - } - - /** Properties of an UnsupportedPolicyEvent. */ - interface IUnsupportedPolicyEvent { - - /** UnsupportedPolicyEvent description */ - description?: (string|null); - } - - /** Represents an UnsupportedPolicyEvent. */ - class UnsupportedPolicyEvent implements IUnsupportedPolicyEvent { - - /** - * Constructs a new UnsupportedPolicyEvent. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent); - - /** UnsupportedPolicyEvent description. */ - public description: string; - - /** - * Creates a new UnsupportedPolicyEvent instance using the specified properties. - * @param [properties] Properties to set - * @returns UnsupportedPolicyEvent instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - - /** - * Encodes the specified UnsupportedPolicyEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. - * @param message UnsupportedPolicyEvent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified UnsupportedPolicyEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. - * @param message UnsupportedPolicyEvent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UnsupportedPolicyEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - - /** - * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UnsupportedPolicyEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - - /** - * Verifies an UnsupportedPolicyEvent message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an UnsupportedPolicyEvent message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UnsupportedPolicyEvent - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent; - - /** - * Creates a plain object from an UnsupportedPolicyEvent message. Also converts values to other types if specified. - * @param message UnsupportedPolicyEvent - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this UnsupportedPolicyEvent to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - } - - /** Properties of a Policy. */ - interface IPolicy { - - /** Policy name */ - name?: (string|null); - - /** Policy description */ - description?: (string|null); - - /** Policy globalPolicyEvaluationMode */ - globalPolicyEvaluationMode?: (google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|null); - - /** Policy admissionWhitelistPatterns */ - admissionWhitelistPatterns?: (google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern[]|null); - - /** Policy clusterAdmissionRules */ - clusterAdmissionRules?: ({ [k: string]: google.cloud.binaryauthorization.v1beta1.IAdmissionRule }|null); - - /** Policy defaultAdmissionRule */ - defaultAdmissionRule?: (google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null); + /** Properties of an UpdateAttestorRequest. */ + interface IUpdateAttestorRequest { - /** Policy updateTime */ - updateTime?: (google.protobuf.ITimestamp|null); + /** UpdateAttestorRequest attestor */ + attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); } - /** Represents a Policy. */ - class Policy implements IPolicy { + /** Represents an UpdateAttestorRequest. */ + class UpdateAttestorRequest implements IUpdateAttestorRequest { /** - * Constructs a new Policy. + * Constructs a new UpdateAttestorRequest. * @param [properties] Properties to set */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IPolicy); - - /** Policy name. */ - public name: string; - - /** Policy description. */ - public description: string; - - /** Policy globalPolicyEvaluationMode. */ - public globalPolicyEvaluationMode: (google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode); - - /** Policy admissionWhitelistPatterns. */ - public admissionWhitelistPatterns: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern[]; - - /** Policy clusterAdmissionRules. */ - public clusterAdmissionRules: { [k: string]: google.cloud.binaryauthorization.v1beta1.IAdmissionRule }; - - /** Policy defaultAdmissionRule. */ - public defaultAdmissionRule?: (google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null); + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest); - /** Policy updateTime. */ - public updateTime?: (google.protobuf.ITimestamp|null); + /** UpdateAttestorRequest attestor. */ + public attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); /** - * Creates a new Policy instance using the specified properties. + * Creates a new UpdateAttestorRequest instance using the specified properties. * @param [properties] Properties to set - * @returns Policy instance + * @returns UpdateAttestorRequest instance */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IPolicy): google.cloud.binaryauthorization.v1beta1.Policy; + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; /** - * Encodes the specified Policy message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. - * @param message Policy message or plain object to encode + * Encodes the specified UpdateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. + * @param message UpdateAttestorRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. - * @param message Policy message or plain object to encode + * Encodes the specified UpdateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. + * @param message UpdateAttestorRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a Policy message from the specified reader or buffer. + * Decodes an UpdateAttestorRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns Policy + * @returns UpdateAttestorRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.Policy; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; /** - * Decodes a Policy message from the specified reader or buffer, length delimited. + * Decodes an UpdateAttestorRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Policy + * @returns UpdateAttestorRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.Policy; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; /** - * Verifies a Policy message. + * Verifies an UpdateAttestorRequest message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a Policy message from a plain object. Also converts values to their respective internal types. + * Creates an UpdateAttestorRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Policy + * @returns UpdateAttestorRequest */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.Policy; + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; /** - * Creates a plain object from a Policy message. Also converts values to other types if specified. - * @param message Policy + * Creates a plain object from an UpdateAttestorRequest message. Also converts values to other types if specified. + * @param message UpdateAttestorRequest * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.Policy, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Policy to JSON. + * Converts this UpdateAttestorRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - namespace Policy { + /** Properties of a ListAttestorsRequest. */ + interface IListAttestorsRequest { - /** GlobalPolicyEvaluationMode enum. */ - enum GlobalPolicyEvaluationMode { - GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED = 0, - ENABLE = 1, - DISABLE = 2 - } - } + /** ListAttestorsRequest parent */ + parent?: (string|null); - /** Properties of an AdmissionWhitelistPattern. */ - interface IAdmissionWhitelistPattern { + /** ListAttestorsRequest pageSize */ + pageSize?: (number|null); - /** AdmissionWhitelistPattern namePattern */ - namePattern?: (string|null); + /** ListAttestorsRequest pageToken */ + pageToken?: (string|null); } - /** Represents an AdmissionWhitelistPattern. */ - class AdmissionWhitelistPattern implements IAdmissionWhitelistPattern { + /** Represents a ListAttestorsRequest. */ + class ListAttestorsRequest implements IListAttestorsRequest { /** - * Constructs a new AdmissionWhitelistPattern. + * Constructs a new ListAttestorsRequest. * @param [properties] Properties to set */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern); + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest); - /** AdmissionWhitelistPattern namePattern. */ - public namePattern: string; + /** ListAttestorsRequest parent. */ + public parent: string; + + /** ListAttestorsRequest pageSize. */ + public pageSize: number; + + /** ListAttestorsRequest pageToken. */ + public pageToken: string; /** - * Creates a new AdmissionWhitelistPattern instance using the specified properties. + * Creates a new ListAttestorsRequest instance using the specified properties. * @param [properties] Properties to set - * @returns AdmissionWhitelistPattern instance + * @returns ListAttestorsRequest instance */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; /** - * Encodes the specified AdmissionWhitelistPattern message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. - * @param message AdmissionWhitelistPattern message or plain object to encode + * Encodes the specified ListAttestorsRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. + * @param message ListAttestorsRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified AdmissionWhitelistPattern message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. - * @param message AdmissionWhitelistPattern message or plain object to encode + * Encodes the specified ListAttestorsRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. + * @param message ListAttestorsRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer. + * Decodes a ListAttestorsRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns AdmissionWhitelistPattern + * @returns ListAttestorsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; /** - * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer, length delimited. + * Decodes a ListAttestorsRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns AdmissionWhitelistPattern + * @returns ListAttestorsRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; /** - * Verifies an AdmissionWhitelistPattern message. + * Verifies a ListAttestorsRequest message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates an AdmissionWhitelistPattern message from a plain object. Also converts values to their respective internal types. + * Creates a ListAttestorsRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns AdmissionWhitelistPattern + * @returns ListAttestorsRequest */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern; + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; /** - * Creates a plain object from an AdmissionWhitelistPattern message. Also converts values to other types if specified. - * @param message AdmissionWhitelistPattern + * Creates a plain object from a ListAttestorsRequest message. Also converts values to other types if specified. + * @param message ListAttestorsRequest * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this AdmissionWhitelistPattern to JSON. + * Converts this ListAttestorsRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of an AdmissionRule. */ - interface IAdmissionRule { - - /** AdmissionRule evaluationMode */ - evaluationMode?: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|null); + /** Properties of a ListAttestorsResponse. */ + interface IListAttestorsResponse { - /** AdmissionRule requireAttestationsBy */ - requireAttestationsBy?: (string[]|null); + /** ListAttestorsResponse attestors */ + attestors?: (google.cloud.binaryauthorization.v1beta1.IAttestor[]|null); - /** AdmissionRule enforcementMode */ - enforcementMode?: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|null); + /** ListAttestorsResponse nextPageToken */ + nextPageToken?: (string|null); } - /** Represents an AdmissionRule. */ - class AdmissionRule implements IAdmissionRule { + /** Represents a ListAttestorsResponse. */ + class ListAttestorsResponse implements IListAttestorsResponse { /** - * Constructs a new AdmissionRule. + * Constructs a new ListAttestorsResponse. * @param [properties] Properties to set */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionRule); - - /** AdmissionRule evaluationMode. */ - public evaluationMode: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode); + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse); - /** AdmissionRule requireAttestationsBy. */ - public requireAttestationsBy: string[]; + /** ListAttestorsResponse attestors. */ + public attestors: google.cloud.binaryauthorization.v1beta1.IAttestor[]; - /** AdmissionRule enforcementMode. */ - public enforcementMode: (google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|keyof typeof google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode); + /** ListAttestorsResponse nextPageToken. */ + public nextPageToken: string; /** - * Creates a new AdmissionRule instance using the specified properties. + * Creates a new ListAttestorsResponse instance using the specified properties. * @param [properties] Properties to set - * @returns AdmissionRule instance + * @returns ListAttestorsResponse instance */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAdmissionRule): google.cloud.binaryauthorization.v1beta1.AdmissionRule; + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; /** - * Encodes the specified AdmissionRule message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. - * @param message AdmissionRule message or plain object to encode + * Encodes the specified ListAttestorsResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. + * @param message ListAttestorsResponse message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IAdmissionRule, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified AdmissionRule message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. - * @param message AdmissionRule message or plain object to encode + * Encodes the specified ListAttestorsResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. + * @param message ListAttestorsResponse message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAdmissionRule, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes an AdmissionRule message from the specified reader or buffer. + * Decodes a ListAttestorsResponse message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns AdmissionRule + * @returns ListAttestorsResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.AdmissionRule; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; /** - * Decodes an AdmissionRule message from the specified reader or buffer, length delimited. + * Decodes a ListAttestorsResponse message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns AdmissionRule + * @returns ListAttestorsResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.AdmissionRule; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; /** - * Verifies an AdmissionRule message. + * Verifies a ListAttestorsResponse message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates an AdmissionRule message from a plain object. Also converts values to their respective internal types. + * Creates a ListAttestorsResponse message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns AdmissionRule + * @returns ListAttestorsResponse */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.AdmissionRule; + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; /** - * Creates a plain object from an AdmissionRule message. Also converts values to other types if specified. - * @param message AdmissionRule + * Creates a plain object from a ListAttestorsResponse message. Also converts values to other types if specified. + * @param message ListAttestorsResponse * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.AdmissionRule, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this AdmissionRule to JSON. + * Converts this ListAttestorsResponse to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - namespace AdmissionRule { - - /** EvaluationMode enum. */ - enum EvaluationMode { - EVALUATION_MODE_UNSPECIFIED = 0, - ALWAYS_ALLOW = 1, - REQUIRE_ATTESTATION = 2, - ALWAYS_DENY = 3 - } - - /** EnforcementMode enum. */ - enum EnforcementMode { - ENFORCEMENT_MODE_UNSPECIFIED = 0, - ENFORCED_BLOCK_AND_AUDIT_LOG = 1, - DRYRUN_AUDIT_LOG_ONLY = 2 - } - } - - /** Properties of an Attestor. */ - interface IAttestor { + /** Properties of a DeleteAttestorRequest. */ + interface IDeleteAttestorRequest { - /** Attestor name */ + /** DeleteAttestorRequest name */ name?: (string|null); - - /** Attestor description */ - description?: (string|null); - - /** Attestor userOwnedDrydockNote */ - userOwnedDrydockNote?: (google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null); - - /** Attestor updateTime */ - updateTime?: (google.protobuf.ITimestamp|null); } - /** Represents an Attestor. */ - class Attestor implements IAttestor { + /** Represents a DeleteAttestorRequest. */ + class DeleteAttestorRequest implements IDeleteAttestorRequest { /** - * Constructs a new Attestor. + * Constructs a new DeleteAttestorRequest. * @param [properties] Properties to set */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAttestor); + constructor(properties?: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest); - /** Attestor name. */ + /** DeleteAttestorRequest name. */ public name: string; - /** Attestor description. */ - public description: string; - - /** Attestor userOwnedDrydockNote. */ - public userOwnedDrydockNote?: (google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null); - - /** Attestor updateTime. */ - public updateTime?: (google.protobuf.ITimestamp|null); - - /** Attestor attestorType. */ - public attestorType?: "userOwnedDrydockNote"; - /** - * Creates a new Attestor instance using the specified properties. + * Creates a new DeleteAttestorRequest instance using the specified properties. * @param [properties] Properties to set - * @returns Attestor instance + * @returns DeleteAttestorRequest instance */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAttestor): google.cloud.binaryauthorization.v1beta1.Attestor; + public static create(properties?: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; /** - * Encodes the specified Attestor message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. - * @param message Attestor message or plain object to encode + * Encodes the specified DeleteAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. + * @param message DeleteAttestorRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IAttestor, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified Attestor message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. - * @param message Attestor message or plain object to encode + * Encodes the specified DeleteAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. + * @param message DeleteAttestorRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAttestor, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes an Attestor message from the specified reader or buffer. + * Decodes a DeleteAttestorRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns Attestor + * @returns DeleteAttestorRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.Attestor; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; /** - * Decodes an Attestor message from the specified reader or buffer, length delimited. + * Decodes a DeleteAttestorRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Attestor + * @returns DeleteAttestorRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.Attestor; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; /** - * Verifies an Attestor message. + * Verifies a DeleteAttestorRequest message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates an Attestor message from a plain object. Also converts values to their respective internal types. + * Creates a DeleteAttestorRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Attestor + * @returns DeleteAttestorRequest */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.Attestor; + public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; /** - * Creates a plain object from an Attestor message. Also converts values to other types if specified. - * @param message Attestor + * Creates a plain object from a DeleteAttestorRequest message. Also converts values to other types if specified. + * @param message DeleteAttestorRequest * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.Attestor, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Attestor to JSON. + * Converts this DeleteAttestorRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } + } + } + } - /** Properties of a UserOwnedDrydockNote. */ - interface IUserOwnedDrydockNote { - - /** UserOwnedDrydockNote noteReference */ - noteReference?: (string|null); + /** Namespace api. */ + namespace api { - /** UserOwnedDrydockNote publicKeys */ - publicKeys?: (google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey[]|null); + /** FieldBehavior enum. */ + enum FieldBehavior { + FIELD_BEHAVIOR_UNSPECIFIED = 0, + OPTIONAL = 1, + REQUIRED = 2, + OUTPUT_ONLY = 3, + INPUT_ONLY = 4, + IMMUTABLE = 5, + UNORDERED_LIST = 6 + } - /** UserOwnedDrydockNote delegationServiceAccountEmail */ - delegationServiceAccountEmail?: (string|null); - } + /** Properties of a ResourceDescriptor. */ + interface IResourceDescriptor { - /** Represents a UserOwnedDrydockNote. */ - class UserOwnedDrydockNote implements IUserOwnedDrydockNote { + /** ResourceDescriptor type */ + type?: (string|null); - /** - * Constructs a new UserOwnedDrydockNote. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote); + /** ResourceDescriptor pattern */ + pattern?: (string[]|null); - /** UserOwnedDrydockNote noteReference. */ - public noteReference: string; + /** ResourceDescriptor nameField */ + nameField?: (string|null); - /** UserOwnedDrydockNote publicKeys. */ - public publicKeys: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey[]; + /** ResourceDescriptor history */ + history?: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History|null); - /** UserOwnedDrydockNote delegationServiceAccountEmail. */ - public delegationServiceAccountEmail: string; + /** ResourceDescriptor plural */ + plural?: (string|null); - /** - * Creates a new UserOwnedDrydockNote instance using the specified properties. - * @param [properties] Properties to set - * @returns UserOwnedDrydockNote instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; + /** ResourceDescriptor singular */ + singular?: (string|null); - /** - * Encodes the specified UserOwnedDrydockNote message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. - * @param message UserOwnedDrydockNote message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote, writer?: $protobuf.Writer): $protobuf.Writer; + /** ResourceDescriptor style */ + style?: (google.api.ResourceDescriptor.Style[]|null); + } - /** - * Encodes the specified UserOwnedDrydockNote message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. - * @param message UserOwnedDrydockNote message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote, writer?: $protobuf.Writer): $protobuf.Writer; + /** Represents a ResourceDescriptor. */ + class ResourceDescriptor implements IResourceDescriptor { - /** - * Decodes a UserOwnedDrydockNote message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UserOwnedDrydockNote - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; + /** + * Constructs a new ResourceDescriptor. + * @param [properties] Properties to set + */ + constructor(properties?: google.api.IResourceDescriptor); - /** - * Decodes a UserOwnedDrydockNote message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UserOwnedDrydockNote - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; + /** ResourceDescriptor type. */ + public type: string; - /** - * Verifies a UserOwnedDrydockNote message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** ResourceDescriptor pattern. */ + public pattern: string[]; - /** - * Creates a UserOwnedDrydockNote message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UserOwnedDrydockNote - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote; + /** ResourceDescriptor nameField. */ + public nameField: string; - /** - * Creates a plain object from a UserOwnedDrydockNote message. Also converts values to other types if specified. - * @param message UserOwnedDrydockNote - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** ResourceDescriptor history. */ + public history: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History); - /** - * Converts this UserOwnedDrydockNote to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** ResourceDescriptor plural. */ + public plural: string; - /** Properties of a PkixPublicKey. */ - interface IPkixPublicKey { + /** ResourceDescriptor singular. */ + public singular: string; - /** PkixPublicKey publicKeyPem */ - publicKeyPem?: (string|null); + /** ResourceDescriptor style. */ + public style: google.api.ResourceDescriptor.Style[]; - /** PkixPublicKey signatureAlgorithm */ - signatureAlgorithm?: (google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|keyof typeof google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|null); - } + /** + * Creates a new ResourceDescriptor instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceDescriptor instance + */ + public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor; - /** Represents a PkixPublicKey. */ - class PkixPublicKey implements IPkixPublicKey { + /** + * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * @param message ResourceDescriptor message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new PkixPublicKey. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey); + /** + * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * @param message ResourceDescriptor message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; - /** PkixPublicKey publicKeyPem. */ - public publicKeyPem: string; + /** + * Decodes a ResourceDescriptor message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceDescriptor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceDescriptor; - /** PkixPublicKey signatureAlgorithm. */ - public signatureAlgorithm: (google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|keyof typeof google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm); + /** + * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceDescriptor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceDescriptor; - /** - * Creates a new PkixPublicKey instance using the specified properties. - * @param [properties] Properties to set - * @returns PkixPublicKey instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; + /** + * Verifies a ResourceDescriptor message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Encodes the specified PkixPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. - * @param message PkixPublicKey message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceDescriptor + */ + public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor; - /** - * Encodes the specified PkixPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. - * @param message PkixPublicKey message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IPkixPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. + * @param message ResourceDescriptor + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Decodes a PkixPublicKey message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns PkixPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; + /** + * Converts this ResourceDescriptor to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes a PkixPublicKey message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns PkixPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; + namespace ResourceDescriptor { - /** - * Verifies a PkixPublicKey message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** History enum. */ + enum History { + HISTORY_UNSPECIFIED = 0, + ORIGINALLY_SINGLE_PATTERN = 1, + FUTURE_MULTI_PATTERN = 2 + } - /** - * Creates a PkixPublicKey message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns PkixPublicKey - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.PkixPublicKey; + /** Style enum. */ + enum Style { + STYLE_UNSPECIFIED = 0, + DECLARATIVE_FRIENDLY = 1 + } + } - /** - * Creates a plain object from a PkixPublicKey message. Also converts values to other types if specified. - * @param message PkixPublicKey - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.PkixPublicKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Properties of a ResourceReference. */ + interface IResourceReference { - /** - * Converts this PkixPublicKey to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** ResourceReference type */ + type?: (string|null); - namespace PkixPublicKey { + /** ResourceReference childType */ + childType?: (string|null); + } - /** SignatureAlgorithm enum. */ - enum SignatureAlgorithm { - SIGNATURE_ALGORITHM_UNSPECIFIED = 0, - RSA_PSS_2048_SHA256 = 1, - RSA_PSS_3072_SHA256 = 2, - RSA_PSS_4096_SHA256 = 3, - RSA_PSS_4096_SHA512 = 4, - RSA_SIGN_PKCS1_2048_SHA256 = 5, - RSA_SIGN_PKCS1_3072_SHA256 = 6, - RSA_SIGN_PKCS1_4096_SHA256 = 7, - RSA_SIGN_PKCS1_4096_SHA512 = 8, - ECDSA_P256_SHA256 = 9, - ECDSA_P384_SHA384 = 10, - ECDSA_P521_SHA512 = 11 - } - } + /** Represents a ResourceReference. */ + class ResourceReference implements IResourceReference { - /** Properties of an AttestorPublicKey. */ - interface IAttestorPublicKey { + /** + * Constructs a new ResourceReference. + * @param [properties] Properties to set + */ + constructor(properties?: google.api.IResourceReference); - /** AttestorPublicKey comment */ - comment?: (string|null); + /** ResourceReference type. */ + public type: string; - /** AttestorPublicKey id */ - id?: (string|null); + /** ResourceReference childType. */ + public childType: string; - /** AttestorPublicKey asciiArmoredPgpPublicKey */ - asciiArmoredPgpPublicKey?: (string|null); + /** + * Creates a new ResourceReference instance using the specified properties. + * @param [properties] Properties to set + * @returns ResourceReference instance + */ + public static create(properties?: google.api.IResourceReference): google.api.ResourceReference; - /** AttestorPublicKey pkixPublicKey */ - pkixPublicKey?: (google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null); - } + /** + * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * @param message ResourceReference message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents an AttestorPublicKey. */ - class AttestorPublicKey implements IAttestorPublicKey { + /** + * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * @param message ResourceReference message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new AttestorPublicKey. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey); + /** + * Decodes a ResourceReference message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ResourceReference + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceReference; - /** AttestorPublicKey comment. */ - public comment: string; + /** + * Decodes a ResourceReference message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ResourceReference + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceReference; - /** AttestorPublicKey id. */ - public id: string; + /** + * Verifies a ResourceReference message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** AttestorPublicKey asciiArmoredPgpPublicKey. */ - public asciiArmoredPgpPublicKey?: (string|null); + /** + * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ResourceReference + */ + public static fromObject(object: { [k: string]: any }): google.api.ResourceReference; - /** AttestorPublicKey pkixPublicKey. */ - public pkixPublicKey?: (google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null); + /** + * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. + * @param message ResourceReference + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.api.ResourceReference, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** AttestorPublicKey publicKey. */ - public publicKey?: ("asciiArmoredPgpPublicKey"|"pkixPublicKey"); + /** + * Converts this ResourceReference to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a new AttestorPublicKey instance using the specified properties. - * @param [properties] Properties to set - * @returns AttestorPublicKey instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; + /** Properties of a Http. */ + interface IHttp { - /** - * Encodes the specified AttestorPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. - * @param message AttestorPublicKey message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; + /** Http rules */ + rules?: (google.api.IHttpRule[]|null); - /** - * Encodes the specified AttestorPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. - * @param message AttestorPublicKey message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey, writer?: $protobuf.Writer): $protobuf.Writer; + /** Http fullyDecodeReservedExpansion */ + fullyDecodeReservedExpansion?: (boolean|null); + } - /** - * Decodes an AttestorPublicKey message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns AttestorPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; + /** Represents a Http. */ + class Http implements IHttp { - /** - * Decodes an AttestorPublicKey message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns AttestorPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; + /** + * Constructs a new Http. + * @param [properties] Properties to set + */ + constructor(properties?: google.api.IHttp); - /** - * Verifies an AttestorPublicKey message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Http rules. */ + public rules: google.api.IHttpRule[]; - /** - * Creates an AttestorPublicKey message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns AttestorPublicKey - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.AttestorPublicKey; + /** Http fullyDecodeReservedExpansion. */ + public fullyDecodeReservedExpansion: boolean; - /** - * Creates a plain object from an AttestorPublicKey message. Also converts values to other types if specified. - * @param message AttestorPublicKey - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.AttestorPublicKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Creates a new Http instance using the specified properties. + * @param [properties] Properties to set + * @returns Http instance + */ + public static create(properties?: google.api.IHttp): google.api.Http; - /** - * Converts this AttestorPublicKey to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. + * @param message Http message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents a BinauthzManagementServiceV1Beta1 */ - class BinauthzManagementServiceV1Beta1 extends $protobuf.rpc.Service { + /** + * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. + * @param message Http message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new BinauthzManagementServiceV1Beta1 service. - * @param rpcImpl RPC implementation - * @param [requestDelimited=false] Whether requests are length-delimited - * @param [responseDelimited=false] Whether responses are length-delimited - */ - constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); + /** + * Decodes a Http message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Http + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.Http; - /** - * Creates new BinauthzManagementServiceV1Beta1 service using the specified rpc implementation. - * @param rpcImpl RPC implementation - * @param [requestDelimited=false] Whether requests are length-delimited - * @param [responseDelimited=false] Whether responses are length-delimited - * @returns RPC service. Useful where requests and/or responses are streamed. - */ - public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): BinauthzManagementServiceV1Beta1; + /** + * Decodes a Http message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Http + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.Http; - /** - * Calls GetPolicy. - * @param request GetPolicyRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Policy - */ - public getPolicy(request: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetPolicyCallback): void; + /** + * Verifies a Http message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Calls GetPolicy. - * @param request GetPolicyRequest message or plain object - * @returns Promise - */ - public getPolicy(request: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest): Promise; + /** + * Creates a Http message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Http + */ + public static fromObject(object: { [k: string]: any }): google.api.Http; - /** - * Calls UpdatePolicy. - * @param request UpdatePolicyRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Policy - */ - public updatePolicy(request: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdatePolicyCallback): void; + /** + * Creates a plain object from a Http message. Also converts values to other types if specified. + * @param message Http + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Calls UpdatePolicy. - * @param request UpdatePolicyRequest message or plain object - * @returns Promise - */ - public updatePolicy(request: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest): Promise; + /** + * Converts this Http to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Calls CreateAttestor. - * @param request CreateAttestorRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Attestor - */ - public createAttestor(request: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.CreateAttestorCallback): void; + /** Properties of a HttpRule. */ + interface IHttpRule { - /** - * Calls CreateAttestor. - * @param request CreateAttestorRequest message or plain object - * @returns Promise - */ - public createAttestor(request: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest): Promise; + /** HttpRule selector */ + selector?: (string|null); - /** - * Calls GetAttestor. - * @param request GetAttestorRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Attestor - */ - public getAttestor(request: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetAttestorCallback): void; + /** HttpRule get */ + get?: (string|null); - /** - * Calls GetAttestor. - * @param request GetAttestorRequest message or plain object - * @returns Promise - */ - public getAttestor(request: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest): Promise; + /** HttpRule put */ + put?: (string|null); - /** - * Calls UpdateAttestor. - * @param request UpdateAttestorRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Attestor - */ - public updateAttestor(request: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdateAttestorCallback): void; + /** HttpRule post */ + post?: (string|null); - /** - * Calls UpdateAttestor. - * @param request UpdateAttestorRequest message or plain object - * @returns Promise - */ - public updateAttestor(request: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest): Promise; + /** HttpRule delete */ + "delete"?: (string|null); - /** - * Calls ListAttestors. - * @param request ListAttestorsRequest message or plain object - * @param callback Node-style callback called with the error, if any, and ListAttestorsResponse - */ - public listAttestors(request: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.ListAttestorsCallback): void; + /** HttpRule patch */ + patch?: (string|null); - /** - * Calls ListAttestors. - * @param request ListAttestorsRequest message or plain object - * @returns Promise - */ - public listAttestors(request: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest): Promise; + /** HttpRule custom */ + custom?: (google.api.ICustomHttpPattern|null); - /** - * Calls DeleteAttestor. - * @param request DeleteAttestorRequest message or plain object - * @param callback Node-style callback called with the error, if any, and Empty - */ - public deleteAttestor(request: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest, callback: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.DeleteAttestorCallback): void; + /** HttpRule body */ + body?: (string|null); - /** - * Calls DeleteAttestor. - * @param request DeleteAttestorRequest message or plain object - * @returns Promise - */ - public deleteAttestor(request: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest): Promise; - } + /** HttpRule responseBody */ + responseBody?: (string|null); - namespace BinauthzManagementServiceV1Beta1 { + /** HttpRule additionalBindings */ + additionalBindings?: (google.api.IHttpRule[]|null); + } - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getPolicy}. - * @param error Error, if any - * @param [response] Policy - */ - type GetPolicyCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Policy) => void; + /** Represents a HttpRule. */ + class HttpRule implements IHttpRule { - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updatePolicy}. - * @param error Error, if any - * @param [response] Policy - */ - type UpdatePolicyCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Policy) => void; + /** + * Constructs a new HttpRule. + * @param [properties] Properties to set + */ + constructor(properties?: google.api.IHttpRule); - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#createAttestor}. - * @param error Error, if any - * @param [response] Attestor - */ - type CreateAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Attestor) => void; + /** HttpRule selector. */ + public selector: string; - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getAttestor}. - * @param error Error, if any - * @param [response] Attestor - */ - type GetAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Attestor) => void; + /** HttpRule get. */ + public get?: (string|null); - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updateAttestor}. - * @param error Error, if any - * @param [response] Attestor - */ - type UpdateAttestorCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.Attestor) => void; + /** HttpRule put. */ + public put?: (string|null); - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#listAttestors}. - * @param error Error, if any - * @param [response] ListAttestorsResponse - */ - type ListAttestorsCallback = (error: (Error|null), response?: google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse) => void; - - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#deleteAttestor}. - * @param error Error, if any - * @param [response] Empty - */ - type DeleteAttestorCallback = (error: (Error|null), response?: google.protobuf.Empty) => void; - } + /** HttpRule post. */ + public post?: (string|null); - /** Properties of a GetPolicyRequest. */ - interface IGetPolicyRequest { + /** HttpRule delete. */ + public delete?: (string|null); - /** GetPolicyRequest name */ - name?: (string|null); - } + /** HttpRule patch. */ + public patch?: (string|null); - /** Represents a GetPolicyRequest. */ - class GetPolicyRequest implements IGetPolicyRequest { + /** HttpRule custom. */ + public custom?: (google.api.ICustomHttpPattern|null); - /** - * Constructs a new GetPolicyRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest); + /** HttpRule body. */ + public body: string; - /** GetPolicyRequest name. */ - public name: string; + /** HttpRule responseBody. */ + public responseBody: string; - /** - * Creates a new GetPolicyRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns GetPolicyRequest instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; + /** HttpRule additionalBindings. */ + public additionalBindings: google.api.IHttpRule[]; - /** - * Encodes the specified GetPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. - * @param message GetPolicyRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** HttpRule pattern. */ + public pattern?: ("get"|"put"|"post"|"delete"|"patch"|"custom"); - /** - * Encodes the specified GetPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. - * @param message GetPolicyRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a new HttpRule instance using the specified properties. + * @param [properties] Properties to set + * @returns HttpRule instance + */ + public static create(properties?: google.api.IHttpRule): google.api.HttpRule; - /** - * Decodes a GetPolicyRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GetPolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; + /** + * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * @param message HttpRule message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes a GetPolicyRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GetPolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; + /** + * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * @param message HttpRule message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Verifies a GetPolicyRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Decodes a HttpRule message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HttpRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.HttpRule; - /** - * Creates a GetPolicyRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GetPolicyRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.GetPolicyRequest; + /** + * Decodes a HttpRule message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HttpRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.HttpRule; - /** - * Creates a plain object from a GetPolicyRequest message. Also converts values to other types if specified. - * @param message GetPolicyRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.GetPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Verifies a HttpRule message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Converts this GetPolicyRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HttpRule + */ + public static fromObject(object: { [k: string]: any }): google.api.HttpRule; - /** Properties of an UpdatePolicyRequest. */ - interface IUpdatePolicyRequest { + /** + * Creates a plain object from a HttpRule message. Also converts values to other types if specified. + * @param message HttpRule + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** UpdatePolicyRequest policy */ - policy?: (google.cloud.binaryauthorization.v1beta1.IPolicy|null); - } + /** + * Converts this HttpRule to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** Represents an UpdatePolicyRequest. */ - class UpdatePolicyRequest implements IUpdatePolicyRequest { + /** Properties of a CustomHttpPattern. */ + interface ICustomHttpPattern { - /** - * Constructs a new UpdatePolicyRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest); + /** CustomHttpPattern kind */ + kind?: (string|null); - /** UpdatePolicyRequest policy. */ - public policy?: (google.cloud.binaryauthorization.v1beta1.IPolicy|null); + /** CustomHttpPattern path */ + path?: (string|null); + } - /** - * Creates a new UpdatePolicyRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns UpdatePolicyRequest instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; + /** Represents a CustomHttpPattern. */ + class CustomHttpPattern implements ICustomHttpPattern { - /** - * Encodes the specified UpdatePolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. - * @param message UpdatePolicyRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Constructs a new CustomHttpPattern. + * @param [properties] Properties to set + */ + constructor(properties?: google.api.ICustomHttpPattern); - /** - * Encodes the specified UpdatePolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. - * @param message UpdatePolicyRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** CustomHttpPattern kind. */ + public kind: string; - /** - * Decodes an UpdatePolicyRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UpdatePolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; + /** CustomHttpPattern path. */ + public path: string; - /** - * Decodes an UpdatePolicyRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UpdatePolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; + /** + * Creates a new CustomHttpPattern instance using the specified properties. + * @param [properties] Properties to set + * @returns CustomHttpPattern instance + */ + public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern; - /** - * Verifies an UpdatePolicyRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * @param message CustomHttpPattern message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates an UpdatePolicyRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UpdatePolicyRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest; + /** + * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * @param message CustomHttpPattern message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Creates a plain object from an UpdatePolicyRequest message. Also converts values to other types if specified. - * @param message UpdatePolicyRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Decodes a CustomHttpPattern message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CustomHttpPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.CustomHttpPattern; - /** - * Converts this UpdatePolicyRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CustomHttpPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.CustomHttpPattern; - /** Properties of a CreateAttestorRequest. */ - interface ICreateAttestorRequest { + /** + * Verifies a CustomHttpPattern message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** CreateAttestorRequest parent */ - parent?: (string|null); + /** + * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CustomHttpPattern + */ + public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern; - /** CreateAttestorRequest attestorId */ - attestorId?: (string|null); + /** + * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. + * @param message CustomHttpPattern + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** CreateAttestorRequest attestor */ - attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); - } + /** + * Converts this CustomHttpPattern to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** Represents a CreateAttestorRequest. */ - class CreateAttestorRequest implements ICreateAttestorRequest { + /** Namespace protobuf. */ + namespace protobuf { - /** - * Constructs a new CreateAttestorRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest); + /** Properties of a FileDescriptorSet. */ + interface IFileDescriptorSet { - /** CreateAttestorRequest parent. */ - public parent: string; + /** FileDescriptorSet file */ + file?: (google.protobuf.IFileDescriptorProto[]|null); + } - /** CreateAttestorRequest attestorId. */ - public attestorId: string; + /** Represents a FileDescriptorSet. */ + class FileDescriptorSet implements IFileDescriptorSet { - /** CreateAttestorRequest attestor. */ - public attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); + /** + * Constructs a new FileDescriptorSet. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFileDescriptorSet); - /** - * Creates a new CreateAttestorRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns CreateAttestorRequest instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; + /** FileDescriptorSet file. */ + public file: google.protobuf.IFileDescriptorProto[]; - /** - * Encodes the specified CreateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. - * @param message CreateAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a new FileDescriptorSet instance using the specified properties. + * @param [properties] Properties to set + * @returns FileDescriptorSet instance + */ + public static create(properties?: google.protobuf.IFileDescriptorSet): google.protobuf.FileDescriptorSet; - /** - * Encodes the specified CreateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. - * @param message CreateAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. + * @param message FileDescriptorSet message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes a CreateAttestorRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns CreateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; + /** + * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. + * @param message FileDescriptorSet message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes a CreateAttestorRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns CreateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; + /** + * Decodes a FileDescriptorSet message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FileDescriptorSet + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorSet; - /** - * Verifies a CreateAttestorRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FileDescriptorSet + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorSet; - /** - * Creates a CreateAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns CreateAttestorRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest; + /** + * Verifies a FileDescriptorSet message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Creates a plain object from a CreateAttestorRequest message. Also converts values to other types if specified. - * @param message CreateAttestorRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FileDescriptorSet + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorSet; - /** - * Converts this CreateAttestorRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. + * @param message FileDescriptorSet + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.FileDescriptorSet, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** Properties of a GetAttestorRequest. */ - interface IGetAttestorRequest { + /** + * Converts this FileDescriptorSet to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** GetAttestorRequest name */ - name?: (string|null); - } + /** Properties of a FileDescriptorProto. */ + interface IFileDescriptorProto { - /** Represents a GetAttestorRequest. */ - class GetAttestorRequest implements IGetAttestorRequest { + /** FileDescriptorProto name */ + name?: (string|null); - /** - * Constructs a new GetAttestorRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest); + /** FileDescriptorProto package */ + "package"?: (string|null); - /** GetAttestorRequest name. */ - public name: string; + /** FileDescriptorProto dependency */ + dependency?: (string[]|null); - /** - * Creates a new GetAttestorRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns GetAttestorRequest instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; + /** FileDescriptorProto publicDependency */ + publicDependency?: (number[]|null); - /** - * Encodes the specified GetAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. - * @param message GetAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** FileDescriptorProto weakDependency */ + weakDependency?: (number[]|null); + + /** FileDescriptorProto messageType */ + messageType?: (google.protobuf.IDescriptorProto[]|null); + + /** FileDescriptorProto enumType */ + enumType?: (google.protobuf.IEnumDescriptorProto[]|null); + + /** FileDescriptorProto service */ + service?: (google.protobuf.IServiceDescriptorProto[]|null); + + /** FileDescriptorProto extension */ + extension?: (google.protobuf.IFieldDescriptorProto[]|null); + + /** FileDescriptorProto options */ + options?: (google.protobuf.IFileOptions|null); + + /** FileDescriptorProto sourceCodeInfo */ + sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); + + /** FileDescriptorProto syntax */ + syntax?: (string|null); + } + + /** Represents a FileDescriptorProto. */ + class FileDescriptorProto implements IFileDescriptorProto { + + /** + * Constructs a new FileDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFileDescriptorProto); + + /** FileDescriptorProto name. */ + public name: string; + + /** FileDescriptorProto package. */ + public package: string; + + /** FileDescriptorProto dependency. */ + public dependency: string[]; + + /** FileDescriptorProto publicDependency. */ + public publicDependency: number[]; + + /** FileDescriptorProto weakDependency. */ + public weakDependency: number[]; + + /** FileDescriptorProto messageType. */ + public messageType: google.protobuf.IDescriptorProto[]; + + /** FileDescriptorProto enumType. */ + public enumType: google.protobuf.IEnumDescriptorProto[]; + + /** FileDescriptorProto service. */ + public service: google.protobuf.IServiceDescriptorProto[]; + + /** FileDescriptorProto extension. */ + public extension: google.protobuf.IFieldDescriptorProto[]; + + /** FileDescriptorProto options. */ + public options?: (google.protobuf.IFileOptions|null); + + /** FileDescriptorProto sourceCodeInfo. */ + public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null); + + /** FileDescriptorProto syntax. */ + public syntax: string; + + /** + * Creates a new FileDescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns FileDescriptorProto instance + */ + public static create(properties?: google.protobuf.IFileDescriptorProto): google.protobuf.FileDescriptorProto; + + /** + * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. + * @param message FileDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. + * @param message FileDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FileDescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FileDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorProto; + + /** + * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FileDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorProto; + + /** + * Verifies a FileDescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FileDescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorProto; + + /** + * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. + * @param message FileDescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.FileDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FileDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a DescriptorProto. */ + interface IDescriptorProto { + + /** DescriptorProto name */ + name?: (string|null); + + /** DescriptorProto field */ + field?: (google.protobuf.IFieldDescriptorProto[]|null); + + /** DescriptorProto extension */ + extension?: (google.protobuf.IFieldDescriptorProto[]|null); + + /** DescriptorProto nestedType */ + nestedType?: (google.protobuf.IDescriptorProto[]|null); + + /** DescriptorProto enumType */ + enumType?: (google.protobuf.IEnumDescriptorProto[]|null); + + /** DescriptorProto extensionRange */ + extensionRange?: (google.protobuf.DescriptorProto.IExtensionRange[]|null); + + /** DescriptorProto oneofDecl */ + oneofDecl?: (google.protobuf.IOneofDescriptorProto[]|null); + + /** DescriptorProto options */ + options?: (google.protobuf.IMessageOptions|null); + + /** DescriptorProto reservedRange */ + reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null); + + /** DescriptorProto reservedName */ + reservedName?: (string[]|null); + } + + /** Represents a DescriptorProto. */ + class DescriptorProto implements IDescriptorProto { + + /** + * Constructs a new DescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IDescriptorProto); + + /** DescriptorProto name. */ + public name: string; + + /** DescriptorProto field. */ + public field: google.protobuf.IFieldDescriptorProto[]; + + /** DescriptorProto extension. */ + public extension: google.protobuf.IFieldDescriptorProto[]; + + /** DescriptorProto nestedType. */ + public nestedType: google.protobuf.IDescriptorProto[]; + + /** DescriptorProto enumType. */ + public enumType: google.protobuf.IEnumDescriptorProto[]; + + /** DescriptorProto extensionRange. */ + public extensionRange: google.protobuf.DescriptorProto.IExtensionRange[]; + + /** DescriptorProto oneofDecl. */ + public oneofDecl: google.protobuf.IOneofDescriptorProto[]; + + /** DescriptorProto options. */ + public options?: (google.protobuf.IMessageOptions|null); + + /** DescriptorProto reservedRange. */ + public reservedRange: google.protobuf.DescriptorProto.IReservedRange[]; + + /** DescriptorProto reservedName. */ + public reservedName: string[]; + + /** + * Creates a new DescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns DescriptorProto instance + */ + public static create(properties?: google.protobuf.IDescriptorProto): google.protobuf.DescriptorProto; + + /** + * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. + * @param message DescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. + * @param message DescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto; + + /** + * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto; + + /** + * Verifies a DescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto; + + /** + * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. + * @param message DescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.DescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace DescriptorProto { + + /** Properties of an ExtensionRange. */ + interface IExtensionRange { + + /** ExtensionRange start */ + start?: (number|null); + + /** ExtensionRange end */ + end?: (number|null); + + /** ExtensionRange options */ + options?: (google.protobuf.IExtensionRangeOptions|null); + } + + /** Represents an ExtensionRange. */ + class ExtensionRange implements IExtensionRange { + + /** + * Constructs a new ExtensionRange. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange); + + /** ExtensionRange start. */ + public start: number; + + /** ExtensionRange end. */ + public end: number; + + /** ExtensionRange options. */ + public options?: (google.protobuf.IExtensionRangeOptions|null); + + /** + * Creates a new ExtensionRange instance using the specified properties. + * @param [properties] Properties to set + * @returns ExtensionRange instance + */ + public static create(properties?: google.protobuf.DescriptorProto.IExtensionRange): google.protobuf.DescriptorProto.ExtensionRange; + + /** + * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @param message ExtensionRange message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @param message ExtensionRange message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an ExtensionRange message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ExtensionRange; + + /** + * Decodes an ExtensionRange message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ExtensionRange; + + /** + * Verifies an ExtensionRange message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ExtensionRange + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ExtensionRange; + + /** + * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified. + * @param message ExtensionRange + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.DescriptorProto.ExtensionRange, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ExtensionRange to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ReservedRange. */ + interface IReservedRange { + + /** ReservedRange start */ + start?: (number|null); + + /** ReservedRange end */ + end?: (number|null); + } + + /** Represents a ReservedRange. */ + class ReservedRange implements IReservedRange { + + /** + * Constructs a new ReservedRange. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.DescriptorProto.IReservedRange); + + /** ReservedRange start. */ + public start: number; + + /** ReservedRange end. */ + public end: number; + + /** + * Creates a new ReservedRange instance using the specified properties. + * @param [properties] Properties to set + * @returns ReservedRange instance + */ + public static create(properties?: google.protobuf.DescriptorProto.IReservedRange): google.protobuf.DescriptorProto.ReservedRange; + + /** + * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. + * @param message ReservedRange message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. + * @param message ReservedRange message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ReservedRange message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ReservedRange; + + /** + * Decodes a ReservedRange message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ReservedRange; + + /** + * Verifies a ReservedRange message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ReservedRange + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ReservedRange; + + /** + * Creates a plain object from a ReservedRange message. Also converts values to other types if specified. + * @param message ReservedRange + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.DescriptorProto.ReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ReservedRange to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Properties of an ExtensionRangeOptions. */ + interface IExtensionRangeOptions { + + /** ExtensionRangeOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } + + /** Represents an ExtensionRangeOptions. */ + class ExtensionRangeOptions implements IExtensionRangeOptions { + + /** + * Constructs a new ExtensionRangeOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IExtensionRangeOptions); + + /** ExtensionRangeOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new ExtensionRangeOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns ExtensionRangeOptions instance + */ + public static create(properties?: google.protobuf.IExtensionRangeOptions): google.protobuf.ExtensionRangeOptions; + + /** + * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @param message ExtensionRangeOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @param message ExtensionRangeOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ExtensionRangeOptions; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ExtensionRangeOptions; + + /** + * Verifies an ExtensionRangeOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ExtensionRangeOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.ExtensionRangeOptions; + + /** + * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. + * @param message ExtensionRangeOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.ExtensionRangeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ExtensionRangeOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a FieldDescriptorProto. */ + interface IFieldDescriptorProto { + + /** FieldDescriptorProto name */ + name?: (string|null); + + /** FieldDescriptorProto number */ + number?: (number|null); + + /** FieldDescriptorProto label */ + label?: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label|null); + + /** FieldDescriptorProto type */ + type?: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type|null); + + /** FieldDescriptorProto typeName */ + typeName?: (string|null); + + /** FieldDescriptorProto extendee */ + extendee?: (string|null); + + /** FieldDescriptorProto defaultValue */ + defaultValue?: (string|null); + + /** FieldDescriptorProto oneofIndex */ + oneofIndex?: (number|null); + + /** FieldDescriptorProto jsonName */ + jsonName?: (string|null); + + /** FieldDescriptorProto options */ + options?: (google.protobuf.IFieldOptions|null); + + /** FieldDescriptorProto proto3Optional */ + proto3Optional?: (boolean|null); + } + + /** Represents a FieldDescriptorProto. */ + class FieldDescriptorProto implements IFieldDescriptorProto { + + /** + * Constructs a new FieldDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFieldDescriptorProto); + + /** FieldDescriptorProto name. */ + public name: string; + + /** FieldDescriptorProto number. */ + public number: number; + + /** FieldDescriptorProto label. */ + public label: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label); + + /** FieldDescriptorProto type. */ + public type: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type); + + /** FieldDescriptorProto typeName. */ + public typeName: string; + + /** FieldDescriptorProto extendee. */ + public extendee: string; + + /** FieldDescriptorProto defaultValue. */ + public defaultValue: string; + + /** FieldDescriptorProto oneofIndex. */ + public oneofIndex: number; + + /** FieldDescriptorProto jsonName. */ + public jsonName: string; + + /** FieldDescriptorProto options. */ + public options?: (google.protobuf.IFieldOptions|null); + + /** FieldDescriptorProto proto3Optional. */ + public proto3Optional: boolean; + + /** + * Creates a new FieldDescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns FieldDescriptorProto instance + */ + public static create(properties?: google.protobuf.IFieldDescriptorProto): google.protobuf.FieldDescriptorProto; + + /** + * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. + * @param message FieldDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. + * @param message FieldDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FieldDescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FieldDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldDescriptorProto; + + /** + * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FieldDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldDescriptorProto; + + /** + * Verifies a FieldDescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FieldDescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.FieldDescriptorProto; + + /** + * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. + * @param message FieldDescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.FieldDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FieldDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FieldDescriptorProto { + + /** Type enum. */ + enum Type { + 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 enum. */ + enum Label { + LABEL_OPTIONAL = 1, + LABEL_REQUIRED = 2, + LABEL_REPEATED = 3 + } + } + + /** Properties of an OneofDescriptorProto. */ + interface IOneofDescriptorProto { + + /** OneofDescriptorProto name */ + name?: (string|null); + + /** OneofDescriptorProto options */ + options?: (google.protobuf.IOneofOptions|null); + } + + /** Represents an OneofDescriptorProto. */ + class OneofDescriptorProto implements IOneofDescriptorProto { + + /** + * Constructs a new OneofDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IOneofDescriptorProto); + + /** OneofDescriptorProto name. */ + public name: string; + + /** OneofDescriptorProto options. */ + public options?: (google.protobuf.IOneofOptions|null); + + /** + * Creates a new OneofDescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns OneofDescriptorProto instance + */ + public static create(properties?: google.protobuf.IOneofDescriptorProto): google.protobuf.OneofDescriptorProto; + + /** + * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @param message OneofDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @param message OneofDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofDescriptorProto; + + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofDescriptorProto; + + /** + * Verifies an OneofDescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OneofDescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.OneofDescriptorProto; + + /** + * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. + * @param message OneofDescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.OneofDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OneofDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an EnumDescriptorProto. */ + interface IEnumDescriptorProto { + + /** EnumDescriptorProto name */ + name?: (string|null); + + /** EnumDescriptorProto value */ + value?: (google.protobuf.IEnumValueDescriptorProto[]|null); + + /** EnumDescriptorProto options */ + options?: (google.protobuf.IEnumOptions|null); + + /** EnumDescriptorProto reservedRange */ + reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null); + + /** EnumDescriptorProto reservedName */ + reservedName?: (string[]|null); + } + + /** Represents an EnumDescriptorProto. */ + class EnumDescriptorProto implements IEnumDescriptorProto { + + /** + * Constructs a new EnumDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumDescriptorProto); + + /** EnumDescriptorProto name. */ + public name: string; + + /** EnumDescriptorProto value. */ + public value: google.protobuf.IEnumValueDescriptorProto[]; + + /** EnumDescriptorProto options. */ + public options?: (google.protobuf.IEnumOptions|null); + + /** EnumDescriptorProto reservedRange. */ + public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[]; + + /** EnumDescriptorProto reservedName. */ + public reservedName: string[]; + + /** + * Creates a new EnumDescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns EnumDescriptorProto instance + */ + public static create(properties?: google.protobuf.IEnumDescriptorProto): google.protobuf.EnumDescriptorProto; + + /** + * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @param message EnumDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @param message EnumDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto; + + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto; + + /** + * Verifies an EnumDescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns EnumDescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto; + + /** + * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified. + * @param message EnumDescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.EnumDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this EnumDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace EnumDescriptorProto { + + /** Properties of an EnumReservedRange. */ + interface IEnumReservedRange { + + /** EnumReservedRange start */ + start?: (number|null); + + /** EnumReservedRange end */ + end?: (number|null); + } + + /** Represents an EnumReservedRange. */ + class EnumReservedRange implements IEnumReservedRange { + + /** + * Constructs a new EnumReservedRange. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange); + + /** EnumReservedRange start. */ + public start: number; + + /** EnumReservedRange end. */ + public end: number; + + /** + * Creates a new EnumReservedRange instance using the specified properties. + * @param [properties] Properties to set + * @returns EnumReservedRange instance + */ + public static create(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange): google.protobuf.EnumDescriptorProto.EnumReservedRange; + + /** + * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @param message EnumReservedRange message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @param message EnumReservedRange message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an EnumReservedRange message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto.EnumReservedRange; + + /** + * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto.EnumReservedRange; + + /** + * Verifies an EnumReservedRange message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns EnumReservedRange + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto.EnumReservedRange; + + /** + * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified. + * @param message EnumReservedRange + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.EnumDescriptorProto.EnumReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this EnumReservedRange to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Properties of an EnumValueDescriptorProto. */ + interface IEnumValueDescriptorProto { + + /** EnumValueDescriptorProto name */ + name?: (string|null); + + /** EnumValueDescriptorProto number */ + number?: (number|null); + + /** EnumValueDescriptorProto options */ + options?: (google.protobuf.IEnumValueOptions|null); + } + + /** Represents an EnumValueDescriptorProto. */ + class EnumValueDescriptorProto implements IEnumValueDescriptorProto { + + /** + * Constructs a new EnumValueDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumValueDescriptorProto); + + /** EnumValueDescriptorProto name. */ + public name: string; + + /** EnumValueDescriptorProto number. */ + public number: number; + + /** EnumValueDescriptorProto options. */ + public options?: (google.protobuf.IEnumValueOptions|null); + + /** + * Creates a new EnumValueDescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns EnumValueDescriptorProto instance + */ + public static create(properties?: google.protobuf.IEnumValueDescriptorProto): google.protobuf.EnumValueDescriptorProto; + + /** + * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @param message EnumValueDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @param message EnumValueDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueDescriptorProto; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueDescriptorProto; + + /** + * Verifies an EnumValueDescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns EnumValueDescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueDescriptorProto; + + /** + * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified. + * @param message EnumValueDescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.EnumValueDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this EnumValueDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ServiceDescriptorProto. */ + interface IServiceDescriptorProto { + + /** ServiceDescriptorProto name */ + name?: (string|null); + + /** ServiceDescriptorProto method */ + method?: (google.protobuf.IMethodDescriptorProto[]|null); + + /** ServiceDescriptorProto options */ + options?: (google.protobuf.IServiceOptions|null); + } + + /** Represents a ServiceDescriptorProto. */ + class ServiceDescriptorProto implements IServiceDescriptorProto { + + /** + * Constructs a new ServiceDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IServiceDescriptorProto); + + /** ServiceDescriptorProto name. */ + public name: string; + + /** ServiceDescriptorProto method. */ + public method: google.protobuf.IMethodDescriptorProto[]; + + /** ServiceDescriptorProto options. */ + public options?: (google.protobuf.IServiceOptions|null); + + /** + * Creates a new ServiceDescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns ServiceDescriptorProto instance + */ + public static create(properties?: google.protobuf.IServiceDescriptorProto): google.protobuf.ServiceDescriptorProto; + + /** + * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @param message ServiceDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @param message ServiceDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceDescriptorProto; + + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceDescriptorProto; + + /** + * Verifies a ServiceDescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ServiceDescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceDescriptorProto; + + /** + * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified. + * @param message ServiceDescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.ServiceDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ServiceDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MethodDescriptorProto. */ + interface IMethodDescriptorProto { + + /** MethodDescriptorProto name */ + name?: (string|null); + + /** MethodDescriptorProto inputType */ + inputType?: (string|null); + + /** MethodDescriptorProto outputType */ + outputType?: (string|null); + + /** MethodDescriptorProto options */ + options?: (google.protobuf.IMethodOptions|null); + + /** MethodDescriptorProto clientStreaming */ + clientStreaming?: (boolean|null); + + /** MethodDescriptorProto serverStreaming */ + serverStreaming?: (boolean|null); + } + + /** Represents a MethodDescriptorProto. */ + class MethodDescriptorProto implements IMethodDescriptorProto { + + /** + * Constructs a new MethodDescriptorProto. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IMethodDescriptorProto); + + /** MethodDescriptorProto name. */ + public name: string; + + /** MethodDescriptorProto inputType. */ + public inputType: string; + + /** MethodDescriptorProto outputType. */ + public outputType: string; + + /** MethodDescriptorProto options. */ + public options?: (google.protobuf.IMethodOptions|null); + + /** MethodDescriptorProto clientStreaming. */ + public clientStreaming: boolean; + + /** MethodDescriptorProto serverStreaming. */ + public serverStreaming: boolean; + + /** + * Creates a new MethodDescriptorProto instance using the specified properties. + * @param [properties] Properties to set + * @returns MethodDescriptorProto instance + */ + public static create(properties?: google.protobuf.IMethodDescriptorProto): google.protobuf.MethodDescriptorProto; + + /** + * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @param message MethodDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @param message MethodDescriptorProto message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodDescriptorProto; + + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodDescriptorProto; + + /** + * Verifies a MethodDescriptorProto message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MethodDescriptorProto + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.MethodDescriptorProto; + + /** + * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified. + * @param message MethodDescriptorProto + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.MethodDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MethodDescriptorProto to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a FileOptions. */ + interface IFileOptions { + + /** FileOptions javaPackage */ + javaPackage?: (string|null); + + /** FileOptions javaOuterClassname */ + javaOuterClassname?: (string|null); + + /** FileOptions javaMultipleFiles */ + javaMultipleFiles?: (boolean|null); + + /** FileOptions javaGenerateEqualsAndHash */ + javaGenerateEqualsAndHash?: (boolean|null); + + /** FileOptions javaStringCheckUtf8 */ + javaStringCheckUtf8?: (boolean|null); + + /** FileOptions optimizeFor */ + optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null); + + /** FileOptions goPackage */ + goPackage?: (string|null); + + /** FileOptions ccGenericServices */ + ccGenericServices?: (boolean|null); + + /** FileOptions javaGenericServices */ + javaGenericServices?: (boolean|null); + + /** FileOptions pyGenericServices */ + pyGenericServices?: (boolean|null); + + /** FileOptions phpGenericServices */ + phpGenericServices?: (boolean|null); + + /** FileOptions deprecated */ + deprecated?: (boolean|null); + + /** FileOptions ccEnableArenas */ + ccEnableArenas?: (boolean|null); + + /** FileOptions objcClassPrefix */ + objcClassPrefix?: (string|null); + + /** FileOptions csharpNamespace */ + csharpNamespace?: (string|null); + + /** FileOptions swiftPrefix */ + swiftPrefix?: (string|null); + + /** FileOptions phpClassPrefix */ + phpClassPrefix?: (string|null); + + /** FileOptions phpNamespace */ + phpNamespace?: (string|null); + + /** FileOptions phpMetadataNamespace */ + phpMetadataNamespace?: (string|null); + + /** FileOptions rubyPackage */ + rubyPackage?: (string|null); + + /** FileOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + + /** FileOptions .google.api.resourceDefinition */ + ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null); + } + + /** Represents a FileOptions. */ + class FileOptions implements IFileOptions { + + /** + * Constructs a new FileOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFileOptions); + + /** FileOptions javaPackage. */ + public javaPackage: string; + + /** FileOptions javaOuterClassname. */ + public javaOuterClassname: string; + + /** FileOptions javaMultipleFiles. */ + public javaMultipleFiles: boolean; + + /** FileOptions javaGenerateEqualsAndHash. */ + public javaGenerateEqualsAndHash: boolean; + + /** FileOptions javaStringCheckUtf8. */ + public javaStringCheckUtf8: boolean; + + /** FileOptions optimizeFor. */ + public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode); + + /** FileOptions goPackage. */ + public goPackage: string; + + /** FileOptions ccGenericServices. */ + public ccGenericServices: boolean; + + /** FileOptions javaGenericServices. */ + public javaGenericServices: boolean; + + /** FileOptions pyGenericServices. */ + public pyGenericServices: boolean; + + /** FileOptions phpGenericServices. */ + public phpGenericServices: boolean; + + /** FileOptions deprecated. */ + public deprecated: boolean; + + /** FileOptions ccEnableArenas. */ + public ccEnableArenas: boolean; + + /** FileOptions objcClassPrefix. */ + public objcClassPrefix: string; + + /** FileOptions csharpNamespace. */ + public csharpNamespace: string; + + /** FileOptions swiftPrefix. */ + public swiftPrefix: string; + + /** FileOptions phpClassPrefix. */ + public phpClassPrefix: string; + + /** FileOptions phpNamespace. */ + public phpNamespace: string; + + /** FileOptions phpMetadataNamespace. */ + public phpMetadataNamespace: string; + + /** FileOptions rubyPackage. */ + public rubyPackage: string; + + /** FileOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new FileOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns FileOptions instance + */ + public static create(properties?: google.protobuf.IFileOptions): google.protobuf.FileOptions; + + /** + * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @param message FileOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @param message FileOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FileOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileOptions; + + /** + * Decodes a FileOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileOptions; + + /** + * Verifies a FileOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FileOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FileOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.FileOptions; + + /** + * Creates a plain object from a FileOptions message. Also converts values to other types if specified. + * @param message FileOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.FileOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FileOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FileOptions { + + /** OptimizeMode enum. */ + enum OptimizeMode { + SPEED = 1, + CODE_SIZE = 2, + LITE_RUNTIME = 3 + } + } + + /** Properties of a MessageOptions. */ + interface IMessageOptions { + + /** MessageOptions messageSetWireFormat */ + messageSetWireFormat?: (boolean|null); + + /** MessageOptions noStandardDescriptorAccessor */ + noStandardDescriptorAccessor?: (boolean|null); + + /** MessageOptions deprecated */ + deprecated?: (boolean|null); + + /** MessageOptions mapEntry */ + mapEntry?: (boolean|null); + + /** MessageOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + + /** MessageOptions .google.api.resource */ + ".google.api.resource"?: (google.api.IResourceDescriptor|null); + } + + /** Represents a MessageOptions. */ + class MessageOptions implements IMessageOptions { + + /** + * Constructs a new MessageOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IMessageOptions); + + /** MessageOptions messageSetWireFormat. */ + public messageSetWireFormat: boolean; + + /** MessageOptions noStandardDescriptorAccessor. */ + public noStandardDescriptorAccessor: boolean; + + /** MessageOptions deprecated. */ + public deprecated: boolean; + + /** MessageOptions mapEntry. */ + public mapEntry: boolean; + + /** MessageOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new MessageOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns MessageOptions instance + */ + public static create(properties?: google.protobuf.IMessageOptions): google.protobuf.MessageOptions; + + /** + * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @param message MessageOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @param message MessageOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MessageOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MessageOptions; + + /** + * Decodes a MessageOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MessageOptions; + + /** + * Verifies a MessageOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MessageOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.MessageOptions; + + /** + * Creates a plain object from a MessageOptions message. Also converts values to other types if specified. + * @param message MessageOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.MessageOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MessageOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a FieldOptions. */ + interface IFieldOptions { + + /** FieldOptions ctype */ + ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null); + + /** FieldOptions packed */ + packed?: (boolean|null); + + /** FieldOptions jstype */ + jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null); + + /** FieldOptions lazy */ + lazy?: (boolean|null); + + /** FieldOptions deprecated */ + deprecated?: (boolean|null); + + /** FieldOptions weak */ + weak?: (boolean|null); + + /** FieldOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + + /** FieldOptions .google.api.fieldBehavior */ + ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null); + + /** FieldOptions .google.api.resourceReference */ + ".google.api.resourceReference"?: (google.api.IResourceReference|null); + } + + /** Represents a FieldOptions. */ + class FieldOptions implements IFieldOptions { + + /** + * Constructs a new FieldOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IFieldOptions); + + /** FieldOptions ctype. */ + public ctype: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType); + + /** FieldOptions packed. */ + public packed: boolean; + + /** FieldOptions jstype. */ + public jstype: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType); + + /** FieldOptions lazy. */ + public lazy: boolean; + + /** FieldOptions deprecated. */ + public deprecated: boolean; + + /** FieldOptions weak. */ + public weak: boolean; + + /** FieldOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new FieldOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns FieldOptions instance + */ + public static create(properties?: google.protobuf.IFieldOptions): google.protobuf.FieldOptions; + + /** + * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @param message FieldOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @param message FieldOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a FieldOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldOptions; + + /** + * Decodes a FieldOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldOptions; + + /** + * Verifies a FieldOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns FieldOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.FieldOptions; + + /** + * Creates a plain object from a FieldOptions message. Also converts values to other types if specified. + * @param message FieldOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.FieldOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this FieldOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace FieldOptions { + + /** CType enum. */ + enum CType { + STRING = 0, + CORD = 1, + STRING_PIECE = 2 + } + + /** JSType enum. */ + enum JSType { + JS_NORMAL = 0, + JS_STRING = 1, + JS_NUMBER = 2 + } + } + + /** Properties of an OneofOptions. */ + interface IOneofOptions { + + /** OneofOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } + + /** Represents an OneofOptions. */ + class OneofOptions implements IOneofOptions { + + /** + * Constructs a new OneofOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IOneofOptions); + + /** OneofOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new OneofOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns OneofOptions instance + */ + public static create(properties?: google.protobuf.IOneofOptions): google.protobuf.OneofOptions; + + /** + * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @param message OneofOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @param message OneofOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an OneofOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofOptions; + + /** + * Decodes an OneofOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofOptions; + + /** + * Verifies an OneofOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns OneofOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.OneofOptions; + + /** + * Creates a plain object from an OneofOptions message. Also converts values to other types if specified. + * @param message OneofOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.OneofOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this OneofOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an EnumOptions. */ + interface IEnumOptions { + + /** EnumOptions allowAlias */ + allowAlias?: (boolean|null); + + /** EnumOptions deprecated */ + deprecated?: (boolean|null); + + /** EnumOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } + + /** Represents an EnumOptions. */ + class EnumOptions implements IEnumOptions { + + /** + * Constructs a new EnumOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumOptions); + + /** EnumOptions allowAlias. */ + public allowAlias: boolean; + + /** EnumOptions deprecated. */ + public deprecated: boolean; + + /** EnumOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new EnumOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns EnumOptions instance + */ + public static create(properties?: google.protobuf.IEnumOptions): google.protobuf.EnumOptions; + + /** + * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @param message EnumOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @param message EnumOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an EnumOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumOptions; + + /** + * Decodes an EnumOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumOptions; + + /** + * Verifies an EnumOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns EnumOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.EnumOptions; + + /** + * Creates a plain object from an EnumOptions message. Also converts values to other types if specified. + * @param message EnumOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.EnumOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this EnumOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an EnumValueOptions. */ + interface IEnumValueOptions { + + /** EnumValueOptions deprecated */ + deprecated?: (boolean|null); + + /** EnumValueOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + } + + /** Represents an EnumValueOptions. */ + class EnumValueOptions implements IEnumValueOptions { + + /** + * Constructs a new EnumValueOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEnumValueOptions); + + /** EnumValueOptions deprecated. */ + public deprecated: boolean; + + /** EnumValueOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new EnumValueOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns EnumValueOptions instance + */ + public static create(properties?: google.protobuf.IEnumValueOptions): google.protobuf.EnumValueOptions; + + /** + * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @param message EnumValueOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @param message EnumValueOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an EnumValueOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueOptions; + + /** + * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueOptions; + + /** + * Verifies an EnumValueOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns EnumValueOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueOptions; + + /** + * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified. + * @param message EnumValueOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.EnumValueOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this EnumValueOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ServiceOptions. */ + interface IServiceOptions { + + /** ServiceOptions deprecated */ + deprecated?: (boolean|null); + + /** ServiceOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + + /** ServiceOptions .google.api.defaultHost */ + ".google.api.defaultHost"?: (string|null); + + /** ServiceOptions .google.api.oauthScopes */ + ".google.api.oauthScopes"?: (string|null); + } + + /** Represents a ServiceOptions. */ + class ServiceOptions implements IServiceOptions { + + /** + * Constructs a new ServiceOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IServiceOptions); + + /** ServiceOptions deprecated. */ + public deprecated: boolean; + + /** ServiceOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new ServiceOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns ServiceOptions instance + */ + public static create(properties?: google.protobuf.IServiceOptions): google.protobuf.ServiceOptions; + + /** + * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @param message ServiceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @param message ServiceOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ServiceOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceOptions; + + /** + * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceOptions; + + /** + * Verifies a ServiceOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ServiceOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceOptions; + + /** + * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified. + * @param message ServiceOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.ServiceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ServiceOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a MethodOptions. */ + interface IMethodOptions { + + /** MethodOptions deprecated */ + deprecated?: (boolean|null); + + /** MethodOptions idempotencyLevel */ + idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null); + + /** MethodOptions uninterpretedOption */ + uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null); + + /** MethodOptions .google.api.http */ + ".google.api.http"?: (google.api.IHttpRule|null); + + /** MethodOptions .google.api.methodSignature */ + ".google.api.methodSignature"?: (string[]|null); + } + + /** Represents a MethodOptions. */ + class MethodOptions implements IMethodOptions { + + /** + * Constructs a new MethodOptions. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IMethodOptions); + + /** MethodOptions deprecated. */ + public deprecated: boolean; + + /** MethodOptions idempotencyLevel. */ + public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel); + + /** MethodOptions uninterpretedOption. */ + public uninterpretedOption: google.protobuf.IUninterpretedOption[]; + + /** + * Creates a new MethodOptions instance using the specified properties. + * @param [properties] Properties to set + * @returns MethodOptions instance + */ + public static create(properties?: google.protobuf.IMethodOptions): google.protobuf.MethodOptions; + + /** + * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @param message MethodOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @param message MethodOptions message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a MethodOptions message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodOptions; + + /** + * Decodes a MethodOptions message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodOptions; + + /** + * Verifies a MethodOptions message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns MethodOptions + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.MethodOptions; + + /** + * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. + * @param message MethodOptions + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.MethodOptions, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this MethodOptions to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace MethodOptions { + + /** IdempotencyLevel enum. */ + enum IdempotencyLevel { + IDEMPOTENCY_UNKNOWN = 0, + NO_SIDE_EFFECTS = 1, + IDEMPOTENT = 2 + } + } + + /** Properties of an UninterpretedOption. */ + interface IUninterpretedOption { + + /** UninterpretedOption name */ + name?: (google.protobuf.UninterpretedOption.INamePart[]|null); + + /** UninterpretedOption identifierValue */ + identifierValue?: (string|null); + + /** UninterpretedOption positiveIntValue */ + positiveIntValue?: (number|Long|string|null); + + /** UninterpretedOption negativeIntValue */ + negativeIntValue?: (number|Long|string|null); + + /** UninterpretedOption doubleValue */ + doubleValue?: (number|null); + + /** UninterpretedOption stringValue */ + stringValue?: (Uint8Array|string|null); + + /** UninterpretedOption aggregateValue */ + aggregateValue?: (string|null); + } + + /** Represents an UninterpretedOption. */ + class UninterpretedOption implements IUninterpretedOption { + + /** + * Constructs a new UninterpretedOption. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IUninterpretedOption); + + /** UninterpretedOption name. */ + public name: google.protobuf.UninterpretedOption.INamePart[]; + + /** UninterpretedOption identifierValue. */ + public identifierValue: string; + + /** UninterpretedOption positiveIntValue. */ + public positiveIntValue: (number|Long|string); + + /** UninterpretedOption negativeIntValue. */ + public negativeIntValue: (number|Long|string); + + /** UninterpretedOption doubleValue. */ + public doubleValue: number; + + /** UninterpretedOption stringValue. */ + public stringValue: (Uint8Array|string); + + /** UninterpretedOption aggregateValue. */ + public aggregateValue: string; + + /** + * Creates a new UninterpretedOption instance using the specified properties. + * @param [properties] Properties to set + * @returns UninterpretedOption instance + */ + public static create(properties?: google.protobuf.IUninterpretedOption): google.protobuf.UninterpretedOption; + + /** + * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @param message UninterpretedOption message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @param message UninterpretedOption message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an UninterpretedOption message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption; + + /** + * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption; + + /** + * Verifies an UninterpretedOption message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UninterpretedOption + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption; - /** - * Encodes the specified GetAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. - * @param message GetAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified. + * @param message UninterpretedOption + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.UninterpretedOption, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Decodes a GetAttestorRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns GetAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; + /** + * Converts this UninterpretedOption to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes a GetAttestorRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns GetAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; + namespace UninterpretedOption { - /** - * Verifies a GetAttestorRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Properties of a NamePart. */ + interface INamePart { - /** - * Creates a GetAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns GetAttestorRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.GetAttestorRequest; + /** NamePart namePart */ + namePart: string; - /** - * Creates a plain object from a GetAttestorRequest message. Also converts values to other types if specified. - * @param message GetAttestorRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.GetAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** NamePart isExtension */ + isExtension: boolean; + } - /** - * Converts this GetAttestorRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Represents a NamePart. */ + class NamePart implements INamePart { - /** Properties of an UpdateAttestorRequest. */ - interface IUpdateAttestorRequest { + /** + * Constructs a new NamePart. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.UninterpretedOption.INamePart); - /** UpdateAttestorRequest attestor */ - attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); - } + /** NamePart namePart. */ + public namePart: string; - /** Represents an UpdateAttestorRequest. */ - class UpdateAttestorRequest implements IUpdateAttestorRequest { + /** NamePart isExtension. */ + public isExtension: boolean; - /** - * Constructs a new UpdateAttestorRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest); + /** + * Creates a new NamePart instance using the specified properties. + * @param [properties] Properties to set + * @returns NamePart instance + */ + public static create(properties?: google.protobuf.UninterpretedOption.INamePart): google.protobuf.UninterpretedOption.NamePart; - /** UpdateAttestorRequest attestor. */ - public attestor?: (google.cloud.binaryauthorization.v1beta1.IAttestor|null); + /** + * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @param message NamePart message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @param message NamePart message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a NamePart message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption.NamePart; + + /** + * Decodes a NamePart message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption.NamePart; + + /** + * Verifies a NamePart message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a NamePart message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns NamePart + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption.NamePart; + + /** + * Creates a plain object from a NamePart message. Also converts values to other types if specified. + * @param message NamePart + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.UninterpretedOption.NamePart, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this NamePart to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } + + /** Properties of a SourceCodeInfo. */ + interface ISourceCodeInfo { + + /** SourceCodeInfo location */ + location?: (google.protobuf.SourceCodeInfo.ILocation[]|null); + } + + /** Represents a SourceCodeInfo. */ + class SourceCodeInfo implements ISourceCodeInfo { + + /** + * Constructs a new SourceCodeInfo. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.ISourceCodeInfo); + + /** SourceCodeInfo location. */ + public location: google.protobuf.SourceCodeInfo.ILocation[]; + + /** + * Creates a new SourceCodeInfo instance using the specified properties. + * @param [properties] Properties to set + * @returns SourceCodeInfo instance + */ + public static create(properties?: google.protobuf.ISourceCodeInfo): google.protobuf.SourceCodeInfo; + + /** + * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @param message SourceCodeInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @param message SourceCodeInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo; + + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo; + + /** + * Verifies a SourceCodeInfo message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns SourceCodeInfo + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo; + + /** + * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified. + * @param message SourceCodeInfo + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.SourceCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this SourceCodeInfo to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Creates a new UpdateAttestorRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns UpdateAttestorRequest instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; + namespace SourceCodeInfo { - /** - * Encodes the specified UpdateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. - * @param message UpdateAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** Properties of a Location. */ + interface ILocation { - /** - * Encodes the specified UpdateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. - * @param message UpdateAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** Location path */ + path?: (number[]|null); - /** - * Decodes an UpdateAttestorRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UpdateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; + /** Location span */ + span?: (number[]|null); - /** - * Decodes an UpdateAttestorRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UpdateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; + /** Location leadingComments */ + leadingComments?: (string|null); - /** - * Verifies an UpdateAttestorRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Location trailingComments */ + trailingComments?: (string|null); - /** - * Creates an UpdateAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UpdateAttestorRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest; + /** Location leadingDetachedComments */ + leadingDetachedComments?: (string[]|null); + } - /** - * Creates a plain object from an UpdateAttestorRequest message. Also converts values to other types if specified. - * @param message UpdateAttestorRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Represents a Location. */ + class Location implements ILocation { - /** - * Converts this UpdateAttestorRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Constructs a new Location. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.SourceCodeInfo.ILocation); - /** Properties of a ListAttestorsRequest. */ - interface IListAttestorsRequest { + /** Location path. */ + public path: number[]; - /** ListAttestorsRequest parent */ - parent?: (string|null); + /** Location span. */ + public span: number[]; - /** ListAttestorsRequest pageSize */ - pageSize?: (number|null); + /** Location leadingComments. */ + public leadingComments: string; - /** ListAttestorsRequest pageToken */ - pageToken?: (string|null); - } + /** Location trailingComments. */ + public trailingComments: string; - /** Represents a ListAttestorsRequest. */ - class ListAttestorsRequest implements IListAttestorsRequest { + /** Location leadingDetachedComments. */ + public leadingDetachedComments: string[]; - /** - * Constructs a new ListAttestorsRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest); + /** + * Creates a new Location instance using the specified properties. + * @param [properties] Properties to set + * @returns Location instance + */ + public static create(properties?: google.protobuf.SourceCodeInfo.ILocation): google.protobuf.SourceCodeInfo.Location; - /** ListAttestorsRequest parent. */ - public parent: string; + /** + * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @param message Location message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer; - /** ListAttestorsRequest pageSize. */ - public pageSize: number; + /** + * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @param message Location message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer; - /** ListAttestorsRequest pageToken. */ - public pageToken: string; + /** + * Decodes a Location message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo.Location; - /** - * Creates a new ListAttestorsRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns ListAttestorsRequest instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; + /** + * Decodes a Location message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo.Location; - /** - * Encodes the specified ListAttestorsRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. - * @param message ListAttestorsRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Verifies a Location message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Encodes the specified ListAttestorsRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. - * @param message ListAttestorsRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a Location message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Location + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo.Location; - /** - * Decodes a ListAttestorsRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ListAttestorsRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; + /** + * Creates a plain object from a Location message. Also converts values to other types if specified. + * @param message Location + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.SourceCodeInfo.Location, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Decodes a ListAttestorsRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ListAttestorsRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; + /** + * Converts this Location to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } - /** - * Verifies a ListAttestorsRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Properties of a GeneratedCodeInfo. */ + interface IGeneratedCodeInfo { - /** - * Creates a ListAttestorsRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ListAttestorsRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest; + /** GeneratedCodeInfo annotation */ + annotation?: (google.protobuf.GeneratedCodeInfo.IAnnotation[]|null); + } - /** - * Creates a plain object from a ListAttestorsRequest message. Also converts values to other types if specified. - * @param message ListAttestorsRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Represents a GeneratedCodeInfo. */ + class GeneratedCodeInfo implements IGeneratedCodeInfo { - /** - * Converts this ListAttestorsRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Constructs a new GeneratedCodeInfo. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IGeneratedCodeInfo); - /** Properties of a ListAttestorsResponse. */ - interface IListAttestorsResponse { + /** GeneratedCodeInfo annotation. */ + public annotation: google.protobuf.GeneratedCodeInfo.IAnnotation[]; - /** ListAttestorsResponse attestors */ - attestors?: (google.cloud.binaryauthorization.v1beta1.IAttestor[]|null); + /** + * Creates a new GeneratedCodeInfo instance using the specified properties. + * @param [properties] Properties to set + * @returns GeneratedCodeInfo instance + */ + public static create(properties?: google.protobuf.IGeneratedCodeInfo): google.protobuf.GeneratedCodeInfo; - /** ListAttestorsResponse nextPageToken */ - nextPageToken?: (string|null); - } + /** + * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @param message GeneratedCodeInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents a ListAttestorsResponse. */ - class ListAttestorsResponse implements IListAttestorsResponse { + /** + * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @param message GeneratedCodeInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Constructs a new ListAttestorsResponse. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse); + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo; - /** ListAttestorsResponse attestors. */ - public attestors: google.cloud.binaryauthorization.v1beta1.IAttestor[]; + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo; - /** ListAttestorsResponse nextPageToken. */ - public nextPageToken: string; + /** + * Verifies a GeneratedCodeInfo message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Creates a new ListAttestorsResponse instance using the specified properties. - * @param [properties] Properties to set - * @returns ListAttestorsResponse instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; + /** + * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns GeneratedCodeInfo + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo; - /** - * Encodes the specified ListAttestorsResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. - * @param message ListAttestorsResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified. + * @param message GeneratedCodeInfo + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.GeneratedCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Encodes the specified ListAttestorsResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. - * @param message ListAttestorsResponse message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Converts this GeneratedCodeInfo to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } - /** - * Decodes a ListAttestorsResponse message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ListAttestorsResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; + namespace GeneratedCodeInfo { - /** - * Decodes a ListAttestorsResponse message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ListAttestorsResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; + /** Properties of an Annotation. */ + interface IAnnotation { - /** - * Verifies a ListAttestorsResponse message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** Annotation path */ + path?: (number[]|null); - /** - * Creates a ListAttestorsResponse message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ListAttestorsResponse - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse; + /** Annotation sourceFile */ + sourceFile?: (string|null); - /** - * Creates a plain object from a ListAttestorsResponse message. Also converts values to other types if specified. - * @param message ListAttestorsResponse - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** Annotation begin */ + begin?: (number|null); - /** - * Converts this ListAttestorsResponse to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** Annotation end */ + end?: (number|null); + } - /** Properties of a DeleteAttestorRequest. */ - interface IDeleteAttestorRequest { + /** Represents an Annotation. */ + class Annotation implements IAnnotation { - /** DeleteAttestorRequest name */ - name?: (string|null); - } + /** + * Constructs a new Annotation. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation); - /** Represents a DeleteAttestorRequest. */ - class DeleteAttestorRequest implements IDeleteAttestorRequest { + /** Annotation path. */ + public path: number[]; - /** - * Constructs a new DeleteAttestorRequest. - * @param [properties] Properties to set - */ - constructor(properties?: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest); + /** Annotation sourceFile. */ + public sourceFile: string; - /** DeleteAttestorRequest name. */ - public name: string; + /** Annotation begin. */ + public begin: number; - /** - * Creates a new DeleteAttestorRequest instance using the specified properties. - * @param [properties] Properties to set - * @returns DeleteAttestorRequest instance - */ - public static create(properties?: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; + /** Annotation end. */ + public end: number; - /** - * Encodes the specified DeleteAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. - * @param message DeleteAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Creates a new Annotation instance using the specified properties. + * @param [properties] Properties to set + * @returns Annotation instance + */ + public static create(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation): google.protobuf.GeneratedCodeInfo.Annotation; - /** - * Encodes the specified DeleteAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. - * @param message DeleteAttestorRequest message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest, writer?: $protobuf.Writer): $protobuf.Writer; + /** + * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @param message Annotation message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes a DeleteAttestorRequest message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns DeleteAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; + /** + * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @param message Annotation message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer; - /** - * Decodes a DeleteAttestorRequest message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns DeleteAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; + /** + * Decodes an Annotation message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo.Annotation; + + /** + * Decodes an Annotation message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo.Annotation; - /** - * Verifies a DeleteAttestorRequest message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); + /** + * Verifies an Annotation message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** - * Creates a DeleteAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns DeleteAttestorRequest - */ - public static fromObject(object: { [k: string]: any }): google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest; + /** + * Creates an Annotation message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Annotation + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo.Annotation; - /** - * Creates a plain object from a DeleteAttestorRequest message. Also converts values to other types if specified. - * @param message DeleteAttestorRequest - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; + /** + * Creates a plain object from an Annotation message. Also converts values to other types if specified. + * @param message Annotation + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.GeneratedCodeInfo.Annotation, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** - * Converts this DeleteAttestorRequest to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } + /** + * Converts this Annotation to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; } } - } - - /** Namespace api. */ - namespace api { - /** Properties of a Http. */ - interface IHttp { + /** Properties of a Timestamp. */ + interface ITimestamp { - /** Http rules */ - rules?: (google.api.IHttpRule[]|null); + /** Timestamp seconds */ + seconds?: (number|Long|string|null); - /** Http fullyDecodeReservedExpansion */ - fullyDecodeReservedExpansion?: (boolean|null); + /** Timestamp nanos */ + nanos?: (number|null); } - /** Represents a Http. */ - class Http implements IHttp { + /** Represents a Timestamp. */ + class Timestamp implements ITimestamp { /** - * Constructs a new Http. + * Constructs a new Timestamp. * @param [properties] Properties to set */ - constructor(properties?: google.api.IHttp); + constructor(properties?: google.protobuf.ITimestamp); - /** Http rules. */ - public rules: google.api.IHttpRule[]; + /** Timestamp seconds. */ + public seconds: (number|Long|string); - /** Http fullyDecodeReservedExpansion. */ - public fullyDecodeReservedExpansion: boolean; + /** Timestamp nanos. */ + public nanos: number; /** - * Creates a new Http instance using the specified properties. + * Creates a new Timestamp instance using the specified properties. * @param [properties] Properties to set - * @returns Http instance + * @returns Timestamp instance */ - public static create(properties?: google.api.IHttp): google.api.Http; + public static create(properties?: google.protobuf.ITimestamp): google.protobuf.Timestamp; /** - * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. - * @param message Http message or plain object to encode + * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * @param message Timestamp message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. - * @param message Http message or plain object to encode + * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. + * @param message Timestamp message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a Http message from the specified reader or buffer. + * Decodes a Timestamp message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns Http + * @returns Timestamp * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.Http; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Timestamp; /** - * Decodes a Http message from the specified reader or buffer, length delimited. + * Decodes a Timestamp message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns Http + * @returns Timestamp * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.Http; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Timestamp; /** - * Verifies a Http message. + * Verifies a Timestamp message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a Http message from a plain object. Also converts values to their respective internal types. + * Creates a Timestamp message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns Http + * @returns Timestamp */ - public static fromObject(object: { [k: string]: any }): google.api.Http; + public static fromObject(object: { [k: string]: any }): google.protobuf.Timestamp; /** - * Creates a plain object from a Http message. Also converts values to other types if specified. - * @param message Http + * Creates a plain object from a Timestamp message. Also converts values to other types if specified. + * @param message Timestamp * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: google.protobuf.Timestamp, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this Http to JSON. + * Converts this Timestamp to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of a HttpRule. */ - interface IHttpRule { - - /** HttpRule selector */ - selector?: (string|null); - - /** HttpRule get */ - get?: (string|null); - - /** HttpRule put */ - put?: (string|null); - - /** HttpRule post */ - post?: (string|null); - - /** HttpRule delete */ - "delete"?: (string|null); - - /** HttpRule patch */ - patch?: (string|null); + /** Properties of an Empty. */ + interface IEmpty { + } - /** HttpRule custom */ - custom?: (google.api.ICustomHttpPattern|null); + /** Represents an Empty. */ + class Empty implements IEmpty { - /** HttpRule body */ - body?: (string|null); + /** + * Constructs a new Empty. + * @param [properties] Properties to set + */ + constructor(properties?: google.protobuf.IEmpty); - /** HttpRule responseBody */ - responseBody?: (string|null); + /** + * Creates a new Empty instance using the specified properties. + * @param [properties] Properties to set + * @returns Empty instance + */ + public static create(properties?: google.protobuf.IEmpty): google.protobuf.Empty; - /** HttpRule additionalBindings */ - additionalBindings?: (google.api.IHttpRule[]|null); - } + /** + * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @param message Empty message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer; - /** Represents a HttpRule. */ - class HttpRule implements IHttpRule { + /** + * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @param message Empty message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Constructs a new HttpRule. - * @param [properties] Properties to set + * Decodes an Empty message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - constructor(properties?: google.api.IHttpRule); + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Empty; - /** HttpRule selector. */ - public selector: string; + /** + * Decodes an Empty message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Empty; - /** HttpRule get. */ - public get?: (string|null); + /** + * Verifies an Empty message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); - /** HttpRule put. */ - public put?: (string|null); + /** + * Creates an Empty message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Empty + */ + public static fromObject(object: { [k: string]: any }): google.protobuf.Empty; - /** HttpRule post. */ - public post?: (string|null); + /** + * Creates a plain object from an Empty message. Also converts values to other types if specified. + * @param message Empty + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.protobuf.Empty, options?: $protobuf.IConversionOptions): { [k: string]: any }; - /** HttpRule delete. */ - public delete?: (string|null); + /** + * Converts this Empty to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + } +} - /** HttpRule patch. */ - public patch?: (string|null); +/** Namespace grafeas. */ +export namespace grafeas { - /** HttpRule custom. */ - public custom?: (google.api.ICustomHttpPattern|null); + /** Namespace v1. */ + namespace v1 { - /** HttpRule body. */ - public body: string; + /** Properties of an AttestationNote. */ + interface IAttestationNote { - /** HttpRule responseBody. */ - public responseBody: string; + /** AttestationNote hint */ + hint?: (grafeas.v1.AttestationNote.IHint|null); + } - /** HttpRule additionalBindings. */ - public additionalBindings: google.api.IHttpRule[]; + /** Represents an AttestationNote. */ + class AttestationNote implements IAttestationNote { - /** HttpRule pattern. */ - public pattern?: ("get"|"put"|"post"|"delete"|"patch"|"custom"); + /** + * Constructs a new AttestationNote. + * @param [properties] Properties to set + */ + constructor(properties?: grafeas.v1.IAttestationNote); + + /** AttestationNote hint. */ + public hint?: (grafeas.v1.AttestationNote.IHint|null); /** - * Creates a new HttpRule instance using the specified properties. + * Creates a new AttestationNote instance using the specified properties. * @param [properties] Properties to set - * @returns HttpRule instance + * @returns AttestationNote instance */ - public static create(properties?: google.api.IHttpRule): google.api.HttpRule; + public static create(properties?: grafeas.v1.IAttestationNote): grafeas.v1.AttestationNote; /** - * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. - * @param message HttpRule message or plain object to encode + * Encodes the specified AttestationNote message. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages. + * @param message AttestationNote message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: grafeas.v1.IAttestationNote, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. - * @param message HttpRule message or plain object to encode + * Encodes the specified AttestationNote message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages. + * @param message AttestationNote message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: grafeas.v1.IAttestationNote, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a HttpRule message from the specified reader or buffer. + * Decodes an AttestationNote message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns HttpRule + * @returns AttestationNote * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.HttpRule; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.AttestationNote; /** - * Decodes a HttpRule message from the specified reader or buffer, length delimited. + * Decodes an AttestationNote message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns HttpRule + * @returns AttestationNote * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.HttpRule; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.AttestationNote; /** - * Verifies a HttpRule message. + * Verifies an AttestationNote message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. + * Creates an AttestationNote message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns HttpRule + * @returns AttestationNote */ - public static fromObject(object: { [k: string]: any }): google.api.HttpRule; + public static fromObject(object: { [k: string]: any }): grafeas.v1.AttestationNote; /** - * Creates a plain object from a HttpRule message. Also converts values to other types if specified. - * @param message HttpRule + * Creates a plain object from an AttestationNote message. Also converts values to other types if specified. + * @param message AttestationNote * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: grafeas.v1.AttestationNote, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this HttpRule to JSON. + * Converts this AttestationNote to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** Properties of a CustomHttpPattern. */ - interface ICustomHttpPattern { + namespace AttestationNote { - /** CustomHttpPattern kind */ - kind?: (string|null); + /** Properties of a Hint. */ + interface IHint { - /** CustomHttpPattern path */ - path?: (string|null); + /** Hint humanReadableName */ + humanReadableName?: (string|null); + } + + /** Represents a Hint. */ + class Hint implements IHint { + + /** + * Constructs a new Hint. + * @param [properties] Properties to set + */ + constructor(properties?: grafeas.v1.AttestationNote.IHint); + + /** Hint humanReadableName. */ + public humanReadableName: string; + + /** + * Creates a new Hint instance using the specified properties. + * @param [properties] Properties to set + * @returns Hint instance + */ + public static create(properties?: grafeas.v1.AttestationNote.IHint): grafeas.v1.AttestationNote.Hint; + + /** + * Encodes the specified Hint message. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages. + * @param message Hint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: grafeas.v1.AttestationNote.IHint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Hint message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages. + * @param message Hint message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: grafeas.v1.AttestationNote.IHint, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Hint message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Hint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.AttestationNote.Hint; + + /** + * Decodes a Hint message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Hint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.AttestationNote.Hint; + + /** + * Verifies a Hint message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Hint message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Hint + */ + public static fromObject(object: { [k: string]: any }): grafeas.v1.AttestationNote.Hint; + + /** + * Creates a plain object from a Hint message. Also converts values to other types if specified. + * @param message Hint + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: grafeas.v1.AttestationNote.Hint, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Hint to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } } - /** Represents a CustomHttpPattern. */ - class CustomHttpPattern implements ICustomHttpPattern { + /** Properties of an AttestationOccurrence. */ + interface IAttestationOccurrence { + + /** AttestationOccurrence serializedPayload */ + serializedPayload?: (Uint8Array|string|null); + + /** AttestationOccurrence signatures */ + signatures?: (grafeas.v1.ISignature[]|null); + } + + /** Represents an AttestationOccurrence. */ + class AttestationOccurrence implements IAttestationOccurrence { /** - * Constructs a new CustomHttpPattern. + * Constructs a new AttestationOccurrence. * @param [properties] Properties to set */ - constructor(properties?: google.api.ICustomHttpPattern); + constructor(properties?: grafeas.v1.IAttestationOccurrence); - /** CustomHttpPattern kind. */ - public kind: string; + /** AttestationOccurrence serializedPayload. */ + public serializedPayload: (Uint8Array|string); - /** CustomHttpPattern path. */ - public path: string; + /** AttestationOccurrence signatures. */ + public signatures: grafeas.v1.ISignature[]; /** - * Creates a new CustomHttpPattern instance using the specified properties. + * Creates a new AttestationOccurrence instance using the specified properties. * @param [properties] Properties to set - * @returns CustomHttpPattern instance + * @returns AttestationOccurrence instance */ - public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern; + public static create(properties?: grafeas.v1.IAttestationOccurrence): grafeas.v1.AttestationOccurrence; /** - * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. - * @param message CustomHttpPattern message or plain object to encode + * Encodes the specified AttestationOccurrence message. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages. + * @param message AttestationOccurrence message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: grafeas.v1.IAttestationOccurrence, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. - * @param message CustomHttpPattern message or plain object to encode + * Encodes the specified AttestationOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages. + * @param message AttestationOccurrence message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: grafeas.v1.IAttestationOccurrence, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer. + * Decodes an AttestationOccurrence message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns CustomHttpPattern + * @returns AttestationOccurrence * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.CustomHttpPattern; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.AttestationOccurrence; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. + * Decodes an AttestationOccurrence message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns CustomHttpPattern + * @returns AttestationOccurrence * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.CustomHttpPattern; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.AttestationOccurrence; /** - * Verifies a CustomHttpPattern message. + * Verifies an AttestationOccurrence message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. + * Creates an AttestationOccurrence message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns CustomHttpPattern + * @returns AttestationOccurrence */ - public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern; + public static fromObject(object: { [k: string]: any }): grafeas.v1.AttestationOccurrence; /** - * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. - * @param message CustomHttpPattern + * Creates a plain object from an AttestationOccurrence message. Also converts values to other types if specified. + * @param message AttestationOccurrence * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: grafeas.v1.AttestationOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this CustomHttpPattern to JSON. + * Converts this AttestationOccurrence to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - /** FieldBehavior enum. */ - enum FieldBehavior { - FIELD_BEHAVIOR_UNSPECIFIED = 0, - OPTIONAL = 1, - REQUIRED = 2, - OUTPUT_ONLY = 3, - INPUT_ONLY = 4, - IMMUTABLE = 5, - UNORDERED_LIST = 6 + /** NoteKind enum. */ + enum NoteKind { + NOTE_KIND_UNSPECIFIED = 0, + VULNERABILITY = 1, + BUILD = 2, + IMAGE = 3, + PACKAGE = 4, + DEPLOYMENT = 5, + DISCOVERY = 6, + ATTESTATION = 7, + UPGRADE = 8 } - /** Properties of a ResourceDescriptor. */ - interface IResourceDescriptor { - - /** ResourceDescriptor type */ - type?: (string|null); - - /** ResourceDescriptor pattern */ - pattern?: (string[]|null); - - /** ResourceDescriptor nameField */ - nameField?: (string|null); - - /** ResourceDescriptor history */ - history?: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History|null); - - /** ResourceDescriptor plural */ - plural?: (string|null); + /** Properties of a RelatedUrl. */ + interface IRelatedUrl { - /** ResourceDescriptor singular */ - singular?: (string|null); + /** RelatedUrl url */ + url?: (string|null); - /** ResourceDescriptor style */ - style?: (google.api.ResourceDescriptor.Style[]|null); + /** RelatedUrl label */ + label?: (string|null); } - /** Represents a ResourceDescriptor. */ - class ResourceDescriptor implements IResourceDescriptor { + /** Represents a RelatedUrl. */ + class RelatedUrl implements IRelatedUrl { /** - * Constructs a new ResourceDescriptor. + * Constructs a new RelatedUrl. * @param [properties] Properties to set */ - constructor(properties?: google.api.IResourceDescriptor); - - /** ResourceDescriptor type. */ - public type: string; - - /** ResourceDescriptor pattern. */ - public pattern: string[]; - - /** ResourceDescriptor nameField. */ - public nameField: string; - - /** ResourceDescriptor history. */ - public history: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History); - - /** ResourceDescriptor plural. */ - public plural: string; + constructor(properties?: grafeas.v1.IRelatedUrl); - /** ResourceDescriptor singular. */ - public singular: string; + /** RelatedUrl url. */ + public url: string; - /** ResourceDescriptor style. */ - public style: google.api.ResourceDescriptor.Style[]; + /** RelatedUrl label. */ + public label: string; /** - * Creates a new ResourceDescriptor instance using the specified properties. + * Creates a new RelatedUrl instance using the specified properties. * @param [properties] Properties to set - * @returns ResourceDescriptor instance + * @returns RelatedUrl instance */ - public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor; + public static create(properties?: grafeas.v1.IRelatedUrl): grafeas.v1.RelatedUrl; /** - * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. - * @param message ResourceDescriptor message or plain object to encode + * Encodes the specified RelatedUrl message. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages. + * @param message RelatedUrl message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: grafeas.v1.IRelatedUrl, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. - * @param message ResourceDescriptor message or plain object to encode + * Encodes the specified RelatedUrl message, length delimited. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages. + * @param message RelatedUrl message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: grafeas.v1.IRelatedUrl, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer. + * Decodes a RelatedUrl message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns ResourceDescriptor + * @returns RelatedUrl * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceDescriptor; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.RelatedUrl; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. + * Decodes a RelatedUrl message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns ResourceDescriptor + * @returns RelatedUrl * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceDescriptor; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.RelatedUrl; /** - * Verifies a ResourceDescriptor message. + * Verifies a RelatedUrl message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. + * Creates a RelatedUrl message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns ResourceDescriptor + * @returns RelatedUrl */ - public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor; + public static fromObject(object: { [k: string]: any }): grafeas.v1.RelatedUrl; /** - * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. - * @param message ResourceDescriptor + * Creates a plain object from a RelatedUrl message. Also converts values to other types if specified. + * @param message RelatedUrl * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: grafeas.v1.RelatedUrl, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this ResourceDescriptor to JSON. + * Converts this RelatedUrl to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - namespace ResourceDescriptor { - - /** History enum. */ - enum History { - HISTORY_UNSPECIFIED = 0, - ORIGINALLY_SINGLE_PATTERN = 1, - FUTURE_MULTI_PATTERN = 2 - } - - /** Style enum. */ - enum Style { - STYLE_UNSPECIFIED = 0, - DECLARATIVE_FRIENDLY = 1 - } - } - - /** Properties of a ResourceReference. */ - interface IResourceReference { + /** Properties of a Signature. */ + interface ISignature { - /** ResourceReference type */ - type?: (string|null); + /** Signature signature */ + signature?: (Uint8Array|string|null); - /** ResourceReference childType */ - childType?: (string|null); + /** Signature publicKeyId */ + publicKeyId?: (string|null); } - /** Represents a ResourceReference. */ - class ResourceReference implements IResourceReference { + /** Represents a Signature. */ + class Signature implements ISignature { /** - * Constructs a new ResourceReference. + * Constructs a new Signature. * @param [properties] Properties to set */ - constructor(properties?: google.api.IResourceReference); + constructor(properties?: grafeas.v1.ISignature); - /** ResourceReference type. */ - public type: string; + /** Signature signature. */ + public signature: (Uint8Array|string); - /** ResourceReference childType. */ - public childType: string; + /** Signature publicKeyId. */ + public publicKeyId: string; /** - * Creates a new ResourceReference instance using the specified properties. + * Creates a new Signature instance using the specified properties. * @param [properties] Properties to set - * @returns ResourceReference instance + * @returns Signature instance */ - public static create(properties?: google.api.IResourceReference): google.api.ResourceReference; + public static create(properties?: grafeas.v1.ISignature): grafeas.v1.Signature; /** - * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. - * @param message ResourceReference message or plain object to encode + * Encodes the specified Signature message. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages. + * @param message Signature message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: grafeas.v1.ISignature, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. - * @param message ResourceReference message or plain object to encode + * Encodes the specified Signature message, length delimited. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages. + * @param message Signature message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: grafeas.v1.ISignature, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a ResourceReference message from the specified reader or buffer. + * Decodes a Signature message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns ResourceReference + * @returns Signature * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceReference; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.Signature; /** - * Decodes a ResourceReference message from the specified reader or buffer, length delimited. + * Decodes a Signature message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns ResourceReference + * @returns Signature * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceReference; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.Signature; /** - * Verifies a ResourceReference message. + * Verifies a Signature message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. + * Creates a Signature message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns ResourceReference + * @returns Signature */ - public static fromObject(object: { [k: string]: any }): google.api.ResourceReference; + public static fromObject(object: { [k: string]: any }): grafeas.v1.Signature; /** - * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. - * @param message ResourceReference + * Creates a plain object from a Signature message. Also converts values to other types if specified. + * @param message Signature * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: google.api.ResourceReference, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: grafeas.v1.Signature, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this ResourceReference to JSON. + * Converts this Signature to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; diff --git a/protos/protos.js b/protos/protos.js index 1decd96..8ba7a17 100644 --- a/protos/protos.js +++ b/protos/protos.js @@ -39,5668 +39,10313 @@ */ var google = {}; - google.protobuf = (function() { + google.cloud = (function() { /** - * Namespace protobuf. + * Namespace cloud. * @memberof google * @namespace */ - var protobuf = {}; - - protobuf.Timestamp = (function() { - - /** - * Properties of a Timestamp. - * @memberof google.protobuf - * @interface ITimestamp - * @property {number|Long|null} [seconds] Timestamp seconds - * @property {number|null} [nanos] Timestamp nanos - */ + var cloud = {}; - /** - * Constructs a new Timestamp. - * @memberof google.protobuf - * @classdesc Represents a Timestamp. - * @implements ITimestamp - * @constructor - * @param {google.protobuf.ITimestamp=} [properties] Properties to set - */ - function Timestamp(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + cloud.binaryauthorization = (function() { /** - * Timestamp seconds. - * @member {number|Long} seconds - * @memberof google.protobuf.Timestamp - * @instance + * Namespace binaryauthorization. + * @memberof google.cloud + * @namespace */ - Timestamp.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + var binaryauthorization = {}; - /** - * Timestamp nanos. - * @member {number} nanos - * @memberof google.protobuf.Timestamp - * @instance - */ - Timestamp.prototype.nanos = 0; + binaryauthorization.v1 = (function() { - /** - * Creates a new Timestamp instance using the specified properties. - * @function create - * @memberof google.protobuf.Timestamp - * @static - * @param {google.protobuf.ITimestamp=} [properties] Properties to set - * @returns {google.protobuf.Timestamp} Timestamp instance - */ - Timestamp.create = function create(properties) { - return new Timestamp(properties); - }; + /** + * Namespace v1. + * @memberof google.cloud.binaryauthorization + * @namespace + */ + var v1 = {}; - /** - * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. - * @function encode - * @memberof google.protobuf.Timestamp - * @static - * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Timestamp.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) - writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); - if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); - return writer; - }; + v1.Policy = (function() { - /** - * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.Timestamp - * @static - * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Timestamp.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Properties of a Policy. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IPolicy + * @property {string|null} [name] Policy name + * @property {string|null} [description] Policy description + * @property {google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode|null} [globalPolicyEvaluationMode] Policy globalPolicyEvaluationMode + * @property {Array.|null} [admissionWhitelistPatterns] Policy admissionWhitelistPatterns + * @property {Object.|null} [clusterAdmissionRules] Policy clusterAdmissionRules + * @property {Object.|null} [kubernetesNamespaceAdmissionRules] Policy kubernetesNamespaceAdmissionRules + * @property {Object.|null} [kubernetesServiceAccountAdmissionRules] Policy kubernetesServiceAccountAdmissionRules + * @property {Object.|null} [istioServiceIdentityAdmissionRules] Policy istioServiceIdentityAdmissionRules + * @property {google.cloud.binaryauthorization.v1.IAdmissionRule|null} [defaultAdmissionRule] Policy defaultAdmissionRule + * @property {google.protobuf.ITimestamp|null} [updateTime] Policy updateTime + */ - /** - * Decodes a Timestamp message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.Timestamp - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.Timestamp} Timestamp - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Timestamp.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.seconds = reader.int64(); - break; - case 2: - message.nanos = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Constructs a new Policy. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a Policy. + * @implements IPolicy + * @constructor + * @param {google.cloud.binaryauthorization.v1.IPolicy=} [properties] Properties to set + */ + function Policy(properties) { + this.admissionWhitelistPatterns = []; + this.clusterAdmissionRules = {}; + this.kubernetesNamespaceAdmissionRules = {}; + this.kubernetesServiceAccountAdmissionRules = {}; + this.istioServiceIdentityAdmissionRules = {}; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; } - } - return message; - }; - /** - * Decodes a Timestamp message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.Timestamp - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.Timestamp} Timestamp - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Timestamp.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Policy name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.name = ""; - /** - * Verifies a Timestamp message. - * @function verify - * @memberof google.protobuf.Timestamp - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Timestamp.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.seconds != null && message.hasOwnProperty("seconds")) - if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) - return "seconds: integer|Long expected"; - if (message.nanos != null && message.hasOwnProperty("nanos")) - if (!$util.isInteger(message.nanos)) - return "nanos: integer expected"; - return null; - }; + /** + * Policy description. + * @member {string} description + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.description = ""; - /** - * Creates a Timestamp message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.Timestamp - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.Timestamp} Timestamp - */ - Timestamp.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.Timestamp) - return object; - var message = new $root.google.protobuf.Timestamp(); - if (object.seconds != null) - if ($util.Long) - (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; - else if (typeof object.seconds === "string") - message.seconds = parseInt(object.seconds, 10); - else if (typeof object.seconds === "number") - message.seconds = object.seconds; - else if (typeof object.seconds === "object") - message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); - if (object.nanos != null) - message.nanos = object.nanos | 0; - return message; - }; + /** + * Policy globalPolicyEvaluationMode. + * @member {google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode} globalPolicyEvaluationMode + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.globalPolicyEvaluationMode = 0; - /** - * Creates a plain object from a Timestamp message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.Timestamp - * @static - * @param {google.protobuf.Timestamp} message Timestamp - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Timestamp.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.seconds = options.longs === String ? "0" : 0; - object.nanos = 0; - } - if (message.seconds != null && message.hasOwnProperty("seconds")) - if (typeof message.seconds === "number") - object.seconds = options.longs === String ? String(message.seconds) : message.seconds; - else - object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; - if (message.nanos != null && message.hasOwnProperty("nanos")) - object.nanos = message.nanos; - return object; - }; + /** + * Policy admissionWhitelistPatterns. + * @member {Array.} admissionWhitelistPatterns + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.admissionWhitelistPatterns = $util.emptyArray; - /** - * Converts this Timestamp to JSON. - * @function toJSON - * @memberof google.protobuf.Timestamp - * @instance - * @returns {Object.} JSON object - */ - Timestamp.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return Timestamp; - })(); - - protobuf.FileDescriptorSet = (function() { - - /** - * Properties of a FileDescriptorSet. - * @memberof google.protobuf - * @interface IFileDescriptorSet - * @property {Array.|null} [file] FileDescriptorSet file - */ - - /** - * Constructs a new FileDescriptorSet. - * @memberof google.protobuf - * @classdesc Represents a FileDescriptorSet. - * @implements IFileDescriptorSet - * @constructor - * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set - */ - function FileDescriptorSet(properties) { - this.file = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Policy clusterAdmissionRules. + * @member {Object.} clusterAdmissionRules + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.clusterAdmissionRules = $util.emptyObject; - /** - * FileDescriptorSet file. - * @member {Array.} file - * @memberof google.protobuf.FileDescriptorSet - * @instance - */ - FileDescriptorSet.prototype.file = $util.emptyArray; + /** + * Policy kubernetesNamespaceAdmissionRules. + * @member {Object.} kubernetesNamespaceAdmissionRules + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.kubernetesNamespaceAdmissionRules = $util.emptyObject; - /** - * Creates a new FileDescriptorSet instance using the specified properties. - * @function create - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet instance - */ - FileDescriptorSet.create = function create(properties) { - return new FileDescriptorSet(properties); - }; + /** + * Policy kubernetesServiceAccountAdmissionRules. + * @member {Object.} kubernetesServiceAccountAdmissionRules + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.kubernetesServiceAccountAdmissionRules = $util.emptyObject; - /** - * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorSet.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.file != null && message.file.length) - for (var i = 0; i < message.file.length; ++i) - $root.google.protobuf.FileDescriptorProto.encode(message.file[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; + /** + * Policy istioServiceIdentityAdmissionRules. + * @member {Object.} istioServiceIdentityAdmissionRules + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.istioServiceIdentityAdmissionRules = $util.emptyObject; - /** - * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorSet.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Policy defaultAdmissionRule. + * @member {google.cloud.binaryauthorization.v1.IAdmissionRule|null|undefined} defaultAdmissionRule + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.defaultAdmissionRule = null; - /** - * Decodes a FileDescriptorSet message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorSet.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.file && message.file.length)) - message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Policy updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + */ + Policy.prototype.updateTime = null; - /** - * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorSet.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a new Policy instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1.IPolicy=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.Policy} Policy instance + */ + Policy.create = function create(properties) { + return new Policy(properties); + }; - /** - * Verifies a FileDescriptorSet message. - * @function verify - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FileDescriptorSet.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.file != null && message.hasOwnProperty("file")) { - if (!Array.isArray(message.file)) - return "file: array expected"; - for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); - if (error) - return "file." + error; - } - } - return null; - }; + /** + * Encodes the specified Policy message. Does not implicitly {@link google.cloud.binaryauthorization.v1.Policy.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1.IPolicy} message Policy message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Policy.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.admissionWhitelistPatterns != null && message.admissionWhitelistPatterns.length) + for (var i = 0; i < message.admissionWhitelistPatterns.length; ++i) + $root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.encode(message.admissionWhitelistPatterns[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.clusterAdmissionRules != null && Object.hasOwnProperty.call(message, "clusterAdmissionRules")) + for (var keys = Object.keys(message.clusterAdmissionRules), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 3, wireType 2 =*/26).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.binaryauthorization.v1.AdmissionRule.encode(message.clusterAdmissionRules[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.defaultAdmissionRule != null && Object.hasOwnProperty.call(message, "defaultAdmissionRule")) + $root.google.cloud.binaryauthorization.v1.AdmissionRule.encode(message.defaultAdmissionRule, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); + if (message.globalPolicyEvaluationMode != null && Object.hasOwnProperty.call(message, "globalPolicyEvaluationMode")) + writer.uint32(/* id 7, wireType 0 =*/56).int32(message.globalPolicyEvaluationMode); + if (message.kubernetesServiceAccountAdmissionRules != null && Object.hasOwnProperty.call(message, "kubernetesServiceAccountAdmissionRules")) + for (var keys = Object.keys(message.kubernetesServiceAccountAdmissionRules), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 8, wireType 2 =*/66).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.binaryauthorization.v1.AdmissionRule.encode(message.kubernetesServiceAccountAdmissionRules[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.istioServiceIdentityAdmissionRules != null && Object.hasOwnProperty.call(message, "istioServiceIdentityAdmissionRules")) + for (var keys = Object.keys(message.istioServiceIdentityAdmissionRules), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 9, wireType 2 =*/74).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.binaryauthorization.v1.AdmissionRule.encode(message.istioServiceIdentityAdmissionRules[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.kubernetesNamespaceAdmissionRules != null && Object.hasOwnProperty.call(message, "kubernetesNamespaceAdmissionRules")) + for (var keys = Object.keys(message.kubernetesNamespaceAdmissionRules), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 10, wireType 2 =*/82).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.binaryauthorization.v1.AdmissionRule.encode(message.kubernetesNamespaceAdmissionRules[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + return writer; + }; - /** - * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet - */ - FileDescriptorSet.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FileDescriptorSet) - return object; - var message = new $root.google.protobuf.FileDescriptorSet(); - if (object.file) { - if (!Array.isArray(object.file)) - throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected"); - message.file = []; - for (var i = 0; i < object.file.length; ++i) { - if (typeof object.file[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); - } - } - return message; - }; + /** + * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.Policy.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1.IPolicy} message Policy message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Policy.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FileDescriptorSet - * @static - * @param {google.protobuf.FileDescriptorSet} message FileDescriptorSet - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FileDescriptorSet.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.file = []; - if (message.file && message.file.length) { - object.file = []; - for (var j = 0; j < message.file.length; ++j) - object.file[j] = $root.google.protobuf.FileDescriptorProto.toObject(message.file[j], options); - } - return object; - }; - - /** - * Converts this FileDescriptorSet to JSON. - * @function toJSON - * @memberof google.protobuf.FileDescriptorSet - * @instance - * @returns {Object.} JSON object - */ - FileDescriptorSet.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return FileDescriptorSet; - })(); + /** + * Decodes a Policy message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.Policy} Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Policy.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.Policy(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 6: + message.description = reader.string(); + break; + case 7: + message.globalPolicyEvaluationMode = reader.int32(); + break; + case 2: + if (!(message.admissionWhitelistPatterns && message.admissionWhitelistPatterns.length)) + message.admissionWhitelistPatterns = []; + message.admissionWhitelistPatterns.push($root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.decode(reader, reader.uint32())); + break; + case 3: + if (message.clusterAdmissionRules === $util.emptyObject) + message.clusterAdmissionRules = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.binaryauthorization.v1.AdmissionRule.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.clusterAdmissionRules[key] = value; + break; + case 10: + if (message.kubernetesNamespaceAdmissionRules === $util.emptyObject) + message.kubernetesNamespaceAdmissionRules = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.binaryauthorization.v1.AdmissionRule.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.kubernetesNamespaceAdmissionRules[key] = value; + break; + case 8: + if (message.kubernetesServiceAccountAdmissionRules === $util.emptyObject) + message.kubernetesServiceAccountAdmissionRules = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.binaryauthorization.v1.AdmissionRule.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.kubernetesServiceAccountAdmissionRules[key] = value; + break; + case 9: + if (message.istioServiceIdentityAdmissionRules === $util.emptyObject) + message.istioServiceIdentityAdmissionRules = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.binaryauthorization.v1.AdmissionRule.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.istioServiceIdentityAdmissionRules[key] = value; + break; + case 4: + message.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1.AdmissionRule.decode(reader, reader.uint32()); + break; + case 5: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - protobuf.FileDescriptorProto = (function() { + /** + * Decodes a Policy message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.Policy} Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Policy.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Properties of a FileDescriptorProto. - * @memberof google.protobuf - * @interface IFileDescriptorProto - * @property {string|null} [name] FileDescriptorProto name - * @property {string|null} ["package"] FileDescriptorProto package - * @property {Array.|null} [dependency] FileDescriptorProto dependency - * @property {Array.|null} [publicDependency] FileDescriptorProto publicDependency - * @property {Array.|null} [weakDependency] FileDescriptorProto weakDependency - * @property {Array.|null} [messageType] FileDescriptorProto messageType - * @property {Array.|null} [enumType] FileDescriptorProto enumType - * @property {Array.|null} [service] FileDescriptorProto service - * @property {Array.|null} [extension] FileDescriptorProto extension - * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options - * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo - * @property {string|null} [syntax] FileDescriptorProto syntax - */ + /** + * Verifies a Policy message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Policy.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.globalPolicyEvaluationMode != null && message.hasOwnProperty("globalPolicyEvaluationMode")) + switch (message.globalPolicyEvaluationMode) { + default: + return "globalPolicyEvaluationMode: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.admissionWhitelistPatterns != null && message.hasOwnProperty("admissionWhitelistPatterns")) { + if (!Array.isArray(message.admissionWhitelistPatterns)) + return "admissionWhitelistPatterns: array expected"; + for (var i = 0; i < message.admissionWhitelistPatterns.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.verify(message.admissionWhitelistPatterns[i]); + if (error) + return "admissionWhitelistPatterns." + error; + } + } + if (message.clusterAdmissionRules != null && message.hasOwnProperty("clusterAdmissionRules")) { + if (!$util.isObject(message.clusterAdmissionRules)) + return "clusterAdmissionRules: object expected"; + var key = Object.keys(message.clusterAdmissionRules); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1.AdmissionRule.verify(message.clusterAdmissionRules[key[i]]); + if (error) + return "clusterAdmissionRules." + error; + } + } + if (message.kubernetesNamespaceAdmissionRules != null && message.hasOwnProperty("kubernetesNamespaceAdmissionRules")) { + if (!$util.isObject(message.kubernetesNamespaceAdmissionRules)) + return "kubernetesNamespaceAdmissionRules: object expected"; + var key = Object.keys(message.kubernetesNamespaceAdmissionRules); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1.AdmissionRule.verify(message.kubernetesNamespaceAdmissionRules[key[i]]); + if (error) + return "kubernetesNamespaceAdmissionRules." + error; + } + } + if (message.kubernetesServiceAccountAdmissionRules != null && message.hasOwnProperty("kubernetesServiceAccountAdmissionRules")) { + if (!$util.isObject(message.kubernetesServiceAccountAdmissionRules)) + return "kubernetesServiceAccountAdmissionRules: object expected"; + var key = Object.keys(message.kubernetesServiceAccountAdmissionRules); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1.AdmissionRule.verify(message.kubernetesServiceAccountAdmissionRules[key[i]]); + if (error) + return "kubernetesServiceAccountAdmissionRules." + error; + } + } + if (message.istioServiceIdentityAdmissionRules != null && message.hasOwnProperty("istioServiceIdentityAdmissionRules")) { + if (!$util.isObject(message.istioServiceIdentityAdmissionRules)) + return "istioServiceIdentityAdmissionRules: object expected"; + var key = Object.keys(message.istioServiceIdentityAdmissionRules); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1.AdmissionRule.verify(message.istioServiceIdentityAdmissionRules[key[i]]); + if (error) + return "istioServiceIdentityAdmissionRules." + error; + } + } + if (message.defaultAdmissionRule != null && message.hasOwnProperty("defaultAdmissionRule")) { + var error = $root.google.cloud.binaryauthorization.v1.AdmissionRule.verify(message.defaultAdmissionRule); + if (error) + return "defaultAdmissionRule." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; - /** - * Constructs a new FileDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a FileDescriptorProto. - * @implements IFileDescriptorProto - * @constructor - * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set - */ - function FileDescriptorProto(properties) { - this.dependency = []; - this.publicDependency = []; - this.weakDependency = []; - this.messageType = []; - this.enumType = []; - this.service = []; - this.extension = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * FileDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.name = ""; + /** + * Creates a Policy message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.Policy} Policy + */ + Policy.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.Policy) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.Policy(); + if (object.name != null) + message.name = String(object.name); + if (object.description != null) + message.description = String(object.description); + switch (object.globalPolicyEvaluationMode) { + case "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED": + case 0: + message.globalPolicyEvaluationMode = 0; + break; + case "ENABLE": + case 1: + message.globalPolicyEvaluationMode = 1; + break; + case "DISABLE": + case 2: + message.globalPolicyEvaluationMode = 2; + break; + } + if (object.admissionWhitelistPatterns) { + if (!Array.isArray(object.admissionWhitelistPatterns)) + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.admissionWhitelistPatterns: array expected"); + message.admissionWhitelistPatterns = []; + for (var i = 0; i < object.admissionWhitelistPatterns.length; ++i) { + if (typeof object.admissionWhitelistPatterns[i] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.admissionWhitelistPatterns: object expected"); + message.admissionWhitelistPatterns[i] = $root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.fromObject(object.admissionWhitelistPatterns[i]); + } + } + if (object.clusterAdmissionRules) { + if (typeof object.clusterAdmissionRules !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.clusterAdmissionRules: object expected"); + message.clusterAdmissionRules = {}; + for (var keys = Object.keys(object.clusterAdmissionRules), i = 0; i < keys.length; ++i) { + if (typeof object.clusterAdmissionRules[keys[i]] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.clusterAdmissionRules: object expected"); + message.clusterAdmissionRules[keys[i]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.fromObject(object.clusterAdmissionRules[keys[i]]); + } + } + if (object.kubernetesNamespaceAdmissionRules) { + if (typeof object.kubernetesNamespaceAdmissionRules !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.kubernetesNamespaceAdmissionRules: object expected"); + message.kubernetesNamespaceAdmissionRules = {}; + for (var keys = Object.keys(object.kubernetesNamespaceAdmissionRules), i = 0; i < keys.length; ++i) { + if (typeof object.kubernetesNamespaceAdmissionRules[keys[i]] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.kubernetesNamespaceAdmissionRules: object expected"); + message.kubernetesNamespaceAdmissionRules[keys[i]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.fromObject(object.kubernetesNamespaceAdmissionRules[keys[i]]); + } + } + if (object.kubernetesServiceAccountAdmissionRules) { + if (typeof object.kubernetesServiceAccountAdmissionRules !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.kubernetesServiceAccountAdmissionRules: object expected"); + message.kubernetesServiceAccountAdmissionRules = {}; + for (var keys = Object.keys(object.kubernetesServiceAccountAdmissionRules), i = 0; i < keys.length; ++i) { + if (typeof object.kubernetesServiceAccountAdmissionRules[keys[i]] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.kubernetesServiceAccountAdmissionRules: object expected"); + message.kubernetesServiceAccountAdmissionRules[keys[i]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.fromObject(object.kubernetesServiceAccountAdmissionRules[keys[i]]); + } + } + if (object.istioServiceIdentityAdmissionRules) { + if (typeof object.istioServiceIdentityAdmissionRules !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.istioServiceIdentityAdmissionRules: object expected"); + message.istioServiceIdentityAdmissionRules = {}; + for (var keys = Object.keys(object.istioServiceIdentityAdmissionRules), i = 0; i < keys.length; ++i) { + if (typeof object.istioServiceIdentityAdmissionRules[keys[i]] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.istioServiceIdentityAdmissionRules: object expected"); + message.istioServiceIdentityAdmissionRules[keys[i]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.fromObject(object.istioServiceIdentityAdmissionRules[keys[i]]); + } + } + if (object.defaultAdmissionRule != null) { + if (typeof object.defaultAdmissionRule !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.defaultAdmissionRule: object expected"); + message.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1.AdmissionRule.fromObject(object.defaultAdmissionRule); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Policy.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; - /** - * FileDescriptorProto package. - * @member {string} package - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype["package"] = ""; + /** + * Creates a plain object from a Policy message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1.Policy} message Policy + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Policy.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.admissionWhitelistPatterns = []; + if (options.objects || options.defaults) { + object.clusterAdmissionRules = {}; + object.kubernetesServiceAccountAdmissionRules = {}; + object.istioServiceIdentityAdmissionRules = {}; + object.kubernetesNamespaceAdmissionRules = {}; + } + if (options.defaults) { + object.name = ""; + object.defaultAdmissionRule = null; + object.updateTime = null; + object.description = ""; + object.globalPolicyEvaluationMode = options.enums === String ? "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED" : 0; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.admissionWhitelistPatterns && message.admissionWhitelistPatterns.length) { + object.admissionWhitelistPatterns = []; + for (var j = 0; j < message.admissionWhitelistPatterns.length; ++j) + object.admissionWhitelistPatterns[j] = $root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.toObject(message.admissionWhitelistPatterns[j], options); + } + var keys2; + if (message.clusterAdmissionRules && (keys2 = Object.keys(message.clusterAdmissionRules)).length) { + object.clusterAdmissionRules = {}; + for (var j = 0; j < keys2.length; ++j) + object.clusterAdmissionRules[keys2[j]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.toObject(message.clusterAdmissionRules[keys2[j]], options); + } + if (message.defaultAdmissionRule != null && message.hasOwnProperty("defaultAdmissionRule")) + object.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1.AdmissionRule.toObject(message.defaultAdmissionRule, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.globalPolicyEvaluationMode != null && message.hasOwnProperty("globalPolicyEvaluationMode")) + object.globalPolicyEvaluationMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode[message.globalPolicyEvaluationMode] : message.globalPolicyEvaluationMode; + if (message.kubernetesServiceAccountAdmissionRules && (keys2 = Object.keys(message.kubernetesServiceAccountAdmissionRules)).length) { + object.kubernetesServiceAccountAdmissionRules = {}; + for (var j = 0; j < keys2.length; ++j) + object.kubernetesServiceAccountAdmissionRules[keys2[j]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.toObject(message.kubernetesServiceAccountAdmissionRules[keys2[j]], options); + } + if (message.istioServiceIdentityAdmissionRules && (keys2 = Object.keys(message.istioServiceIdentityAdmissionRules)).length) { + object.istioServiceIdentityAdmissionRules = {}; + for (var j = 0; j < keys2.length; ++j) + object.istioServiceIdentityAdmissionRules[keys2[j]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.toObject(message.istioServiceIdentityAdmissionRules[keys2[j]], options); + } + if (message.kubernetesNamespaceAdmissionRules && (keys2 = Object.keys(message.kubernetesNamespaceAdmissionRules)).length) { + object.kubernetesNamespaceAdmissionRules = {}; + for (var j = 0; j < keys2.length; ++j) + object.kubernetesNamespaceAdmissionRules[keys2[j]] = $root.google.cloud.binaryauthorization.v1.AdmissionRule.toObject(message.kubernetesNamespaceAdmissionRules[keys2[j]], options); + } + return object; + }; - /** - * FileDescriptorProto dependency. - * @member {Array.} dependency - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.dependency = $util.emptyArray; + /** + * Converts this Policy to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.Policy + * @instance + * @returns {Object.} JSON object + */ + Policy.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * FileDescriptorProto publicDependency. - * @member {Array.} publicDependency - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.publicDependency = $util.emptyArray; + /** + * GlobalPolicyEvaluationMode enum. + * @name google.cloud.binaryauthorization.v1.Policy.GlobalPolicyEvaluationMode + * @enum {number} + * @property {number} GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED=0 GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED value + * @property {number} ENABLE=1 ENABLE value + * @property {number} DISABLE=2 DISABLE value + */ + Policy.GlobalPolicyEvaluationMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ENABLE"] = 1; + values[valuesById[2] = "DISABLE"] = 2; + return values; + })(); - /** - * FileDescriptorProto weakDependency. - * @member {Array.} weakDependency - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.weakDependency = $util.emptyArray; + return Policy; + })(); - /** - * FileDescriptorProto messageType. - * @member {Array.} messageType - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.messageType = $util.emptyArray; + v1.AdmissionWhitelistPattern = (function() { - /** - * FileDescriptorProto enumType. - * @member {Array.} enumType - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.enumType = $util.emptyArray; + /** + * Properties of an AdmissionWhitelistPattern. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IAdmissionWhitelistPattern + * @property {string|null} [namePattern] AdmissionWhitelistPattern namePattern + */ - /** - * FileDescriptorProto service. - * @member {Array.} service - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.service = $util.emptyArray; + /** + * Constructs a new AdmissionWhitelistPattern. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents an AdmissionWhitelistPattern. + * @implements IAdmissionWhitelistPattern + * @constructor + * @param {google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern=} [properties] Properties to set + */ + function AdmissionWhitelistPattern(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * FileDescriptorProto extension. - * @member {Array.} extension - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.extension = $util.emptyArray; + /** + * AdmissionWhitelistPattern namePattern. + * @member {string} namePattern + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @instance + */ + AdmissionWhitelistPattern.prototype.namePattern = ""; - /** - * FileDescriptorProto options. - * @member {google.protobuf.IFileOptions|null|undefined} options - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.options = null; + /** + * Creates a new AdmissionWhitelistPattern instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern} AdmissionWhitelistPattern instance + */ + AdmissionWhitelistPattern.create = function create(properties) { + return new AdmissionWhitelistPattern(properties); + }; - /** - * FileDescriptorProto sourceCodeInfo. - * @member {google.protobuf.ISourceCodeInfo|null|undefined} sourceCodeInfo - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.sourceCodeInfo = null; + /** + * Encodes the specified AdmissionWhitelistPattern message. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern} message AdmissionWhitelistPattern message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionWhitelistPattern.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.namePattern != null && Object.hasOwnProperty.call(message, "namePattern")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePattern); + return writer; + }; - /** - * FileDescriptorProto syntax. - * @member {string} syntax - * @memberof google.protobuf.FileDescriptorProto - * @instance - */ - FileDescriptorProto.prototype.syntax = ""; - - /** - * Creates a new FileDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto instance - */ - FileDescriptorProto.create = function create(properties) { - return new FileDescriptorProto(properties); - }; + /** + * Encodes the specified AdmissionWhitelistPattern message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1.IAdmissionWhitelistPattern} message AdmissionWhitelistPattern message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionWhitelistPattern.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message["package"] != null && Object.hasOwnProperty.call(message, "package")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message["package"]); - if (message.dependency != null && message.dependency.length) - for (var i = 0; i < message.dependency.length; ++i) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.dependency[i]); - if (message.messageType != null && message.messageType.length) - for (var i = 0; i < message.messageType.length; ++i) - $root.google.protobuf.DescriptorProto.encode(message.messageType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.enumType != null && message.enumType.length) - for (var i = 0; i < message.enumType.length; ++i) - $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.service != null && message.service.length) - for (var i = 0; i < message.service.length; ++i) - $root.google.protobuf.ServiceDescriptorProto.encode(message.service[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.extension != null && message.extension.length) - for (var i = 0; i < message.extension.length; ++i) - $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.FileOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.sourceCodeInfo != null && Object.hasOwnProperty.call(message, "sourceCodeInfo")) - $root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); - if (message.publicDependency != null && message.publicDependency.length) - for (var i = 0; i < message.publicDependency.length; ++i) - writer.uint32(/* id 10, wireType 0 =*/80).int32(message.publicDependency[i]); - if (message.weakDependency != null && message.weakDependency.length) - for (var i = 0; i < message.weakDependency.length; ++i) - writer.uint32(/* id 11, wireType 0 =*/88).int32(message.weakDependency[i]); - if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax); - return writer; - }; + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern} AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionWhitelistPattern.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.namePattern = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern} AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionWhitelistPattern.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes a FileDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message["package"] = reader.string(); - break; - case 3: - if (!(message.dependency && message.dependency.length)) - message.dependency = []; - message.dependency.push(reader.string()); - break; - case 10: - if (!(message.publicDependency && message.publicDependency.length)) - message.publicDependency = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.publicDependency.push(reader.int32()); - } else - message.publicDependency.push(reader.int32()); - break; - case 11: - if (!(message.weakDependency && message.weakDependency.length)) - message.weakDependency = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.weakDependency.push(reader.int32()); - } else - message.weakDependency.push(reader.int32()); - break; - case 4: - if (!(message.messageType && message.messageType.length)) - message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.enumType && message.enumType.length)) - message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); - break; - case 6: - if (!(message.service && message.service.length)) - message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); - break; - case 7: - if (!(message.extension && message.extension.length)) - message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 8: - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); - break; - case 9: - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); - break; - case 12: - message.syntax = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Verifies an AdmissionWhitelistPattern message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AdmissionWhitelistPattern.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.namePattern != null && message.hasOwnProperty("namePattern")) + if (!$util.isString(message.namePattern)) + return "namePattern: string expected"; + return null; + }; - /** - * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates an AdmissionWhitelistPattern message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern} AdmissionWhitelistPattern + */ + AdmissionWhitelistPattern.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern(); + if (object.namePattern != null) + message.namePattern = String(object.namePattern); + return message; + }; - /** - * Verifies a FileDescriptorProto message. - * @function verify - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FileDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message["package"] != null && message.hasOwnProperty("package")) - if (!$util.isString(message["package"])) - return "package: string expected"; - if (message.dependency != null && message.hasOwnProperty("dependency")) { - if (!Array.isArray(message.dependency)) - return "dependency: array expected"; - for (var i = 0; i < message.dependency.length; ++i) - if (!$util.isString(message.dependency[i])) - return "dependency: string[] expected"; - } - if (message.publicDependency != null && message.hasOwnProperty("publicDependency")) { - if (!Array.isArray(message.publicDependency)) - return "publicDependency: array expected"; - for (var i = 0; i < message.publicDependency.length; ++i) - if (!$util.isInteger(message.publicDependency[i])) - return "publicDependency: integer[] expected"; - } - if (message.weakDependency != null && message.hasOwnProperty("weakDependency")) { - if (!Array.isArray(message.weakDependency)) - return "weakDependency: array expected"; - for (var i = 0; i < message.weakDependency.length; ++i) - if (!$util.isInteger(message.weakDependency[i])) - return "weakDependency: integer[] expected"; - } - if (message.messageType != null && message.hasOwnProperty("messageType")) { - if (!Array.isArray(message.messageType)) - return "messageType: array expected"; - for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); - if (error) - return "messageType." + error; - } - } - if (message.enumType != null && message.hasOwnProperty("enumType")) { - if (!Array.isArray(message.enumType)) - return "enumType: array expected"; - for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); - if (error) - return "enumType." + error; - } - } - if (message.service != null && message.hasOwnProperty("service")) { - if (!Array.isArray(message.service)) - return "service: array expected"; - for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); - if (error) - return "service." + error; - } - } - if (message.extension != null && message.hasOwnProperty("extension")) { - if (!Array.isArray(message.extension)) - return "extension: array expected"; - for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); - if (error) - return "extension." + error; - } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); - if (error) - return "sourceCodeInfo." + error; - } - if (message.syntax != null && message.hasOwnProperty("syntax")) - if (!$util.isString(message.syntax)) - return "syntax: string expected"; - return null; - }; + /** + * Creates a plain object from an AdmissionWhitelistPattern message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern} message AdmissionWhitelistPattern + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AdmissionWhitelistPattern.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.namePattern = ""; + if (message.namePattern != null && message.hasOwnProperty("namePattern")) + object.namePattern = message.namePattern; + return object; + }; - /** - * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto - */ - FileDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FileDescriptorProto) - return object; - var message = new $root.google.protobuf.FileDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object["package"] != null) - message["package"] = String(object["package"]); - if (object.dependency) { - if (!Array.isArray(object.dependency)) - throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected"); - message.dependency = []; - for (var i = 0; i < object.dependency.length; ++i) - message.dependency[i] = String(object.dependency[i]); - } - if (object.publicDependency) { - if (!Array.isArray(object.publicDependency)) - throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected"); - message.publicDependency = []; - for (var i = 0; i < object.publicDependency.length; ++i) - message.publicDependency[i] = object.publicDependency[i] | 0; - } - if (object.weakDependency) { - if (!Array.isArray(object.weakDependency)) - throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected"); - message.weakDependency = []; - for (var i = 0; i < object.weakDependency.length; ++i) - message.weakDependency[i] = object.weakDependency[i] | 0; - } - if (object.messageType) { - if (!Array.isArray(object.messageType)) - throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected"); - message.messageType = []; - for (var i = 0; i < object.messageType.length; ++i) { - if (typeof object.messageType[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); - } - } - if (object.enumType) { - if (!Array.isArray(object.enumType)) - throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected"); - message.enumType = []; - for (var i = 0; i < object.enumType.length; ++i) { - if (typeof object.enumType[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); - } - } - if (object.service) { - if (!Array.isArray(object.service)) - throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected"); - message.service = []; - for (var i = 0; i < object.service.length; ++i) { - if (typeof object.service[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); - } - } - if (object.extension) { - if (!Array.isArray(object.extension)) - throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected"); - message.extension = []; - for (var i = 0; i < object.extension.length; ++i) { - if (typeof object.extension[i] !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + /** + * Converts this AdmissionWhitelistPattern to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern + * @instance + * @returns {Object.} JSON object + */ + AdmissionWhitelistPattern.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return AdmissionWhitelistPattern; + })(); + + v1.AdmissionRule = (function() { + + /** + * Properties of an AdmissionRule. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IAdmissionRule + * @property {google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode|null} [evaluationMode] AdmissionRule evaluationMode + * @property {Array.|null} [requireAttestationsBy] AdmissionRule requireAttestationsBy + * @property {google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode|null} [enforcementMode] AdmissionRule enforcementMode + */ + + /** + * Constructs a new AdmissionRule. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents an AdmissionRule. + * @implements IAdmissionRule + * @constructor + * @param {google.cloud.binaryauthorization.v1.IAdmissionRule=} [properties] Properties to set + */ + function AdmissionRule(properties) { + this.requireAttestationsBy = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); - } - if (object.sourceCodeInfo != null) { - if (typeof object.sourceCodeInfo !== "object") - throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); - } - if (object.syntax != null) - message.syntax = String(object.syntax); - return message; - }; - /** - * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FileDescriptorProto - * @static - * @param {google.protobuf.FileDescriptorProto} message FileDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FileDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.dependency = []; - object.messageType = []; - object.enumType = []; - object.service = []; - object.extension = []; - object.publicDependency = []; - object.weakDependency = []; - } - if (options.defaults) { - object.name = ""; - object["package"] = ""; - object.options = null; - object.sourceCodeInfo = null; - object.syntax = ""; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message["package"] != null && message.hasOwnProperty("package")) - object["package"] = message["package"]; - if (message.dependency && message.dependency.length) { - object.dependency = []; - for (var j = 0; j < message.dependency.length; ++j) - object.dependency[j] = message.dependency[j]; - } - if (message.messageType && message.messageType.length) { - object.messageType = []; - for (var j = 0; j < message.messageType.length; ++j) - object.messageType[j] = $root.google.protobuf.DescriptorProto.toObject(message.messageType[j], options); - } - if (message.enumType && message.enumType.length) { - object.enumType = []; - for (var j = 0; j < message.enumType.length; ++j) - object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); - } - if (message.service && message.service.length) { - object.service = []; - for (var j = 0; j < message.service.length; ++j) - object.service[j] = $root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j], options); - } - if (message.extension && message.extension.length) { - object.extension = []; - for (var j = 0; j < message.extension.length; ++j) - object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.FileOptions.toObject(message.options, options); - if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) - object.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo, options); - if (message.publicDependency && message.publicDependency.length) { - object.publicDependency = []; - for (var j = 0; j < message.publicDependency.length; ++j) - object.publicDependency[j] = message.publicDependency[j]; - } - if (message.weakDependency && message.weakDependency.length) { - object.weakDependency = []; - for (var j = 0; j < message.weakDependency.length; ++j) - object.weakDependency[j] = message.weakDependency[j]; - } - if (message.syntax != null && message.hasOwnProperty("syntax")) - object.syntax = message.syntax; - return object; - }; - - /** - * Converts this FileDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.FileDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - FileDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * AdmissionRule evaluationMode. + * @member {google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode} evaluationMode + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @instance + */ + AdmissionRule.prototype.evaluationMode = 0; - return FileDescriptorProto; - })(); + /** + * AdmissionRule requireAttestationsBy. + * @member {Array.} requireAttestationsBy + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @instance + */ + AdmissionRule.prototype.requireAttestationsBy = $util.emptyArray; - protobuf.DescriptorProto = (function() { + /** + * AdmissionRule enforcementMode. + * @member {google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode} enforcementMode + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @instance + */ + AdmissionRule.prototype.enforcementMode = 0; - /** - * Properties of a DescriptorProto. - * @memberof google.protobuf - * @interface IDescriptorProto - * @property {string|null} [name] DescriptorProto name - * @property {Array.|null} [field] DescriptorProto field - * @property {Array.|null} [extension] DescriptorProto extension - * @property {Array.|null} [nestedType] DescriptorProto nestedType - * @property {Array.|null} [enumType] DescriptorProto enumType - * @property {Array.|null} [extensionRange] DescriptorProto extensionRange - * @property {Array.|null} [oneofDecl] DescriptorProto oneofDecl - * @property {google.protobuf.IMessageOptions|null} [options] DescriptorProto options - * @property {Array.|null} [reservedRange] DescriptorProto reservedRange - * @property {Array.|null} [reservedName] DescriptorProto reservedName - */ + /** + * Creates a new AdmissionRule instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1.IAdmissionRule=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.AdmissionRule} AdmissionRule instance + */ + AdmissionRule.create = function create(properties) { + return new AdmissionRule(properties); + }; - /** - * Constructs a new DescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a DescriptorProto. - * @implements IDescriptorProto - * @constructor - * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set - */ - function DescriptorProto(properties) { - this.field = []; - this.extension = []; - this.nestedType = []; - this.enumType = []; - this.extensionRange = []; - this.oneofDecl = []; - this.reservedRange = []; - this.reservedName = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Encodes the specified AdmissionRule message. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionRule.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1.IAdmissionRule} message AdmissionRule message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionRule.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.evaluationMode != null && Object.hasOwnProperty.call(message, "evaluationMode")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.evaluationMode); + if (message.requireAttestationsBy != null && message.requireAttestationsBy.length) + for (var i = 0; i < message.requireAttestationsBy.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.requireAttestationsBy[i]); + if (message.enforcementMode != null && Object.hasOwnProperty.call(message, "enforcementMode")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.enforcementMode); + return writer; + }; - /** - * DescriptorProto name. - * @member {string} name - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.name = ""; + /** + * Encodes the specified AdmissionRule message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.AdmissionRule.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1.IAdmissionRule} message AdmissionRule message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionRule.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * DescriptorProto field. - * @member {Array.} field - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.field = $util.emptyArray; + /** + * Decodes an AdmissionRule message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.AdmissionRule} AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionRule.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.AdmissionRule(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.evaluationMode = reader.int32(); + break; + case 2: + if (!(message.requireAttestationsBy && message.requireAttestationsBy.length)) + message.requireAttestationsBy = []; + message.requireAttestationsBy.push(reader.string()); + break; + case 3: + message.enforcementMode = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * DescriptorProto extension. - * @member {Array.} extension - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.extension = $util.emptyArray; + /** + * Decodes an AdmissionRule message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.AdmissionRule} AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionRule.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * DescriptorProto nestedType. - * @member {Array.} nestedType - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.nestedType = $util.emptyArray; + /** + * Verifies an AdmissionRule message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AdmissionRule.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode")) + switch (message.evaluationMode) { + default: + return "evaluationMode: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.requireAttestationsBy != null && message.hasOwnProperty("requireAttestationsBy")) { + if (!Array.isArray(message.requireAttestationsBy)) + return "requireAttestationsBy: array expected"; + for (var i = 0; i < message.requireAttestationsBy.length; ++i) + if (!$util.isString(message.requireAttestationsBy[i])) + return "requireAttestationsBy: string[] expected"; + } + if (message.enforcementMode != null && message.hasOwnProperty("enforcementMode")) + switch (message.enforcementMode) { + default: + return "enforcementMode: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; - /** - * DescriptorProto enumType. - * @member {Array.} enumType - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.enumType = $util.emptyArray; + /** + * Creates an AdmissionRule message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.AdmissionRule} AdmissionRule + */ + AdmissionRule.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.AdmissionRule) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.AdmissionRule(); + switch (object.evaluationMode) { + case "EVALUATION_MODE_UNSPECIFIED": + case 0: + message.evaluationMode = 0; + break; + case "ALWAYS_ALLOW": + case 1: + message.evaluationMode = 1; + break; + case "REQUIRE_ATTESTATION": + case 2: + message.evaluationMode = 2; + break; + case "ALWAYS_DENY": + case 3: + message.evaluationMode = 3; + break; + } + if (object.requireAttestationsBy) { + if (!Array.isArray(object.requireAttestationsBy)) + throw TypeError(".google.cloud.binaryauthorization.v1.AdmissionRule.requireAttestationsBy: array expected"); + message.requireAttestationsBy = []; + for (var i = 0; i < object.requireAttestationsBy.length; ++i) + message.requireAttestationsBy[i] = String(object.requireAttestationsBy[i]); + } + switch (object.enforcementMode) { + case "ENFORCEMENT_MODE_UNSPECIFIED": + case 0: + message.enforcementMode = 0; + break; + case "ENFORCED_BLOCK_AND_AUDIT_LOG": + case 1: + message.enforcementMode = 1; + break; + case "DRYRUN_AUDIT_LOG_ONLY": + case 2: + message.enforcementMode = 2; + break; + } + return message; + }; - /** - * DescriptorProto extensionRange. - * @member {Array.} extensionRange - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.extensionRange = $util.emptyArray; + /** + * Creates a plain object from an AdmissionRule message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1.AdmissionRule} message AdmissionRule + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AdmissionRule.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.requireAttestationsBy = []; + if (options.defaults) { + object.evaluationMode = options.enums === String ? "EVALUATION_MODE_UNSPECIFIED" : 0; + object.enforcementMode = options.enums === String ? "ENFORCEMENT_MODE_UNSPECIFIED" : 0; + } + if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode")) + object.evaluationMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode[message.evaluationMode] : message.evaluationMode; + if (message.requireAttestationsBy && message.requireAttestationsBy.length) { + object.requireAttestationsBy = []; + for (var j = 0; j < message.requireAttestationsBy.length; ++j) + object.requireAttestationsBy[j] = message.requireAttestationsBy[j]; + } + if (message.enforcementMode != null && message.hasOwnProperty("enforcementMode")) + object.enforcementMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode[message.enforcementMode] : message.enforcementMode; + return object; + }; - /** - * DescriptorProto oneofDecl. - * @member {Array.} oneofDecl - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.oneofDecl = $util.emptyArray; + /** + * Converts this AdmissionRule to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.AdmissionRule + * @instance + * @returns {Object.} JSON object + */ + AdmissionRule.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * DescriptorProto options. - * @member {google.protobuf.IMessageOptions|null|undefined} options - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.options = null; + /** + * EvaluationMode enum. + * @name google.cloud.binaryauthorization.v1.AdmissionRule.EvaluationMode + * @enum {number} + * @property {number} EVALUATION_MODE_UNSPECIFIED=0 EVALUATION_MODE_UNSPECIFIED value + * @property {number} ALWAYS_ALLOW=1 ALWAYS_ALLOW value + * @property {number} REQUIRE_ATTESTATION=2 REQUIRE_ATTESTATION value + * @property {number} ALWAYS_DENY=3 ALWAYS_DENY value + */ + AdmissionRule.EvaluationMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "EVALUATION_MODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ALWAYS_ALLOW"] = 1; + values[valuesById[2] = "REQUIRE_ATTESTATION"] = 2; + values[valuesById[3] = "ALWAYS_DENY"] = 3; + return values; + })(); - /** - * DescriptorProto reservedRange. - * @member {Array.} reservedRange - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.reservedRange = $util.emptyArray; + /** + * EnforcementMode enum. + * @name google.cloud.binaryauthorization.v1.AdmissionRule.EnforcementMode + * @enum {number} + * @property {number} ENFORCEMENT_MODE_UNSPECIFIED=0 ENFORCEMENT_MODE_UNSPECIFIED value + * @property {number} ENFORCED_BLOCK_AND_AUDIT_LOG=1 ENFORCED_BLOCK_AND_AUDIT_LOG value + * @property {number} DRYRUN_AUDIT_LOG_ONLY=2 DRYRUN_AUDIT_LOG_ONLY value + */ + AdmissionRule.EnforcementMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "ENFORCEMENT_MODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ENFORCED_BLOCK_AND_AUDIT_LOG"] = 1; + values[valuesById[2] = "DRYRUN_AUDIT_LOG_ONLY"] = 2; + return values; + })(); - /** - * DescriptorProto reservedName. - * @member {Array.} reservedName - * @memberof google.protobuf.DescriptorProto - * @instance - */ - DescriptorProto.prototype.reservedName = $util.emptyArray; + return AdmissionRule; + })(); - /** - * Creates a new DescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.DescriptorProto} DescriptorProto instance - */ - DescriptorProto.create = function create(properties) { - return new DescriptorProto(properties); - }; + v1.Attestor = (function() { - /** - * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.field != null && message.field.length) - for (var i = 0; i < message.field.length; ++i) - $root.google.protobuf.FieldDescriptorProto.encode(message.field[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.nestedType != null && message.nestedType.length) - for (var i = 0; i < message.nestedType.length; ++i) - $root.google.protobuf.DescriptorProto.encode(message.nestedType[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.enumType != null && message.enumType.length) - for (var i = 0; i < message.enumType.length; ++i) - $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.extensionRange != null && message.extensionRange.length) - for (var i = 0; i < message.extensionRange.length; ++i) - $root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.extension != null && message.extension.length) - for (var i = 0; i < message.extension.length; ++i) - $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.MessageOptions.encode(message.options, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - if (message.oneofDecl != null && message.oneofDecl.length) - for (var i = 0; i < message.oneofDecl.length; ++i) - $root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.reservedRange != null && message.reservedRange.length) - for (var i = 0; i < message.reservedRange.length; ++i) - $root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); - if (message.reservedName != null && message.reservedName.length) - for (var i = 0; i < message.reservedName.length; ++i) - writer.uint32(/* id 10, wireType 2 =*/82).string(message.reservedName[i]); - return writer; - }; + /** + * Properties of an Attestor. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IAttestor + * @property {string|null} [name] Attestor name + * @property {string|null} [description] Attestor description + * @property {google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote|null} [userOwnedGrafeasNote] Attestor userOwnedGrafeasNote + * @property {google.protobuf.ITimestamp|null} [updateTime] Attestor updateTime + */ - /** - * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Constructs a new Attestor. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents an Attestor. + * @implements IAttestor + * @constructor + * @param {google.cloud.binaryauthorization.v1.IAttestor=} [properties] Properties to set + */ + function Attestor(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Decodes a DescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.DescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.DescriptorProto} DescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.field && message.field.length)) - message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 6: - if (!(message.extension && message.extension.length)) - message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - if (!(message.nestedType && message.nestedType.length)) - message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); - break; - case 4: - if (!(message.enumType && message.enumType.length)) - message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.extensionRange && message.extensionRange.length)) - message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); - break; - case 8: - if (!(message.oneofDecl && message.oneofDecl.length)) - message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); - break; - case 7: - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); - break; - case 9: - if (!(message.reservedRange && message.reservedRange.length)) - message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); - break; - case 10: - if (!(message.reservedName && message.reservedName.length)) - message.reservedName = []; - message.reservedName.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Attestor name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @instance + */ + Attestor.prototype.name = ""; - /** - * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.DescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.DescriptorProto} DescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Attestor description. + * @member {string} description + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @instance + */ + Attestor.prototype.description = ""; - /** - * Verifies a DescriptorProto message. - * @function verify - * @memberof google.protobuf.DescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - DescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.field != null && message.hasOwnProperty("field")) { - if (!Array.isArray(message.field)) - return "field: array expected"; - for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); - if (error) - return "field." + error; - } - } - if (message.extension != null && message.hasOwnProperty("extension")) { - if (!Array.isArray(message.extension)) - return "extension: array expected"; - for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); - if (error) - return "extension." + error; - } - } - if (message.nestedType != null && message.hasOwnProperty("nestedType")) { - if (!Array.isArray(message.nestedType)) - return "nestedType: array expected"; - for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); - if (error) - return "nestedType." + error; - } - } - if (message.enumType != null && message.hasOwnProperty("enumType")) { - if (!Array.isArray(message.enumType)) - return "enumType: array expected"; - for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); - if (error) - return "enumType." + error; - } - } - if (message.extensionRange != null && message.hasOwnProperty("extensionRange")) { - if (!Array.isArray(message.extensionRange)) - return "extensionRange: array expected"; - for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); - if (error) - return "extensionRange." + error; - } - } - if (message.oneofDecl != null && message.hasOwnProperty("oneofDecl")) { - if (!Array.isArray(message.oneofDecl)) - return "oneofDecl: array expected"; - for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); - if (error) - return "oneofDecl." + error; - } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { - if (!Array.isArray(message.reservedRange)) - return "reservedRange: array expected"; - for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); - if (error) - return "reservedRange." + error; - } - } - if (message.reservedName != null && message.hasOwnProperty("reservedName")) { - if (!Array.isArray(message.reservedName)) - return "reservedName: array expected"; - for (var i = 0; i < message.reservedName.length; ++i) - if (!$util.isString(message.reservedName[i])) - return "reservedName: string[] expected"; - } - return null; - }; + /** + * Attestor userOwnedGrafeasNote. + * @member {google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote|null|undefined} userOwnedGrafeasNote + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @instance + */ + Attestor.prototype.userOwnedGrafeasNote = null; - /** - * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.DescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.DescriptorProto} DescriptorProto - */ - DescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.DescriptorProto) - return object; - var message = new $root.google.protobuf.DescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.field) { - if (!Array.isArray(object.field)) - throw TypeError(".google.protobuf.DescriptorProto.field: array expected"); - message.field = []; - for (var i = 0; i < object.field.length; ++i) { - if (typeof object.field[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); - } - } - if (object.extension) { - if (!Array.isArray(object.extension)) - throw TypeError(".google.protobuf.DescriptorProto.extension: array expected"); - message.extension = []; - for (var i = 0; i < object.extension.length; ++i) { - if (typeof object.extension[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); - } - } - if (object.nestedType) { - if (!Array.isArray(object.nestedType)) - throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected"); - message.nestedType = []; - for (var i = 0; i < object.nestedType.length; ++i) { - if (typeof object.nestedType[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); - } - } - if (object.enumType) { - if (!Array.isArray(object.enumType)) - throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected"); - message.enumType = []; - for (var i = 0; i < object.enumType.length; ++i) { - if (typeof object.enumType[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); - } - } - if (object.extensionRange) { - if (!Array.isArray(object.extensionRange)) - throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected"); - message.extensionRange = []; - for (var i = 0; i < object.extensionRange.length; ++i) { - if (typeof object.extensionRange[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); - } - } - if (object.oneofDecl) { - if (!Array.isArray(object.oneofDecl)) - throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected"); - message.oneofDecl = []; - for (var i = 0; i < object.oneofDecl.length; ++i) { - if (typeof object.oneofDecl[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); - } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); - } - if (object.reservedRange) { - if (!Array.isArray(object.reservedRange)) - throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected"); - message.reservedRange = []; - for (var i = 0; i < object.reservedRange.length; ++i) { - if (typeof object.reservedRange[i] !== "object") - throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); - } - } - if (object.reservedName) { - if (!Array.isArray(object.reservedName)) - throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected"); - message.reservedName = []; - for (var i = 0; i < object.reservedName.length; ++i) - message.reservedName[i] = String(object.reservedName[i]); - } - return message; - }; - - /** - * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.DescriptorProto - * @static - * @param {google.protobuf.DescriptorProto} message DescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - DescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.field = []; - object.nestedType = []; - object.enumType = []; - object.extensionRange = []; - object.extension = []; - object.oneofDecl = []; - object.reservedRange = []; - object.reservedName = []; - } - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.field && message.field.length) { - object.field = []; - for (var j = 0; j < message.field.length; ++j) - object.field[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.field[j], options); - } - if (message.nestedType && message.nestedType.length) { - object.nestedType = []; - for (var j = 0; j < message.nestedType.length; ++j) - object.nestedType[j] = $root.google.protobuf.DescriptorProto.toObject(message.nestedType[j], options); - } - if (message.enumType && message.enumType.length) { - object.enumType = []; - for (var j = 0; j < message.enumType.length; ++j) - object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); - } - if (message.extensionRange && message.extensionRange.length) { - object.extensionRange = []; - for (var j = 0; j < message.extensionRange.length; ++j) - object.extensionRange[j] = $root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j], options); - } - if (message.extension && message.extension.length) { - object.extension = []; - for (var j = 0; j < message.extension.length; ++j) - object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.MessageOptions.toObject(message.options, options); - if (message.oneofDecl && message.oneofDecl.length) { - object.oneofDecl = []; - for (var j = 0; j < message.oneofDecl.length; ++j) - object.oneofDecl[j] = $root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j], options); - } - if (message.reservedRange && message.reservedRange.length) { - object.reservedRange = []; - for (var j = 0; j < message.reservedRange.length; ++j) - object.reservedRange[j] = $root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j], options); - } - if (message.reservedName && message.reservedName.length) { - object.reservedName = []; - for (var j = 0; j < message.reservedName.length; ++j) - object.reservedName[j] = message.reservedName[j]; - } - return object; - }; - - /** - * Converts this DescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.DescriptorProto - * @instance - * @returns {Object.} JSON object - */ - DescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Attestor updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @instance + */ + Attestor.prototype.updateTime = null; - DescriptorProto.ExtensionRange = (function() { + // OneOf field names bound to virtual getters and setters + var $oneOfFields; - /** - * Properties of an ExtensionRange. - * @memberof google.protobuf.DescriptorProto - * @interface IExtensionRange - * @property {number|null} [start] ExtensionRange start - * @property {number|null} [end] ExtensionRange end - * @property {google.protobuf.IExtensionRangeOptions|null} [options] ExtensionRange options - */ + /** + * Attestor attestorType. + * @member {"userOwnedGrafeasNote"|undefined} attestorType + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @instance + */ + Object.defineProperty(Attestor.prototype, "attestorType", { + get: $util.oneOfGetter($oneOfFields = ["userOwnedGrafeasNote"]), + set: $util.oneOfSetter($oneOfFields) + }); - /** - * Constructs a new ExtensionRange. - * @memberof google.protobuf.DescriptorProto - * @classdesc Represents an ExtensionRange. - * @implements IExtensionRange - * @constructor - * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set - */ - function ExtensionRange(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Creates a new Attestor instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1.IAttestor=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.Attestor} Attestor instance + */ + Attestor.create = function create(properties) { + return new Attestor(properties); + }; - /** - * ExtensionRange start. - * @member {number} start - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - */ - ExtensionRange.prototype.start = 0; + /** + * Encodes the specified Attestor message. Does not implicitly {@link google.cloud.binaryauthorization.v1.Attestor.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1.IAttestor} message Attestor message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Attestor.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.userOwnedGrafeasNote != null && Object.hasOwnProperty.call(message, "userOwnedGrafeasNote")) + $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.encode(message.userOwnedGrafeasNote, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); + return writer; + }; - /** - * ExtensionRange end. - * @member {number} end - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - */ - ExtensionRange.prototype.end = 0; + /** + * Encodes the specified Attestor message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.Attestor.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1.IAttestor} message Attestor message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Attestor.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * ExtensionRange options. - * @member {google.protobuf.IExtensionRangeOptions|null|undefined} options - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - */ - ExtensionRange.prototype.options = null; + /** + * Decodes an Attestor message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.Attestor} Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Attestor.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.Attestor(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 6: + message.description = reader.string(); + break; + case 3: + message.userOwnedGrafeasNote = $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.decode(reader, reader.uint32()); + break; + case 4: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a new ExtensionRange instance using the specified properties. - * @function create - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange instance - */ - ExtensionRange.create = function create(properties) { - return new ExtensionRange(properties); - }; + /** + * Decodes an Attestor message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.Attestor} Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Attestor.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. - * @function encode - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRange.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.start != null && Object.hasOwnProperty.call(message, "start")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); - if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.ExtensionRangeOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; + /** + * Verifies an Attestor message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Attestor.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.userOwnedGrafeasNote != null && message.hasOwnProperty("userOwnedGrafeasNote")) { + properties.attestorType = 1; + { + var error = $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.verify(message.userOwnedGrafeasNote); + if (error) + return "userOwnedGrafeasNote." + error; + } + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; - /** - * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRange.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates an Attestor message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.Attestor} Attestor + */ + Attestor.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.Attestor) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.Attestor(); + if (object.name != null) + message.name = String(object.name); + if (object.description != null) + message.description = String(object.description); + if (object.userOwnedGrafeasNote != null) { + if (typeof object.userOwnedGrafeasNote !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Attestor.userOwnedGrafeasNote: object expected"); + message.userOwnedGrafeasNote = $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.fromObject(object.userOwnedGrafeasNote); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.Attestor.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; - /** - * Decodes an ExtensionRange message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRange.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; - case 3: - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Creates a plain object from an Attestor message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1.Attestor} message Attestor + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Attestor.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.updateTime = null; + object.description = ""; } - } - return message; - }; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.userOwnedGrafeasNote != null && message.hasOwnProperty("userOwnedGrafeasNote")) { + object.userOwnedGrafeasNote = $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.toObject(message.userOwnedGrafeasNote, options); + if (options.oneofs) + object.attestorType = "userOwnedGrafeasNote"; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + return object; + }; - /** - * Decodes an ExtensionRange message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRange.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Converts this Attestor to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.Attestor + * @instance + * @returns {Object.} JSON object + */ + Attestor.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Verifies an ExtensionRange message. - * @function verify - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ExtensionRange.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.start != null && message.hasOwnProperty("start")) - if (!$util.isInteger(message.start)) - return "start: integer expected"; - if (message.end != null && message.hasOwnProperty("end")) - if (!$util.isInteger(message.end)) - return "end: integer expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + return Attestor; + })(); - /** - * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange - */ - ExtensionRange.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) - return object; - var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); - if (object.start != null) - message.start = object.start | 0; - if (object.end != null) - message.end = object.end | 0; - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); - } - return message; - }; + v1.UserOwnedGrafeasNote = (function() { - /** - * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @static - * @param {google.protobuf.DescriptorProto.ExtensionRange} message ExtensionRange - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ExtensionRange.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.start = 0; - object.end = 0; - object.options = null; - } - if (message.start != null && message.hasOwnProperty("start")) - object.start = message.start; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.ExtensionRangeOptions.toObject(message.options, options); - return object; - }; + /** + * Properties of a UserOwnedGrafeasNote. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IUserOwnedGrafeasNote + * @property {string|null} [noteReference] UserOwnedGrafeasNote noteReference + * @property {Array.|null} [publicKeys] UserOwnedGrafeasNote publicKeys + * @property {string|null} [delegationServiceAccountEmail] UserOwnedGrafeasNote delegationServiceAccountEmail + */ - /** - * Converts this ExtensionRange to JSON. - * @function toJSON - * @memberof google.protobuf.DescriptorProto.ExtensionRange - * @instance - * @returns {Object.} JSON object - */ - ExtensionRange.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Constructs a new UserOwnedGrafeasNote. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a UserOwnedGrafeasNote. + * @implements IUserOwnedGrafeasNote + * @constructor + * @param {google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote=} [properties] Properties to set + */ + function UserOwnedGrafeasNote(properties) { + this.publicKeys = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - return ExtensionRange; - })(); + /** + * UserOwnedGrafeasNote noteReference. + * @member {string} noteReference + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @instance + */ + UserOwnedGrafeasNote.prototype.noteReference = ""; - DescriptorProto.ReservedRange = (function() { - - /** - * Properties of a ReservedRange. - * @memberof google.protobuf.DescriptorProto - * @interface IReservedRange - * @property {number|null} [start] ReservedRange start - * @property {number|null} [end] ReservedRange end - */ + /** + * UserOwnedGrafeasNote publicKeys. + * @member {Array.} publicKeys + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @instance + */ + UserOwnedGrafeasNote.prototype.publicKeys = $util.emptyArray; - /** - * Constructs a new ReservedRange. - * @memberof google.protobuf.DescriptorProto - * @classdesc Represents a ReservedRange. - * @implements IReservedRange - * @constructor - * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set - */ - function ReservedRange(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * UserOwnedGrafeasNote delegationServiceAccountEmail. + * @member {string} delegationServiceAccountEmail + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @instance + */ + UserOwnedGrafeasNote.prototype.delegationServiceAccountEmail = ""; - /** - * ReservedRange start. - * @member {number} start - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @instance - */ - ReservedRange.prototype.start = 0; + /** + * Creates a new UserOwnedGrafeasNote instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote} UserOwnedGrafeasNote instance + */ + UserOwnedGrafeasNote.create = function create(properties) { + return new UserOwnedGrafeasNote(properties); + }; - /** - * ReservedRange end. - * @member {number} end - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @instance - */ - ReservedRange.prototype.end = 0; + /** + * Encodes the specified UserOwnedGrafeasNote message. Does not implicitly {@link google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote} message UserOwnedGrafeasNote message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UserOwnedGrafeasNote.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.noteReference != null && Object.hasOwnProperty.call(message, "noteReference")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.noteReference); + if (message.publicKeys != null && message.publicKeys.length) + for (var i = 0; i < message.publicKeys.length; ++i) + $root.google.cloud.binaryauthorization.v1.AttestorPublicKey.encode(message.publicKeys[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.delegationServiceAccountEmail != null && Object.hasOwnProperty.call(message, "delegationServiceAccountEmail")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.delegationServiceAccountEmail); + return writer; + }; - /** - * Creates a new ReservedRange instance using the specified properties. - * @function create - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange instance - */ - ReservedRange.create = function create(properties) { - return new ReservedRange(properties); - }; + /** + * Encodes the specified UserOwnedGrafeasNote message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {google.cloud.binaryauthorization.v1.IUserOwnedGrafeasNote} message UserOwnedGrafeasNote message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UserOwnedGrafeasNote.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. - * @function encode - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ReservedRange.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.start != null && Object.hasOwnProperty.call(message, "start")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); - if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); - return writer; - }; + /** + * Decodes a UserOwnedGrafeasNote message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote} UserOwnedGrafeasNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UserOwnedGrafeasNote.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.noteReference = reader.string(); + break; + case 2: + if (!(message.publicKeys && message.publicKeys.length)) + message.publicKeys = []; + message.publicKeys.push($root.google.cloud.binaryauthorization.v1.AttestorPublicKey.decode(reader, reader.uint32())); + break; + case 3: + message.delegationServiceAccountEmail = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ReservedRange.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes a UserOwnedGrafeasNote message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote} UserOwnedGrafeasNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UserOwnedGrafeasNote.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes a ReservedRange message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ReservedRange.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Verifies a UserOwnedGrafeasNote message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UserOwnedGrafeasNote.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.noteReference != null && message.hasOwnProperty("noteReference")) + if (!$util.isString(message.noteReference)) + return "noteReference: string expected"; + if (message.publicKeys != null && message.hasOwnProperty("publicKeys")) { + if (!Array.isArray(message.publicKeys)) + return "publicKeys: array expected"; + for (var i = 0; i < message.publicKeys.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1.AttestorPublicKey.verify(message.publicKeys[i]); + if (error) + return "publicKeys." + error; + } } - } - return message; - }; + if (message.delegationServiceAccountEmail != null && message.hasOwnProperty("delegationServiceAccountEmail")) + if (!$util.isString(message.delegationServiceAccountEmail)) + return "delegationServiceAccountEmail: string expected"; + return null; + }; - /** - * Decodes a ReservedRange message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ReservedRange.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a UserOwnedGrafeasNote message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote} UserOwnedGrafeasNote + */ + UserOwnedGrafeasNote.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote(); + if (object.noteReference != null) + message.noteReference = String(object.noteReference); + if (object.publicKeys) { + if (!Array.isArray(object.publicKeys)) + throw TypeError(".google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.publicKeys: array expected"); + message.publicKeys = []; + for (var i = 0; i < object.publicKeys.length; ++i) { + if (typeof object.publicKeys[i] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote.publicKeys: object expected"); + message.publicKeys[i] = $root.google.cloud.binaryauthorization.v1.AttestorPublicKey.fromObject(object.publicKeys[i]); + } + } + if (object.delegationServiceAccountEmail != null) + message.delegationServiceAccountEmail = String(object.delegationServiceAccountEmail); + return message; + }; - /** - * Verifies a ReservedRange message. - * @function verify - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ReservedRange.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.start != null && message.hasOwnProperty("start")) - if (!$util.isInteger(message.start)) - return "start: integer expected"; - if (message.end != null && message.hasOwnProperty("end")) - if (!$util.isInteger(message.end)) - return "end: integer expected"; - return null; - }; - - /** - * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange - */ - ReservedRange.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) + /** + * Creates a plain object from a UserOwnedGrafeasNote message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @static + * @param {google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote} message UserOwnedGrafeasNote + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UserOwnedGrafeasNote.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.publicKeys = []; + if (options.defaults) { + object.noteReference = ""; + object.delegationServiceAccountEmail = ""; + } + if (message.noteReference != null && message.hasOwnProperty("noteReference")) + object.noteReference = message.noteReference; + if (message.publicKeys && message.publicKeys.length) { + object.publicKeys = []; + for (var j = 0; j < message.publicKeys.length; ++j) + object.publicKeys[j] = $root.google.cloud.binaryauthorization.v1.AttestorPublicKey.toObject(message.publicKeys[j], options); + } + if (message.delegationServiceAccountEmail != null && message.hasOwnProperty("delegationServiceAccountEmail")) + object.delegationServiceAccountEmail = message.delegationServiceAccountEmail; return object; - var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); - if (object.start != null) - message.start = object.start | 0; - if (object.end != null) - message.end = object.end | 0; - return message; - }; + }; - /** - * Creates a plain object from a ReservedRange message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @static - * @param {google.protobuf.DescriptorProto.ReservedRange} message ReservedRange - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ReservedRange.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.start = 0; - object.end = 0; - } - if (message.start != null && message.hasOwnProperty("start")) - object.start = message.start; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; - return object; - }; + /** + * Converts this UserOwnedGrafeasNote to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote + * @instance + * @returns {Object.} JSON object + */ + UserOwnedGrafeasNote.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Converts this ReservedRange to JSON. - * @function toJSON - * @memberof google.protobuf.DescriptorProto.ReservedRange - * @instance - * @returns {Object.} JSON object - */ - ReservedRange.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + return UserOwnedGrafeasNote; + })(); - return ReservedRange; - })(); + v1.PkixPublicKey = (function() { - return DescriptorProto; - })(); + /** + * Properties of a PkixPublicKey. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IPkixPublicKey + * @property {string|null} [publicKeyPem] PkixPublicKey publicKeyPem + * @property {google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm|null} [signatureAlgorithm] PkixPublicKey signatureAlgorithm + */ - protobuf.ExtensionRangeOptions = (function() { + /** + * Constructs a new PkixPublicKey. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a PkixPublicKey. + * @implements IPkixPublicKey + * @constructor + * @param {google.cloud.binaryauthorization.v1.IPkixPublicKey=} [properties] Properties to set + */ + function PkixPublicKey(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Properties of an ExtensionRangeOptions. - * @memberof google.protobuf - * @interface IExtensionRangeOptions - * @property {Array.|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption - */ + /** + * PkixPublicKey publicKeyPem. + * @member {string} publicKeyPem + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @instance + */ + PkixPublicKey.prototype.publicKeyPem = ""; - /** - * Constructs a new ExtensionRangeOptions. - * @memberof google.protobuf - * @classdesc Represents an ExtensionRangeOptions. - * @implements IExtensionRangeOptions - * @constructor - * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set - */ - function ExtensionRangeOptions(properties) { - this.uninterpretedOption = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * PkixPublicKey signatureAlgorithm. + * @member {google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm} signatureAlgorithm + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @instance + */ + PkixPublicKey.prototype.signatureAlgorithm = 0; - /** - * ExtensionRangeOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.ExtensionRangeOptions - * @instance - */ - ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Creates a new PkixPublicKey instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.IPkixPublicKey=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.PkixPublicKey} PkixPublicKey instance + */ + PkixPublicKey.create = function create(properties) { + return new PkixPublicKey(properties); + }; - /** - * Creates a new ExtensionRangeOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions instance - */ - ExtensionRangeOptions.create = function create(properties) { - return new ExtensionRangeOptions(properties); - }; + /** + * Encodes the specified PkixPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1.PkixPublicKey.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.IPkixPublicKey} message PkixPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PkixPublicKey.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.publicKeyPem != null && Object.hasOwnProperty.call(message, "publicKeyPem")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.publicKeyPem); + if (message.signatureAlgorithm != null && Object.hasOwnProperty.call(message, "signatureAlgorithm")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.signatureAlgorithm); + return writer; + }; - /** - * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRangeOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - return writer; - }; + /** + * Encodes the specified PkixPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.PkixPublicKey.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.IPkixPublicKey} message PkixPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PkixPublicKey.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExtensionRangeOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes a PkixPublicKey message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.PkixPublicKey} PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PkixPublicKey.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.PkixPublicKey(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.publicKeyPem = reader.string(); + break; + case 2: + message.signatureAlgorithm = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRangeOptions.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Decodes a PkixPublicKey message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.PkixPublicKey} PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PkixPublicKey.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExtensionRangeOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Verifies a PkixPublicKey message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PkixPublicKey.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.publicKeyPem != null && message.hasOwnProperty("publicKeyPem")) + if (!$util.isString(message.publicKeyPem)) + return "publicKeyPem: string expected"; + if (message.signatureAlgorithm != null && message.hasOwnProperty("signatureAlgorithm")) + switch (message.signatureAlgorithm) { + default: + return "signatureAlgorithm: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 9: + case 10: + case 10: + case 11: + case 11: + break; + } + return null; + }; - /** - * Verifies an ExtensionRangeOptions message. - * @function verify - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ExtensionRangeOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - return null; - }; + /** + * Creates a PkixPublicKey message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.PkixPublicKey} PkixPublicKey + */ + PkixPublicKey.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.PkixPublicKey) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.PkixPublicKey(); + if (object.publicKeyPem != null) + message.publicKeyPem = String(object.publicKeyPem); + switch (object.signatureAlgorithm) { + case "SIGNATURE_ALGORITHM_UNSPECIFIED": + case 0: + message.signatureAlgorithm = 0; + break; + case "RSA_PSS_2048_SHA256": + case 1: + message.signatureAlgorithm = 1; + break; + case "RSA_PSS_3072_SHA256": + case 2: + message.signatureAlgorithm = 2; + break; + case "RSA_PSS_4096_SHA256": + case 3: + message.signatureAlgorithm = 3; + break; + case "RSA_PSS_4096_SHA512": + case 4: + message.signatureAlgorithm = 4; + break; + case "RSA_SIGN_PKCS1_2048_SHA256": + case 5: + message.signatureAlgorithm = 5; + break; + case "RSA_SIGN_PKCS1_3072_SHA256": + case 6: + message.signatureAlgorithm = 6; + break; + case "RSA_SIGN_PKCS1_4096_SHA256": + case 7: + message.signatureAlgorithm = 7; + break; + case "RSA_SIGN_PKCS1_4096_SHA512": + case 8: + message.signatureAlgorithm = 8; + break; + case "ECDSA_P256_SHA256": + case 9: + message.signatureAlgorithm = 9; + break; + case "EC_SIGN_P256_SHA256": + case 9: + message.signatureAlgorithm = 9; + break; + case "ECDSA_P384_SHA384": + case 10: + message.signatureAlgorithm = 10; + break; + case "EC_SIGN_P384_SHA384": + case 10: + message.signatureAlgorithm = 10; + break; + case "ECDSA_P521_SHA512": + case 11: + message.signatureAlgorithm = 11; + break; + case "EC_SIGN_P521_SHA512": + case 11: + message.signatureAlgorithm = 11; + break; + } + return message; + }; - /** - * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions - */ - ExtensionRangeOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.ExtensionRangeOptions) - return object; - var message = new $root.google.protobuf.ExtensionRangeOptions(); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - return message; - }; + /** + * Creates a plain object from a PkixPublicKey message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.PkixPublicKey} message PkixPublicKey + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PkixPublicKey.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.publicKeyPem = ""; + object.signatureAlgorithm = options.enums === String ? "SIGNATURE_ALGORITHM_UNSPECIFIED" : 0; + } + if (message.publicKeyPem != null && message.hasOwnProperty("publicKeyPem")) + object.publicKeyPem = message.publicKeyPem; + if (message.signatureAlgorithm != null && message.hasOwnProperty("signatureAlgorithm")) + object.signatureAlgorithm = options.enums === String ? $root.google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm[message.signatureAlgorithm] : message.signatureAlgorithm; + return object; + }; - /** - * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.ExtensionRangeOptions - * @static - * @param {google.protobuf.ExtensionRangeOptions} message ExtensionRangeOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ExtensionRangeOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - return object; - }; + /** + * Converts this PkixPublicKey to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.PkixPublicKey + * @instance + * @returns {Object.} JSON object + */ + PkixPublicKey.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Converts this ExtensionRangeOptions to JSON. - * @function toJSON - * @memberof google.protobuf.ExtensionRangeOptions - * @instance - * @returns {Object.} JSON object - */ - ExtensionRangeOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ExtensionRangeOptions; - })(); - - protobuf.FieldDescriptorProto = (function() { - - /** - * Properties of a FieldDescriptorProto. - * @memberof google.protobuf - * @interface IFieldDescriptorProto - * @property {string|null} [name] FieldDescriptorProto name - * @property {number|null} [number] FieldDescriptorProto number - * @property {google.protobuf.FieldDescriptorProto.Label|null} [label] FieldDescriptorProto label - * @property {google.protobuf.FieldDescriptorProto.Type|null} [type] FieldDescriptorProto type - * @property {string|null} [typeName] FieldDescriptorProto typeName - * @property {string|null} [extendee] FieldDescriptorProto extendee - * @property {string|null} [defaultValue] FieldDescriptorProto defaultValue - * @property {number|null} [oneofIndex] FieldDescriptorProto oneofIndex - * @property {string|null} [jsonName] FieldDescriptorProto jsonName - * @property {google.protobuf.IFieldOptions|null} [options] FieldDescriptorProto options - * @property {boolean|null} [proto3Optional] FieldDescriptorProto proto3Optional - */ + /** + * SignatureAlgorithm enum. + * @name google.cloud.binaryauthorization.v1.PkixPublicKey.SignatureAlgorithm + * @enum {number} + * @property {number} SIGNATURE_ALGORITHM_UNSPECIFIED=0 SIGNATURE_ALGORITHM_UNSPECIFIED value + * @property {number} RSA_PSS_2048_SHA256=1 RSA_PSS_2048_SHA256 value + * @property {number} RSA_PSS_3072_SHA256=2 RSA_PSS_3072_SHA256 value + * @property {number} RSA_PSS_4096_SHA256=3 RSA_PSS_4096_SHA256 value + * @property {number} RSA_PSS_4096_SHA512=4 RSA_PSS_4096_SHA512 value + * @property {number} RSA_SIGN_PKCS1_2048_SHA256=5 RSA_SIGN_PKCS1_2048_SHA256 value + * @property {number} RSA_SIGN_PKCS1_3072_SHA256=6 RSA_SIGN_PKCS1_3072_SHA256 value + * @property {number} RSA_SIGN_PKCS1_4096_SHA256=7 RSA_SIGN_PKCS1_4096_SHA256 value + * @property {number} RSA_SIGN_PKCS1_4096_SHA512=8 RSA_SIGN_PKCS1_4096_SHA512 value + * @property {number} ECDSA_P256_SHA256=9 ECDSA_P256_SHA256 value + * @property {number} EC_SIGN_P256_SHA256=9 EC_SIGN_P256_SHA256 value + * @property {number} ECDSA_P384_SHA384=10 ECDSA_P384_SHA384 value + * @property {number} EC_SIGN_P384_SHA384=10 EC_SIGN_P384_SHA384 value + * @property {number} ECDSA_P521_SHA512=11 ECDSA_P521_SHA512 value + * @property {number} EC_SIGN_P521_SHA512=11 EC_SIGN_P521_SHA512 value + */ + PkixPublicKey.SignatureAlgorithm = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SIGNATURE_ALGORITHM_UNSPECIFIED"] = 0; + values[valuesById[1] = "RSA_PSS_2048_SHA256"] = 1; + values[valuesById[2] = "RSA_PSS_3072_SHA256"] = 2; + values[valuesById[3] = "RSA_PSS_4096_SHA256"] = 3; + values[valuesById[4] = "RSA_PSS_4096_SHA512"] = 4; + values[valuesById[5] = "RSA_SIGN_PKCS1_2048_SHA256"] = 5; + values[valuesById[6] = "RSA_SIGN_PKCS1_3072_SHA256"] = 6; + values[valuesById[7] = "RSA_SIGN_PKCS1_4096_SHA256"] = 7; + values[valuesById[8] = "RSA_SIGN_PKCS1_4096_SHA512"] = 8; + values[valuesById[9] = "ECDSA_P256_SHA256"] = 9; + values["EC_SIGN_P256_SHA256"] = 9; + values[valuesById[10] = "ECDSA_P384_SHA384"] = 10; + values["EC_SIGN_P384_SHA384"] = 10; + values[valuesById[11] = "ECDSA_P521_SHA512"] = 11; + values["EC_SIGN_P521_SHA512"] = 11; + return values; + })(); - /** - * Constructs a new FieldDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a FieldDescriptorProto. - * @implements IFieldDescriptorProto - * @constructor - * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set - */ - function FieldDescriptorProto(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + return PkixPublicKey; + })(); - /** - * FieldDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.name = ""; + v1.AttestorPublicKey = (function() { - /** - * FieldDescriptorProto number. - * @member {number} number - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.number = 0; + /** + * Properties of an AttestorPublicKey. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IAttestorPublicKey + * @property {string|null} [comment] AttestorPublicKey comment + * @property {string|null} [id] AttestorPublicKey id + * @property {string|null} [asciiArmoredPgpPublicKey] AttestorPublicKey asciiArmoredPgpPublicKey + * @property {google.cloud.binaryauthorization.v1.IPkixPublicKey|null} [pkixPublicKey] AttestorPublicKey pkixPublicKey + */ - /** - * FieldDescriptorProto label. - * @member {google.protobuf.FieldDescriptorProto.Label} label - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.label = 1; + /** + * Constructs a new AttestorPublicKey. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents an AttestorPublicKey. + * @implements IAttestorPublicKey + * @constructor + * @param {google.cloud.binaryauthorization.v1.IAttestorPublicKey=} [properties] Properties to set + */ + function AttestorPublicKey(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * FieldDescriptorProto type. - * @member {google.protobuf.FieldDescriptorProto.Type} type - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.type = 1; + /** + * AttestorPublicKey comment. + * @member {string} comment + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.comment = ""; - /** - * FieldDescriptorProto typeName. - * @member {string} typeName - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.typeName = ""; + /** + * AttestorPublicKey id. + * @member {string} id + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.id = ""; - /** - * FieldDescriptorProto extendee. - * @member {string} extendee - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.extendee = ""; + /** + * AttestorPublicKey asciiArmoredPgpPublicKey. + * @member {string|null|undefined} asciiArmoredPgpPublicKey + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.asciiArmoredPgpPublicKey = null; - /** - * FieldDescriptorProto defaultValue. - * @member {string} defaultValue - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.defaultValue = ""; + /** + * AttestorPublicKey pkixPublicKey. + * @member {google.cloud.binaryauthorization.v1.IPkixPublicKey|null|undefined} pkixPublicKey + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.pkixPublicKey = null; - /** - * FieldDescriptorProto oneofIndex. - * @member {number} oneofIndex - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.oneofIndex = 0; + // OneOf field names bound to virtual getters and setters + var $oneOfFields; - /** - * FieldDescriptorProto jsonName. - * @member {string} jsonName - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.jsonName = ""; + /** + * AttestorPublicKey publicKey. + * @member {"asciiArmoredPgpPublicKey"|"pkixPublicKey"|undefined} publicKey + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @instance + */ + Object.defineProperty(AttestorPublicKey.prototype, "publicKey", { + get: $util.oneOfGetter($oneOfFields = ["asciiArmoredPgpPublicKey", "pkixPublicKey"]), + set: $util.oneOfSetter($oneOfFields) + }); - /** - * FieldDescriptorProto options. - * @member {google.protobuf.IFieldOptions|null|undefined} options - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.options = null; + /** + * Creates a new AttestorPublicKey instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.IAttestorPublicKey=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.AttestorPublicKey} AttestorPublicKey instance + */ + AttestorPublicKey.create = function create(properties) { + return new AttestorPublicKey(properties); + }; - /** - * FieldDescriptorProto proto3Optional. - * @member {boolean} proto3Optional - * @memberof google.protobuf.FieldDescriptorProto - * @instance - */ - FieldDescriptorProto.prototype.proto3Optional = false; + /** + * Encodes the specified AttestorPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1.AttestorPublicKey.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.IAttestorPublicKey} message AttestorPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AttestorPublicKey.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.comment != null && Object.hasOwnProperty.call(message, "comment")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.comment); + if (message.id != null && Object.hasOwnProperty.call(message, "id")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.id); + if (message.asciiArmoredPgpPublicKey != null && Object.hasOwnProperty.call(message, "asciiArmoredPgpPublicKey")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.asciiArmoredPgpPublicKey); + if (message.pkixPublicKey != null && Object.hasOwnProperty.call(message, "pkixPublicKey")) + $root.google.cloud.binaryauthorization.v1.PkixPublicKey.encode(message.pkixPublicKey, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + return writer; + }; - /** - * Creates a new FieldDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto instance - */ - FieldDescriptorProto.create = function create(properties) { - return new FieldDescriptorProto(properties); - }; + /** + * Encodes the specified AttestorPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.AttestorPublicKey.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.IAttestorPublicKey} message AttestorPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AttestorPublicKey.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FieldDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.extendee != null && Object.hasOwnProperty.call(message, "extendee")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.extendee); - if (message.number != null && Object.hasOwnProperty.call(message, "number")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.number); - if (message.label != null && Object.hasOwnProperty.call(message, "label")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.label); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 5, wireType 0 =*/40).int32(message.type); - if (message.typeName != null && Object.hasOwnProperty.call(message, "typeName")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.typeName); - if (message.defaultValue != null && Object.hasOwnProperty.call(message, "defaultValue")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.defaultValue); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.FieldOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.oneofIndex != null && Object.hasOwnProperty.call(message, "oneofIndex")) - writer.uint32(/* id 9, wireType 0 =*/72).int32(message.oneofIndex); - if (message.jsonName != null && Object.hasOwnProperty.call(message, "jsonName")) - writer.uint32(/* id 10, wireType 2 =*/82).string(message.jsonName); - if (message.proto3Optional != null && Object.hasOwnProperty.call(message, "proto3Optional")) - writer.uint32(/* id 17, wireType 0 =*/136).bool(message.proto3Optional); - return writer; - }; + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.AttestorPublicKey} AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AttestorPublicKey.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.AttestorPublicKey(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.comment = reader.string(); + break; + case 2: + message.id = reader.string(); + break; + case 3: + message.asciiArmoredPgpPublicKey = reader.string(); + break; + case 5: + message.pkixPublicKey = $root.google.cloud.binaryauthorization.v1.PkixPublicKey.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FieldDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.AttestorPublicKey} AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AttestorPublicKey.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FieldDescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 3: - message.number = reader.int32(); - break; - case 4: - message.label = reader.int32(); - break; - case 5: - message.type = reader.int32(); - break; - case 6: - message.typeName = reader.string(); - break; - case 2: - message.extendee = reader.string(); - break; - case 7: - message.defaultValue = reader.string(); - break; - case 9: - message.oneofIndex = reader.int32(); - break; - case 10: - message.jsonName = reader.string(); - break; - case 8: - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); - break; - case 17: - message.proto3Optional = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Verifies an AttestorPublicKey message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AttestorPublicKey.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.comment != null && message.hasOwnProperty("comment")) + if (!$util.isString(message.comment)) + return "comment: string expected"; + if (message.id != null && message.hasOwnProperty("id")) + if (!$util.isString(message.id)) + return "id: string expected"; + if (message.asciiArmoredPgpPublicKey != null && message.hasOwnProperty("asciiArmoredPgpPublicKey")) { + properties.publicKey = 1; + if (!$util.isString(message.asciiArmoredPgpPublicKey)) + return "asciiArmoredPgpPublicKey: string expected"; + } + if (message.pkixPublicKey != null && message.hasOwnProperty("pkixPublicKey")) { + if (properties.publicKey === 1) + return "publicKey: multiple values"; + properties.publicKey = 1; + { + var error = $root.google.cloud.binaryauthorization.v1.PkixPublicKey.verify(message.pkixPublicKey); + if (error) + return "pkixPublicKey." + error; + } + } + return null; + }; - /** - * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FieldDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates an AttestorPublicKey message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.AttestorPublicKey} AttestorPublicKey + */ + AttestorPublicKey.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.AttestorPublicKey) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.AttestorPublicKey(); + if (object.comment != null) + message.comment = String(object.comment); + if (object.id != null) + message.id = String(object.id); + if (object.asciiArmoredPgpPublicKey != null) + message.asciiArmoredPgpPublicKey = String(object.asciiArmoredPgpPublicKey); + if (object.pkixPublicKey != null) { + if (typeof object.pkixPublicKey !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.AttestorPublicKey.pkixPublicKey: object expected"); + message.pkixPublicKey = $root.google.cloud.binaryauthorization.v1.PkixPublicKey.fromObject(object.pkixPublicKey); + } + return message; + }; - /** - * Verifies a FieldDescriptorProto message. - * @function verify - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FieldDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.number != null && message.hasOwnProperty("number")) - if (!$util.isInteger(message.number)) - return "number: integer expected"; - if (message.label != null && message.hasOwnProperty("label")) - switch (message.label) { - default: - return "label: enum value expected"; - case 1: - case 2: - case 3: - break; - } - if (message.type != null && message.hasOwnProperty("type")) - switch (message.type) { - default: - return "type: enum value expected"; - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - case 12: - case 13: - case 14: - case 15: - case 16: - case 17: - case 18: - break; - } - if (message.typeName != null && message.hasOwnProperty("typeName")) - if (!$util.isString(message.typeName)) - return "typeName: string expected"; - if (message.extendee != null && message.hasOwnProperty("extendee")) - if (!$util.isString(message.extendee)) - return "extendee: string expected"; - if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) - if (!$util.isString(message.defaultValue)) - return "defaultValue: string expected"; - if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) - if (!$util.isInteger(message.oneofIndex)) - return "oneofIndex: integer expected"; - if (message.jsonName != null && message.hasOwnProperty("jsonName")) - if (!$util.isString(message.jsonName)) - return "jsonName: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) - if (typeof message.proto3Optional !== "boolean") - return "proto3Optional: boolean expected"; - return null; - }; + /** + * Creates a plain object from an AttestorPublicKey message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1.AttestorPublicKey} message AttestorPublicKey + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AttestorPublicKey.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.comment = ""; + object.id = ""; + } + if (message.comment != null && message.hasOwnProperty("comment")) + object.comment = message.comment; + if (message.id != null && message.hasOwnProperty("id")) + object.id = message.id; + if (message.asciiArmoredPgpPublicKey != null && message.hasOwnProperty("asciiArmoredPgpPublicKey")) { + object.asciiArmoredPgpPublicKey = message.asciiArmoredPgpPublicKey; + if (options.oneofs) + object.publicKey = "asciiArmoredPgpPublicKey"; + } + if (message.pkixPublicKey != null && message.hasOwnProperty("pkixPublicKey")) { + object.pkixPublicKey = $root.google.cloud.binaryauthorization.v1.PkixPublicKey.toObject(message.pkixPublicKey, options); + if (options.oneofs) + object.publicKey = "pkixPublicKey"; + } + return object; + }; - /** - * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto - */ - FieldDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FieldDescriptorProto) - return object; - var message = new $root.google.protobuf.FieldDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.number != null) - message.number = object.number | 0; - switch (object.label) { - case "LABEL_OPTIONAL": - case 1: - message.label = 1; - break; - case "LABEL_REQUIRED": - case 2: - message.label = 2; - break; - case "LABEL_REPEATED": - case 3: - message.label = 3; - break; - } - switch (object.type) { - case "TYPE_DOUBLE": - case 1: - message.type = 1; - break; - case "TYPE_FLOAT": - case 2: - message.type = 2; - break; - case "TYPE_INT64": - case 3: - message.type = 3; - break; - case "TYPE_UINT64": - case 4: - message.type = 4; - break; - case "TYPE_INT32": - case 5: - message.type = 5; - break; - case "TYPE_FIXED64": - case 6: - message.type = 6; - break; - case "TYPE_FIXED32": - case 7: - message.type = 7; - break; - case "TYPE_BOOL": - case 8: - message.type = 8; - break; - case "TYPE_STRING": - case 9: - message.type = 9; - break; - case "TYPE_GROUP": - case 10: - message.type = 10; - break; - case "TYPE_MESSAGE": - case 11: - message.type = 11; - break; - case "TYPE_BYTES": - case 12: - message.type = 12; - break; - case "TYPE_UINT32": - case 13: - message.type = 13; - break; - case "TYPE_ENUM": - case 14: - message.type = 14; - break; - case "TYPE_SFIXED32": - case 15: - message.type = 15; - break; - case "TYPE_SFIXED64": - case 16: - message.type = 16; - break; - case "TYPE_SINT32": - case 17: - message.type = 17; - break; - case "TYPE_SINT64": - case 18: - message.type = 18; - break; - } - if (object.typeName != null) - message.typeName = String(object.typeName); - if (object.extendee != null) - message.extendee = String(object.extendee); - if (object.defaultValue != null) - message.defaultValue = String(object.defaultValue); - if (object.oneofIndex != null) - message.oneofIndex = object.oneofIndex | 0; - if (object.jsonName != null) - message.jsonName = String(object.jsonName); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); - } - if (object.proto3Optional != null) - message.proto3Optional = Boolean(object.proto3Optional); - return message; - }; + /** + * Converts this AttestorPublicKey to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.AttestorPublicKey + * @instance + * @returns {Object.} JSON object + */ + AttestorPublicKey.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FieldDescriptorProto - * @static - * @param {google.protobuf.FieldDescriptorProto} message FieldDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FieldDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.extendee = ""; - object.number = 0; - object.label = options.enums === String ? "LABEL_OPTIONAL" : 1; - object.type = options.enums === String ? "TYPE_DOUBLE" : 1; - object.typeName = ""; - object.defaultValue = ""; - object.options = null; - object.oneofIndex = 0; - object.jsonName = ""; - object.proto3Optional = false; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.extendee != null && message.hasOwnProperty("extendee")) - object.extendee = message.extendee; - if (message.number != null && message.hasOwnProperty("number")) - object.number = message.number; - if (message.label != null && message.hasOwnProperty("label")) - object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label; - if (message.type != null && message.hasOwnProperty("type")) - object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type; - if (message.typeName != null && message.hasOwnProperty("typeName")) - object.typeName = message.typeName; - if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) - object.defaultValue = message.defaultValue; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.FieldOptions.toObject(message.options, options); - if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) - object.oneofIndex = message.oneofIndex; - if (message.jsonName != null && message.hasOwnProperty("jsonName")) - object.jsonName = message.jsonName; - if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) - object.proto3Optional = message.proto3Optional; - return object; - }; + return AttestorPublicKey; + })(); - /** - * Converts this FieldDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.FieldDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - FieldDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + v1.BinauthzManagementServiceV1 = (function() { - /** - * Type enum. - * @name google.protobuf.FieldDescriptorProto.Type - * @enum {number} - * @property {number} TYPE_DOUBLE=1 TYPE_DOUBLE value - * @property {number} TYPE_FLOAT=2 TYPE_FLOAT value - * @property {number} TYPE_INT64=3 TYPE_INT64 value - * @property {number} TYPE_UINT64=4 TYPE_UINT64 value - * @property {number} TYPE_INT32=5 TYPE_INT32 value - * @property {number} TYPE_FIXED64=6 TYPE_FIXED64 value - * @property {number} TYPE_FIXED32=7 TYPE_FIXED32 value - * @property {number} TYPE_BOOL=8 TYPE_BOOL value - * @property {number} TYPE_STRING=9 TYPE_STRING value - * @property {number} TYPE_GROUP=10 TYPE_GROUP value - * @property {number} TYPE_MESSAGE=11 TYPE_MESSAGE value - * @property {number} TYPE_BYTES=12 TYPE_BYTES value - * @property {number} TYPE_UINT32=13 TYPE_UINT32 value - * @property {number} TYPE_ENUM=14 TYPE_ENUM value - * @property {number} TYPE_SFIXED32=15 TYPE_SFIXED32 value - * @property {number} TYPE_SFIXED64=16 TYPE_SFIXED64 value - * @property {number} TYPE_SINT32=17 TYPE_SINT32 value - * @property {number} TYPE_SINT64=18 TYPE_SINT64 value - */ - FieldDescriptorProto.Type = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[1] = "TYPE_DOUBLE"] = 1; - values[valuesById[2] = "TYPE_FLOAT"] = 2; - values[valuesById[3] = "TYPE_INT64"] = 3; - values[valuesById[4] = "TYPE_UINT64"] = 4; - values[valuesById[5] = "TYPE_INT32"] = 5; - values[valuesById[6] = "TYPE_FIXED64"] = 6; - values[valuesById[7] = "TYPE_FIXED32"] = 7; - values[valuesById[8] = "TYPE_BOOL"] = 8; - values[valuesById[9] = "TYPE_STRING"] = 9; - values[valuesById[10] = "TYPE_GROUP"] = 10; - values[valuesById[11] = "TYPE_MESSAGE"] = 11; - values[valuesById[12] = "TYPE_BYTES"] = 12; - values[valuesById[13] = "TYPE_UINT32"] = 13; - values[valuesById[14] = "TYPE_ENUM"] = 14; - values[valuesById[15] = "TYPE_SFIXED32"] = 15; - values[valuesById[16] = "TYPE_SFIXED64"] = 16; - values[valuesById[17] = "TYPE_SINT32"] = 17; - values[valuesById[18] = "TYPE_SINT64"] = 18; - return values; - })(); + /** + * Constructs a new BinauthzManagementServiceV1 service. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a BinauthzManagementServiceV1 + * @extends $protobuf.rpc.Service + * @constructor + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + */ + function BinauthzManagementServiceV1(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } - /** - * Label enum. - * @name google.protobuf.FieldDescriptorProto.Label - * @enum {number} - * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value - * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value - * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value - */ - FieldDescriptorProto.Label = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[1] = "LABEL_OPTIONAL"] = 1; - values[valuesById[2] = "LABEL_REQUIRED"] = 2; - values[valuesById[3] = "LABEL_REPEATED"] = 3; - return values; - })(); + (BinauthzManagementServiceV1.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = BinauthzManagementServiceV1; - return FieldDescriptorProto; - })(); + /** + * Creates new BinauthzManagementServiceV1 service using the specified rpc implementation. + * @function create + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @static + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + * @returns {BinauthzManagementServiceV1} RPC service. Useful where requests and/or responses are streamed. + */ + BinauthzManagementServiceV1.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; - protobuf.OneofDescriptorProto = (function() { + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#getPolicy}. + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @typedef GetPolicyCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.Policy} [response] Policy + */ - /** - * Properties of an OneofDescriptorProto. - * @memberof google.protobuf - * @interface IOneofDescriptorProto - * @property {string|null} [name] OneofDescriptorProto name - * @property {google.protobuf.IOneofOptions|null} [options] OneofDescriptorProto options - */ + /** + * Calls GetPolicy. + * @function getPolicy + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IGetPolicyRequest} request GetPolicyRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.GetPolicyCallback} callback Node-style callback called with the error, if any, and Policy + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1.prototype.getPolicy = function getPolicy(request, callback) { + return this.rpcCall(getPolicy, $root.google.cloud.binaryauthorization.v1.GetPolicyRequest, $root.google.cloud.binaryauthorization.v1.Policy, request, callback); + }, "name", { value: "GetPolicy" }); - /** - * Constructs a new OneofDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents an OneofDescriptorProto. - * @implements IOneofDescriptorProto - * @constructor - * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set - */ - function OneofDescriptorProto(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Calls GetPolicy. + * @function getPolicy + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IGetPolicyRequest} request GetPolicyRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * OneofDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.OneofDescriptorProto - * @instance - */ - OneofDescriptorProto.prototype.name = ""; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#updatePolicy}. + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @typedef UpdatePolicyCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.Policy} [response] Policy + */ - /** - * OneofDescriptorProto options. - * @member {google.protobuf.IOneofOptions|null|undefined} options - * @memberof google.protobuf.OneofDescriptorProto - * @instance - */ - OneofDescriptorProto.prototype.options = null; + /** + * Calls UpdatePolicy. + * @function updatePolicy + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IUpdatePolicyRequest} request UpdatePolicyRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.UpdatePolicyCallback} callback Node-style callback called with the error, if any, and Policy + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1.prototype.updatePolicy = function updatePolicy(request, callback) { + return this.rpcCall(updatePolicy, $root.google.cloud.binaryauthorization.v1.UpdatePolicyRequest, $root.google.cloud.binaryauthorization.v1.Policy, request, callback); + }, "name", { value: "UpdatePolicy" }); - /** - * Creates a new OneofDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto instance - */ - OneofDescriptorProto.create = function create(properties) { - return new OneofDescriptorProto(properties); - }; + /** + * Calls UpdatePolicy. + * @function updatePolicy + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IUpdatePolicyRequest} request UpdatePolicyRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - OneofDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.OneofOptions.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - return writer; - }; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#createAttestor}. + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @typedef CreateAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.Attestor} [response] Attestor + */ - /** - * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - OneofDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Calls CreateAttestor. + * @function createAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.ICreateAttestorRequest} request CreateAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.CreateAttestorCallback} callback Node-style callback called with the error, if any, and Attestor + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1.prototype.createAttestor = function createAttestor(request, callback) { + return this.rpcCall(createAttestor, $root.google.cloud.binaryauthorization.v1.CreateAttestorRequest, $root.google.cloud.binaryauthorization.v1.Attestor, request, callback); + }, "name", { value: "CreateAttestor" }); - /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - OneofDescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Calls CreateAttestor. + * @function createAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.ICreateAttestorRequest} request CreateAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - OneofDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#getAttestor}. + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @typedef GetAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.Attestor} [response] Attestor + */ - /** - * Verifies an OneofDescriptorProto message. - * @function verify - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - OneofDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + /** + * Calls GetAttestor. + * @function getAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IGetAttestorRequest} request GetAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.GetAttestorCallback} callback Node-style callback called with the error, if any, and Attestor + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1.prototype.getAttestor = function getAttestor(request, callback) { + return this.rpcCall(getAttestor, $root.google.cloud.binaryauthorization.v1.GetAttestorRequest, $root.google.cloud.binaryauthorization.v1.Attestor, request, callback); + }, "name", { value: "GetAttestor" }); - /** - * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto - */ - OneofDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.OneofDescriptorProto) - return object; - var message = new $root.google.protobuf.OneofDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); - } - return message; - }; + /** + * Calls GetAttestor. + * @function getAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IGetAttestorRequest} request GetAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.OneofDescriptorProto - * @static - * @param {google.protobuf.OneofDescriptorProto} message OneofDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - OneofDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.OneofOptions.toObject(message.options, options); - return object; - }; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#updateAttestor}. + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @typedef UpdateAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.Attestor} [response] Attestor + */ - /** - * Converts this OneofDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.OneofDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - OneofDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Calls UpdateAttestor. + * @function updateAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IUpdateAttestorRequest} request UpdateAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.UpdateAttestorCallback} callback Node-style callback called with the error, if any, and Attestor + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1.prototype.updateAttestor = function updateAttestor(request, callback) { + return this.rpcCall(updateAttestor, $root.google.cloud.binaryauthorization.v1.UpdateAttestorRequest, $root.google.cloud.binaryauthorization.v1.Attestor, request, callback); + }, "name", { value: "UpdateAttestor" }); - return OneofDescriptorProto; - })(); + /** + * Calls UpdateAttestor. + * @function updateAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IUpdateAttestorRequest} request UpdateAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - protobuf.EnumDescriptorProto = (function() { + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#listAttestors}. + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @typedef ListAttestorsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.ListAttestorsResponse} [response] ListAttestorsResponse + */ - /** - * Properties of an EnumDescriptorProto. - * @memberof google.protobuf - * @interface IEnumDescriptorProto - * @property {string|null} [name] EnumDescriptorProto name - * @property {Array.|null} [value] EnumDescriptorProto value - * @property {google.protobuf.IEnumOptions|null} [options] EnumDescriptorProto options - * @property {Array.|null} [reservedRange] EnumDescriptorProto reservedRange - * @property {Array.|null} [reservedName] EnumDescriptorProto reservedName - */ + /** + * Calls ListAttestors. + * @function listAttestors + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IListAttestorsRequest} request ListAttestorsRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.ListAttestorsCallback} callback Node-style callback called with the error, if any, and ListAttestorsResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1.prototype.listAttestors = function listAttestors(request, callback) { + return this.rpcCall(listAttestors, $root.google.cloud.binaryauthorization.v1.ListAttestorsRequest, $root.google.cloud.binaryauthorization.v1.ListAttestorsResponse, request, callback); + }, "name", { value: "ListAttestors" }); - /** - * Constructs a new EnumDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents an EnumDescriptorProto. - * @implements IEnumDescriptorProto - * @constructor - * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set - */ - function EnumDescriptorProto(properties) { - this.value = []; - this.reservedRange = []; - this.reservedName = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Calls ListAttestors. + * @function listAttestors + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IListAttestorsRequest} request ListAttestorsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * EnumDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.name = ""; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1#deleteAttestor}. + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @typedef DeleteAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.protobuf.Empty} [response] Empty + */ - /** - * EnumDescriptorProto value. - * @member {Array.} value - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.value = $util.emptyArray; + /** + * Calls DeleteAttestor. + * @function deleteAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IDeleteAttestorRequest} request DeleteAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.DeleteAttestorCallback} callback Node-style callback called with the error, if any, and Empty + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1.prototype.deleteAttestor = function deleteAttestor(request, callback) { + return this.rpcCall(deleteAttestor, $root.google.cloud.binaryauthorization.v1.DeleteAttestorRequest, $root.google.protobuf.Empty, request, callback); + }, "name", { value: "DeleteAttestor" }); - /** - * EnumDescriptorProto options. - * @member {google.protobuf.IEnumOptions|null|undefined} options - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.options = null; + /** + * Calls DeleteAttestor. + * @function deleteAttestor + * @memberof google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IDeleteAttestorRequest} request DeleteAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * EnumDescriptorProto reservedRange. - * @member {Array.} reservedRange - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.reservedRange = $util.emptyArray; + return BinauthzManagementServiceV1; + })(); - /** - * EnumDescriptorProto reservedName. - * @member {Array.} reservedName - * @memberof google.protobuf.EnumDescriptorProto - * @instance - */ - EnumDescriptorProto.prototype.reservedName = $util.emptyArray; + v1.SystemPolicyV1 = (function() { - /** - * Creates a new EnumDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto instance - */ - EnumDescriptorProto.create = function create(properties) { - return new EnumDescriptorProto(properties); - }; + /** + * Constructs a new SystemPolicyV1 service. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a SystemPolicyV1 + * @extends $protobuf.rpc.Service + * @constructor + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + */ + function SystemPolicyV1(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } - /** - * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.value != null && message.value.length) - for (var i = 0; i < message.value.length; ++i) - $root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.EnumOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.reservedRange != null && message.reservedRange.length) - for (var i = 0; i < message.reservedRange.length; ++i) - $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.reservedName != null && message.reservedName.length) - for (var i = 0; i < message.reservedName.length; ++i) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.reservedName[i]); - return writer; - }; + (SystemPolicyV1.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = SystemPolicyV1; - /** - * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates new SystemPolicyV1 service using the specified rpc implementation. + * @function create + * @memberof google.cloud.binaryauthorization.v1.SystemPolicyV1 + * @static + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + * @returns {SystemPolicyV1} RPC service. Useful where requests and/or responses are streamed. + */ + SystemPolicyV1.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; - /** - * Decodes an EnumDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumDescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.value && message.value.length)) - message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); - break; - case 4: - if (!(message.reservedRange && message.reservedRange.length)) - message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); - break; - case 5: - if (!(message.reservedName && message.reservedName.length)) - message.reservedName = []; - message.reservedName.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.SystemPolicyV1#getSystemPolicy}. + * @memberof google.cloud.binaryauthorization.v1.SystemPolicyV1 + * @typedef GetSystemPolicyCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.Policy} [response] Policy + */ - /** - * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Calls GetSystemPolicy. + * @function getSystemPolicy + * @memberof google.cloud.binaryauthorization.v1.SystemPolicyV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest} request GetSystemPolicyRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.SystemPolicyV1.GetSystemPolicyCallback} callback Node-style callback called with the error, if any, and Policy + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(SystemPolicyV1.prototype.getSystemPolicy = function getSystemPolicy(request, callback) { + return this.rpcCall(getSystemPolicy, $root.google.cloud.binaryauthorization.v1.GetSystemPolicyRequest, $root.google.cloud.binaryauthorization.v1.Policy, request, callback); + }, "name", { value: "GetSystemPolicy" }); - /** - * Verifies an EnumDescriptorProto message. - * @function verify - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.value != null && message.hasOwnProperty("value")) { - if (!Array.isArray(message.value)) - return "value: array expected"; - for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); - if (error) - return "value." + error; - } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { - if (!Array.isArray(message.reservedRange)) - return "reservedRange: array expected"; - for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); - if (error) - return "reservedRange." + error; - } - } - if (message.reservedName != null && message.hasOwnProperty("reservedName")) { - if (!Array.isArray(message.reservedName)) - return "reservedName: array expected"; - for (var i = 0; i < message.reservedName.length; ++i) - if (!$util.isString(message.reservedName[i])) - return "reservedName: string[] expected"; - } - return null; - }; + /** + * Calls GetSystemPolicy. + * @function getSystemPolicy + * @memberof google.cloud.binaryauthorization.v1.SystemPolicyV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest} request GetSystemPolicyRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto - */ - EnumDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumDescriptorProto) - return object; - var message = new $root.google.protobuf.EnumDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.value) { - if (!Array.isArray(object.value)) - throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected"); - message.value = []; - for (var i = 0; i < object.value.length; ++i) { - if (typeof object.value[i] !== "object") - throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); - } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); - } - if (object.reservedRange) { - if (!Array.isArray(object.reservedRange)) - throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected"); - message.reservedRange = []; - for (var i = 0; i < object.reservedRange.length; ++i) { - if (typeof object.reservedRange[i] !== "object") - throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); - } - } - if (object.reservedName) { - if (!Array.isArray(object.reservedName)) - throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected"); - message.reservedName = []; - for (var i = 0; i < object.reservedName.length; ++i) - message.reservedName[i] = String(object.reservedName[i]); - } - return message; - }; + return SystemPolicyV1; + })(); - /** - * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumDescriptorProto - * @static - * @param {google.protobuf.EnumDescriptorProto} message EnumDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.value = []; - object.reservedRange = []; - object.reservedName = []; - } - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.value && message.value.length) { - object.value = []; - for (var j = 0; j < message.value.length; ++j) - object.value[j] = $root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.EnumOptions.toObject(message.options, options); - if (message.reservedRange && message.reservedRange.length) { - object.reservedRange = []; - for (var j = 0; j < message.reservedRange.length; ++j) - object.reservedRange[j] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j], options); - } - if (message.reservedName && message.reservedName.length) { - object.reservedName = []; - for (var j = 0; j < message.reservedName.length; ++j) - object.reservedName[j] = message.reservedName[j]; - } - return object; - }; + v1.ValidationHelperV1 = (function() { - /** - * Converts this EnumDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.EnumDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - EnumDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Constructs a new ValidationHelperV1 service. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a ValidationHelperV1 + * @extends $protobuf.rpc.Service + * @constructor + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + */ + function ValidationHelperV1(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } - EnumDescriptorProto.EnumReservedRange = (function() { + (ValidationHelperV1.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = ValidationHelperV1; - /** - * Properties of an EnumReservedRange. - * @memberof google.protobuf.EnumDescriptorProto - * @interface IEnumReservedRange - * @property {number|null} [start] EnumReservedRange start - * @property {number|null} [end] EnumReservedRange end - */ + /** + * Creates new ValidationHelperV1 service using the specified rpc implementation. + * @function create + * @memberof google.cloud.binaryauthorization.v1.ValidationHelperV1 + * @static + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + * @returns {ValidationHelperV1} RPC service. Useful where requests and/or responses are streamed. + */ + ValidationHelperV1.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; - /** - * Constructs a new EnumReservedRange. - * @memberof google.protobuf.EnumDescriptorProto - * @classdesc Represents an EnumReservedRange. - * @implements IEnumReservedRange - * @constructor - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set - */ - function EnumReservedRange(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1.ValidationHelperV1#validateAttestationOccurrence}. + * @memberof google.cloud.binaryauthorization.v1.ValidationHelperV1 + * @typedef ValidateAttestationOccurrenceCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse} [response] ValidateAttestationOccurrenceResponse + */ - /** - * EnumReservedRange start. - * @member {number} start - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @instance - */ - EnumReservedRange.prototype.start = 0; + /** + * Calls ValidateAttestationOccurrence. + * @function validateAttestationOccurrence + * @memberof google.cloud.binaryauthorization.v1.ValidationHelperV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest} request ValidateAttestationOccurrenceRequest message or plain object + * @param {google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrenceCallback} callback Node-style callback called with the error, if any, and ValidateAttestationOccurrenceResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(ValidationHelperV1.prototype.validateAttestationOccurrence = function validateAttestationOccurrence(request, callback) { + return this.rpcCall(validateAttestationOccurrence, $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest, $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse, request, callback); + }, "name", { value: "ValidateAttestationOccurrence" }); - /** - * EnumReservedRange end. - * @member {number} end - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @instance - */ - EnumReservedRange.prototype.end = 0; + /** + * Calls ValidateAttestationOccurrence. + * @function validateAttestationOccurrence + * @memberof google.cloud.binaryauthorization.v1.ValidationHelperV1 + * @instance + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest} request ValidateAttestationOccurrenceRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ - /** - * Creates a new EnumReservedRange instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange instance - */ - EnumReservedRange.create = function create(properties) { - return new EnumReservedRange(properties); - }; + return ValidationHelperV1; + })(); - /** - * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumReservedRange.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.start != null && Object.hasOwnProperty.call(message, "start")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); - if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); - return writer; - }; + v1.GetPolicyRequest = (function() { - /** - * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumReservedRange.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Properties of a GetPolicyRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IGetPolicyRequest + * @property {string|null} [name] GetPolicyRequest name + */ - /** - * Decodes an EnumReservedRange message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumReservedRange.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.start = reader.int32(); - break; - case 2: - message.end = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } + /** + * Constructs a new GetPolicyRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a GetPolicyRequest. + * @implements IGetPolicyRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IGetPolicyRequest=} [properties] Properties to set + */ + function GetPolicyRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; } - return message; - }; - /** - * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumReservedRange.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * GetPolicyRequest name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @instance + */ + GetPolicyRequest.prototype.name = ""; - /** - * Verifies an EnumReservedRange message. - * @function verify - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumReservedRange.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.start != null && message.hasOwnProperty("start")) - if (!$util.isInteger(message.start)) - return "start: integer expected"; - if (message.end != null && message.hasOwnProperty("end")) - if (!$util.isInteger(message.end)) - return "end: integer expected"; - return null; - }; + /** + * Creates a new GetPolicyRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetPolicyRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.GetPolicyRequest} GetPolicyRequest instance + */ + GetPolicyRequest.create = function create(properties) { + return new GetPolicyRequest(properties); + }; - /** - * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange - */ - EnumReservedRange.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) - return object; - var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); - if (object.start != null) - message.start = object.start | 0; - if (object.end != null) - message.end = object.end | 0; - return message; - }; + /** + * Encodes the specified GetPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetPolicyRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetPolicyRequest} message GetPolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetPolicyRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; - /** - * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @static - * @param {google.protobuf.EnumDescriptorProto.EnumReservedRange} message EnumReservedRange - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumReservedRange.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.start = 0; - object.end = 0; - } - if (message.start != null && message.hasOwnProperty("start")) - object.start = message.start; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; - return object; - }; + /** + * Encodes the specified GetPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetPolicyRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetPolicyRequest} message GetPolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetPolicyRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Converts this EnumReservedRange to JSON. - * @function toJSON - * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange - * @instance - * @returns {Object.} JSON object - */ - EnumReservedRange.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.GetPolicyRequest} GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetPolicyRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.GetPolicyRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - return EnumReservedRange; - })(); + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.GetPolicyRequest} GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetPolicyRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - return EnumDescriptorProto; - })(); + /** + * Verifies a GetPolicyRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetPolicyRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; - protobuf.EnumValueDescriptorProto = (function() { + /** + * Creates a GetPolicyRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.GetPolicyRequest} GetPolicyRequest + */ + GetPolicyRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.GetPolicyRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.GetPolicyRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; - /** - * Properties of an EnumValueDescriptorProto. - * @memberof google.protobuf - * @interface IEnumValueDescriptorProto - * @property {string|null} [name] EnumValueDescriptorProto name - * @property {number|null} [number] EnumValueDescriptorProto number - * @property {google.protobuf.IEnumValueOptions|null} [options] EnumValueDescriptorProto options - */ + /** + * Creates a plain object from a GetPolicyRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.GetPolicyRequest} message GetPolicyRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetPolicyRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; - /** - * Constructs a new EnumValueDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents an EnumValueDescriptorProto. - * @implements IEnumValueDescriptorProto - * @constructor - * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set - */ - function EnumValueDescriptorProto(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Converts this GetPolicyRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.GetPolicyRequest + * @instance + * @returns {Object.} JSON object + */ + GetPolicyRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * EnumValueDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - */ - EnumValueDescriptorProto.prototype.name = ""; + return GetPolicyRequest; + })(); - /** - * EnumValueDescriptorProto number. - * @member {number} number - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - */ - EnumValueDescriptorProto.prototype.number = 0; + v1.UpdatePolicyRequest = (function() { - /** - * EnumValueDescriptorProto options. - * @member {google.protobuf.IEnumValueOptions|null|undefined} options - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - */ - EnumValueDescriptorProto.prototype.options = null; + /** + * Properties of an UpdatePolicyRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IUpdatePolicyRequest + * @property {google.cloud.binaryauthorization.v1.IPolicy|null} [policy] UpdatePolicyRequest policy + */ - /** - * Creates a new EnumValueDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto instance - */ - EnumValueDescriptorProto.create = function create(properties) { - return new EnumValueDescriptorProto(properties); - }; + /** + * Constructs a new UpdatePolicyRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents an UpdatePolicyRequest. + * @implements IUpdatePolicyRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IUpdatePolicyRequest=} [properties] Properties to set + */ + function UpdatePolicyRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumValueDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.number != null && Object.hasOwnProperty.call(message, "number")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.number); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.EnumValueOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; + /** + * UpdatePolicyRequest policy. + * @member {google.cloud.binaryauthorization.v1.IPolicy|null|undefined} policy + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @instance + */ + UpdatePolicyRequest.prototype.policy = null; - /** - * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EnumValueDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a new UpdatePolicyRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IUpdatePolicyRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.UpdatePolicyRequest} UpdatePolicyRequest instance + */ + UpdatePolicyRequest.create = function create(properties) { + return new UpdatePolicyRequest(properties); + }; - /** - * Decodes an EnumValueDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumValueDescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.number = reader.int32(); - break; - case 3: - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Encodes the specified UpdatePolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdatePolicyRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IUpdatePolicyRequest} message UpdatePolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdatePolicyRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.policy != null && Object.hasOwnProperty.call(message, "policy")) + $root.google.cloud.binaryauthorization.v1.Policy.encode(message.policy, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; - /** - * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EnumValueDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified UpdatePolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdatePolicyRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IUpdatePolicyRequest} message UpdatePolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdatePolicyRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Verifies an EnumValueDescriptorProto message. - * @function verify - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EnumValueDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.number != null && message.hasOwnProperty("number")) - if (!$util.isInteger(message.number)) - return "number: integer expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + /** + * Decodes an UpdatePolicyRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.UpdatePolicyRequest} UpdatePolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdatePolicyRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.UpdatePolicyRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.policy = $root.google.cloud.binaryauthorization.v1.Policy.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto - */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) - return object; - var message = new $root.google.protobuf.EnumValueDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.number != null) - message.number = object.number | 0; - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); - } - return message; - }; + /** + * Decodes an UpdatePolicyRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.UpdatePolicyRequest} UpdatePolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdatePolicyRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.EnumValueDescriptorProto - * @static - * @param {google.protobuf.EnumValueDescriptorProto} message EnumValueDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EnumValueDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.number = 0; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.number != null && message.hasOwnProperty("number")) - object.number = message.number; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.EnumValueOptions.toObject(message.options, options); - return object; - }; + /** + * Verifies an UpdatePolicyRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdatePolicyRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.policy != null && message.hasOwnProperty("policy")) { + var error = $root.google.cloud.binaryauthorization.v1.Policy.verify(message.policy); + if (error) + return "policy." + error; + } + return null; + }; - /** - * Converts this EnumValueDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.EnumValueDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - EnumValueDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates an UpdatePolicyRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.UpdatePolicyRequest} UpdatePolicyRequest + */ + UpdatePolicyRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.UpdatePolicyRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.UpdatePolicyRequest(); + if (object.policy != null) { + if (typeof object.policy !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.UpdatePolicyRequest.policy: object expected"); + message.policy = $root.google.cloud.binaryauthorization.v1.Policy.fromObject(object.policy); + } + return message; + }; - return EnumValueDescriptorProto; - })(); + /** + * Creates a plain object from an UpdatePolicyRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.UpdatePolicyRequest} message UpdatePolicyRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdatePolicyRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.policy = null; + if (message.policy != null && message.hasOwnProperty("policy")) + object.policy = $root.google.cloud.binaryauthorization.v1.Policy.toObject(message.policy, options); + return object; + }; - protobuf.ServiceDescriptorProto = (function() { + /** + * Converts this UpdatePolicyRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.UpdatePolicyRequest + * @instance + * @returns {Object.} JSON object + */ + UpdatePolicyRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Properties of a ServiceDescriptorProto. - * @memberof google.protobuf - * @interface IServiceDescriptorProto - * @property {string|null} [name] ServiceDescriptorProto name - * @property {Array.|null} [method] ServiceDescriptorProto method - * @property {google.protobuf.IServiceOptions|null} [options] ServiceDescriptorProto options - */ + return UpdatePolicyRequest; + })(); - /** - * Constructs a new ServiceDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a ServiceDescriptorProto. - * @implements IServiceDescriptorProto - * @constructor - * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set - */ - function ServiceDescriptorProto(properties) { - this.method = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + v1.CreateAttestorRequest = (function() { - /** - * ServiceDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - */ - ServiceDescriptorProto.prototype.name = ""; + /** + * Properties of a CreateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface ICreateAttestorRequest + * @property {string|null} [parent] CreateAttestorRequest parent + * @property {string|null} [attestorId] CreateAttestorRequest attestorId + * @property {google.cloud.binaryauthorization.v1.IAttestor|null} [attestor] CreateAttestorRequest attestor + */ - /** - * ServiceDescriptorProto method. - * @member {Array.} method - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - */ - ServiceDescriptorProto.prototype.method = $util.emptyArray; + /** + * Constructs a new CreateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a CreateAttestorRequest. + * @implements ICreateAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.ICreateAttestorRequest=} [properties] Properties to set + */ + function CreateAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * ServiceDescriptorProto options. - * @member {google.protobuf.IServiceOptions|null|undefined} options - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - */ - ServiceDescriptorProto.prototype.options = null; + /** + * CreateAttestorRequest parent. + * @member {string} parent + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @instance + */ + CreateAttestorRequest.prototype.parent = ""; - /** - * Creates a new ServiceDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto instance - */ - ServiceDescriptorProto.create = function create(properties) { - return new ServiceDescriptorProto(properties); - }; + /** + * CreateAttestorRequest attestorId. + * @member {string} attestorId + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @instance + */ + CreateAttestorRequest.prototype.attestorId = ""; - /** - * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServiceDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.method != null && message.method.length) - for (var i = 0; i < message.method.length; ++i) - $root.google.protobuf.MethodDescriptorProto.encode(message.method[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.ServiceOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; + /** + * CreateAttestorRequest attestor. + * @member {google.cloud.binaryauthorization.v1.IAttestor|null|undefined} attestor + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @instance + */ + CreateAttestorRequest.prototype.attestor = null; - /** - * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServiceDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a new CreateAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.ICreateAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.CreateAttestorRequest} CreateAttestorRequest instance + */ + CreateAttestorRequest.create = function create(properties) { + return new CreateAttestorRequest(properties); + }; - /** - * Decodes a ServiceDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServiceDescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - if (!(message.method && message.method.length)) - message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); - break; - case 3: - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Encodes the specified CreateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.CreateAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.ICreateAttestorRequest} message CreateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.attestorId != null && Object.hasOwnProperty.call(message, "attestorId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.attestorId); + if (message.attestor != null && Object.hasOwnProperty.call(message, "attestor")) + $root.google.cloud.binaryauthorization.v1.Attestor.encode(message.attestor, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; - /** - * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServiceDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified CreateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.CreateAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.ICreateAttestorRequest} message CreateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Verifies a ServiceDescriptorProto message. - * @function verify - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ServiceDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.method != null && message.hasOwnProperty("method")) { - if (!Array.isArray(message.method)) - return "method: array expected"; - for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); - if (error) - return "method." + error; - } - } - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); - if (error) - return "options." + error; - } - return null; - }; + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.CreateAttestorRequest} CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.CreateAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.attestorId = reader.string(); + break; + case 3: + message.attestor = $root.google.cloud.binaryauthorization.v1.Attestor.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto - */ - ServiceDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.ServiceDescriptorProto) - return object; - var message = new $root.google.protobuf.ServiceDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.method) { - if (!Array.isArray(object.method)) - throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected"); - message.method = []; - for (var i = 0; i < object.method.length; ++i) { - if (typeof object.method[i] !== "object") - throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); - } - } - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); - } - return message; - }; + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.CreateAttestorRequest} CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.ServiceDescriptorProto - * @static - * @param {google.protobuf.ServiceDescriptorProto} message ServiceDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ServiceDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.method = []; - if (options.defaults) { - object.name = ""; - object.options = null; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.method && message.method.length) { - object.method = []; - for (var j = 0; j < message.method.length; ++j) - object.method[j] = $root.google.protobuf.MethodDescriptorProto.toObject(message.method[j], options); - } - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.ServiceOptions.toObject(message.options, options); - return object; - }; + /** + * Verifies a CreateAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.attestorId != null && message.hasOwnProperty("attestorId")) + if (!$util.isString(message.attestorId)) + return "attestorId: string expected"; + if (message.attestor != null && message.hasOwnProperty("attestor")) { + var error = $root.google.cloud.binaryauthorization.v1.Attestor.verify(message.attestor); + if (error) + return "attestor." + error; + } + return null; + }; - /** - * Converts this ServiceDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.ServiceDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - ServiceDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a CreateAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.CreateAttestorRequest} CreateAttestorRequest + */ + CreateAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.CreateAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.CreateAttestorRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.attestorId != null) + message.attestorId = String(object.attestorId); + if (object.attestor != null) { + if (typeof object.attestor !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.CreateAttestorRequest.attestor: object expected"); + message.attestor = $root.google.cloud.binaryauthorization.v1.Attestor.fromObject(object.attestor); + } + return message; + }; - return ServiceDescriptorProto; - })(); + /** + * Creates a plain object from a CreateAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.CreateAttestorRequest} message CreateAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.attestorId = ""; + object.attestor = null; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.attestorId != null && message.hasOwnProperty("attestorId")) + object.attestorId = message.attestorId; + if (message.attestor != null && message.hasOwnProperty("attestor")) + object.attestor = $root.google.cloud.binaryauthorization.v1.Attestor.toObject(message.attestor, options); + return object; + }; - protobuf.MethodDescriptorProto = (function() { + /** + * Converts this CreateAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.CreateAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + CreateAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Properties of a MethodDescriptorProto. - * @memberof google.protobuf - * @interface IMethodDescriptorProto - * @property {string|null} [name] MethodDescriptorProto name - * @property {string|null} [inputType] MethodDescriptorProto inputType - * @property {string|null} [outputType] MethodDescriptorProto outputType - * @property {google.protobuf.IMethodOptions|null} [options] MethodDescriptorProto options - * @property {boolean|null} [clientStreaming] MethodDescriptorProto clientStreaming - * @property {boolean|null} [serverStreaming] MethodDescriptorProto serverStreaming - */ + return CreateAttestorRequest; + })(); - /** - * Constructs a new MethodDescriptorProto. - * @memberof google.protobuf - * @classdesc Represents a MethodDescriptorProto. - * @implements IMethodDescriptorProto - * @constructor - * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set - */ - function MethodDescriptorProto(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + v1.GetAttestorRequest = (function() { - /** - * MethodDescriptorProto name. - * @member {string} name - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.name = ""; + /** + * Properties of a GetAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IGetAttestorRequest + * @property {string|null} [name] GetAttestorRequest name + */ - /** - * MethodDescriptorProto inputType. - * @member {string} inputType - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.inputType = ""; + /** + * Constructs a new GetAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a GetAttestorRequest. + * @implements IGetAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IGetAttestorRequest=} [properties] Properties to set + */ + function GetAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * MethodDescriptorProto outputType. - * @member {string} outputType - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.outputType = ""; + /** + * GetAttestorRequest name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @instance + */ + GetAttestorRequest.prototype.name = ""; - /** - * MethodDescriptorProto options. - * @member {google.protobuf.IMethodOptions|null|undefined} options - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.options = null; + /** + * Creates a new GetAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.GetAttestorRequest} GetAttestorRequest instance + */ + GetAttestorRequest.create = function create(properties) { + return new GetAttestorRequest(properties); + }; - /** - * MethodDescriptorProto clientStreaming. - * @member {boolean} clientStreaming - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.clientStreaming = false; + /** + * Encodes the specified GetAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetAttestorRequest} message GetAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; - /** - * MethodDescriptorProto serverStreaming. - * @member {boolean} serverStreaming - * @memberof google.protobuf.MethodDescriptorProto - * @instance - */ - MethodDescriptorProto.prototype.serverStreaming = false; + /** + * Encodes the specified GetAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetAttestorRequest} message GetAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a new MethodDescriptorProto instance using the specified properties. - * @function create - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto instance - */ - MethodDescriptorProto.create = function create(properties) { - return new MethodDescriptorProto(properties); - }; + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.GetAttestorRequest} GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.GetAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. - * @function encode - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MethodDescriptorProto.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.inputType != null && Object.hasOwnProperty.call(message, "inputType")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.inputType); - if (message.outputType != null && Object.hasOwnProperty.call(message, "outputType")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.outputType); - if (message.options != null && Object.hasOwnProperty.call(message, "options")) - $root.google.protobuf.MethodOptions.encode(message.options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.clientStreaming != null && Object.hasOwnProperty.call(message, "clientStreaming")) - writer.uint32(/* id 5, wireType 0 =*/40).bool(message.clientStreaming); - if (message.serverStreaming != null && Object.hasOwnProperty.call(message, "serverStreaming")) - writer.uint32(/* id 6, wireType 0 =*/48).bool(message.serverStreaming); - return writer; - }; + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.GetAttestorRequest} GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MethodDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Verifies a GetAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; - /** - * Decodes a MethodDescriptorProto message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MethodDescriptorProto.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.inputType = reader.string(); - break; - case 3: - message.outputType = reader.string(); - break; - case 4: - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); - break; - case 5: - message.clientStreaming = reader.bool(); - break; - case 6: - message.serverStreaming = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a GetAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.GetAttestorRequest} GetAttestorRequest + */ + GetAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.GetAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.GetAttestorRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; - /** - * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MethodDescriptorProto.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a plain object from a GetAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.GetAttestorRequest} message GetAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; - /** - * Verifies a MethodDescriptorProto message. - * @function verify - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MethodDescriptorProto.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.inputType != null && message.hasOwnProperty("inputType")) - if (!$util.isString(message.inputType)) - return "inputType: string expected"; - if (message.outputType != null && message.hasOwnProperty("outputType")) - if (!$util.isString(message.outputType)) - return "outputType: string expected"; - if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); - if (error) - return "options." + error; - } - if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) - if (typeof message.clientStreaming !== "boolean") - return "clientStreaming: boolean expected"; - if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) - if (typeof message.serverStreaming !== "boolean") - return "serverStreaming: boolean expected"; - return null; - }; + /** + * Converts this GetAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.GetAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + GetAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto - */ - MethodDescriptorProto.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.MethodDescriptorProto) - return object; - var message = new $root.google.protobuf.MethodDescriptorProto(); - if (object.name != null) - message.name = String(object.name); - if (object.inputType != null) - message.inputType = String(object.inputType); - if (object.outputType != null) - message.outputType = String(object.outputType); - if (object.options != null) { - if (typeof object.options !== "object") - throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); - } - if (object.clientStreaming != null) - message.clientStreaming = Boolean(object.clientStreaming); - if (object.serverStreaming != null) - message.serverStreaming = Boolean(object.serverStreaming); - return message; - }; - - /** - * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.MethodDescriptorProto - * @static - * @param {google.protobuf.MethodDescriptorProto} message MethodDescriptorProto - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MethodDescriptorProto.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.inputType = ""; - object.outputType = ""; - object.options = null; - object.clientStreaming = false; - object.serverStreaming = false; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.inputType != null && message.hasOwnProperty("inputType")) - object.inputType = message.inputType; - if (message.outputType != null && message.hasOwnProperty("outputType")) - object.outputType = message.outputType; - if (message.options != null && message.hasOwnProperty("options")) - object.options = $root.google.protobuf.MethodOptions.toObject(message.options, options); - if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) - object.clientStreaming = message.clientStreaming; - if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) - object.serverStreaming = message.serverStreaming; - return object; - }; - - /** - * Converts this MethodDescriptorProto to JSON. - * @function toJSON - * @memberof google.protobuf.MethodDescriptorProto - * @instance - * @returns {Object.} JSON object - */ - MethodDescriptorProto.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + return GetAttestorRequest; + })(); - return MethodDescriptorProto; - })(); + v1.UpdateAttestorRequest = (function() { - protobuf.FileOptions = (function() { + /** + * Properties of an UpdateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IUpdateAttestorRequest + * @property {google.cloud.binaryauthorization.v1.IAttestor|null} [attestor] UpdateAttestorRequest attestor + */ - /** - * Properties of a FileOptions. - * @memberof google.protobuf - * @interface IFileOptions - * @property {string|null} [javaPackage] FileOptions javaPackage - * @property {string|null} [javaOuterClassname] FileOptions javaOuterClassname - * @property {boolean|null} [javaMultipleFiles] FileOptions javaMultipleFiles - * @property {boolean|null} [javaGenerateEqualsAndHash] FileOptions javaGenerateEqualsAndHash - * @property {boolean|null} [javaStringCheckUtf8] FileOptions javaStringCheckUtf8 - * @property {google.protobuf.FileOptions.OptimizeMode|null} [optimizeFor] FileOptions optimizeFor - * @property {string|null} [goPackage] FileOptions goPackage - * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices - * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices - * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices - * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices - * @property {boolean|null} [deprecated] FileOptions deprecated - * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas - * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix - * @property {string|null} [csharpNamespace] FileOptions csharpNamespace - * @property {string|null} [swiftPrefix] FileOptions swiftPrefix - * @property {string|null} [phpClassPrefix] FileOptions phpClassPrefix - * @property {string|null} [phpNamespace] FileOptions phpNamespace - * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace - * @property {string|null} [rubyPackage] FileOptions rubyPackage - * @property {Array.|null} [uninterpretedOption] FileOptions uninterpretedOption - * @property {Array.|null} [".google.api.resourceDefinition"] FileOptions .google.api.resourceDefinition - */ + /** + * Constructs a new UpdateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents an UpdateAttestorRequest. + * @implements IUpdateAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IUpdateAttestorRequest=} [properties] Properties to set + */ + function UpdateAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Constructs a new FileOptions. - * @memberof google.protobuf - * @classdesc Represents a FileOptions. - * @implements IFileOptions - * @constructor - * @param {google.protobuf.IFileOptions=} [properties] Properties to set - */ - function FileOptions(properties) { - this.uninterpretedOption = []; - this[".google.api.resourceDefinition"] = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * UpdateAttestorRequest attestor. + * @member {google.cloud.binaryauthorization.v1.IAttestor|null|undefined} attestor + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @instance + */ + UpdateAttestorRequest.prototype.attestor = null; - /** - * FileOptions javaPackage. - * @member {string} javaPackage - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaPackage = ""; + /** + * Creates a new UpdateAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IUpdateAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.UpdateAttestorRequest} UpdateAttestorRequest instance + */ + UpdateAttestorRequest.create = function create(properties) { + return new UpdateAttestorRequest(properties); + }; - /** - * FileOptions javaOuterClassname. - * @member {string} javaOuterClassname - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaOuterClassname = ""; + /** + * Encodes the specified UpdateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdateAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IUpdateAttestorRequest} message UpdateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attestor != null && Object.hasOwnProperty.call(message, "attestor")) + $root.google.cloud.binaryauthorization.v1.Attestor.encode(message.attestor, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; - /** - * FileOptions javaMultipleFiles. - * @member {boolean} javaMultipleFiles - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaMultipleFiles = false; + /** + * Encodes the specified UpdateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.UpdateAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IUpdateAttestorRequest} message UpdateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * FileOptions javaGenerateEqualsAndHash. - * @member {boolean} javaGenerateEqualsAndHash - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaGenerateEqualsAndHash = false; + /** + * Decodes an UpdateAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.UpdateAttestorRequest} UpdateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.UpdateAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attestor = $root.google.cloud.binaryauthorization.v1.Attestor.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * FileOptions javaStringCheckUtf8. - * @member {boolean} javaStringCheckUtf8 - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaStringCheckUtf8 = false; + /** + * Decodes an UpdateAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.UpdateAttestorRequest} UpdateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * FileOptions optimizeFor. - * @member {google.protobuf.FileOptions.OptimizeMode} optimizeFor - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.optimizeFor = 1; + /** + * Verifies an UpdateAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attestor != null && message.hasOwnProperty("attestor")) { + var error = $root.google.cloud.binaryauthorization.v1.Attestor.verify(message.attestor); + if (error) + return "attestor." + error; + } + return null; + }; - /** - * FileOptions goPackage. - * @member {string} goPackage - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.goPackage = ""; - - /** - * FileOptions ccGenericServices. - * @member {boolean} ccGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.ccGenericServices = false; - - /** - * FileOptions javaGenericServices. - * @member {boolean} javaGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.javaGenericServices = false; + /** + * Creates an UpdateAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.UpdateAttestorRequest} UpdateAttestorRequest + */ + UpdateAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.UpdateAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.UpdateAttestorRequest(); + if (object.attestor != null) { + if (typeof object.attestor !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.UpdateAttestorRequest.attestor: object expected"); + message.attestor = $root.google.cloud.binaryauthorization.v1.Attestor.fromObject(object.attestor); + } + return message; + }; - /** - * FileOptions pyGenericServices. - * @member {boolean} pyGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.pyGenericServices = false; + /** + * Creates a plain object from an UpdateAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.UpdateAttestorRequest} message UpdateAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.attestor = null; + if (message.attestor != null && message.hasOwnProperty("attestor")) + object.attestor = $root.google.cloud.binaryauthorization.v1.Attestor.toObject(message.attestor, options); + return object; + }; - /** - * FileOptions phpGenericServices. - * @member {boolean} phpGenericServices - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpGenericServices = false; + /** + * Converts this UpdateAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.UpdateAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * FileOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.deprecated = false; + return UpdateAttestorRequest; + })(); - /** - * FileOptions ccEnableArenas. - * @member {boolean} ccEnableArenas - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.ccEnableArenas = true; + v1.ListAttestorsRequest = (function() { - /** - * FileOptions objcClassPrefix. - * @member {string} objcClassPrefix - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.objcClassPrefix = ""; + /** + * Properties of a ListAttestorsRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IListAttestorsRequest + * @property {string|null} [parent] ListAttestorsRequest parent + * @property {number|null} [pageSize] ListAttestorsRequest pageSize + * @property {string|null} [pageToken] ListAttestorsRequest pageToken + */ - /** - * FileOptions csharpNamespace. - * @member {string} csharpNamespace - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.csharpNamespace = ""; + /** + * Constructs a new ListAttestorsRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a ListAttestorsRequest. + * @implements IListAttestorsRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IListAttestorsRequest=} [properties] Properties to set + */ + function ListAttestorsRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * FileOptions swiftPrefix. - * @member {string} swiftPrefix - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.swiftPrefix = ""; + /** + * ListAttestorsRequest parent. + * @member {string} parent + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @instance + */ + ListAttestorsRequest.prototype.parent = ""; - /** - * FileOptions phpClassPrefix. - * @member {string} phpClassPrefix - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpClassPrefix = ""; + /** + * ListAttestorsRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @instance + */ + ListAttestorsRequest.prototype.pageSize = 0; - /** - * FileOptions phpNamespace. - * @member {string} phpNamespace - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpNamespace = ""; + /** + * ListAttestorsRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @instance + */ + ListAttestorsRequest.prototype.pageToken = ""; - /** - * FileOptions phpMetadataNamespace. - * @member {string} phpMetadataNamespace - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.phpMetadataNamespace = ""; + /** + * Creates a new ListAttestorsRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IListAttestorsRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsRequest} ListAttestorsRequest instance + */ + ListAttestorsRequest.create = function create(properties) { + return new ListAttestorsRequest(properties); + }; - /** - * FileOptions rubyPackage. - * @member {string} rubyPackage - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.rubyPackage = ""; + /** + * Encodes the specified ListAttestorsRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IListAttestorsRequest} message ListAttestorsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + return writer; + }; - /** - * FileOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Encodes the specified ListAttestorsRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IListAttestorsRequest} message ListAttestorsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * FileOptions .google.api.resourceDefinition. - * @member {Array.} .google.api.resourceDefinition - * @memberof google.protobuf.FileOptions - * @instance - */ - FileOptions.prototype[".google.api.resourceDefinition"] = $util.emptyArray; + /** + * Decodes a ListAttestorsRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsRequest} ListAttestorsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.ListAttestorsRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a new FileOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.IFileOptions=} [properties] Properties to set - * @returns {google.protobuf.FileOptions} FileOptions instance - */ - FileOptions.create = function create(properties) { - return new FileOptions(properties); - }; + /** + * Decodes a ListAttestorsRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsRequest} ListAttestorsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.javaPackage != null && Object.hasOwnProperty.call(message, "javaPackage")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.javaPackage); - if (message.javaOuterClassname != null && Object.hasOwnProperty.call(message, "javaOuterClassname")) - writer.uint32(/* id 8, wireType 2 =*/66).string(message.javaOuterClassname); - if (message.optimizeFor != null && Object.hasOwnProperty.call(message, "optimizeFor")) - writer.uint32(/* id 9, wireType 0 =*/72).int32(message.optimizeFor); - if (message.javaMultipleFiles != null && Object.hasOwnProperty.call(message, "javaMultipleFiles")) - writer.uint32(/* id 10, wireType 0 =*/80).bool(message.javaMultipleFiles); - if (message.goPackage != null && Object.hasOwnProperty.call(message, "goPackage")) - writer.uint32(/* id 11, wireType 2 =*/90).string(message.goPackage); - if (message.ccGenericServices != null && Object.hasOwnProperty.call(message, "ccGenericServices")) - writer.uint32(/* id 16, wireType 0 =*/128).bool(message.ccGenericServices); - if (message.javaGenericServices != null && Object.hasOwnProperty.call(message, "javaGenericServices")) - writer.uint32(/* id 17, wireType 0 =*/136).bool(message.javaGenericServices); - if (message.pyGenericServices != null && Object.hasOwnProperty.call(message, "pyGenericServices")) - writer.uint32(/* id 18, wireType 0 =*/144).bool(message.pyGenericServices); - if (message.javaGenerateEqualsAndHash != null && Object.hasOwnProperty.call(message, "javaGenerateEqualsAndHash")) - writer.uint32(/* id 20, wireType 0 =*/160).bool(message.javaGenerateEqualsAndHash); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 23, wireType 0 =*/184).bool(message.deprecated); - if (message.javaStringCheckUtf8 != null && Object.hasOwnProperty.call(message, "javaStringCheckUtf8")) - writer.uint32(/* id 27, wireType 0 =*/216).bool(message.javaStringCheckUtf8); - if (message.ccEnableArenas != null && Object.hasOwnProperty.call(message, "ccEnableArenas")) - writer.uint32(/* id 31, wireType 0 =*/248).bool(message.ccEnableArenas); - if (message.objcClassPrefix != null && Object.hasOwnProperty.call(message, "objcClassPrefix")) - writer.uint32(/* id 36, wireType 2 =*/290).string(message.objcClassPrefix); - if (message.csharpNamespace != null && Object.hasOwnProperty.call(message, "csharpNamespace")) - writer.uint32(/* id 37, wireType 2 =*/298).string(message.csharpNamespace); - if (message.swiftPrefix != null && Object.hasOwnProperty.call(message, "swiftPrefix")) - writer.uint32(/* id 39, wireType 2 =*/314).string(message.swiftPrefix); - if (message.phpClassPrefix != null && Object.hasOwnProperty.call(message, "phpClassPrefix")) - writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix); - if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace")) - writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace); - if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices")) - writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices); - if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace")) - writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace); - if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage")) - writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.resourceDefinition"] != null && message[".google.api.resourceDefinition"].length) - for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) - $root.google.api.ResourceDescriptor.encode(message[".google.api.resourceDefinition"][i], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); - return writer; - }; + /** + * Verifies a ListAttestorsRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListAttestorsRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + return null; + }; - /** - * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - FileOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a ListAttestorsRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsRequest} ListAttestorsRequest + */ + ListAttestorsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.ListAttestorsRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.ListAttestorsRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + return message; + }; - /** - * Decodes a FileOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.FileOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FileOptions} FileOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileOptions.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.javaPackage = reader.string(); - break; - case 8: - message.javaOuterClassname = reader.string(); - break; - case 10: - message.javaMultipleFiles = reader.bool(); - break; - case 20: - message.javaGenerateEqualsAndHash = reader.bool(); - break; - case 27: - message.javaStringCheckUtf8 = reader.bool(); - break; - case 9: - message.optimizeFor = reader.int32(); - break; - case 11: - message.goPackage = reader.string(); - break; - case 16: - message.ccGenericServices = reader.bool(); - break; - case 17: - message.javaGenericServices = reader.bool(); - break; - case 18: - message.pyGenericServices = reader.bool(); - break; - case 42: - message.phpGenericServices = reader.bool(); - break; - case 23: - message.deprecated = reader.bool(); - break; - case 31: - message.ccEnableArenas = reader.bool(); - break; - case 36: - message.objcClassPrefix = reader.string(); - break; - case 37: - message.csharpNamespace = reader.string(); - break; - case 39: - message.swiftPrefix = reader.string(); - break; - case 40: - message.phpClassPrefix = reader.string(); - break; - case 41: - message.phpNamespace = reader.string(); - break; - case 44: - message.phpMetadataNamespace = reader.string(); - break; - case 45: - message.rubyPackage = reader.string(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1053: - if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) - message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a plain object from a ListAttestorsRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1.ListAttestorsRequest} message ListAttestorsRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListAttestorsRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + return object; + }; - /** - * Decodes a FileOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.FileOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FileOptions} FileOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - FileOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Converts this ListAttestorsRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsRequest + * @instance + * @returns {Object.} JSON object + */ + ListAttestorsRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Verifies a FileOptions message. - * @function verify - * @memberof google.protobuf.FileOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - FileOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) - if (!$util.isString(message.javaPackage)) - return "javaPackage: string expected"; - if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) - if (!$util.isString(message.javaOuterClassname)) - return "javaOuterClassname: string expected"; - if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) - if (typeof message.javaMultipleFiles !== "boolean") - return "javaMultipleFiles: boolean expected"; - if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) - if (typeof message.javaGenerateEqualsAndHash !== "boolean") - return "javaGenerateEqualsAndHash: boolean expected"; - if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) - if (typeof message.javaStringCheckUtf8 !== "boolean") - return "javaStringCheckUtf8: boolean expected"; - if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) - switch (message.optimizeFor) { - default: - return "optimizeFor: enum value expected"; - case 1: - case 2: - case 3: - break; - } - if (message.goPackage != null && message.hasOwnProperty("goPackage")) - if (!$util.isString(message.goPackage)) - return "goPackage: string expected"; - if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) - if (typeof message.ccGenericServices !== "boolean") - return "ccGenericServices: boolean expected"; - if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) - if (typeof message.javaGenericServices !== "boolean") - return "javaGenericServices: boolean expected"; - if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) - if (typeof message.pyGenericServices !== "boolean") - return "pyGenericServices: boolean expected"; - if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) - if (typeof message.phpGenericServices !== "boolean") - return "phpGenericServices: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) - if (typeof message.ccEnableArenas !== "boolean") - return "ccEnableArenas: boolean expected"; - if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) - if (!$util.isString(message.objcClassPrefix)) - return "objcClassPrefix: string expected"; - if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) - if (!$util.isString(message.csharpNamespace)) - return "csharpNamespace: string expected"; - if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) - if (!$util.isString(message.swiftPrefix)) - return "swiftPrefix: string expected"; - if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) - if (!$util.isString(message.phpClassPrefix)) - return "phpClassPrefix: string expected"; - if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) - if (!$util.isString(message.phpNamespace)) - return "phpNamespace: string expected"; - if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) - if (!$util.isString(message.phpMetadataNamespace)) - return "phpMetadataNamespace: string expected"; - if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) - if (!$util.isString(message.rubyPackage)) - return "rubyPackage: string expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.resourceDefinition"] != null && message.hasOwnProperty(".google.api.resourceDefinition")) { - if (!Array.isArray(message[".google.api.resourceDefinition"])) - return ".google.api.resourceDefinition: array expected"; - for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); - if (error) - return ".google.api.resourceDefinition." + error; + return ListAttestorsRequest; + })(); + + v1.ListAttestorsResponse = (function() { + + /** + * Properties of a ListAttestorsResponse. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IListAttestorsResponse + * @property {Array.|null} [attestors] ListAttestorsResponse attestors + * @property {string|null} [nextPageToken] ListAttestorsResponse nextPageToken + */ + + /** + * Constructs a new ListAttestorsResponse. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a ListAttestorsResponse. + * @implements IListAttestorsResponse + * @constructor + * @param {google.cloud.binaryauthorization.v1.IListAttestorsResponse=} [properties] Properties to set + */ + function ListAttestorsResponse(properties) { + this.attestors = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; } - } - return null; - }; - /** - * Creates a FileOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.FileOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.FileOptions} FileOptions - */ - FileOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FileOptions) - return object; - var message = new $root.google.protobuf.FileOptions(); - if (object.javaPackage != null) - message.javaPackage = String(object.javaPackage); - if (object.javaOuterClassname != null) - message.javaOuterClassname = String(object.javaOuterClassname); - if (object.javaMultipleFiles != null) - message.javaMultipleFiles = Boolean(object.javaMultipleFiles); - if (object.javaGenerateEqualsAndHash != null) - message.javaGenerateEqualsAndHash = Boolean(object.javaGenerateEqualsAndHash); - if (object.javaStringCheckUtf8 != null) - message.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8); - switch (object.optimizeFor) { - case "SPEED": - case 1: - message.optimizeFor = 1; - break; - case "CODE_SIZE": - case 2: - message.optimizeFor = 2; - break; - case "LITE_RUNTIME": - case 3: - message.optimizeFor = 3; - break; - } - if (object.goPackage != null) - message.goPackage = String(object.goPackage); - if (object.ccGenericServices != null) - message.ccGenericServices = Boolean(object.ccGenericServices); - if (object.javaGenericServices != null) - message.javaGenericServices = Boolean(object.javaGenericServices); - if (object.pyGenericServices != null) - message.pyGenericServices = Boolean(object.pyGenericServices); - if (object.phpGenericServices != null) - message.phpGenericServices = Boolean(object.phpGenericServices); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.ccEnableArenas != null) - message.ccEnableArenas = Boolean(object.ccEnableArenas); - if (object.objcClassPrefix != null) - message.objcClassPrefix = String(object.objcClassPrefix); - if (object.csharpNamespace != null) - message.csharpNamespace = String(object.csharpNamespace); - if (object.swiftPrefix != null) - message.swiftPrefix = String(object.swiftPrefix); - if (object.phpClassPrefix != null) - message.phpClassPrefix = String(object.phpClassPrefix); - if (object.phpNamespace != null) - message.phpNamespace = String(object.phpNamespace); - if (object.phpMetadataNamespace != null) - message.phpMetadataNamespace = String(object.phpMetadataNamespace); - if (object.rubyPackage != null) - message.rubyPackage = String(object.rubyPackage); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.resourceDefinition"]) { - if (!Array.isArray(object[".google.api.resourceDefinition"])) - throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected"); - message[".google.api.resourceDefinition"] = []; - for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { - if (typeof object[".google.api.resourceDefinition"][i] !== "object") - throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + /** + * ListAttestorsResponse attestors. + * @member {Array.} attestors + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @instance + */ + ListAttestorsResponse.prototype.attestors = $util.emptyArray; + + /** + * ListAttestorsResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @instance + */ + ListAttestorsResponse.prototype.nextPageToken = ""; + + /** + * Creates a new ListAttestorsResponse instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1.IListAttestorsResponse=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsResponse} ListAttestorsResponse instance + */ + ListAttestorsResponse.create = function create(properties) { + return new ListAttestorsResponse(properties); + }; + + /** + * Encodes the specified ListAttestorsResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1.IListAttestorsResponse} message ListAttestorsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attestors != null && message.attestors.length) + for (var i = 0; i < message.attestors.length; ++i) + $root.google.cloud.binaryauthorization.v1.Attestor.encode(message.attestors[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + return writer; + }; + + /** + * Encodes the specified ListAttestorsResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ListAttestorsResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1.IListAttestorsResponse} message ListAttestorsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListAttestorsResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsResponse} ListAttestorsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.ListAttestorsResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.attestors && message.attestors.length)) + message.attestors = []; + message.attestors.push($root.google.cloud.binaryauthorization.v1.Attestor.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListAttestorsResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsResponse} ListAttestorsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListAttestorsResponse message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListAttestorsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attestors != null && message.hasOwnProperty("attestors")) { + if (!Array.isArray(message.attestors)) + return "attestors: array expected"; + for (var i = 0; i < message.attestors.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1.Attestor.verify(message.attestors[i]); + if (error) + return "attestors." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + return null; + }; + + /** + * Creates a ListAttestorsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.ListAttestorsResponse} ListAttestorsResponse + */ + ListAttestorsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.ListAttestorsResponse) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.ListAttestorsResponse(); + if (object.attestors) { + if (!Array.isArray(object.attestors)) + throw TypeError(".google.cloud.binaryauthorization.v1.ListAttestorsResponse.attestors: array expected"); + message.attestors = []; + for (var i = 0; i < object.attestors.length; ++i) { + if (typeof object.attestors[i] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.ListAttestorsResponse.attestors: object expected"); + message.attestors[i] = $root.google.cloud.binaryauthorization.v1.Attestor.fromObject(object.attestors[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + return message; + }; + + /** + * Creates a plain object from a ListAttestorsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1.ListAttestorsResponse} message ListAttestorsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListAttestorsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.attestors = []; + if (options.defaults) + object.nextPageToken = ""; + if (message.attestors && message.attestors.length) { + object.attestors = []; + for (var j = 0; j < message.attestors.length; ++j) + object.attestors[j] = $root.google.cloud.binaryauthorization.v1.Attestor.toObject(message.attestors[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + return object; + }; + + /** + * Converts this ListAttestorsResponse to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.ListAttestorsResponse + * @instance + * @returns {Object.} JSON object + */ + ListAttestorsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListAttestorsResponse; + })(); + + v1.DeleteAttestorRequest = (function() { + + /** + * Properties of a DeleteAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IDeleteAttestorRequest + * @property {string|null} [name] DeleteAttestorRequest name + */ + + /** + * Constructs a new DeleteAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a DeleteAttestorRequest. + * @implements IDeleteAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IDeleteAttestorRequest=} [properties] Properties to set + */ + function DeleteAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * DeleteAttestorRequest name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @instance + */ + DeleteAttestorRequest.prototype.name = ""; + + /** + * Creates a new DeleteAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IDeleteAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.DeleteAttestorRequest} DeleteAttestorRequest instance + */ + DeleteAttestorRequest.create = function create(properties) { + return new DeleteAttestorRequest(properties); + }; + + /** + * Encodes the specified DeleteAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.DeleteAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IDeleteAttestorRequest} message DeleteAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified DeleteAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.DeleteAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IDeleteAttestorRequest} message DeleteAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DeleteAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.DeleteAttestorRequest} DeleteAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.DeleteAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DeleteAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.DeleteAttestorRequest} DeleteAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DeleteAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a DeleteAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.DeleteAttestorRequest} DeleteAttestorRequest + */ + DeleteAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.DeleteAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.DeleteAttestorRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a DeleteAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1.DeleteAttestorRequest} message DeleteAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this DeleteAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.DeleteAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return DeleteAttestorRequest; + })(); + + v1.GetSystemPolicyRequest = (function() { + + /** + * Properties of a GetSystemPolicyRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IGetSystemPolicyRequest + * @property {string|null} [name] GetSystemPolicyRequest name + */ + + /** + * Constructs a new GetSystemPolicyRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a GetSystemPolicyRequest. + * @implements IGetSystemPolicyRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest=} [properties] Properties to set + */ + function GetSystemPolicyRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * GetSystemPolicyRequest name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @instance + */ + GetSystemPolicyRequest.prototype.name = ""; + + /** + * Creates a new GetSystemPolicyRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.GetSystemPolicyRequest} GetSystemPolicyRequest instance + */ + GetSystemPolicyRequest.create = function create(properties) { + return new GetSystemPolicyRequest(properties); + }; + + /** + * Encodes the specified GetSystemPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetSystemPolicyRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest} message GetSystemPolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetSystemPolicyRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetSystemPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.GetSystemPolicyRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest} message GetSystemPolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetSystemPolicyRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetSystemPolicyRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.GetSystemPolicyRequest} GetSystemPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetSystemPolicyRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.GetSystemPolicyRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetSystemPolicyRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.GetSystemPolicyRequest} GetSystemPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetSystemPolicyRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetSystemPolicyRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetSystemPolicyRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetSystemPolicyRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.GetSystemPolicyRequest} GetSystemPolicyRequest + */ + GetSystemPolicyRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.GetSystemPolicyRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.GetSystemPolicyRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetSystemPolicyRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1.GetSystemPolicyRequest} message GetSystemPolicyRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetSystemPolicyRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetSystemPolicyRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.GetSystemPolicyRequest + * @instance + * @returns {Object.} JSON object + */ + GetSystemPolicyRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetSystemPolicyRequest; + })(); + + v1.ValidateAttestationOccurrenceRequest = (function() { + + /** + * Properties of a ValidateAttestationOccurrenceRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IValidateAttestationOccurrenceRequest + * @property {string|null} [attestor] ValidateAttestationOccurrenceRequest attestor + * @property {grafeas.v1.IAttestationOccurrence|null} [attestation] ValidateAttestationOccurrenceRequest attestation + * @property {string|null} [occurrenceNote] ValidateAttestationOccurrenceRequest occurrenceNote + * @property {string|null} [occurrenceResourceUri] ValidateAttestationOccurrenceRequest occurrenceResourceUri + */ + + /** + * Constructs a new ValidateAttestationOccurrenceRequest. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a ValidateAttestationOccurrenceRequest. + * @implements IValidateAttestationOccurrenceRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest=} [properties] Properties to set + */ + function ValidateAttestationOccurrenceRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ValidateAttestationOccurrenceRequest attestor. + * @member {string} attestor + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @instance + */ + ValidateAttestationOccurrenceRequest.prototype.attestor = ""; + + /** + * ValidateAttestationOccurrenceRequest attestation. + * @member {grafeas.v1.IAttestationOccurrence|null|undefined} attestation + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @instance + */ + ValidateAttestationOccurrenceRequest.prototype.attestation = null; + + /** + * ValidateAttestationOccurrenceRequest occurrenceNote. + * @member {string} occurrenceNote + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @instance + */ + ValidateAttestationOccurrenceRequest.prototype.occurrenceNote = ""; + + /** + * ValidateAttestationOccurrenceRequest occurrenceResourceUri. + * @member {string} occurrenceResourceUri + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @instance + */ + ValidateAttestationOccurrenceRequest.prototype.occurrenceResourceUri = ""; + + /** + * Creates a new ValidateAttestationOccurrenceRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest} ValidateAttestationOccurrenceRequest instance + */ + ValidateAttestationOccurrenceRequest.create = function create(properties) { + return new ValidateAttestationOccurrenceRequest(properties); + }; + + /** + * Encodes the specified ValidateAttestationOccurrenceRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest} message ValidateAttestationOccurrenceRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateAttestationOccurrenceRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attestor != null && Object.hasOwnProperty.call(message, "attestor")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.attestor); + if (message.attestation != null && Object.hasOwnProperty.call(message, "attestation")) + $root.grafeas.v1.AttestationOccurrence.encode(message.attestation, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.occurrenceNote != null && Object.hasOwnProperty.call(message, "occurrenceNote")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.occurrenceNote); + if (message.occurrenceResourceUri != null && Object.hasOwnProperty.call(message, "occurrenceResourceUri")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.occurrenceResourceUri); + return writer; + }; + + /** + * Encodes the specified ValidateAttestationOccurrenceRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest} message ValidateAttestationOccurrenceRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateAttestationOccurrenceRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ValidateAttestationOccurrenceRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest} ValidateAttestationOccurrenceRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateAttestationOccurrenceRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attestor = reader.string(); + break; + case 2: + message.attestation = $root.grafeas.v1.AttestationOccurrence.decode(reader, reader.uint32()); + break; + case 3: + message.occurrenceNote = reader.string(); + break; + case 4: + message.occurrenceResourceUri = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ValidateAttestationOccurrenceRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest} ValidateAttestationOccurrenceRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateAttestationOccurrenceRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ValidateAttestationOccurrenceRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ValidateAttestationOccurrenceRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attestor != null && message.hasOwnProperty("attestor")) + if (!$util.isString(message.attestor)) + return "attestor: string expected"; + if (message.attestation != null && message.hasOwnProperty("attestation")) { + var error = $root.grafeas.v1.AttestationOccurrence.verify(message.attestation); + if (error) + return "attestation." + error; + } + if (message.occurrenceNote != null && message.hasOwnProperty("occurrenceNote")) + if (!$util.isString(message.occurrenceNote)) + return "occurrenceNote: string expected"; + if (message.occurrenceResourceUri != null && message.hasOwnProperty("occurrenceResourceUri")) + if (!$util.isString(message.occurrenceResourceUri)) + return "occurrenceResourceUri: string expected"; + return null; + }; + + /** + * Creates a ValidateAttestationOccurrenceRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest} ValidateAttestationOccurrenceRequest + */ + ValidateAttestationOccurrenceRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest(); + if (object.attestor != null) + message.attestor = String(object.attestor); + if (object.attestation != null) { + if (typeof object.attestation !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest.attestation: object expected"); + message.attestation = $root.grafeas.v1.AttestationOccurrence.fromObject(object.attestation); + } + if (object.occurrenceNote != null) + message.occurrenceNote = String(object.occurrenceNote); + if (object.occurrenceResourceUri != null) + message.occurrenceResourceUri = String(object.occurrenceResourceUri); + return message; + }; + + /** + * Creates a plain object from a ValidateAttestationOccurrenceRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @static + * @param {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest} message ValidateAttestationOccurrenceRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ValidateAttestationOccurrenceRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.attestor = ""; + object.attestation = null; + object.occurrenceNote = ""; + object.occurrenceResourceUri = ""; + } + if (message.attestor != null && message.hasOwnProperty("attestor")) + object.attestor = message.attestor; + if (message.attestation != null && message.hasOwnProperty("attestation")) + object.attestation = $root.grafeas.v1.AttestationOccurrence.toObject(message.attestation, options); + if (message.occurrenceNote != null && message.hasOwnProperty("occurrenceNote")) + object.occurrenceNote = message.occurrenceNote; + if (message.occurrenceResourceUri != null && message.hasOwnProperty("occurrenceResourceUri")) + object.occurrenceResourceUri = message.occurrenceResourceUri; + return object; + }; + + /** + * Converts this ValidateAttestationOccurrenceRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest + * @instance + * @returns {Object.} JSON object + */ + ValidateAttestationOccurrenceRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ValidateAttestationOccurrenceRequest; + })(); + + v1.ValidateAttestationOccurrenceResponse = (function() { + + /** + * Properties of a ValidateAttestationOccurrenceResponse. + * @memberof google.cloud.binaryauthorization.v1 + * @interface IValidateAttestationOccurrenceResponse + * @property {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result|null} [result] ValidateAttestationOccurrenceResponse result + * @property {string|null} [denialReason] ValidateAttestationOccurrenceResponse denialReason + */ + + /** + * Constructs a new ValidateAttestationOccurrenceResponse. + * @memberof google.cloud.binaryauthorization.v1 + * @classdesc Represents a ValidateAttestationOccurrenceResponse. + * @implements IValidateAttestationOccurrenceResponse + * @constructor + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse=} [properties] Properties to set + */ + function ValidateAttestationOccurrenceResponse(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ValidateAttestationOccurrenceResponse result. + * @member {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result} result + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @instance + */ + ValidateAttestationOccurrenceResponse.prototype.result = 0; + + /** + * ValidateAttestationOccurrenceResponse denialReason. + * @member {string} denialReason + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @instance + */ + ValidateAttestationOccurrenceResponse.prototype.denialReason = ""; + + /** + * Creates a new ValidateAttestationOccurrenceResponse instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse} ValidateAttestationOccurrenceResponse instance + */ + ValidateAttestationOccurrenceResponse.create = function create(properties) { + return new ValidateAttestationOccurrenceResponse(properties); + }; + + /** + * Encodes the specified ValidateAttestationOccurrenceResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse} message ValidateAttestationOccurrenceResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateAttestationOccurrenceResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.result != null && Object.hasOwnProperty.call(message, "result")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.result); + if (message.denialReason != null && Object.hasOwnProperty.call(message, "denialReason")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.denialReason); + return writer; + }; + + /** + * Encodes the specified ValidateAttestationOccurrenceResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse} message ValidateAttestationOccurrenceResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ValidateAttestationOccurrenceResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ValidateAttestationOccurrenceResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse} ValidateAttestationOccurrenceResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateAttestationOccurrenceResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.result = reader.int32(); + break; + case 2: + message.denialReason = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ValidateAttestationOccurrenceResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse} ValidateAttestationOccurrenceResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ValidateAttestationOccurrenceResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ValidateAttestationOccurrenceResponse message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ValidateAttestationOccurrenceResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.result != null && message.hasOwnProperty("result")) + switch (message.result) { + default: + return "result: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.denialReason != null && message.hasOwnProperty("denialReason")) + if (!$util.isString(message.denialReason)) + return "denialReason: string expected"; + return null; + }; + + /** + * Creates a ValidateAttestationOccurrenceResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse} ValidateAttestationOccurrenceResponse + */ + ValidateAttestationOccurrenceResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse) + return object; + var message = new $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse(); + switch (object.result) { + case "RESULT_UNSPECIFIED": + case 0: + message.result = 0; + break; + case "VERIFIED": + case 1: + message.result = 1; + break; + case "ATTESTATION_NOT_VERIFIABLE": + case 2: + message.result = 2; + break; + } + if (object.denialReason != null) + message.denialReason = String(object.denialReason); + return message; + }; + + /** + * Creates a plain object from a ValidateAttestationOccurrenceResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @static + * @param {google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse} message ValidateAttestationOccurrenceResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ValidateAttestationOccurrenceResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.result = options.enums === String ? "RESULT_UNSPECIFIED" : 0; + object.denialReason = ""; + } + if (message.result != null && message.hasOwnProperty("result")) + object.result = options.enums === String ? $root.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result[message.result] : message.result; + if (message.denialReason != null && message.hasOwnProperty("denialReason")) + object.denialReason = message.denialReason; + return object; + }; + + /** + * Converts this ValidateAttestationOccurrenceResponse to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse + * @instance + * @returns {Object.} JSON object + */ + ValidateAttestationOccurrenceResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Result enum. + * @name google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse.Result + * @enum {number} + * @property {number} RESULT_UNSPECIFIED=0 RESULT_UNSPECIFIED value + * @property {number} VERIFIED=1 VERIFIED value + * @property {number} ATTESTATION_NOT_VERIFIABLE=2 ATTESTATION_NOT_VERIFIABLE value + */ + ValidateAttestationOccurrenceResponse.Result = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "RESULT_UNSPECIFIED"] = 0; + values[valuesById[1] = "VERIFIED"] = 1; + values[valuesById[2] = "ATTESTATION_NOT_VERIFIABLE"] = 2; + return values; + })(); + + return ValidateAttestationOccurrenceResponse; + })(); + + return v1; + })(); + + binaryauthorization.v1beta1 = (function() { + + /** + * Namespace v1beta1. + * @memberof google.cloud.binaryauthorization + * @namespace + */ + var v1beta1 = {}; + + v1beta1.ContinuousValidationEvent = (function() { + + /** + * Properties of a ContinuousValidationEvent. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IContinuousValidationEvent + * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null} [podEvent] ContinuousValidationEvent podEvent + * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null} [unsupportedPolicyEvent] ContinuousValidationEvent unsupportedPolicyEvent + */ + + /** + * Constructs a new ContinuousValidationEvent. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a ContinuousValidationEvent. + * @implements IContinuousValidationEvent + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent=} [properties] Properties to set + */ + function ContinuousValidationEvent(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ContinuousValidationEvent podEvent. + * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null|undefined} podEvent + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @instance + */ + ContinuousValidationEvent.prototype.podEvent = null; + + /** + * ContinuousValidationEvent unsupportedPolicyEvent. + * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null|undefined} unsupportedPolicyEvent + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @instance + */ + ContinuousValidationEvent.prototype.unsupportedPolicyEvent = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * ContinuousValidationEvent eventType. + * @member {"podEvent"|"unsupportedPolicyEvent"|undefined} eventType + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @instance + */ + Object.defineProperty(ContinuousValidationEvent.prototype, "eventType", { + get: $util.oneOfGetter($oneOfFields = ["podEvent", "unsupportedPolicyEvent"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new ContinuousValidationEvent instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent instance + */ + ContinuousValidationEvent.create = function create(properties) { + return new ContinuousValidationEvent(properties); + }; + + /** + * Encodes the specified ContinuousValidationEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent} message ContinuousValidationEvent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ContinuousValidationEvent.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.podEvent != null && Object.hasOwnProperty.call(message, "podEvent")) + $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.encode(message.podEvent, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.unsupportedPolicyEvent != null && Object.hasOwnProperty.call(message, "unsupportedPolicyEvent")) + $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.encode(message.unsupportedPolicyEvent, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ContinuousValidationEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent} message ContinuousValidationEvent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ContinuousValidationEvent.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ContinuousValidationEvent message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ContinuousValidationEvent.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.podEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.decode(reader, reader.uint32()); + break; + case 2: + message.unsupportedPolicyEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ContinuousValidationEvent message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ContinuousValidationEvent.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ContinuousValidationEvent message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ContinuousValidationEvent.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.podEvent != null && message.hasOwnProperty("podEvent")) { + properties.eventType = 1; + { + var error = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify(message.podEvent); + if (error) + return "podEvent." + error; + } + } + if (message.unsupportedPolicyEvent != null && message.hasOwnProperty("unsupportedPolicyEvent")) { + if (properties.eventType === 1) + return "eventType: multiple values"; + properties.eventType = 1; + { + var error = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify(message.unsupportedPolicyEvent); + if (error) + return "unsupportedPolicyEvent." + error; + } + } + return null; + }; + + /** + * Creates a ContinuousValidationEvent message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent + */ + ContinuousValidationEvent.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent(); + if (object.podEvent != null) { + if (typeof object.podEvent !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.podEvent: object expected"); + message.podEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.fromObject(object.podEvent); + } + if (object.unsupportedPolicyEvent != null) { + if (typeof object.unsupportedPolicyEvent !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.unsupportedPolicyEvent: object expected"); + message.unsupportedPolicyEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.fromObject(object.unsupportedPolicyEvent); + } + return message; + }; + + /** + * Creates a plain object from a ContinuousValidationEvent message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} message ContinuousValidationEvent + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ContinuousValidationEvent.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.podEvent != null && message.hasOwnProperty("podEvent")) { + object.podEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.toObject(message.podEvent, options); + if (options.oneofs) + object.eventType = "podEvent"; + } + if (message.unsupportedPolicyEvent != null && message.hasOwnProperty("unsupportedPolicyEvent")) { + object.unsupportedPolicyEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.toObject(message.unsupportedPolicyEvent, options); + if (options.oneofs) + object.eventType = "unsupportedPolicyEvent"; + } + return object; + }; + + /** + * Converts this ContinuousValidationEvent to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @instance + * @returns {Object.} JSON object + */ + ContinuousValidationEvent.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + ContinuousValidationEvent.ContinuousValidationPodEvent = (function() { + + /** + * Properties of a ContinuousValidationPodEvent. + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @interface IContinuousValidationPodEvent + * @property {string|null} [pod] ContinuousValidationPodEvent pod + * @property {google.protobuf.ITimestamp|null} [deployTime] ContinuousValidationPodEvent deployTime + * @property {google.protobuf.ITimestamp|null} [endTime] ContinuousValidationPodEvent endTime + * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|null} [verdict] ContinuousValidationPodEvent verdict + * @property {Array.|null} [images] ContinuousValidationPodEvent images + */ + + /** + * Constructs a new ContinuousValidationPodEvent. + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @classdesc Represents a ContinuousValidationPodEvent. + * @implements IContinuousValidationPodEvent + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent=} [properties] Properties to set + */ + function ContinuousValidationPodEvent(properties) { + this.images = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ContinuousValidationPodEvent pod. + * @member {string} pod + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @instance + */ + ContinuousValidationPodEvent.prototype.pod = ""; + + /** + * ContinuousValidationPodEvent deployTime. + * @member {google.protobuf.ITimestamp|null|undefined} deployTime + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @instance + */ + ContinuousValidationPodEvent.prototype.deployTime = null; + + /** + * ContinuousValidationPodEvent endTime. + * @member {google.protobuf.ITimestamp|null|undefined} endTime + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @instance + */ + ContinuousValidationPodEvent.prototype.endTime = null; + + /** + * ContinuousValidationPodEvent verdict. + * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict} verdict + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @instance + */ + ContinuousValidationPodEvent.prototype.verdict = 0; + + /** + * ContinuousValidationPodEvent images. + * @member {Array.} images + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @instance + */ + ContinuousValidationPodEvent.prototype.images = $util.emptyArray; + + /** + * Creates a new ContinuousValidationPodEvent instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent instance + */ + ContinuousValidationPodEvent.create = function create(properties) { + return new ContinuousValidationPodEvent(properties); + }; + + /** + * Encodes the specified ContinuousValidationPodEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent} message ContinuousValidationPodEvent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ContinuousValidationPodEvent.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.pod != null && Object.hasOwnProperty.call(message, "pod")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.pod); + if (message.deployTime != null && Object.hasOwnProperty.call(message, "deployTime")) + $root.google.protobuf.Timestamp.encode(message.deployTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) + $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.verdict != null && Object.hasOwnProperty.call(message, "verdict")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.verdict); + if (message.images != null && message.images.length) + for (var i = 0; i < message.images.length; ++i) + $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.encode(message.images[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ContinuousValidationPodEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent} message ContinuousValidationPodEvent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ContinuousValidationPodEvent.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ContinuousValidationPodEvent.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.pod = reader.string(); + break; + case 2: + message.deployTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 3: + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + case 4: + message.verdict = reader.int32(); + break; + case 5: + if (!(message.images && message.images.length)) + message.images = []; + message.images.push($root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ContinuousValidationPodEvent.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ContinuousValidationPodEvent message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ContinuousValidationPodEvent.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.pod != null && message.hasOwnProperty("pod")) + if (!$util.isString(message.pod)) + return "pod: string expected"; + if (message.deployTime != null && message.hasOwnProperty("deployTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.deployTime); + if (error) + return "deployTime." + error; + } + if (message.endTime != null && message.hasOwnProperty("endTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.endTime); + if (error) + return "endTime." + error; + } + if (message.verdict != null && message.hasOwnProperty("verdict")) + switch (message.verdict) { + default: + return "verdict: enum value expected"; + case 0: + case 1: + break; + } + if (message.images != null && message.hasOwnProperty("images")) { + if (!Array.isArray(message.images)) + return "images: array expected"; + for (var i = 0; i < message.images.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify(message.images[i]); + if (error) + return "images." + error; + } + } + return null; + }; + + /** + * Creates a ContinuousValidationPodEvent message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent + */ + ContinuousValidationPodEvent.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent(); + if (object.pod != null) + message.pod = String(object.pod); + if (object.deployTime != null) { + if (typeof object.deployTime !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.deployTime: object expected"); + message.deployTime = $root.google.protobuf.Timestamp.fromObject(object.deployTime); + } + if (object.endTime != null) { + if (typeof object.endTime !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.endTime: object expected"); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + } + switch (object.verdict) { + case "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED": + case 0: + message.verdict = 0; + break; + case "VIOLATES_POLICY": + case 1: + message.verdict = 1; + break; + } + if (object.images) { + if (!Array.isArray(object.images)) + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.images: array expected"); + message.images = []; + for (var i = 0; i < object.images.length; ++i) { + if (typeof object.images[i] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.images: object expected"); + message.images[i] = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.fromObject(object.images[i]); + } + } + return message; + }; + + /** + * Creates a plain object from a ContinuousValidationPodEvent message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} message ContinuousValidationPodEvent + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ContinuousValidationPodEvent.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.images = []; + if (options.defaults) { + object.pod = ""; + object.deployTime = null; + object.endTime = null; + object.verdict = options.enums === String ? "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED" : 0; + } + if (message.pod != null && message.hasOwnProperty("pod")) + object.pod = message.pod; + if (message.deployTime != null && message.hasOwnProperty("deployTime")) + object.deployTime = $root.google.protobuf.Timestamp.toObject(message.deployTime, options); + if (message.endTime != null && message.hasOwnProperty("endTime")) + object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); + if (message.verdict != null && message.hasOwnProperty("verdict")) + object.verdict = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict[message.verdict] : message.verdict; + if (message.images && message.images.length) { + object.images = []; + for (var j = 0; j < message.images.length; ++j) + object.images[j] = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.toObject(message.images[j], options); + } + return object; + }; + + /** + * Converts this ContinuousValidationPodEvent to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @instance + * @returns {Object.} JSON object + */ + ContinuousValidationPodEvent.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + ContinuousValidationPodEvent.ImageDetails = (function() { + + /** + * Properties of an ImageDetails. + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @interface IImageDetails + * @property {string|null} [image] ImageDetails image + * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|null} [result] ImageDetails result + * @property {string|null} [description] ImageDetails description + */ + + /** + * Constructs a new ImageDetails. + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent + * @classdesc Represents an ImageDetails. + * @implements IImageDetails + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails=} [properties] Properties to set + */ + function ImageDetails(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ImageDetails image. + * @member {string} image + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @instance + */ + ImageDetails.prototype.image = ""; + + /** + * ImageDetails result. + * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult} result + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @instance + */ + ImageDetails.prototype.result = 0; + + /** + * ImageDetails description. + * @member {string} description + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @instance + */ + ImageDetails.prototype.description = ""; + + /** + * Creates a new ImageDetails instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails instance + */ + ImageDetails.create = function create(properties) { + return new ImageDetails(properties); + }; + + /** + * Encodes the specified ImageDetails message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails} message ImageDetails message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ImageDetails.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.image != null && Object.hasOwnProperty.call(message, "image")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.image); + if (message.result != null && Object.hasOwnProperty.call(message, "result")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.result); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.description); + return writer; + }; + + /** + * Encodes the specified ImageDetails message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails} message ImageDetails message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ImageDetails.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ImageDetails message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ImageDetails.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.image = reader.string(); + break; + case 2: + message.result = reader.int32(); + break; + case 3: + message.description = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ImageDetails message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ImageDetails.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ImageDetails message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ImageDetails.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.image != null && message.hasOwnProperty("image")) + if (!$util.isString(message.image)) + return "image: string expected"; + if (message.result != null && message.hasOwnProperty("result")) + switch (message.result) { + default: + return "result: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + return null; + }; + + /** + * Creates an ImageDetails message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails + */ + ImageDetails.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails(); + if (object.image != null) + message.image = String(object.image); + switch (object.result) { + case "AUDIT_RESULT_UNSPECIFIED": + case 0: + message.result = 0; + break; + case "ALLOW": + case 1: + message.result = 1; + break; + case "DENY": + case 2: + message.result = 2; + break; + } + if (object.description != null) + message.description = String(object.description); + return message; + }; + + /** + * Creates a plain object from an ImageDetails message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} message ImageDetails + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ImageDetails.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.image = ""; + object.result = options.enums === String ? "AUDIT_RESULT_UNSPECIFIED" : 0; + object.description = ""; + } + if (message.image != null && message.hasOwnProperty("image")) + object.image = message.image; + if (message.result != null && message.hasOwnProperty("result")) + object.result = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult[message.result] : message.result; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + return object; + }; + + /** + * Converts this ImageDetails to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails + * @instance + * @returns {Object.} JSON object + */ + ImageDetails.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * AuditResult enum. + * @name google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult + * @enum {number} + * @property {number} AUDIT_RESULT_UNSPECIFIED=0 AUDIT_RESULT_UNSPECIFIED value + * @property {number} ALLOW=1 ALLOW value + * @property {number} DENY=2 DENY value + */ + ImageDetails.AuditResult = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "AUDIT_RESULT_UNSPECIFIED"] = 0; + values[valuesById[1] = "ALLOW"] = 1; + values[valuesById[2] = "DENY"] = 2; + return values; + })(); + + return ImageDetails; + })(); + + /** + * PolicyConformanceVerdict enum. + * @name google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict + * @enum {number} + * @property {number} POLICY_CONFORMANCE_VERDICT_UNSPECIFIED=0 POLICY_CONFORMANCE_VERDICT_UNSPECIFIED value + * @property {number} VIOLATES_POLICY=1 VIOLATES_POLICY value + */ + ContinuousValidationPodEvent.PolicyConformanceVerdict = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED"] = 0; + values[valuesById[1] = "VIOLATES_POLICY"] = 1; + return values; + })(); + + return ContinuousValidationPodEvent; + })(); + + ContinuousValidationEvent.UnsupportedPolicyEvent = (function() { + + /** + * Properties of an UnsupportedPolicyEvent. + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @interface IUnsupportedPolicyEvent + * @property {string|null} [description] UnsupportedPolicyEvent description + */ + + /** + * Constructs a new UnsupportedPolicyEvent. + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent + * @classdesc Represents an UnsupportedPolicyEvent. + * @implements IUnsupportedPolicyEvent + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent=} [properties] Properties to set + */ + function UnsupportedPolicyEvent(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * UnsupportedPolicyEvent description. + * @member {string} description + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @instance + */ + UnsupportedPolicyEvent.prototype.description = ""; + + /** + * Creates a new UnsupportedPolicyEvent instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent instance + */ + UnsupportedPolicyEvent.create = function create(properties) { + return new UnsupportedPolicyEvent(properties); + }; + + /** + * Encodes the specified UnsupportedPolicyEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent} message UnsupportedPolicyEvent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UnsupportedPolicyEvent.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.description); + return writer; + }; + + /** + * Encodes the specified UnsupportedPolicyEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent} message UnsupportedPolicyEvent message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UnsupportedPolicyEvent.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UnsupportedPolicyEvent.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.description = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UnsupportedPolicyEvent.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UnsupportedPolicyEvent message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UnsupportedPolicyEvent.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + return null; + }; + + /** + * Creates an UnsupportedPolicyEvent message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent + */ + UnsupportedPolicyEvent.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent(); + if (object.description != null) + message.description = String(object.description); + return message; + }; + + /** + * Creates a plain object from an UnsupportedPolicyEvent message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} message UnsupportedPolicyEvent + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UnsupportedPolicyEvent.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.description = ""; + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + return object; + }; + + /** + * Converts this UnsupportedPolicyEvent to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent + * @instance + * @returns {Object.} JSON object + */ + UnsupportedPolicyEvent.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UnsupportedPolicyEvent; + })(); + + return ContinuousValidationEvent; + })(); + + v1beta1.Policy = (function() { + + /** + * Properties of a Policy. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IPolicy + * @property {string|null} [name] Policy name + * @property {string|null} [description] Policy description + * @property {google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|null} [globalPolicyEvaluationMode] Policy globalPolicyEvaluationMode + * @property {Array.|null} [admissionWhitelistPatterns] Policy admissionWhitelistPatterns + * @property {Object.|null} [clusterAdmissionRules] Policy clusterAdmissionRules + * @property {google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null} [defaultAdmissionRule] Policy defaultAdmissionRule + * @property {google.protobuf.ITimestamp|null} [updateTime] Policy updateTime + */ + + /** + * Constructs a new Policy. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a Policy. + * @implements IPolicy + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IPolicy=} [properties] Properties to set + */ + function Policy(properties) { + this.admissionWhitelistPatterns = []; + this.clusterAdmissionRules = {}; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Policy name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + */ + Policy.prototype.name = ""; + + /** + * Policy description. + * @member {string} description + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + */ + Policy.prototype.description = ""; + + /** + * Policy globalPolicyEvaluationMode. + * @member {google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode} globalPolicyEvaluationMode + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + */ + Policy.prototype.globalPolicyEvaluationMode = 0; + + /** + * Policy admissionWhitelistPatterns. + * @member {Array.} admissionWhitelistPatterns + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + */ + Policy.prototype.admissionWhitelistPatterns = $util.emptyArray; + + /** + * Policy clusterAdmissionRules. + * @member {Object.} clusterAdmissionRules + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + */ + Policy.prototype.clusterAdmissionRules = $util.emptyObject; + + /** + * Policy defaultAdmissionRule. + * @member {google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null|undefined} defaultAdmissionRule + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + */ + Policy.prototype.defaultAdmissionRule = null; + + /** + * Policy updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + */ + Policy.prototype.updateTime = null; + + /** + * Creates a new Policy instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IPolicy=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy instance + */ + Policy.create = function create(properties) { + return new Policy(properties); + }; + + /** + * Encodes the specified Policy message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IPolicy} message Policy message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Policy.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.admissionWhitelistPatterns != null && message.admissionWhitelistPatterns.length) + for (var i = 0; i < message.admissionWhitelistPatterns.length; ++i) + $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.encode(message.admissionWhitelistPatterns[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.clusterAdmissionRules != null && Object.hasOwnProperty.call(message, "clusterAdmissionRules")) + for (var keys = Object.keys(message.clusterAdmissionRules), i = 0; i < keys.length; ++i) { + writer.uint32(/* id 3, wireType 2 =*/26).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); + $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.encode(message.clusterAdmissionRules[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); + } + if (message.defaultAdmissionRule != null && Object.hasOwnProperty.call(message, "defaultAdmissionRule")) + $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.encode(message.defaultAdmissionRule, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); + if (message.globalPolicyEvaluationMode != null && Object.hasOwnProperty.call(message, "globalPolicyEvaluationMode")) + writer.uint32(/* id 7, wireType 0 =*/56).int32(message.globalPolicyEvaluationMode); + return writer; + }; + + /** + * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IPolicy} message Policy message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Policy.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Policy message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Policy.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.Policy(), key, value; + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 6: + message.description = reader.string(); + break; + case 7: + message.globalPolicyEvaluationMode = reader.int32(); + break; + case 2: + if (!(message.admissionWhitelistPatterns && message.admissionWhitelistPatterns.length)) + message.admissionWhitelistPatterns = []; + message.admissionWhitelistPatterns.push($root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.decode(reader, reader.uint32())); + break; + case 3: + if (message.clusterAdmissionRules === $util.emptyObject) + message.clusterAdmissionRules = {}; + var end2 = reader.uint32() + reader.pos; + key = ""; + value = null; + while (reader.pos < end2) { + var tag2 = reader.uint32(); + switch (tag2 >>> 3) { + case 1: + key = reader.string(); + break; + case 2: + value = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag2 & 7); + break; + } + } + message.clusterAdmissionRules[key] = value; + break; + case 4: + message.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.decode(reader, reader.uint32()); + break; + case 5: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Policy message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Policy.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Policy message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Policy.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.globalPolicyEvaluationMode != null && message.hasOwnProperty("globalPolicyEvaluationMode")) + switch (message.globalPolicyEvaluationMode) { + default: + return "globalPolicyEvaluationMode: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.admissionWhitelistPatterns != null && message.hasOwnProperty("admissionWhitelistPatterns")) { + if (!Array.isArray(message.admissionWhitelistPatterns)) + return "admissionWhitelistPatterns: array expected"; + for (var i = 0; i < message.admissionWhitelistPatterns.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify(message.admissionWhitelistPatterns[i]); + if (error) + return "admissionWhitelistPatterns." + error; + } + } + if (message.clusterAdmissionRules != null && message.hasOwnProperty("clusterAdmissionRules")) { + if (!$util.isObject(message.clusterAdmissionRules)) + return "clusterAdmissionRules: object expected"; + var key = Object.keys(message.clusterAdmissionRules); + for (var i = 0; i < key.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify(message.clusterAdmissionRules[key[i]]); + if (error) + return "clusterAdmissionRules." + error; + } + } + if (message.defaultAdmissionRule != null && message.hasOwnProperty("defaultAdmissionRule")) { + var error = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify(message.defaultAdmissionRule); + if (error) + return "defaultAdmissionRule." + error; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates a Policy message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy + */ + Policy.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.Policy) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.Policy(); + if (object.name != null) + message.name = String(object.name); + if (object.description != null) + message.description = String(object.description); + switch (object.globalPolicyEvaluationMode) { + case "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED": + case 0: + message.globalPolicyEvaluationMode = 0; + break; + case "ENABLE": + case 1: + message.globalPolicyEvaluationMode = 1; + break; + case "DISABLE": + case 2: + message.globalPolicyEvaluationMode = 2; + break; + } + if (object.admissionWhitelistPatterns) { + if (!Array.isArray(object.admissionWhitelistPatterns)) + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.admissionWhitelistPatterns: array expected"); + message.admissionWhitelistPatterns = []; + for (var i = 0; i < object.admissionWhitelistPatterns.length; ++i) { + if (typeof object.admissionWhitelistPatterns[i] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.admissionWhitelistPatterns: object expected"); + message.admissionWhitelistPatterns[i] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.fromObject(object.admissionWhitelistPatterns[i]); + } + } + if (object.clusterAdmissionRules) { + if (typeof object.clusterAdmissionRules !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.clusterAdmissionRules: object expected"); + message.clusterAdmissionRules = {}; + for (var keys = Object.keys(object.clusterAdmissionRules), i = 0; i < keys.length; ++i) { + if (typeof object.clusterAdmissionRules[keys[i]] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.clusterAdmissionRules: object expected"); + message.clusterAdmissionRules[keys[i]] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.fromObject(object.clusterAdmissionRules[keys[i]]); + } + } + if (object.defaultAdmissionRule != null) { + if (typeof object.defaultAdmissionRule !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.defaultAdmissionRule: object expected"); + message.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.fromObject(object.defaultAdmissionRule); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from a Policy message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @static + * @param {google.cloud.binaryauthorization.v1beta1.Policy} message Policy + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Policy.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.admissionWhitelistPatterns = []; + if (options.objects || options.defaults) + object.clusterAdmissionRules = {}; + if (options.defaults) { + object.name = ""; + object.defaultAdmissionRule = null; + object.updateTime = null; + object.description = ""; + object.globalPolicyEvaluationMode = options.enums === String ? "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED" : 0; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.admissionWhitelistPatterns && message.admissionWhitelistPatterns.length) { + object.admissionWhitelistPatterns = []; + for (var j = 0; j < message.admissionWhitelistPatterns.length; ++j) + object.admissionWhitelistPatterns[j] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.toObject(message.admissionWhitelistPatterns[j], options); + } + var keys2; + if (message.clusterAdmissionRules && (keys2 = Object.keys(message.clusterAdmissionRules)).length) { + object.clusterAdmissionRules = {}; + for (var j = 0; j < keys2.length; ++j) + object.clusterAdmissionRules[keys2[j]] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.toObject(message.clusterAdmissionRules[keys2[j]], options); + } + if (message.defaultAdmissionRule != null && message.hasOwnProperty("defaultAdmissionRule")) + object.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.toObject(message.defaultAdmissionRule, options); + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + if (message.globalPolicyEvaluationMode != null && message.hasOwnProperty("globalPolicyEvaluationMode")) + object.globalPolicyEvaluationMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode[message.globalPolicyEvaluationMode] : message.globalPolicyEvaluationMode; + return object; + }; + + /** + * Converts this Policy to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.Policy + * @instance + * @returns {Object.} JSON object + */ + Policy.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * GlobalPolicyEvaluationMode enum. + * @name google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode + * @enum {number} + * @property {number} GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED=0 GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED value + * @property {number} ENABLE=1 ENABLE value + * @property {number} DISABLE=2 DISABLE value + */ + Policy.GlobalPolicyEvaluationMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ENABLE"] = 1; + values[valuesById[2] = "DISABLE"] = 2; + return values; + })(); + + return Policy; + })(); + + v1beta1.AdmissionWhitelistPattern = (function() { + + /** + * Properties of an AdmissionWhitelistPattern. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IAdmissionWhitelistPattern + * @property {string|null} [namePattern] AdmissionWhitelistPattern namePattern + */ + + /** + * Constructs a new AdmissionWhitelistPattern. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents an AdmissionWhitelistPattern. + * @implements IAdmissionWhitelistPattern + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern=} [properties] Properties to set + */ + function AdmissionWhitelistPattern(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * AdmissionWhitelistPattern namePattern. + * @member {string} namePattern + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @instance + */ + AdmissionWhitelistPattern.prototype.namePattern = ""; + + /** + * Creates a new AdmissionWhitelistPattern instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern instance + */ + AdmissionWhitelistPattern.create = function create(properties) { + return new AdmissionWhitelistPattern(properties); + }; + + /** + * Encodes the specified AdmissionWhitelistPattern message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern} message AdmissionWhitelistPattern message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionWhitelistPattern.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.namePattern != null && Object.hasOwnProperty.call(message, "namePattern")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePattern); + return writer; + }; + + /** + * Encodes the specified AdmissionWhitelistPattern message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern} message AdmissionWhitelistPattern message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionWhitelistPattern.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionWhitelistPattern.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.namePattern = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionWhitelistPattern.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AdmissionWhitelistPattern message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AdmissionWhitelistPattern.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.namePattern != null && message.hasOwnProperty("namePattern")) + if (!$util.isString(message.namePattern)) + return "namePattern: string expected"; + return null; + }; + + /** + * Creates an AdmissionWhitelistPattern message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern + */ + AdmissionWhitelistPattern.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern(); + if (object.namePattern != null) + message.namePattern = String(object.namePattern); + return message; + }; + + /** + * Creates a plain object from an AdmissionWhitelistPattern message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @static + * @param {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} message AdmissionWhitelistPattern + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AdmissionWhitelistPattern.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.namePattern = ""; + if (message.namePattern != null && message.hasOwnProperty("namePattern")) + object.namePattern = message.namePattern; + return object; + }; + + /** + * Converts this AdmissionWhitelistPattern to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern + * @instance + * @returns {Object.} JSON object + */ + AdmissionWhitelistPattern.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return AdmissionWhitelistPattern; + })(); + + v1beta1.AdmissionRule = (function() { + + /** + * Properties of an AdmissionRule. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IAdmissionRule + * @property {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|null} [evaluationMode] AdmissionRule evaluationMode + * @property {Array.|null} [requireAttestationsBy] AdmissionRule requireAttestationsBy + * @property {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|null} [enforcementMode] AdmissionRule enforcementMode + */ + + /** + * Constructs a new AdmissionRule. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents an AdmissionRule. + * @implements IAdmissionRule + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule=} [properties] Properties to set + */ + function AdmissionRule(properties) { + this.requireAttestationsBy = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * AdmissionRule evaluationMode. + * @member {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode} evaluationMode + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @instance + */ + AdmissionRule.prototype.evaluationMode = 0; + + /** + * AdmissionRule requireAttestationsBy. + * @member {Array.} requireAttestationsBy + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @instance + */ + AdmissionRule.prototype.requireAttestationsBy = $util.emptyArray; + + /** + * AdmissionRule enforcementMode. + * @member {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode} enforcementMode + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @instance + */ + AdmissionRule.prototype.enforcementMode = 0; + + /** + * Creates a new AdmissionRule instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule instance + */ + AdmissionRule.create = function create(properties) { + return new AdmissionRule(properties); + }; + + /** + * Encodes the specified AdmissionRule message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule} message AdmissionRule message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionRule.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.evaluationMode != null && Object.hasOwnProperty.call(message, "evaluationMode")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.evaluationMode); + if (message.requireAttestationsBy != null && message.requireAttestationsBy.length) + for (var i = 0; i < message.requireAttestationsBy.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.requireAttestationsBy[i]); + if (message.enforcementMode != null && Object.hasOwnProperty.call(message, "enforcementMode")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.enforcementMode); + return writer; + }; + + /** + * Encodes the specified AdmissionRule message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule} message AdmissionRule message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AdmissionRule.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AdmissionRule message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionRule.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.evaluationMode = reader.int32(); + break; + case 2: + if (!(message.requireAttestationsBy && message.requireAttestationsBy.length)) + message.requireAttestationsBy = []; + message.requireAttestationsBy.push(reader.string()); + break; + case 3: + message.enforcementMode = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AdmissionRule message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AdmissionRule.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AdmissionRule message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AdmissionRule.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode")) + switch (message.evaluationMode) { + default: + return "evaluationMode: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.requireAttestationsBy != null && message.hasOwnProperty("requireAttestationsBy")) { + if (!Array.isArray(message.requireAttestationsBy)) + return "requireAttestationsBy: array expected"; + for (var i = 0; i < message.requireAttestationsBy.length; ++i) + if (!$util.isString(message.requireAttestationsBy[i])) + return "requireAttestationsBy: string[] expected"; + } + if (message.enforcementMode != null && message.hasOwnProperty("enforcementMode")) + switch (message.enforcementMode) { + default: + return "enforcementMode: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + + /** + * Creates an AdmissionRule message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule + */ + AdmissionRule.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule(); + switch (object.evaluationMode) { + case "EVALUATION_MODE_UNSPECIFIED": + case 0: + message.evaluationMode = 0; + break; + case "ALWAYS_ALLOW": + case 1: + message.evaluationMode = 1; + break; + case "REQUIRE_ATTESTATION": + case 2: + message.evaluationMode = 2; + break; + case "ALWAYS_DENY": + case 3: + message.evaluationMode = 3; + break; + } + if (object.requireAttestationsBy) { + if (!Array.isArray(object.requireAttestationsBy)) + throw TypeError(".google.cloud.binaryauthorization.v1beta1.AdmissionRule.requireAttestationsBy: array expected"); + message.requireAttestationsBy = []; + for (var i = 0; i < object.requireAttestationsBy.length; ++i) + message.requireAttestationsBy[i] = String(object.requireAttestationsBy[i]); + } + switch (object.enforcementMode) { + case "ENFORCEMENT_MODE_UNSPECIFIED": + case 0: + message.enforcementMode = 0; + break; + case "ENFORCED_BLOCK_AND_AUDIT_LOG": + case 1: + message.enforcementMode = 1; + break; + case "DRYRUN_AUDIT_LOG_ONLY": + case 2: + message.enforcementMode = 2; + break; + } + return message; + }; + + /** + * Creates a plain object from an AdmissionRule message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @static + * @param {google.cloud.binaryauthorization.v1beta1.AdmissionRule} message AdmissionRule + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AdmissionRule.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.requireAttestationsBy = []; + if (options.defaults) { + object.evaluationMode = options.enums === String ? "EVALUATION_MODE_UNSPECIFIED" : 0; + object.enforcementMode = options.enums === String ? "ENFORCEMENT_MODE_UNSPECIFIED" : 0; + } + if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode")) + object.evaluationMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode[message.evaluationMode] : message.evaluationMode; + if (message.requireAttestationsBy && message.requireAttestationsBy.length) { + object.requireAttestationsBy = []; + for (var j = 0; j < message.requireAttestationsBy.length; ++j) + object.requireAttestationsBy[j] = message.requireAttestationsBy[j]; + } + if (message.enforcementMode != null && message.hasOwnProperty("enforcementMode")) + object.enforcementMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode[message.enforcementMode] : message.enforcementMode; + return object; + }; + + /** + * Converts this AdmissionRule to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule + * @instance + * @returns {Object.} JSON object + */ + AdmissionRule.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * EvaluationMode enum. + * @name google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode + * @enum {number} + * @property {number} EVALUATION_MODE_UNSPECIFIED=0 EVALUATION_MODE_UNSPECIFIED value + * @property {number} ALWAYS_ALLOW=1 ALWAYS_ALLOW value + * @property {number} REQUIRE_ATTESTATION=2 REQUIRE_ATTESTATION value + * @property {number} ALWAYS_DENY=3 ALWAYS_DENY value + */ + AdmissionRule.EvaluationMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "EVALUATION_MODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ALWAYS_ALLOW"] = 1; + values[valuesById[2] = "REQUIRE_ATTESTATION"] = 2; + values[valuesById[3] = "ALWAYS_DENY"] = 3; + return values; + })(); + + /** + * EnforcementMode enum. + * @name google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode + * @enum {number} + * @property {number} ENFORCEMENT_MODE_UNSPECIFIED=0 ENFORCEMENT_MODE_UNSPECIFIED value + * @property {number} ENFORCED_BLOCK_AND_AUDIT_LOG=1 ENFORCED_BLOCK_AND_AUDIT_LOG value + * @property {number} DRYRUN_AUDIT_LOG_ONLY=2 DRYRUN_AUDIT_LOG_ONLY value + */ + AdmissionRule.EnforcementMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "ENFORCEMENT_MODE_UNSPECIFIED"] = 0; + values[valuesById[1] = "ENFORCED_BLOCK_AND_AUDIT_LOG"] = 1; + values[valuesById[2] = "DRYRUN_AUDIT_LOG_ONLY"] = 2; + return values; + })(); + + return AdmissionRule; + })(); + + v1beta1.Attestor = (function() { + + /** + * Properties of an Attestor. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IAttestor + * @property {string|null} [name] Attestor name + * @property {string|null} [description] Attestor description + * @property {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null} [userOwnedDrydockNote] Attestor userOwnedDrydockNote + * @property {google.protobuf.ITimestamp|null} [updateTime] Attestor updateTime + */ + + /** + * Constructs a new Attestor. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents an Attestor. + * @implements IAttestor + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IAttestor=} [properties] Properties to set + */ + function Attestor(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Attestor name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @instance + */ + Attestor.prototype.name = ""; + + /** + * Attestor description. + * @member {string} description + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @instance + */ + Attestor.prototype.description = ""; + + /** + * Attestor userOwnedDrydockNote. + * @member {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null|undefined} userOwnedDrydockNote + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @instance + */ + Attestor.prototype.userOwnedDrydockNote = null; + + /** + * Attestor updateTime. + * @member {google.protobuf.ITimestamp|null|undefined} updateTime + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @instance + */ + Attestor.prototype.updateTime = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * Attestor attestorType. + * @member {"userOwnedDrydockNote"|undefined} attestorType + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @instance + */ + Object.defineProperty(Attestor.prototype, "attestorType", { + get: $util.oneOfGetter($oneOfFields = ["userOwnedDrydockNote"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new Attestor instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAttestor=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor instance + */ + Attestor.create = function create(properties) { + return new Attestor(properties); + }; + + /** + * Encodes the specified Attestor message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAttestor} message Attestor message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Attestor.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.userOwnedDrydockNote != null && Object.hasOwnProperty.call(message, "userOwnedDrydockNote")) + $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.encode(message.userOwnedDrydockNote, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) + $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.description != null && Object.hasOwnProperty.call(message, "description")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); + return writer; + }; + + /** + * Encodes the specified Attestor message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAttestor} message Attestor message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Attestor.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an Attestor message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Attestor.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.Attestor(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 6: + message.description = reader.string(); + break; + case 3: + message.userOwnedDrydockNote = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.decode(reader, reader.uint32()); + break; + case 4: + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Attestor message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Attestor.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an Attestor message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Attestor.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.description != null && message.hasOwnProperty("description")) + if (!$util.isString(message.description)) + return "description: string expected"; + if (message.userOwnedDrydockNote != null && message.hasOwnProperty("userOwnedDrydockNote")) { + properties.attestorType = 1; + { + var error = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify(message.userOwnedDrydockNote); + if (error) + return "userOwnedDrydockNote." + error; + } + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) { + var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + if (error) + return "updateTime." + error; + } + return null; + }; + + /** + * Creates an Attestor message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor + */ + Attestor.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.Attestor) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.Attestor(); + if (object.name != null) + message.name = String(object.name); + if (object.description != null) + message.description = String(object.description); + if (object.userOwnedDrydockNote != null) { + if (typeof object.userOwnedDrydockNote !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Attestor.userOwnedDrydockNote: object expected"); + message.userOwnedDrydockNote = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.fromObject(object.userOwnedDrydockNote); + } + if (object.updateTime != null) { + if (typeof object.updateTime !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.Attestor.updateTime: object expected"); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + } + return message; + }; + + /** + * Creates a plain object from an Attestor message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @static + * @param {google.cloud.binaryauthorization.v1beta1.Attestor} message Attestor + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Attestor.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.updateTime = null; + object.description = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.userOwnedDrydockNote != null && message.hasOwnProperty("userOwnedDrydockNote")) { + object.userOwnedDrydockNote = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.toObject(message.userOwnedDrydockNote, options); + if (options.oneofs) + object.attestorType = "userOwnedDrydockNote"; + } + if (message.updateTime != null && message.hasOwnProperty("updateTime")) + object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); + if (message.description != null && message.hasOwnProperty("description")) + object.description = message.description; + return object; + }; + + /** + * Converts this Attestor to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.Attestor + * @instance + * @returns {Object.} JSON object + */ + Attestor.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Attestor; + })(); + + v1beta1.UserOwnedDrydockNote = (function() { + + /** + * Properties of a UserOwnedDrydockNote. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IUserOwnedDrydockNote + * @property {string|null} [noteReference] UserOwnedDrydockNote noteReference + * @property {Array.|null} [publicKeys] UserOwnedDrydockNote publicKeys + * @property {string|null} [delegationServiceAccountEmail] UserOwnedDrydockNote delegationServiceAccountEmail + */ + + /** + * Constructs a new UserOwnedDrydockNote. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a UserOwnedDrydockNote. + * @implements IUserOwnedDrydockNote + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote=} [properties] Properties to set + */ + function UserOwnedDrydockNote(properties) { + this.publicKeys = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * UserOwnedDrydockNote noteReference. + * @member {string} noteReference + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @instance + */ + UserOwnedDrydockNote.prototype.noteReference = ""; + + /** + * UserOwnedDrydockNote publicKeys. + * @member {Array.} publicKeys + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @instance + */ + UserOwnedDrydockNote.prototype.publicKeys = $util.emptyArray; + + /** + * UserOwnedDrydockNote delegationServiceAccountEmail. + * @member {string} delegationServiceAccountEmail + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @instance + */ + UserOwnedDrydockNote.prototype.delegationServiceAccountEmail = ""; + + /** + * Creates a new UserOwnedDrydockNote instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote instance + */ + UserOwnedDrydockNote.create = function create(properties) { + return new UserOwnedDrydockNote(properties); + }; + + /** + * Encodes the specified UserOwnedDrydockNote message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote} message UserOwnedDrydockNote message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UserOwnedDrydockNote.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.noteReference != null && Object.hasOwnProperty.call(message, "noteReference")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.noteReference); + if (message.publicKeys != null && message.publicKeys.length) + for (var i = 0; i < message.publicKeys.length; ++i) + $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.encode(message.publicKeys[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.delegationServiceAccountEmail != null && Object.hasOwnProperty.call(message, "delegationServiceAccountEmail")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.delegationServiceAccountEmail); + return writer; + }; + + /** + * Encodes the specified UserOwnedDrydockNote message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote} message UserOwnedDrydockNote message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UserOwnedDrydockNote.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a UserOwnedDrydockNote message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UserOwnedDrydockNote.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.noteReference = reader.string(); + break; + case 2: + if (!(message.publicKeys && message.publicKeys.length)) + message.publicKeys = []; + message.publicKeys.push($root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.decode(reader, reader.uint32())); + break; + case 3: + message.delegationServiceAccountEmail = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a UserOwnedDrydockNote message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UserOwnedDrydockNote.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a UserOwnedDrydockNote message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UserOwnedDrydockNote.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.noteReference != null && message.hasOwnProperty("noteReference")) + if (!$util.isString(message.noteReference)) + return "noteReference: string expected"; + if (message.publicKeys != null && message.hasOwnProperty("publicKeys")) { + if (!Array.isArray(message.publicKeys)) + return "publicKeys: array expected"; + for (var i = 0; i < message.publicKeys.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify(message.publicKeys[i]); + if (error) + return "publicKeys." + error; + } + } + if (message.delegationServiceAccountEmail != null && message.hasOwnProperty("delegationServiceAccountEmail")) + if (!$util.isString(message.delegationServiceAccountEmail)) + return "delegationServiceAccountEmail: string expected"; + return null; + }; + + /** + * Creates a UserOwnedDrydockNote message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote + */ + UserOwnedDrydockNote.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote(); + if (object.noteReference != null) + message.noteReference = String(object.noteReference); + if (object.publicKeys) { + if (!Array.isArray(object.publicKeys)) + throw TypeError(".google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.publicKeys: array expected"); + message.publicKeys = []; + for (var i = 0; i < object.publicKeys.length; ++i) { + if (typeof object.publicKeys[i] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.publicKeys: object expected"); + message.publicKeys[i] = $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.fromObject(object.publicKeys[i]); + } + } + if (object.delegationServiceAccountEmail != null) + message.delegationServiceAccountEmail = String(object.delegationServiceAccountEmail); + return message; + }; + + /** + * Creates a plain object from a UserOwnedDrydockNote message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @static + * @param {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} message UserOwnedDrydockNote + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UserOwnedDrydockNote.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.publicKeys = []; + if (options.defaults) { + object.noteReference = ""; + object.delegationServiceAccountEmail = ""; + } + if (message.noteReference != null && message.hasOwnProperty("noteReference")) + object.noteReference = message.noteReference; + if (message.publicKeys && message.publicKeys.length) { + object.publicKeys = []; + for (var j = 0; j < message.publicKeys.length; ++j) + object.publicKeys[j] = $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.toObject(message.publicKeys[j], options); + } + if (message.delegationServiceAccountEmail != null && message.hasOwnProperty("delegationServiceAccountEmail")) + object.delegationServiceAccountEmail = message.delegationServiceAccountEmail; + return object; + }; + + /** + * Converts this UserOwnedDrydockNote to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote + * @instance + * @returns {Object.} JSON object + */ + UserOwnedDrydockNote.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UserOwnedDrydockNote; + })(); + + v1beta1.PkixPublicKey = (function() { + + /** + * Properties of a PkixPublicKey. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IPkixPublicKey + * @property {string|null} [publicKeyPem] PkixPublicKey publicKeyPem + * @property {google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|null} [signatureAlgorithm] PkixPublicKey signatureAlgorithm + */ + + /** + * Constructs a new PkixPublicKey. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a PkixPublicKey. + * @implements IPkixPublicKey + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey=} [properties] Properties to set + */ + function PkixPublicKey(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * PkixPublicKey publicKeyPem. + * @member {string} publicKeyPem + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @instance + */ + PkixPublicKey.prototype.publicKeyPem = ""; + + /** + * PkixPublicKey signatureAlgorithm. + * @member {google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm} signatureAlgorithm + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @instance + */ + PkixPublicKey.prototype.signatureAlgorithm = 0; + + /** + * Creates a new PkixPublicKey instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey instance + */ + PkixPublicKey.create = function create(properties) { + return new PkixPublicKey(properties); + }; + + /** + * Encodes the specified PkixPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey} message PkixPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PkixPublicKey.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.publicKeyPem != null && Object.hasOwnProperty.call(message, "publicKeyPem")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.publicKeyPem); + if (message.signatureAlgorithm != null && Object.hasOwnProperty.call(message, "signatureAlgorithm")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.signatureAlgorithm); + return writer; + }; + + /** + * Encodes the specified PkixPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey} message PkixPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PkixPublicKey.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PkixPublicKey message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PkixPublicKey.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.publicKeyPem = reader.string(); + break; + case 2: + message.signatureAlgorithm = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PkixPublicKey message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PkixPublicKey.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PkixPublicKey message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PkixPublicKey.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.publicKeyPem != null && message.hasOwnProperty("publicKeyPem")) + if (!$util.isString(message.publicKeyPem)) + return "publicKeyPem: string expected"; + if (message.signatureAlgorithm != null && message.hasOwnProperty("signatureAlgorithm")) + switch (message.signatureAlgorithm) { + default: + return "signatureAlgorithm: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + break; + } + return null; + }; + + /** + * Creates a PkixPublicKey message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey + */ + PkixPublicKey.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey(); + if (object.publicKeyPem != null) + message.publicKeyPem = String(object.publicKeyPem); + switch (object.signatureAlgorithm) { + case "SIGNATURE_ALGORITHM_UNSPECIFIED": + case 0: + message.signatureAlgorithm = 0; + break; + case "RSA_PSS_2048_SHA256": + case 1: + message.signatureAlgorithm = 1; + break; + case "RSA_PSS_3072_SHA256": + case 2: + message.signatureAlgorithm = 2; + break; + case "RSA_PSS_4096_SHA256": + case 3: + message.signatureAlgorithm = 3; + break; + case "RSA_PSS_4096_SHA512": + case 4: + message.signatureAlgorithm = 4; + break; + case "RSA_SIGN_PKCS1_2048_SHA256": + case 5: + message.signatureAlgorithm = 5; + break; + case "RSA_SIGN_PKCS1_3072_SHA256": + case 6: + message.signatureAlgorithm = 6; + break; + case "RSA_SIGN_PKCS1_4096_SHA256": + case 7: + message.signatureAlgorithm = 7; + break; + case "RSA_SIGN_PKCS1_4096_SHA512": + case 8: + message.signatureAlgorithm = 8; + break; + case "ECDSA_P256_SHA256": + case 9: + message.signatureAlgorithm = 9; + break; + case "ECDSA_P384_SHA384": + case 10: + message.signatureAlgorithm = 10; + break; + case "ECDSA_P521_SHA512": + case 11: + message.signatureAlgorithm = 11; + break; + } + return message; + }; + + /** + * Creates a plain object from a PkixPublicKey message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} message PkixPublicKey + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PkixPublicKey.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.publicKeyPem = ""; + object.signatureAlgorithm = options.enums === String ? "SIGNATURE_ALGORITHM_UNSPECIFIED" : 0; + } + if (message.publicKeyPem != null && message.hasOwnProperty("publicKeyPem")) + object.publicKeyPem = message.publicKeyPem; + if (message.signatureAlgorithm != null && message.hasOwnProperty("signatureAlgorithm")) + object.signatureAlgorithm = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm[message.signatureAlgorithm] : message.signatureAlgorithm; + return object; + }; + + /** + * Converts this PkixPublicKey to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey + * @instance + * @returns {Object.} JSON object + */ + PkixPublicKey.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * SignatureAlgorithm enum. + * @name google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm + * @enum {number} + * @property {number} SIGNATURE_ALGORITHM_UNSPECIFIED=0 SIGNATURE_ALGORITHM_UNSPECIFIED value + * @property {number} RSA_PSS_2048_SHA256=1 RSA_PSS_2048_SHA256 value + * @property {number} RSA_PSS_3072_SHA256=2 RSA_PSS_3072_SHA256 value + * @property {number} RSA_PSS_4096_SHA256=3 RSA_PSS_4096_SHA256 value + * @property {number} RSA_PSS_4096_SHA512=4 RSA_PSS_4096_SHA512 value + * @property {number} RSA_SIGN_PKCS1_2048_SHA256=5 RSA_SIGN_PKCS1_2048_SHA256 value + * @property {number} RSA_SIGN_PKCS1_3072_SHA256=6 RSA_SIGN_PKCS1_3072_SHA256 value + * @property {number} RSA_SIGN_PKCS1_4096_SHA256=7 RSA_SIGN_PKCS1_4096_SHA256 value + * @property {number} RSA_SIGN_PKCS1_4096_SHA512=8 RSA_SIGN_PKCS1_4096_SHA512 value + * @property {number} ECDSA_P256_SHA256=9 ECDSA_P256_SHA256 value + * @property {number} ECDSA_P384_SHA384=10 ECDSA_P384_SHA384 value + * @property {number} ECDSA_P521_SHA512=11 ECDSA_P521_SHA512 value + */ + PkixPublicKey.SignatureAlgorithm = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "SIGNATURE_ALGORITHM_UNSPECIFIED"] = 0; + values[valuesById[1] = "RSA_PSS_2048_SHA256"] = 1; + values[valuesById[2] = "RSA_PSS_3072_SHA256"] = 2; + values[valuesById[3] = "RSA_PSS_4096_SHA256"] = 3; + values[valuesById[4] = "RSA_PSS_4096_SHA512"] = 4; + values[valuesById[5] = "RSA_SIGN_PKCS1_2048_SHA256"] = 5; + values[valuesById[6] = "RSA_SIGN_PKCS1_3072_SHA256"] = 6; + values[valuesById[7] = "RSA_SIGN_PKCS1_4096_SHA256"] = 7; + values[valuesById[8] = "RSA_SIGN_PKCS1_4096_SHA512"] = 8; + values[valuesById[9] = "ECDSA_P256_SHA256"] = 9; + values[valuesById[10] = "ECDSA_P384_SHA384"] = 10; + values[valuesById[11] = "ECDSA_P521_SHA512"] = 11; + return values; + })(); + + return PkixPublicKey; + })(); + + v1beta1.AttestorPublicKey = (function() { + + /** + * Properties of an AttestorPublicKey. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IAttestorPublicKey + * @property {string|null} [comment] AttestorPublicKey comment + * @property {string|null} [id] AttestorPublicKey id + * @property {string|null} [asciiArmoredPgpPublicKey] AttestorPublicKey asciiArmoredPgpPublicKey + * @property {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null} [pkixPublicKey] AttestorPublicKey pkixPublicKey + */ + + /** + * Constructs a new AttestorPublicKey. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents an AttestorPublicKey. + * @implements IAttestorPublicKey + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey=} [properties] Properties to set + */ + function AttestorPublicKey(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * AttestorPublicKey comment. + * @member {string} comment + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.comment = ""; + + /** + * AttestorPublicKey id. + * @member {string} id + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.id = ""; + + /** + * AttestorPublicKey asciiArmoredPgpPublicKey. + * @member {string|null|undefined} asciiArmoredPgpPublicKey + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.asciiArmoredPgpPublicKey = null; + + /** + * AttestorPublicKey pkixPublicKey. + * @member {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null|undefined} pkixPublicKey + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @instance + */ + AttestorPublicKey.prototype.pkixPublicKey = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * AttestorPublicKey publicKey. + * @member {"asciiArmoredPgpPublicKey"|"pkixPublicKey"|undefined} publicKey + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @instance + */ + Object.defineProperty(AttestorPublicKey.prototype, "publicKey", { + get: $util.oneOfGetter($oneOfFields = ["asciiArmoredPgpPublicKey", "pkixPublicKey"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new AttestorPublicKey instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey instance + */ + AttestorPublicKey.create = function create(properties) { + return new AttestorPublicKey(properties); + }; + + /** + * Encodes the specified AttestorPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey} message AttestorPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AttestorPublicKey.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.comment != null && Object.hasOwnProperty.call(message, "comment")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.comment); + if (message.id != null && Object.hasOwnProperty.call(message, "id")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.id); + if (message.asciiArmoredPgpPublicKey != null && Object.hasOwnProperty.call(message, "asciiArmoredPgpPublicKey")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.asciiArmoredPgpPublicKey); + if (message.pkixPublicKey != null && Object.hasOwnProperty.call(message, "pkixPublicKey")) + $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.encode(message.pkixPublicKey, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified AttestorPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey} message AttestorPublicKey message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + AttestorPublicKey.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AttestorPublicKey.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.comment = reader.string(); + break; + case 2: + message.id = reader.string(); + break; + case 3: + message.asciiArmoredPgpPublicKey = reader.string(); + break; + case 5: + message.pkixPublicKey = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an AttestorPublicKey message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AttestorPublicKey.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AttestorPublicKey message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AttestorPublicKey.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.comment != null && message.hasOwnProperty("comment")) + if (!$util.isString(message.comment)) + return "comment: string expected"; + if (message.id != null && message.hasOwnProperty("id")) + if (!$util.isString(message.id)) + return "id: string expected"; + if (message.asciiArmoredPgpPublicKey != null && message.hasOwnProperty("asciiArmoredPgpPublicKey")) { + properties.publicKey = 1; + if (!$util.isString(message.asciiArmoredPgpPublicKey)) + return "asciiArmoredPgpPublicKey: string expected"; + } + if (message.pkixPublicKey != null && message.hasOwnProperty("pkixPublicKey")) { + if (properties.publicKey === 1) + return "publicKey: multiple values"; + properties.publicKey = 1; + { + var error = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify(message.pkixPublicKey); + if (error) + return "pkixPublicKey." + error; + } + } + return null; + }; + + /** + * Creates an AttestorPublicKey message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey + */ + AttestorPublicKey.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey(); + if (object.comment != null) + message.comment = String(object.comment); + if (object.id != null) + message.id = String(object.id); + if (object.asciiArmoredPgpPublicKey != null) + message.asciiArmoredPgpPublicKey = String(object.asciiArmoredPgpPublicKey); + if (object.pkixPublicKey != null) { + if (typeof object.pkixPublicKey !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.pkixPublicKey: object expected"); + message.pkixPublicKey = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.fromObject(object.pkixPublicKey); + } + return message; + }; + + /** + * Creates a plain object from an AttestorPublicKey message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @static + * @param {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} message AttestorPublicKey + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + AttestorPublicKey.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.comment = ""; + object.id = ""; + } + if (message.comment != null && message.hasOwnProperty("comment")) + object.comment = message.comment; + if (message.id != null && message.hasOwnProperty("id")) + object.id = message.id; + if (message.asciiArmoredPgpPublicKey != null && message.hasOwnProperty("asciiArmoredPgpPublicKey")) { + object.asciiArmoredPgpPublicKey = message.asciiArmoredPgpPublicKey; + if (options.oneofs) + object.publicKey = "asciiArmoredPgpPublicKey"; + } + if (message.pkixPublicKey != null && message.hasOwnProperty("pkixPublicKey")) { + object.pkixPublicKey = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.toObject(message.pkixPublicKey, options); + if (options.oneofs) + object.publicKey = "pkixPublicKey"; + } + return object; + }; + + /** + * Converts this AttestorPublicKey to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey + * @instance + * @returns {Object.} JSON object + */ + AttestorPublicKey.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return AttestorPublicKey; + })(); + + v1beta1.BinauthzManagementServiceV1Beta1 = (function() { + + /** + * Constructs a new BinauthzManagementServiceV1Beta1 service. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a BinauthzManagementServiceV1Beta1 + * @extends $protobuf.rpc.Service + * @constructor + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + */ + function BinauthzManagementServiceV1Beta1(rpcImpl, requestDelimited, responseDelimited) { + $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + } + + (BinauthzManagementServiceV1Beta1.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = BinauthzManagementServiceV1Beta1; + + /** + * Creates new BinauthzManagementServiceV1Beta1 service using the specified rpc implementation. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @static + * @param {$protobuf.RPCImpl} rpcImpl RPC implementation + * @param {boolean} [requestDelimited=false] Whether requests are length-delimited + * @param {boolean} [responseDelimited=false] Whether responses are length-delimited + * @returns {BinauthzManagementServiceV1Beta1} RPC service. Useful where requests and/or responses are streamed. + */ + BinauthzManagementServiceV1Beta1.create = function create(rpcImpl, requestDelimited, responseDelimited) { + return new this(rpcImpl, requestDelimited, responseDelimited); + }; + + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getPolicy}. + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @typedef GetPolicyCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1beta1.Policy} [response] Policy + */ + + /** + * Calls GetPolicy. + * @function getPolicy + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} request GetPolicyRequest message or plain object + * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetPolicyCallback} callback Node-style callback called with the error, if any, and Policy + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.getPolicy = function getPolicy(request, callback) { + return this.rpcCall(getPolicy, $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest, $root.google.cloud.binaryauthorization.v1beta1.Policy, request, callback); + }, "name", { value: "GetPolicy" }); + + /** + * Calls GetPolicy. + * @function getPolicy + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} request GetPolicyRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updatePolicy}. + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @typedef UpdatePolicyCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1beta1.Policy} [response] Policy + */ + + /** + * Calls UpdatePolicy. + * @function updatePolicy + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} request UpdatePolicyRequest message or plain object + * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdatePolicyCallback} callback Node-style callback called with the error, if any, and Policy + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.updatePolicy = function updatePolicy(request, callback) { + return this.rpcCall(updatePolicy, $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest, $root.google.cloud.binaryauthorization.v1beta1.Policy, request, callback); + }, "name", { value: "UpdatePolicy" }); + + /** + * Calls UpdatePolicy. + * @function updatePolicy + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} request UpdatePolicyRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#createAttestor}. + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @typedef CreateAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1beta1.Attestor} [response] Attestor + */ + + /** + * Calls CreateAttestor. + * @function createAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} request CreateAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.CreateAttestorCallback} callback Node-style callback called with the error, if any, and Attestor + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.createAttestor = function createAttestor(request, callback) { + return this.rpcCall(createAttestor, $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest, $root.google.cloud.binaryauthorization.v1beta1.Attestor, request, callback); + }, "name", { value: "CreateAttestor" }); + + /** + * Calls CreateAttestor. + * @function createAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} request CreateAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getAttestor}. + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @typedef GetAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1beta1.Attestor} [response] Attestor + */ + + /** + * Calls GetAttestor. + * @function getAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} request GetAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetAttestorCallback} callback Node-style callback called with the error, if any, and Attestor + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.getAttestor = function getAttestor(request, callback) { + return this.rpcCall(getAttestor, $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest, $root.google.cloud.binaryauthorization.v1beta1.Attestor, request, callback); + }, "name", { value: "GetAttestor" }); + + /** + * Calls GetAttestor. + * @function getAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} request GetAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updateAttestor}. + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @typedef UpdateAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1beta1.Attestor} [response] Attestor + */ + + /** + * Calls UpdateAttestor. + * @function updateAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} request UpdateAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdateAttestorCallback} callback Node-style callback called with the error, if any, and Attestor + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.updateAttestor = function updateAttestor(request, callback) { + return this.rpcCall(updateAttestor, $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest, $root.google.cloud.binaryauthorization.v1beta1.Attestor, request, callback); + }, "name", { value: "UpdateAttestor" }); + + /** + * Calls UpdateAttestor. + * @function updateAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} request UpdateAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#listAttestors}. + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @typedef ListAttestorsCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} [response] ListAttestorsResponse + */ + + /** + * Calls ListAttestors. + * @function listAttestors + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} request ListAttestorsRequest message or plain object + * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.ListAttestorsCallback} callback Node-style callback called with the error, if any, and ListAttestorsResponse + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.listAttestors = function listAttestors(request, callback) { + return this.rpcCall(listAttestors, $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest, $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse, request, callback); + }, "name", { value: "ListAttestors" }); + + /** + * Calls ListAttestors. + * @function listAttestors + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} request ListAttestorsRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + /** + * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#deleteAttestor}. + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @typedef DeleteAttestorCallback + * @type {function} + * @param {Error|null} error Error, if any + * @param {google.protobuf.Empty} [response] Empty + */ + + /** + * Calls DeleteAttestor. + * @function deleteAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} request DeleteAttestorRequest message or plain object + * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.DeleteAttestorCallback} callback Node-style callback called with the error, if any, and Empty + * @returns {undefined} + * @variation 1 + */ + Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.deleteAttestor = function deleteAttestor(request, callback) { + return this.rpcCall(deleteAttestor, $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest, $root.google.protobuf.Empty, request, callback); + }, "name", { value: "DeleteAttestor" }); + + /** + * Calls DeleteAttestor. + * @function deleteAttestor + * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 + * @instance + * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} request DeleteAttestorRequest message or plain object + * @returns {Promise} Promise + * @variation 2 + */ + + return BinauthzManagementServiceV1Beta1; + })(); + + v1beta1.GetPolicyRequest = (function() { + + /** + * Properties of a GetPolicyRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IGetPolicyRequest + * @property {string|null} [name] GetPolicyRequest name + */ + + /** + * Constructs a new GetPolicyRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a GetPolicyRequest. + * @implements IGetPolicyRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest=} [properties] Properties to set + */ + function GetPolicyRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * GetPolicyRequest name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @instance + */ + GetPolicyRequest.prototype.name = ""; + + /** + * Creates a new GetPolicyRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest instance + */ + GetPolicyRequest.create = function create(properties) { + return new GetPolicyRequest(properties); + }; + + /** + * Encodes the specified GetPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} message GetPolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetPolicyRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} message GetPolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetPolicyRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetPolicyRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetPolicyRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetPolicyRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetPolicyRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetPolicyRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetPolicyRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest + */ + GetPolicyRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetPolicyRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} message GetPolicyRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetPolicyRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetPolicyRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest + * @instance + * @returns {Object.} JSON object + */ + GetPolicyRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetPolicyRequest; + })(); + + v1beta1.UpdatePolicyRequest = (function() { + + /** + * Properties of an UpdatePolicyRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IUpdatePolicyRequest + * @property {google.cloud.binaryauthorization.v1beta1.IPolicy|null} [policy] UpdatePolicyRequest policy + */ + + /** + * Constructs a new UpdatePolicyRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents an UpdatePolicyRequest. + * @implements IUpdatePolicyRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest=} [properties] Properties to set + */ + function UpdatePolicyRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * UpdatePolicyRequest policy. + * @member {google.cloud.binaryauthorization.v1beta1.IPolicy|null|undefined} policy + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @instance + */ + UpdatePolicyRequest.prototype.policy = null; + + /** + * Creates a new UpdatePolicyRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest instance + */ + UpdatePolicyRequest.create = function create(properties) { + return new UpdatePolicyRequest(properties); + }; + + /** + * Encodes the specified UpdatePolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} message UpdatePolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdatePolicyRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.policy != null && Object.hasOwnProperty.call(message, "policy")) + $root.google.cloud.binaryauthorization.v1beta1.Policy.encode(message.policy, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified UpdatePolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} message UpdatePolicyRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdatePolicyRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdatePolicyRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdatePolicyRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.policy = $root.google.cloud.binaryauthorization.v1beta1.Policy.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdatePolicyRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdatePolicyRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdatePolicyRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdatePolicyRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.policy != null && message.hasOwnProperty("policy")) { + var error = $root.google.cloud.binaryauthorization.v1beta1.Policy.verify(message.policy); + if (error) + return "policy." + error; + } + return null; + }; + + /** + * Creates an UpdatePolicyRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest + */ + UpdatePolicyRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest(); + if (object.policy != null) { + if (typeof object.policy !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.policy: object expected"); + message.policy = $root.google.cloud.binaryauthorization.v1beta1.Policy.fromObject(object.policy); + } + return message; + }; + + /** + * Creates a plain object from an UpdatePolicyRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} message UpdatePolicyRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdatePolicyRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.policy = null; + if (message.policy != null && message.hasOwnProperty("policy")) + object.policy = $root.google.cloud.binaryauthorization.v1beta1.Policy.toObject(message.policy, options); + return object; + }; + + /** + * Converts this UpdatePolicyRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest + * @instance + * @returns {Object.} JSON object + */ + UpdatePolicyRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UpdatePolicyRequest; + })(); + + v1beta1.CreateAttestorRequest = (function() { + + /** + * Properties of a CreateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface ICreateAttestorRequest + * @property {string|null} [parent] CreateAttestorRequest parent + * @property {string|null} [attestorId] CreateAttestorRequest attestorId + * @property {google.cloud.binaryauthorization.v1beta1.IAttestor|null} [attestor] CreateAttestorRequest attestor + */ + + /** + * Constructs a new CreateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a CreateAttestorRequest. + * @implements ICreateAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest=} [properties] Properties to set + */ + function CreateAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * CreateAttestorRequest parent. + * @member {string} parent + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @instance + */ + CreateAttestorRequest.prototype.parent = ""; + + /** + * CreateAttestorRequest attestorId. + * @member {string} attestorId + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @instance + */ + CreateAttestorRequest.prototype.attestorId = ""; + + /** + * CreateAttestorRequest attestor. + * @member {google.cloud.binaryauthorization.v1beta1.IAttestor|null|undefined} attestor + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @instance + */ + CreateAttestorRequest.prototype.attestor = null; + + /** + * Creates a new CreateAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest instance + */ + CreateAttestorRequest.create = function create(properties) { + return new CreateAttestorRequest(properties); + }; + + /** + * Encodes the specified CreateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} message CreateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.attestorId != null && Object.hasOwnProperty.call(message, "attestorId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.attestorId); + if (message.attestor != null && Object.hasOwnProperty.call(message, "attestor")) + $root.google.cloud.binaryauthorization.v1beta1.Attestor.encode(message.attestor, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified CreateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} message CreateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CreateAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.attestorId = reader.string(); + break; + case 3: + message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CreateAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CreateAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CreateAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CreateAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.attestorId != null && message.hasOwnProperty("attestorId")) + if (!$util.isString(message.attestorId)) + return "attestorId: string expected"; + if (message.attestor != null && message.hasOwnProperty("attestor")) { + var error = $root.google.cloud.binaryauthorization.v1beta1.Attestor.verify(message.attestor); + if (error) + return "attestor." + error; + } + return null; + }; + + /** + * Creates a CreateAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest + */ + CreateAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.attestorId != null) + message.attestorId = String(object.attestorId); + if (object.attestor != null) { + if (typeof object.attestor !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.attestor: object expected"); + message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.fromObject(object.attestor); + } + return message; + }; + + /** + * Creates a plain object from a CreateAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} message CreateAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CreateAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.attestorId = ""; + object.attestor = null; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.attestorId != null && message.hasOwnProperty("attestorId")) + object.attestorId = message.attestorId; + if (message.attestor != null && message.hasOwnProperty("attestor")) + object.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.toObject(message.attestor, options); + return object; + }; + + /** + * Converts this CreateAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + CreateAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CreateAttestorRequest; + })(); + + v1beta1.GetAttestorRequest = (function() { + + /** + * Properties of a GetAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IGetAttestorRequest + * @property {string|null} [name] GetAttestorRequest name + */ + + /** + * Constructs a new GetAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a GetAttestorRequest. + * @implements IGetAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest=} [properties] Properties to set + */ + function GetAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * GetAttestorRequest name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @instance + */ + GetAttestorRequest.prototype.name = ""; + + /** + * Creates a new GetAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest instance + */ + GetAttestorRequest.create = function create(properties) { + return new GetAttestorRequest(properties); + }; + + /** + * Encodes the specified GetAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} message GetAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; + + /** + * Encodes the specified GetAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} message GetAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GetAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a GetAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GetAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a GetAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GetAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; + + /** + * Creates a GetAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest + */ + GetAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; + + /** + * Creates a plain object from a GetAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} message GetAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GetAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; + + /** + * Converts this GetAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + GetAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return GetAttestorRequest; + })(); + + v1beta1.UpdateAttestorRequest = (function() { + + /** + * Properties of an UpdateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IUpdateAttestorRequest + * @property {google.cloud.binaryauthorization.v1beta1.IAttestor|null} [attestor] UpdateAttestorRequest attestor + */ + + /** + * Constructs a new UpdateAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents an UpdateAttestorRequest. + * @implements IUpdateAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest=} [properties] Properties to set + */ + function UpdateAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * UpdateAttestorRequest attestor. + * @member {google.cloud.binaryauthorization.v1beta1.IAttestor|null|undefined} attestor + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @instance + */ + UpdateAttestorRequest.prototype.attestor = null; + + /** + * Creates a new UpdateAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest instance + */ + UpdateAttestorRequest.create = function create(properties) { + return new UpdateAttestorRequest(properties); + }; + + /** + * Encodes the specified UpdateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} message UpdateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attestor != null && Object.hasOwnProperty.call(message, "attestor")) + $root.google.cloud.binaryauthorization.v1beta1.Attestor.encode(message.attestor, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified UpdateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} message UpdateAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UpdateAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an UpdateAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an UpdateAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UpdateAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an UpdateAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UpdateAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attestor != null && message.hasOwnProperty("attestor")) { + var error = $root.google.cloud.binaryauthorization.v1beta1.Attestor.verify(message.attestor); + if (error) + return "attestor." + error; + } + return null; + }; + + /** + * Creates an UpdateAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest + */ + UpdateAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest(); + if (object.attestor != null) { + if (typeof object.attestor !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.attestor: object expected"); + message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.fromObject(object.attestor); + } + return message; + }; + + /** + * Creates a plain object from an UpdateAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} message UpdateAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UpdateAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.attestor = null; + if (message.attestor != null && message.hasOwnProperty("attestor")) + object.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.toObject(message.attestor, options); + return object; + }; + + /** + * Converts this UpdateAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + UpdateAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UpdateAttestorRequest; + })(); + + v1beta1.ListAttestorsRequest = (function() { + + /** + * Properties of a ListAttestorsRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IListAttestorsRequest + * @property {string|null} [parent] ListAttestorsRequest parent + * @property {number|null} [pageSize] ListAttestorsRequest pageSize + * @property {string|null} [pageToken] ListAttestorsRequest pageToken + */ + + /** + * Constructs a new ListAttestorsRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a ListAttestorsRequest. + * @implements IListAttestorsRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest=} [properties] Properties to set + */ + function ListAttestorsRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ListAttestorsRequest parent. + * @member {string} parent + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @instance + */ + ListAttestorsRequest.prototype.parent = ""; + + /** + * ListAttestorsRequest pageSize. + * @member {number} pageSize + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @instance + */ + ListAttestorsRequest.prototype.pageSize = 0; + + /** + * ListAttestorsRequest pageToken. + * @member {string} pageToken + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @instance + */ + ListAttestorsRequest.prototype.pageToken = ""; + + /** + * Creates a new ListAttestorsRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest instance + */ + ListAttestorsRequest.create = function create(properties) { + return new ListAttestorsRequest(properties); + }; + + /** + * Encodes the specified ListAttestorsRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} message ListAttestorsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); + if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); + if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); + return writer; + }; + + /** + * Encodes the specified ListAttestorsRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} message ListAttestorsRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ListAttestorsRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.parent = reader.string(); + break; + case 2: + message.pageSize = reader.int32(); + break; + case 3: + message.pageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ListAttestorsRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ListAttestorsRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListAttestorsRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.parent != null && message.hasOwnProperty("parent")) + if (!$util.isString(message.parent)) + return "parent: string expected"; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + if (!$util.isInteger(message.pageSize)) + return "pageSize: integer expected"; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + if (!$util.isString(message.pageToken)) + return "pageToken: string expected"; + return null; + }; + + /** + * Creates a ListAttestorsRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest + */ + ListAttestorsRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest(); + if (object.parent != null) + message.parent = String(object.parent); + if (object.pageSize != null) + message.pageSize = object.pageSize | 0; + if (object.pageToken != null) + message.pageToken = String(object.pageToken); + return message; + }; + + /** + * Creates a plain object from a ListAttestorsRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} message ListAttestorsRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListAttestorsRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.parent = ""; + object.pageSize = 0; + object.pageToken = ""; + } + if (message.parent != null && message.hasOwnProperty("parent")) + object.parent = message.parent; + if (message.pageSize != null && message.hasOwnProperty("pageSize")) + object.pageSize = message.pageSize; + if (message.pageToken != null && message.hasOwnProperty("pageToken")) + object.pageToken = message.pageToken; + return object; + }; + + /** + * Converts this ListAttestorsRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest + * @instance + * @returns {Object.} JSON object + */ + ListAttestorsRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ListAttestorsRequest; + })(); + + v1beta1.ListAttestorsResponse = (function() { + + /** + * Properties of a ListAttestorsResponse. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IListAttestorsResponse + * @property {Array.|null} [attestors] ListAttestorsResponse attestors + * @property {string|null} [nextPageToken] ListAttestorsResponse nextPageToken + */ + + /** + * Constructs a new ListAttestorsResponse. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a ListAttestorsResponse. + * @implements IListAttestorsResponse + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse=} [properties] Properties to set + */ + function ListAttestorsResponse(properties) { + this.attestors = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; } - } - return message; - }; - /** - * Creates a plain object from a FileOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.FileOptions - * @static - * @param {google.protobuf.FileOptions} message FileOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - FileOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.uninterpretedOption = []; - object[".google.api.resourceDefinition"] = []; - } - if (options.defaults) { - object.javaPackage = ""; - object.javaOuterClassname = ""; - object.optimizeFor = options.enums === String ? "SPEED" : 1; - object.javaMultipleFiles = false; - object.goPackage = ""; - object.ccGenericServices = false; - object.javaGenericServices = false; - object.pyGenericServices = false; - object.javaGenerateEqualsAndHash = false; - object.deprecated = false; - object.javaStringCheckUtf8 = false; - object.ccEnableArenas = true; - object.objcClassPrefix = ""; - object.csharpNamespace = ""; - object.swiftPrefix = ""; - object.phpClassPrefix = ""; - object.phpNamespace = ""; - object.phpGenericServices = false; - object.phpMetadataNamespace = ""; - object.rubyPackage = ""; - } - if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) - object.javaPackage = message.javaPackage; - if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) - object.javaOuterClassname = message.javaOuterClassname; - if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) - object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor; - if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) - object.javaMultipleFiles = message.javaMultipleFiles; - if (message.goPackage != null && message.hasOwnProperty("goPackage")) - object.goPackage = message.goPackage; - if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) - object.ccGenericServices = message.ccGenericServices; - if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) - object.javaGenericServices = message.javaGenericServices; - if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) - object.pyGenericServices = message.pyGenericServices; - if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) - object.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) - object.javaStringCheckUtf8 = message.javaStringCheckUtf8; - if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) - object.ccEnableArenas = message.ccEnableArenas; - if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) - object.objcClassPrefix = message.objcClassPrefix; - if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) - object.csharpNamespace = message.csharpNamespace; - if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) - object.swiftPrefix = message.swiftPrefix; - if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) - object.phpClassPrefix = message.phpClassPrefix; - if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) - object.phpNamespace = message.phpNamespace; - if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) - object.phpGenericServices = message.phpGenericServices; - if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) - object.phpMetadataNamespace = message.phpMetadataNamespace; - if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) - object.rubyPackage = message.rubyPackage; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length) { - object[".google.api.resourceDefinition"] = []; - for (var j = 0; j < message[".google.api.resourceDefinition"].length; ++j) - object[".google.api.resourceDefinition"][j] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resourceDefinition"][j], options); - } - return object; - }; + /** + * ListAttestorsResponse attestors. + * @member {Array.} attestors + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @instance + */ + ListAttestorsResponse.prototype.attestors = $util.emptyArray; + + /** + * ListAttestorsResponse nextPageToken. + * @member {string} nextPageToken + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @instance + */ + ListAttestorsResponse.prototype.nextPageToken = ""; + + /** + * Creates a new ListAttestorsResponse instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse instance + */ + ListAttestorsResponse.create = function create(properties) { + return new ListAttestorsResponse(properties); + }; + + /** + * Encodes the specified ListAttestorsResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse} message ListAttestorsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsResponse.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.attestors != null && message.attestors.length) + for (var i = 0; i < message.attestors.length; ++i) + $root.google.cloud.binaryauthorization.v1beta1.Attestor.encode(message.attestors[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); + return writer; + }; - /** - * Converts this FileOptions to JSON. - * @function toJSON - * @memberof google.protobuf.FileOptions - * @instance - * @returns {Object.} JSON object - */ - FileOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Encodes the specified ListAttestorsResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse} message ListAttestorsResponse message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ListAttestorsResponse.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * OptimizeMode enum. - * @name google.protobuf.FileOptions.OptimizeMode - * @enum {number} - * @property {number} SPEED=1 SPEED value - * @property {number} CODE_SIZE=2 CODE_SIZE value - * @property {number} LITE_RUNTIME=3 LITE_RUNTIME value - */ - FileOptions.OptimizeMode = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[1] = "SPEED"] = 1; - values[valuesById[2] = "CODE_SIZE"] = 2; - values[valuesById[3] = "LITE_RUNTIME"] = 3; - return values; - })(); + /** + * Decodes a ListAttestorsResponse message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsResponse.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.attestors && message.attestors.length)) + message.attestors = []; + message.attestors.push($root.google.cloud.binaryauthorization.v1beta1.Attestor.decode(reader, reader.uint32())); + break; + case 2: + message.nextPageToken = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - return FileOptions; - })(); + /** + * Decodes a ListAttestorsResponse message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ListAttestorsResponse.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - protobuf.MessageOptions = (function() { + /** + * Verifies a ListAttestorsResponse message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ListAttestorsResponse.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.attestors != null && message.hasOwnProperty("attestors")) { + if (!Array.isArray(message.attestors)) + return "attestors: array expected"; + for (var i = 0; i < message.attestors.length; ++i) { + var error = $root.google.cloud.binaryauthorization.v1beta1.Attestor.verify(message.attestors[i]); + if (error) + return "attestors." + error; + } + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + if (!$util.isString(message.nextPageToken)) + return "nextPageToken: string expected"; + return null; + }; - /** - * Properties of a MessageOptions. - * @memberof google.protobuf - * @interface IMessageOptions - * @property {boolean|null} [messageSetWireFormat] MessageOptions messageSetWireFormat - * @property {boolean|null} [noStandardDescriptorAccessor] MessageOptions noStandardDescriptorAccessor - * @property {boolean|null} [deprecated] MessageOptions deprecated - * @property {boolean|null} [mapEntry] MessageOptions mapEntry - * @property {Array.|null} [uninterpretedOption] MessageOptions uninterpretedOption - * @property {google.api.IResourceDescriptor|null} [".google.api.resource"] MessageOptions .google.api.resource - */ + /** + * Creates a ListAttestorsResponse message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse + */ + ListAttestorsResponse.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse(); + if (object.attestors) { + if (!Array.isArray(object.attestors)) + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.attestors: array expected"); + message.attestors = []; + for (var i = 0; i < object.attestors.length; ++i) { + if (typeof object.attestors[i] !== "object") + throw TypeError(".google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.attestors: object expected"); + message.attestors[i] = $root.google.cloud.binaryauthorization.v1beta1.Attestor.fromObject(object.attestors[i]); + } + } + if (object.nextPageToken != null) + message.nextPageToken = String(object.nextPageToken); + return message; + }; - /** - * Constructs a new MessageOptions. - * @memberof google.protobuf - * @classdesc Represents a MessageOptions. - * @implements IMessageOptions - * @constructor - * @param {google.protobuf.IMessageOptions=} [properties] Properties to set - */ - function MessageOptions(properties) { - this.uninterpretedOption = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Creates a plain object from a ListAttestorsResponse message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @static + * @param {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} message ListAttestorsResponse + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ListAttestorsResponse.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.attestors = []; + if (options.defaults) + object.nextPageToken = ""; + if (message.attestors && message.attestors.length) { + object.attestors = []; + for (var j = 0; j < message.attestors.length; ++j) + object.attestors[j] = $root.google.cloud.binaryauthorization.v1beta1.Attestor.toObject(message.attestors[j], options); + } + if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) + object.nextPageToken = message.nextPageToken; + return object; + }; - /** - * MessageOptions messageSetWireFormat. - * @member {boolean} messageSetWireFormat - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.messageSetWireFormat = false; + /** + * Converts this ListAttestorsResponse to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse + * @instance + * @returns {Object.} JSON object + */ + ListAttestorsResponse.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * MessageOptions noStandardDescriptorAccessor. - * @member {boolean} noStandardDescriptorAccessor - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.noStandardDescriptorAccessor = false; + return ListAttestorsResponse; + })(); + + v1beta1.DeleteAttestorRequest = (function() { + + /** + * Properties of a DeleteAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @interface IDeleteAttestorRequest + * @property {string|null} [name] DeleteAttestorRequest name + */ + + /** + * Constructs a new DeleteAttestorRequest. + * @memberof google.cloud.binaryauthorization.v1beta1 + * @classdesc Represents a DeleteAttestorRequest. + * @implements IDeleteAttestorRequest + * @constructor + * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest=} [properties] Properties to set + */ + function DeleteAttestorRequest(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * DeleteAttestorRequest name. + * @member {string} name + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @instance + */ + DeleteAttestorRequest.prototype.name = ""; - /** - * MessageOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.deprecated = false; + /** + * Creates a new DeleteAttestorRequest instance using the specified properties. + * @function create + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest=} [properties] Properties to set + * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest instance + */ + DeleteAttestorRequest.create = function create(properties) { + return new DeleteAttestorRequest(properties); + }; - /** - * MessageOptions mapEntry. - * @member {boolean} mapEntry - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.mapEntry = false; + /** + * Encodes the specified DeleteAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. + * @function encode + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} message DeleteAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteAttestorRequest.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + return writer; + }; - /** - * MessageOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype.uninterpretedOption = $util.emptyArray; + /** + * Encodes the specified DeleteAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} message DeleteAttestorRequest message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DeleteAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * MessageOptions .google.api.resource. - * @member {google.api.IResourceDescriptor|null|undefined} .google.api.resource - * @memberof google.protobuf.MessageOptions - * @instance - */ - MessageOptions.prototype[".google.api.resource"] = null; + /** + * Decodes a DeleteAttestorRequest message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteAttestorRequest.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a new MessageOptions instance using the specified properties. - * @function create - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.IMessageOptions=} [properties] Properties to set - * @returns {google.protobuf.MessageOptions} MessageOptions instance - */ - MessageOptions.create = function create(properties) { - return new MessageOptions(properties); - }; + /** + * Decodes a DeleteAttestorRequest message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DeleteAttestorRequest.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. - * @function encode - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MessageOptions.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.messageSetWireFormat != null && Object.hasOwnProperty.call(message, "messageSetWireFormat")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.messageSetWireFormat); - if (message.noStandardDescriptorAccessor != null && Object.hasOwnProperty.call(message, "noStandardDescriptorAccessor")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.noStandardDescriptorAccessor); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); - if (message.mapEntry != null && Object.hasOwnProperty.call(message, "mapEntry")) - writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.resource"] != null && Object.hasOwnProperty.call(message, ".google.api.resource")) - $root.google.api.ResourceDescriptor.encode(message[".google.api.resource"], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); - return writer; - }; + /** + * Verifies a DeleteAttestorRequest message. + * @function verify + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DeleteAttestorRequest.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + return null; + }; - /** - * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MessageOptions.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a DeleteAttestorRequest message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest + */ + DeleteAttestorRequest.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest) + return object; + var message = new $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest(); + if (object.name != null) + message.name = String(object.name); + return message; + }; - /** - * Decodes a MessageOptions message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.MessageOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.MessageOptions} MessageOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MessageOptions.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.messageSetWireFormat = reader.bool(); - break; - case 2: - message.noStandardDescriptorAccessor = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); - break; - case 7: - message.mapEntry = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1053: - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a plain object from a DeleteAttestorRequest message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @static + * @param {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} message DeleteAttestorRequest + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DeleteAttestorRequest.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.name = ""; + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + return object; + }; - /** - * Decodes a MessageOptions message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.MessageOptions - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.MessageOptions} MessageOptions - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MessageOptions.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Converts this DeleteAttestorRequest to JSON. + * @function toJSON + * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest + * @instance + * @returns {Object.} JSON object + */ + DeleteAttestorRequest.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Verifies a MessageOptions message. - * @function verify - * @memberof google.protobuf.MessageOptions - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MessageOptions.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) - if (typeof message.messageSetWireFormat !== "boolean") - return "messageSetWireFormat: boolean expected"; - if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) - if (typeof message.noStandardDescriptorAccessor !== "boolean") - return "noStandardDescriptorAccessor: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) - if (typeof message.mapEntry !== "boolean") - return "mapEntry: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); - if (error) - return ".google.api.resource." + error; - } - return null; - }; + return DeleteAttestorRequest; + })(); - /** - * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.MessageOptions - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.MessageOptions} MessageOptions - */ - MessageOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.MessageOptions) - return object; - var message = new $root.google.protobuf.MessageOptions(); - if (object.messageSetWireFormat != null) - message.messageSetWireFormat = Boolean(object.messageSetWireFormat); - if (object.noStandardDescriptorAccessor != null) - message.noStandardDescriptorAccessor = Boolean(object.noStandardDescriptorAccessor); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.mapEntry != null) - message.mapEntry = Boolean(object.mapEntry); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.resource"] != null) { - if (typeof object[".google.api.resource"] !== "object") - throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); - } - return message; - }; + return v1beta1; + })(); - /** - * Creates a plain object from a MessageOptions message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.MessageOptions - * @static - * @param {google.protobuf.MessageOptions} message MessageOptions - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MessageOptions.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (options.defaults) { - object.messageSetWireFormat = false; - object.noStandardDescriptorAccessor = false; - object.deprecated = false; - object.mapEntry = false; - object[".google.api.resource"] = null; - } - if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) - object.messageSetWireFormat = message.messageSetWireFormat; - if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) - object.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) - object.mapEntry = message.mapEntry; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) - object[".google.api.resource"] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resource"], options); - return object; - }; + return binaryauthorization; + })(); - /** - * Converts this MessageOptions to JSON. - * @function toJSON - * @memberof google.protobuf.MessageOptions - * @instance - * @returns {Object.} JSON object - */ - MessageOptions.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + return cloud; + })(); - return MessageOptions; + google.api = (function() { + + /** + * Namespace api. + * @memberof google + * @namespace + */ + var api = {}; + + /** + * FieldBehavior enum. + * @name google.api.FieldBehavior + * @enum {number} + * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value + * @property {number} OPTIONAL=1 OPTIONAL value + * @property {number} REQUIRED=2 REQUIRED value + * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value + * @property {number} INPUT_ONLY=4 INPUT_ONLY value + * @property {number} IMMUTABLE=5 IMMUTABLE value + * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value + */ + api.FieldBehavior = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0; + values[valuesById[1] = "OPTIONAL"] = 1; + values[valuesById[2] = "REQUIRED"] = 2; + values[valuesById[3] = "OUTPUT_ONLY"] = 3; + values[valuesById[4] = "INPUT_ONLY"] = 4; + values[valuesById[5] = "IMMUTABLE"] = 5; + values[valuesById[6] = "UNORDERED_LIST"] = 6; + return values; })(); - protobuf.FieldOptions = (function() { + api.ResourceDescriptor = (function() { /** - * Properties of a FieldOptions. - * @memberof google.protobuf - * @interface IFieldOptions - * @property {google.protobuf.FieldOptions.CType|null} [ctype] FieldOptions ctype - * @property {boolean|null} [packed] FieldOptions packed - * @property {google.protobuf.FieldOptions.JSType|null} [jstype] FieldOptions jstype - * @property {boolean|null} [lazy] FieldOptions lazy - * @property {boolean|null} [deprecated] FieldOptions deprecated - * @property {boolean|null} [weak] FieldOptions weak - * @property {Array.|null} [uninterpretedOption] FieldOptions uninterpretedOption - * @property {Array.|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior - * @property {google.api.IResourceReference|null} [".google.api.resourceReference"] FieldOptions .google.api.resourceReference + * Properties of a ResourceDescriptor. + * @memberof google.api + * @interface IResourceDescriptor + * @property {string|null} [type] ResourceDescriptor type + * @property {Array.|null} [pattern] ResourceDescriptor pattern + * @property {string|null} [nameField] ResourceDescriptor nameField + * @property {google.api.ResourceDescriptor.History|null} [history] ResourceDescriptor history + * @property {string|null} [plural] ResourceDescriptor plural + * @property {string|null} [singular] ResourceDescriptor singular + * @property {Array.|null} [style] ResourceDescriptor style */ /** - * Constructs a new FieldOptions. - * @memberof google.protobuf - * @classdesc Represents a FieldOptions. - * @implements IFieldOptions + * Constructs a new ResourceDescriptor. + * @memberof google.api + * @classdesc Represents a ResourceDescriptor. + * @implements IResourceDescriptor * @constructor - * @param {google.protobuf.IFieldOptions=} [properties] Properties to set + * @param {google.api.IResourceDescriptor=} [properties] Properties to set */ - function FieldOptions(properties) { - this.uninterpretedOption = []; - this[".google.api.fieldBehavior"] = []; + function ResourceDescriptor(properties) { + this.pattern = []; + this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]]; } - - /** - * FieldOptions ctype. - * @member {google.protobuf.FieldOptions.CType} ctype - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.ctype = 0; - - /** - * FieldOptions packed. - * @member {boolean} packed - * @memberof google.protobuf.FieldOptions - * @instance - */ - FieldOptions.prototype.packed = false; - - /** - * FieldOptions jstype. - * @member {google.protobuf.FieldOptions.JSType} jstype - * @memberof google.protobuf.FieldOptions + + /** + * ResourceDescriptor type. + * @member {string} type + * @memberof google.api.ResourceDescriptor * @instance */ - FieldOptions.prototype.jstype = 0; + ResourceDescriptor.prototype.type = ""; /** - * FieldOptions lazy. - * @member {boolean} lazy - * @memberof google.protobuf.FieldOptions + * ResourceDescriptor pattern. + * @member {Array.} pattern + * @memberof google.api.ResourceDescriptor * @instance */ - FieldOptions.prototype.lazy = false; + ResourceDescriptor.prototype.pattern = $util.emptyArray; /** - * FieldOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.FieldOptions + * ResourceDescriptor nameField. + * @member {string} nameField + * @memberof google.api.ResourceDescriptor * @instance */ - FieldOptions.prototype.deprecated = false; + ResourceDescriptor.prototype.nameField = ""; /** - * FieldOptions weak. - * @member {boolean} weak - * @memberof google.protobuf.FieldOptions + * ResourceDescriptor history. + * @member {google.api.ResourceDescriptor.History} history + * @memberof google.api.ResourceDescriptor * @instance */ - FieldOptions.prototype.weak = false; + ResourceDescriptor.prototype.history = 0; /** - * FieldOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.FieldOptions + * ResourceDescriptor plural. + * @member {string} plural + * @memberof google.api.ResourceDescriptor * @instance */ - FieldOptions.prototype.uninterpretedOption = $util.emptyArray; + ResourceDescriptor.prototype.plural = ""; /** - * FieldOptions .google.api.fieldBehavior. - * @member {Array.} .google.api.fieldBehavior - * @memberof google.protobuf.FieldOptions + * ResourceDescriptor singular. + * @member {string} singular + * @memberof google.api.ResourceDescriptor * @instance */ - FieldOptions.prototype[".google.api.fieldBehavior"] = $util.emptyArray; + ResourceDescriptor.prototype.singular = ""; /** - * FieldOptions .google.api.resourceReference. - * @member {google.api.IResourceReference|null|undefined} .google.api.resourceReference - * @memberof google.protobuf.FieldOptions + * ResourceDescriptor style. + * @member {Array.} style + * @memberof google.api.ResourceDescriptor * @instance */ - FieldOptions.prototype[".google.api.resourceReference"] = null; + ResourceDescriptor.prototype.style = $util.emptyArray; /** - * Creates a new FieldOptions instance using the specified properties. + * Creates a new ResourceDescriptor instance using the specified properties. * @function create - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.IFieldOptions=} [properties] Properties to set - * @returns {google.protobuf.FieldOptions} FieldOptions instance + * @param {google.api.IResourceDescriptor=} [properties] Properties to set + * @returns {google.api.ResourceDescriptor} ResourceDescriptor instance */ - FieldOptions.create = function create(properties) { - return new FieldOptions(properties); + ResourceDescriptor.create = function create(properties) { + return new ResourceDescriptor(properties); }; /** - * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. * @function encode - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - FieldOptions.encode = function encode(message, writer) { + ResourceDescriptor.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.ctype != null && Object.hasOwnProperty.call(message, "ctype")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.ctype); - if (message.packed != null && Object.hasOwnProperty.call(message, "packed")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.packed); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); - if (message.lazy != null && Object.hasOwnProperty.call(message, "lazy")) - writer.uint32(/* id 5, wireType 0 =*/40).bool(message.lazy); - if (message.jstype != null && Object.hasOwnProperty.call(message, "jstype")) - writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jstype); - if (message.weak != null && Object.hasOwnProperty.call(message, "weak")) - writer.uint32(/* id 10, wireType 0 =*/80).bool(message.weak); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.fieldBehavior"] != null && message[".google.api.fieldBehavior"].length) { - writer.uint32(/* id 1052, wireType 2 =*/8418).fork(); - for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) - writer.int32(message[".google.api.fieldBehavior"][i]); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.pattern != null && message.pattern.length) + for (var i = 0; i < message.pattern.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.pattern[i]); + if (message.nameField != null && Object.hasOwnProperty.call(message, "nameField")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.nameField); + if (message.history != null && Object.hasOwnProperty.call(message, "history")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.history); + if (message.plural != null && Object.hasOwnProperty.call(message, "plural")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.plural); + if (message.singular != null && Object.hasOwnProperty.call(message, "singular")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.singular); + if (message.style != null && message.style.length) { + writer.uint32(/* id 10, wireType 2 =*/82).fork(); + for (var i = 0; i < message.style.length; ++i) + writer.int32(message.style[i]); writer.ldelim(); } - if (message[".google.api.resourceReference"] != null && Object.hasOwnProperty.call(message, ".google.api.resourceReference")) - $root.google.api.ResourceReference.encode(message[".google.api.resourceReference"], writer.uint32(/* id 1055, wireType 2 =*/8442).fork()).ldelim(); return writer; }; /** - * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - FieldOptions.encodeDelimited = function encodeDelimited(message, writer) { + ResourceDescriptor.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a FieldOptions message from the specified reader or buffer. + * Decodes a ResourceDescriptor message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.FieldOptions} FieldOptions + * @returns {google.api.ResourceDescriptor} ResourceDescriptor * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length) { + ResourceDescriptor.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.ctype = reader.int32(); + message.type = reader.string(); break; case 2: - message.packed = reader.bool(); + if (!(message.pattern && message.pattern.length)) + message.pattern = []; + message.pattern.push(reader.string()); break; - case 6: - message.jstype = reader.int32(); + case 3: + message.nameField = reader.string(); + break; + case 4: + message.history = reader.int32(); break; case 5: - message.lazy = reader.bool(); + message.plural = reader.string(); break; - case 3: - message.deprecated = reader.bool(); + case 6: + message.singular = reader.string(); break; case 10: - message.weak = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1052: - if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length)) - message[".google.api.fieldBehavior"] = []; + if (!(message.style && message.style.length)) + message.style = []; if ((tag & 7) === 2) { var end2 = reader.uint32() + reader.pos; while (reader.pos < end2) - message[".google.api.fieldBehavior"].push(reader.int32()); + message.style.push(reader.int32()); } else - message[".google.api.fieldBehavior"].push(reader.int32()); - break; - case 1055: - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message.style.push(reader.int32()); break; default: reader.skipType(tag & 7); @@ -5711,317 +10356,246 @@ }; /** - * Decodes a FieldOptions message from the specified reader or buffer, length delimited. + * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.FieldOptions} FieldOptions + * @returns {google.api.ResourceDescriptor} ResourceDescriptor * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decodeDelimited = function decodeDelimited(reader) { + ResourceDescriptor.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a FieldOptions message. + * Verifies a ResourceDescriptor message. * @function verify - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.ctype != null && message.hasOwnProperty("ctype")) - switch (message.ctype) { - default: - return "ctype: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.packed != null && message.hasOwnProperty("packed")) - if (typeof message.packed !== "boolean") - return "packed: boolean expected"; - if (message.jstype != null && message.hasOwnProperty("jstype")) - switch (message.jstype) { + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.pattern != null && message.hasOwnProperty("pattern")) { + if (!Array.isArray(message.pattern)) + return "pattern: array expected"; + for (var i = 0; i < message.pattern.length; ++i) + if (!$util.isString(message.pattern[i])) + return "pattern: string[] expected"; + } + if (message.nameField != null && message.hasOwnProperty("nameField")) + if (!$util.isString(message.nameField)) + return "nameField: string expected"; + if (message.history != null && message.hasOwnProperty("history")) + switch (message.history) { default: - return "jstype: enum value expected"; + return "history: enum value expected"; case 0: case 1: case 2: break; } - if (message.lazy != null && message.hasOwnProperty("lazy")) - if (typeof message.lazy !== "boolean") - return "lazy: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.weak != null && message.hasOwnProperty("weak")) - if (typeof message.weak !== "boolean") - return "weak: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.fieldBehavior"] != null && message.hasOwnProperty(".google.api.fieldBehavior")) { - if (!Array.isArray(message[".google.api.fieldBehavior"])) - return ".google.api.fieldBehavior: array expected"; - for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) - switch (message[".google.api.fieldBehavior"][i]) { + if (message.plural != null && message.hasOwnProperty("plural")) + if (!$util.isString(message.plural)) + return "plural: string expected"; + if (message.singular != null && message.hasOwnProperty("singular")) + if (!$util.isString(message.singular)) + return "singular: string expected"; + if (message.style != null && message.hasOwnProperty("style")) { + if (!Array.isArray(message.style)) + return "style: array expected"; + for (var i = 0; i < message.style.length; ++i) + switch (message.style[i]) { default: - return ".google.api.fieldBehavior: enum value[] expected"; + return "style: enum value[] expected"; case 0: - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: + case 1: break; } } - if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); - if (error) - return ".google.api.resourceReference." + error; - } return null; }; /** - * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types. + * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static * @param {Object.} object Plain object - * @returns {google.protobuf.FieldOptions} FieldOptions + * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - FieldOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.FieldOptions) + ResourceDescriptor.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceDescriptor) return object; - var message = new $root.google.protobuf.FieldOptions(); - switch (object.ctype) { - case "STRING": - case 0: - message.ctype = 0; - break; - case "CORD": - case 1: - message.ctype = 1; - break; - case "STRING_PIECE": - case 2: - message.ctype = 2; - break; + var message = new $root.google.api.ResourceDescriptor(); + if (object.type != null) + message.type = String(object.type); + if (object.pattern) { + if (!Array.isArray(object.pattern)) + throw TypeError(".google.api.ResourceDescriptor.pattern: array expected"); + message.pattern = []; + for (var i = 0; i < object.pattern.length; ++i) + message.pattern[i] = String(object.pattern[i]); } - if (object.packed != null) - message.packed = Boolean(object.packed); - switch (object.jstype) { - case "JS_NORMAL": + if (object.nameField != null) + message.nameField = String(object.nameField); + switch (object.history) { + case "HISTORY_UNSPECIFIED": case 0: - message.jstype = 0; + message.history = 0; break; - case "JS_STRING": + case "ORIGINALLY_SINGLE_PATTERN": case 1: - message.jstype = 1; + message.history = 1; break; - case "JS_NUMBER": + case "FUTURE_MULTI_PATTERN": case 2: - message.jstype = 2; + message.history = 2; break; } - if (object.lazy != null) - message.lazy = Boolean(object.lazy); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.weak != null) - message.weak = Boolean(object.weak); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.fieldBehavior"]) { - if (!Array.isArray(object[".google.api.fieldBehavior"])) - throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected"); - message[".google.api.fieldBehavior"] = []; - for (var i = 0; i < object[".google.api.fieldBehavior"].length; ++i) - switch (object[".google.api.fieldBehavior"][i]) { + if (object.plural != null) + message.plural = String(object.plural); + if (object.singular != null) + message.singular = String(object.singular); + if (object.style) { + if (!Array.isArray(object.style)) + throw TypeError(".google.api.ResourceDescriptor.style: array expected"); + message.style = []; + for (var i = 0; i < object.style.length; ++i) + switch (object.style[i]) { default: - case "FIELD_BEHAVIOR_UNSPECIFIED": + case "STYLE_UNSPECIFIED": case 0: - message[".google.api.fieldBehavior"][i] = 0; + message.style[i] = 0; break; - case "OPTIONAL": + case "DECLARATIVE_FRIENDLY": case 1: - message[".google.api.fieldBehavior"][i] = 1; - break; - case "REQUIRED": - case 2: - message[".google.api.fieldBehavior"][i] = 2; - break; - case "OUTPUT_ONLY": - case 3: - message[".google.api.fieldBehavior"][i] = 3; - break; - case "INPUT_ONLY": - case 4: - message[".google.api.fieldBehavior"][i] = 4; - break; - case "IMMUTABLE": - case 5: - message[".google.api.fieldBehavior"][i] = 5; - break; - case "UNORDERED_LIST": - case 6: - message[".google.api.fieldBehavior"][i] = 6; + message.style[i] = 1; break; } } - if (object[".google.api.resourceReference"] != null) { - if (typeof object[".google.api.resourceReference"] !== "object") - throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); - } return message; }; /** - * Creates a plain object from a FieldOptions message. Also converts values to other types if specified. + * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @static - * @param {google.protobuf.FieldOptions} message FieldOptions + * @param {google.api.ResourceDescriptor} message ResourceDescriptor * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - FieldOptions.toObject = function toObject(message, options) { + ResourceDescriptor.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.arrays || options.defaults) { - object.uninterpretedOption = []; - object[".google.api.fieldBehavior"] = []; + object.pattern = []; + object.style = []; } if (options.defaults) { - object.ctype = options.enums === String ? "STRING" : 0; - object.packed = false; - object.deprecated = false; - object.lazy = false; - object.jstype = options.enums === String ? "JS_NORMAL" : 0; - object.weak = false; - object[".google.api.resourceReference"] = null; + object.type = ""; + object.nameField = ""; + object.history = options.enums === String ? "HISTORY_UNSPECIFIED" : 0; + object.plural = ""; + object.singular = ""; } - if (message.ctype != null && message.hasOwnProperty("ctype")) - object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype; - if (message.packed != null && message.hasOwnProperty("packed")) - object.packed = message.packed; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.lazy != null && message.hasOwnProperty("lazy")) - object.lazy = message.lazy; - if (message.jstype != null && message.hasOwnProperty("jstype")) - object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; - if (message.weak != null && message.hasOwnProperty("weak")) - object.weak = message.weak; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.pattern && message.pattern.length) { + object.pattern = []; + for (var j = 0; j < message.pattern.length; ++j) + object.pattern[j] = message.pattern[j]; } - if (message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length) { - object[".google.api.fieldBehavior"] = []; - for (var j = 0; j < message[".google.api.fieldBehavior"].length; ++j) - object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j]; + if (message.nameField != null && message.hasOwnProperty("nameField")) + object.nameField = message.nameField; + if (message.history != null && message.hasOwnProperty("history")) + object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; + if (message.plural != null && message.hasOwnProperty("plural")) + object.plural = message.plural; + if (message.singular != null && message.hasOwnProperty("singular")) + object.singular = message.singular; + if (message.style && message.style.length) { + object.style = []; + for (var j = 0; j < message.style.length; ++j) + object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; } - if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) - object[".google.api.resourceReference"] = $root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"], options); return object; }; /** - * Converts this FieldOptions to JSON. + * Converts this ResourceDescriptor to JSON. * @function toJSON - * @memberof google.protobuf.FieldOptions + * @memberof google.api.ResourceDescriptor * @instance * @returns {Object.} JSON object */ - FieldOptions.prototype.toJSON = function toJSON() { + ResourceDescriptor.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * CType enum. - * @name google.protobuf.FieldOptions.CType + * History enum. + * @name google.api.ResourceDescriptor.History * @enum {number} - * @property {number} STRING=0 STRING value - * @property {number} CORD=1 CORD value - * @property {number} STRING_PIECE=2 STRING_PIECE value + * @property {number} HISTORY_UNSPECIFIED=0 HISTORY_UNSPECIFIED value + * @property {number} ORIGINALLY_SINGLE_PATTERN=1 ORIGINALLY_SINGLE_PATTERN value + * @property {number} FUTURE_MULTI_PATTERN=2 FUTURE_MULTI_PATTERN value */ - FieldOptions.CType = (function() { + ResourceDescriptor.History = (function() { var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "STRING"] = 0; - values[valuesById[1] = "CORD"] = 1; - values[valuesById[2] = "STRING_PIECE"] = 2; + values[valuesById[0] = "HISTORY_UNSPECIFIED"] = 0; + values[valuesById[1] = "ORIGINALLY_SINGLE_PATTERN"] = 1; + values[valuesById[2] = "FUTURE_MULTI_PATTERN"] = 2; return values; })(); /** - * JSType enum. - * @name google.protobuf.FieldOptions.JSType + * Style enum. + * @name google.api.ResourceDescriptor.Style * @enum {number} - * @property {number} JS_NORMAL=0 JS_NORMAL value - * @property {number} JS_STRING=1 JS_STRING value - * @property {number} JS_NUMBER=2 JS_NUMBER value + * @property {number} STYLE_UNSPECIFIED=0 STYLE_UNSPECIFIED value + * @property {number} DECLARATIVE_FRIENDLY=1 DECLARATIVE_FRIENDLY value */ - FieldOptions.JSType = (function() { + ResourceDescriptor.Style = (function() { var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "JS_NORMAL"] = 0; - values[valuesById[1] = "JS_STRING"] = 1; - values[valuesById[2] = "JS_NUMBER"] = 2; + values[valuesById[0] = "STYLE_UNSPECIFIED"] = 0; + values[valuesById[1] = "DECLARATIVE_FRIENDLY"] = 1; return values; })(); - return FieldOptions; + return ResourceDescriptor; })(); - protobuf.OneofOptions = (function() { + api.ResourceReference = (function() { /** - * Properties of an OneofOptions. - * @memberof google.protobuf - * @interface IOneofOptions - * @property {Array.|null} [uninterpretedOption] OneofOptions uninterpretedOption + * Properties of a ResourceReference. + * @memberof google.api + * @interface IResourceReference + * @property {string|null} [type] ResourceReference type + * @property {string|null} [childType] ResourceReference childType */ /** - * Constructs a new OneofOptions. - * @memberof google.protobuf - * @classdesc Represents an OneofOptions. - * @implements IOneofOptions + * Constructs a new ResourceReference. + * @memberof google.api + * @classdesc Represents a ResourceReference. + * @implements IResourceReference * @constructor - * @param {google.protobuf.IOneofOptions=} [properties] Properties to set + * @param {google.api.IResourceReference=} [properties] Properties to set */ - function OneofOptions(properties) { - this.uninterpretedOption = []; + function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6029,78 +10603,88 @@ } /** - * OneofOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.OneofOptions + * ResourceReference type. + * @member {string} type + * @memberof google.api.ResourceReference + * @instance + */ + ResourceReference.prototype.type = ""; + + /** + * ResourceReference childType. + * @member {string} childType + * @memberof google.api.ResourceReference * @instance */ - OneofOptions.prototype.uninterpretedOption = $util.emptyArray; + ResourceReference.prototype.childType = ""; /** - * Creates a new OneofOptions instance using the specified properties. + * Creates a new ResourceReference instance using the specified properties. * @function create - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.IOneofOptions=} [properties] Properties to set - * @returns {google.protobuf.OneofOptions} OneofOptions instance + * @param {google.api.IResourceReference=} [properties] Properties to set + * @returns {google.api.ResourceReference} ResourceReference instance */ - OneofOptions.create = function create(properties) { - return new OneofOptions(properties); + ResourceReference.create = function create(properties) { + return new ResourceReference(properties); }; /** - * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. * @function encode - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - OneofOptions.encode = function encode(message, writer) { + ResourceReference.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); + if (message.childType != null && Object.hasOwnProperty.call(message, "childType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.childType); return writer; }; /** - * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - OneofOptions.encodeDelimited = function encodeDelimited(message, writer) { + ResourceReference.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an OneofOptions message from the specified reader or buffer. + * Decodes a ResourceReference message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.OneofOptions} OneofOptions + * @returns {google.api.ResourceReference} ResourceReference * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length) { + ResourceReference.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + case 1: + message.type = reader.string(); + break; + case 2: + message.childType = reader.string(); break; default: reader.skipType(tag & 7); @@ -6111,127 +10695,118 @@ }; /** - * Decodes an OneofOptions message from the specified reader or buffer, length delimited. + * Decodes a ResourceReference message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.OneofOptions} OneofOptions + * @returns {google.api.ResourceReference} ResourceReference * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decodeDelimited = function decodeDelimited(reader) { + ResourceReference.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an OneofOptions message. + * Verifies a ResourceReference message. * @function verify - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + ResourceReference.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } + if (message.type != null && message.hasOwnProperty("type")) + if (!$util.isString(message.type)) + return "type: string expected"; + if (message.childType != null && message.hasOwnProperty("childType")) + if (!$util.isString(message.childType)) + return "childType: string expected"; return null; }; /** - * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types. + * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static * @param {Object.} object Plain object - * @returns {google.protobuf.OneofOptions} OneofOptions + * @returns {google.api.ResourceReference} ResourceReference */ - OneofOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.OneofOptions) + ResourceReference.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.ResourceReference) return object; - var message = new $root.google.protobuf.OneofOptions(); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } + var message = new $root.google.api.ResourceReference(); + if (object.type != null) + message.type = String(object.type); + if (object.childType != null) + message.childType = String(object.childType); return message; }; /** - * Creates a plain object from an OneofOptions message. Also converts values to other types if specified. + * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @static - * @param {google.protobuf.OneofOptions} message OneofOptions + * @param {google.api.ResourceReference} message ResourceReference * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - OneofOptions.toObject = function toObject(message, options) { + ResourceReference.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + if (options.defaults) { + object.type = ""; + object.childType = ""; } + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.childType != null && message.hasOwnProperty("childType")) + object.childType = message.childType; return object; }; /** - * Converts this OneofOptions to JSON. + * Converts this ResourceReference to JSON. * @function toJSON - * @memberof google.protobuf.OneofOptions + * @memberof google.api.ResourceReference * @instance * @returns {Object.} JSON object */ - OneofOptions.prototype.toJSON = function toJSON() { + ResourceReference.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return OneofOptions; + return ResourceReference; })(); - protobuf.EnumOptions = (function() { + api.Http = (function() { /** - * Properties of an EnumOptions. - * @memberof google.protobuf - * @interface IEnumOptions - * @property {boolean|null} [allowAlias] EnumOptions allowAlias - * @property {boolean|null} [deprecated] EnumOptions deprecated - * @property {Array.|null} [uninterpretedOption] EnumOptions uninterpretedOption + * Properties of a Http. + * @memberof google.api + * @interface IHttp + * @property {Array.|null} [rules] Http rules + * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion */ /** - * Constructs a new EnumOptions. - * @memberof google.protobuf - * @classdesc Represents an EnumOptions. - * @implements IEnumOptions + * Constructs a new Http. + * @memberof google.api + * @classdesc Represents a Http. + * @implements IHttp * @constructor - * @param {google.protobuf.IEnumOptions=} [properties] Properties to set + * @param {google.api.IHttp=} [properties] Properties to set */ - function EnumOptions(properties) { - this.uninterpretedOption = []; + function Http(properties) { + this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6239,104 +10814,91 @@ } /** - * EnumOptions allowAlias. - * @member {boolean} allowAlias - * @memberof google.protobuf.EnumOptions - * @instance - */ - EnumOptions.prototype.allowAlias = false; - - /** - * EnumOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.EnumOptions + * Http rules. + * @member {Array.} rules + * @memberof google.api.Http * @instance */ - EnumOptions.prototype.deprecated = false; + Http.prototype.rules = $util.emptyArray; /** - * EnumOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.EnumOptions + * Http fullyDecodeReservedExpansion. + * @member {boolean} fullyDecodeReservedExpansion + * @memberof google.api.Http * @instance */ - EnumOptions.prototype.uninterpretedOption = $util.emptyArray; + Http.prototype.fullyDecodeReservedExpansion = false; /** - * Creates a new EnumOptions instance using the specified properties. + * Creates a new Http instance using the specified properties. * @function create - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static - * @param {google.protobuf.IEnumOptions=} [properties] Properties to set - * @returns {google.protobuf.EnumOptions} EnumOptions instance + * @param {google.api.IHttp=} [properties] Properties to set + * @returns {google.api.Http} Http instance */ - EnumOptions.create = function create(properties) { - return new EnumOptions(properties); + Http.create = function create(properties) { + return new Http(properties); }; /** - * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. * @function encode - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static - * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {google.api.IHttp} message Http message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EnumOptions.encode = function encode(message, writer) { + Http.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.allowAlias != null && Object.hasOwnProperty.call(message, "allowAlias")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.allowAlias); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message.rules != null && message.rules.length) + for (var i = 0; i < message.rules.length; ++i) + $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion); return writer; }; /** - * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static - * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {google.api.IHttp} message Http message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EnumOptions.encodeDelimited = function encodeDelimited(message, writer) { + Http.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an EnumOptions message from the specified reader or buffer. + * Decodes a Http message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumOptions} EnumOptions + * @returns {google.api.Http} Http * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length) { + Http.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 2: - message.allowAlias = reader.bool(); - break; - case 3: - message.deprecated = reader.bool(); + case 1: + if (!(message.rules && message.rules.length)) + message.rules = []; + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + case 2: + message.fullyDecodeReservedExpansion = reader.bool(); break; default: reader.skipType(tag & 7); @@ -6347,144 +10909,143 @@ }; /** - * Decodes an EnumOptions message from the specified reader or buffer, length delimited. + * Decodes a Http message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumOptions} EnumOptions + * @returns {google.api.Http} Http * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decodeDelimited = function decodeDelimited(reader) { + Http.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an EnumOptions message. + * Verifies a Http message. * @function verify - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + Http.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) - if (typeof message.allowAlias !== "boolean") - return "allowAlias: boolean expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (message.rules != null && message.hasOwnProperty("rules")) { + if (!Array.isArray(message.rules)) + return "rules: array expected"; + for (var i = 0; i < message.rules.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.rules[i]); if (error) - return "uninterpretedOption." + error; + return "rules." + error; } } + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + if (typeof message.fullyDecodeReservedExpansion !== "boolean") + return "fullyDecodeReservedExpansion: boolean expected"; return null; }; /** - * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types. + * Creates a Http message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static * @param {Object.} object Plain object - * @returns {google.protobuf.EnumOptions} EnumOptions + * @returns {google.api.Http} Http */ - EnumOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumOptions) + Http.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.Http) return object; - var message = new $root.google.protobuf.EnumOptions(); - if (object.allowAlias != null) - message.allowAlias = Boolean(object.allowAlias); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + var message = new $root.google.api.Http(); + if (object.rules) { + if (!Array.isArray(object.rules)) + throw TypeError(".google.api.Http.rules: array expected"); + message.rules = []; + for (var i = 0; i < object.rules.length; ++i) { + if (typeof object.rules[i] !== "object") + throw TypeError(".google.api.Http.rules: object expected"); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); } } + if (object.fullyDecodeReservedExpansion != null) + message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); return message; }; /** - * Creates a plain object from an EnumOptions message. Also converts values to other types if specified. + * Creates a plain object from a Http message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @static - * @param {google.protobuf.EnumOptions} message EnumOptions + * @param {google.api.Http} message Http * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - EnumOptions.toObject = function toObject(message, options) { + Http.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (options.defaults) { - object.allowAlias = false; - object.deprecated = false; - } - if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) - object.allowAlias = message.allowAlias; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + object.rules = []; + if (options.defaults) + object.fullyDecodeReservedExpansion = false; + if (message.rules && message.rules.length) { + object.rules = []; + for (var j = 0; j < message.rules.length; ++j) + object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options); } + if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) + object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion; return object; }; /** - * Converts this EnumOptions to JSON. + * Converts this Http to JSON. * @function toJSON - * @memberof google.protobuf.EnumOptions + * @memberof google.api.Http * @instance * @returns {Object.} JSON object */ - EnumOptions.prototype.toJSON = function toJSON() { + Http.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return EnumOptions; + return Http; })(); - protobuf.EnumValueOptions = (function() { + api.HttpRule = (function() { /** - * Properties of an EnumValueOptions. - * @memberof google.protobuf - * @interface IEnumValueOptions - * @property {boolean|null} [deprecated] EnumValueOptions deprecated - * @property {Array.|null} [uninterpretedOption] EnumValueOptions uninterpretedOption + * Properties of a HttpRule. + * @memberof google.api + * @interface IHttpRule + * @property {string|null} [selector] HttpRule selector + * @property {string|null} [get] HttpRule get + * @property {string|null} [put] HttpRule put + * @property {string|null} [post] HttpRule post + * @property {string|null} ["delete"] HttpRule delete + * @property {string|null} [patch] HttpRule patch + * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom + * @property {string|null} [body] HttpRule body + * @property {string|null} [responseBody] HttpRule responseBody + * @property {Array.|null} [additionalBindings] HttpRule additionalBindings */ /** - * Constructs a new EnumValueOptions. - * @memberof google.protobuf - * @classdesc Represents an EnumValueOptions. - * @implements IEnumValueOptions + * Constructs a new HttpRule. + * @memberof google.api + * @classdesc Represents a HttpRule. + * @implements IHttpRule * @constructor - * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set + * @param {google.api.IHttpRule=} [properties] Properties to set */ - function EnumValueOptions(properties) { - this.uninterpretedOption = []; + function HttpRule(properties) { + this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6492,91 +11053,209 @@ } /** - * EnumValueOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.EnumValueOptions + * HttpRule selector. + * @member {string} selector + * @memberof google.api.HttpRule * @instance */ - EnumValueOptions.prototype.deprecated = false; + HttpRule.prototype.selector = ""; /** - * EnumValueOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.EnumValueOptions + * HttpRule get. + * @member {string|null|undefined} get + * @memberof google.api.HttpRule * @instance */ - EnumValueOptions.prototype.uninterpretedOption = $util.emptyArray; + HttpRule.prototype.get = null; /** - * Creates a new EnumValueOptions instance using the specified properties. + * HttpRule put. + * @member {string|null|undefined} put + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.put = null; + + /** + * HttpRule post. + * @member {string|null|undefined} post + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.post = null; + + /** + * HttpRule delete. + * @member {string|null|undefined} delete + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype["delete"] = null; + + /** + * HttpRule patch. + * @member {string|null|undefined} patch + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.patch = null; + + /** + * HttpRule custom. + * @member {google.api.ICustomHttpPattern|null|undefined} custom + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.custom = null; + + /** + * HttpRule body. + * @member {string} body + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.body = ""; + + /** + * HttpRule responseBody. + * @member {string} responseBody + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.responseBody = ""; + + /** + * HttpRule additionalBindings. + * @member {Array.} additionalBindings + * @memberof google.api.HttpRule + * @instance + */ + HttpRule.prototype.additionalBindings = $util.emptyArray; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * HttpRule pattern. + * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern + * @memberof google.api.HttpRule + * @instance + */ + Object.defineProperty(HttpRule.prototype, "pattern", { + get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new HttpRule instance using the specified properties. * @function create - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions instance + * @param {google.api.IHttpRule=} [properties] Properties to set + * @returns {google.api.HttpRule} HttpRule instance */ - EnumValueOptions.create = function create(properties) { - return new EnumValueOptions(properties); + HttpRule.create = function create(properties) { + return new HttpRule(properties); }; /** - * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. * @function encode - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EnumValueOptions.encode = function encode(message, writer) { + HttpRule.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message.selector != null && Object.hasOwnProperty.call(message, "selector")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector); + if (message.get != null && Object.hasOwnProperty.call(message, "get")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.get); + if (message.put != null && Object.hasOwnProperty.call(message, "put")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.put); + if (message.post != null && Object.hasOwnProperty.call(message, "post")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.post); + if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]); + if (message.patch != null && Object.hasOwnProperty.call(message, "patch")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch); + if (message.body != null && Object.hasOwnProperty.call(message, "body")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.body); + if (message.custom != null && Object.hasOwnProperty.call(message, "custom")) + $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.additionalBindings != null && message.additionalBindings.length) + for (var i = 0; i < message.additionalBindings.length; ++i) + $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); + if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody); return writer; }; /** - * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {google.api.IHttpRule} message HttpRule message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - EnumValueOptions.encodeDelimited = function encodeDelimited(message, writer) { + HttpRule.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an EnumValueOptions message from the specified reader or buffer. + * Decodes a HttpRule message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @returns {google.api.HttpRule} HttpRule * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length) { + HttpRule.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.deprecated = reader.bool(); + message.selector = reader.string(); break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + case 2: + message.get = reader.string(); + break; + case 3: + message.put = reader.string(); + break; + case 4: + message.post = reader.string(); + break; + case 5: + message["delete"] = reader.string(); + break; + case 6: + message.patch = reader.string(); + break; + case 8: + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + break; + case 7: + message.body = reader.string(); + break; + case 12: + message.responseBody = reader.string(); + break; + case 11: + if (!(message.additionalBindings && message.additionalBindings.length)) + message.additionalBindings = []; + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); @@ -6587,137 +11266,240 @@ }; /** - * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited. + * Decodes a HttpRule message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @returns {google.api.HttpRule} HttpRule * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decodeDelimited = function decodeDelimited(reader) { + HttpRule.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an EnumValueOptions message. + * Verifies a HttpRule message. * @function verify - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + HttpRule.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var properties = {}; + if (message.selector != null && message.hasOwnProperty("selector")) + if (!$util.isString(message.selector)) + return "selector: string expected"; + if (message.get != null && message.hasOwnProperty("get")) { + properties.pattern = 1; + if (!$util.isString(message.get)) + return "get: string expected"; + } + if (message.put != null && message.hasOwnProperty("put")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.put)) + return "put: string expected"; + } + if (message.post != null && message.hasOwnProperty("post")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.post)) + return "post: string expected"; + } + if (message["delete"] != null && message.hasOwnProperty("delete")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message["delete"])) + return "delete: string expected"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + if (!$util.isString(message.patch)) + return "patch: string expected"; + } + if (message.custom != null && message.hasOwnProperty("custom")) { + if (properties.pattern === 1) + return "pattern: multiple values"; + properties.pattern = 1; + { + var error = $root.google.api.CustomHttpPattern.verify(message.custom); if (error) - return "uninterpretedOption." + error; + return "custom." + error; + } + } + if (message.body != null && message.hasOwnProperty("body")) + if (!$util.isString(message.body)) + return "body: string expected"; + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + if (!$util.isString(message.responseBody)) + return "responseBody: string expected"; + if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) { + if (!Array.isArray(message.additionalBindings)) + return "additionalBindings: array expected"; + for (var i = 0; i < message.additionalBindings.length; ++i) { + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + if (error) + return "additionalBindings." + error; } } return null; }; /** - * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types. + * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static * @param {Object.} object Plain object - * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @returns {google.api.HttpRule} HttpRule */ - EnumValueOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.EnumValueOptions) + HttpRule.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.HttpRule) return object; - var message = new $root.google.protobuf.EnumValueOptions(); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + var message = new $root.google.api.HttpRule(); + if (object.selector != null) + message.selector = String(object.selector); + if (object.get != null) + message.get = String(object.get); + if (object.put != null) + message.put = String(object.put); + if (object.post != null) + message.post = String(object.post); + if (object["delete"] != null) + message["delete"] = String(object["delete"]); + if (object.patch != null) + message.patch = String(object.patch); + if (object.custom != null) { + if (typeof object.custom !== "object") + throw TypeError(".google.api.HttpRule.custom: object expected"); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + } + if (object.body != null) + message.body = String(object.body); + if (object.responseBody != null) + message.responseBody = String(object.responseBody); + if (object.additionalBindings) { + if (!Array.isArray(object.additionalBindings)) + throw TypeError(".google.api.HttpRule.additionalBindings: array expected"); + message.additionalBindings = []; + for (var i = 0; i < object.additionalBindings.length; ++i) { + if (typeof object.additionalBindings[i] !== "object") + throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); } } return message; }; /** - * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified. + * Creates a plain object from a HttpRule message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @static - * @param {google.protobuf.EnumValueOptions} message EnumValueOptions + * @param {google.api.HttpRule} message HttpRule * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - EnumValueOptions.toObject = function toObject(message, options) { + HttpRule.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.arrays || options.defaults) - object.uninterpretedOption = []; - if (options.defaults) - object.deprecated = false; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + object.additionalBindings = []; + if (options.defaults) { + object.selector = ""; + object.body = ""; + object.responseBody = ""; + } + if (message.selector != null && message.hasOwnProperty("selector")) + object.selector = message.selector; + if (message.get != null && message.hasOwnProperty("get")) { + object.get = message.get; + if (options.oneofs) + object.pattern = "get"; + } + if (message.put != null && message.hasOwnProperty("put")) { + object.put = message.put; + if (options.oneofs) + object.pattern = "put"; + } + if (message.post != null && message.hasOwnProperty("post")) { + object.post = message.post; + if (options.oneofs) + object.pattern = "post"; + } + if (message["delete"] != null && message.hasOwnProperty("delete")) { + object["delete"] = message["delete"]; + if (options.oneofs) + object.pattern = "delete"; + } + if (message.patch != null && message.hasOwnProperty("patch")) { + object.patch = message.patch; + if (options.oneofs) + object.pattern = "patch"; + } + if (message.body != null && message.hasOwnProperty("body")) + object.body = message.body; + if (message.custom != null && message.hasOwnProperty("custom")) { + object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options); + if (options.oneofs) + object.pattern = "custom"; + } + if (message.additionalBindings && message.additionalBindings.length) { + object.additionalBindings = []; + for (var j = 0; j < message.additionalBindings.length; ++j) + object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options); } + if (message.responseBody != null && message.hasOwnProperty("responseBody")) + object.responseBody = message.responseBody; return object; }; /** - * Converts this EnumValueOptions to JSON. + * Converts this HttpRule to JSON. * @function toJSON - * @memberof google.protobuf.EnumValueOptions + * @memberof google.api.HttpRule * @instance * @returns {Object.} JSON object */ - EnumValueOptions.prototype.toJSON = function toJSON() { + HttpRule.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return EnumValueOptions; + return HttpRule; })(); - protobuf.ServiceOptions = (function() { + api.CustomHttpPattern = (function() { /** - * Properties of a ServiceOptions. - * @memberof google.protobuf - * @interface IServiceOptions - * @property {boolean|null} [deprecated] ServiceOptions deprecated - * @property {Array.|null} [uninterpretedOption] ServiceOptions uninterpretedOption - * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost - * @property {string|null} [".google.api.oauthScopes"] ServiceOptions .google.api.oauthScopes + * Properties of a CustomHttpPattern. + * @memberof google.api + * @interface ICustomHttpPattern + * @property {string|null} [kind] CustomHttpPattern kind + * @property {string|null} [path] CustomHttpPattern path */ /** - * Constructs a new ServiceOptions. - * @memberof google.protobuf - * @classdesc Represents a ServiceOptions. - * @implements IServiceOptions + * Constructs a new CustomHttpPattern. + * @memberof google.api + * @classdesc Represents a CustomHttpPattern. + * @implements ICustomHttpPattern * @constructor - * @param {google.protobuf.IServiceOptions=} [properties] Properties to set + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set */ - function ServiceOptions(properties) { - this.uninterpretedOption = []; + function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -6725,117 +11507,88 @@ } /** - * ServiceOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.ServiceOptions - * @instance - */ - ServiceOptions.prototype.deprecated = false; - - /** - * ServiceOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.ServiceOptions - * @instance - */ - ServiceOptions.prototype.uninterpretedOption = $util.emptyArray; - - /** - * ServiceOptions .google.api.defaultHost. - * @member {string} .google.api.defaultHost - * @memberof google.protobuf.ServiceOptions + * CustomHttpPattern kind. + * @member {string} kind + * @memberof google.api.CustomHttpPattern * @instance */ - ServiceOptions.prototype[".google.api.defaultHost"] = ""; + CustomHttpPattern.prototype.kind = ""; /** - * ServiceOptions .google.api.oauthScopes. - * @member {string} .google.api.oauthScopes - * @memberof google.protobuf.ServiceOptions + * CustomHttpPattern path. + * @member {string} path + * @memberof google.api.CustomHttpPattern * @instance */ - ServiceOptions.prototype[".google.api.oauthScopes"] = ""; + CustomHttpPattern.prototype.path = ""; /** - * Creates a new ServiceOptions instance using the specified properties. + * Creates a new CustomHttpPattern instance using the specified properties. * @function create - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.IServiceOptions=} [properties] Properties to set - * @returns {google.protobuf.ServiceOptions} ServiceOptions instance + * @param {google.api.ICustomHttpPattern=} [properties] Properties to set + * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance */ - ServiceOptions.create = function create(properties) { - return new ServiceOptions(properties); + CustomHttpPattern.create = function create(properties) { + return new CustomHttpPattern(properties); }; /** - * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. * @function encode - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ServiceOptions.encode = function encode(message, writer) { + CustomHttpPattern.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.defaultHost"] != null && Object.hasOwnProperty.call(message, ".google.api.defaultHost")) - writer.uint32(/* id 1049, wireType 2 =*/8394).string(message[".google.api.defaultHost"]); - if (message[".google.api.oauthScopes"] != null && Object.hasOwnProperty.call(message, ".google.api.oauthScopes")) - writer.uint32(/* id 1050, wireType 2 =*/8402).string(message[".google.api.oauthScopes"]); + if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); + if (message.path != null && Object.hasOwnProperty.call(message, "path")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.path); return writer; }; /** - * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ServiceOptions.encodeDelimited = function encodeDelimited(message, writer) { + CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ServiceOptions message from the specified reader or buffer. + * Decodes a CustomHttpPattern message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @returns {google.api.CustomHttpPattern} CustomHttpPattern * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length) { + CustomHttpPattern.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 33: - message.deprecated = reader.bool(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 1049: - message[".google.api.defaultHost"] = reader.string(); + case 1: + message.kind = reader.string(); break; - case 1050: - message[".google.api.oauthScopes"] = reader.string(); + case 2: + message.path = reader.string(); break; default: reader.skipType(tag & 7); @@ -6846,156 +11599,129 @@ }; /** - * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. + * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @returns {google.api.CustomHttpPattern} CustomHttpPattern * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decodeDelimited = function decodeDelimited(reader) { + CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ServiceOptions message. + * Verifies a CustomHttpPattern message. * @function verify - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); - if (error) - return "uninterpretedOption." + error; - } - } - if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) - if (!$util.isString(message[".google.api.defaultHost"])) - return ".google.api.defaultHost: string expected"; - if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) - if (!$util.isString(message[".google.api.oauthScopes"])) - return ".google.api.oauthScopes: string expected"; + if (message.kind != null && message.hasOwnProperty("kind")) + if (!$util.isString(message.kind)) + return "kind: string expected"; + if (message.path != null && message.hasOwnProperty("path")) + if (!$util.isString(message.path)) + return "path: string expected"; return null; }; /** - * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. + * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static * @param {Object.} object Plain object - * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - ServiceOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.ServiceOptions) + CustomHttpPattern.fromObject = function fromObject(object) { + if (object instanceof $root.google.api.CustomHttpPattern) return object; - var message = new $root.google.protobuf.ServiceOptions(); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); - } - } - if (object[".google.api.defaultHost"] != null) - message[".google.api.defaultHost"] = String(object[".google.api.defaultHost"]); - if (object[".google.api.oauthScopes"] != null) - message[".google.api.oauthScopes"] = String(object[".google.api.oauthScopes"]); + var message = new $root.google.api.CustomHttpPattern(); + if (object.kind != null) + message.kind = String(object.kind); + if (object.path != null) + message.path = String(object.path); return message; }; /** - * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified. + * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @static - * @param {google.protobuf.ServiceOptions} message ServiceOptions + * @param {google.api.CustomHttpPattern} message CustomHttpPattern * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ServiceOptions.toObject = function toObject(message, options) { + CustomHttpPattern.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.uninterpretedOption = []; if (options.defaults) { - object.deprecated = false; - object[".google.api.defaultHost"] = ""; - object[".google.api.oauthScopes"] = ""; - } - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) - object[".google.api.defaultHost"] = message[".google.api.defaultHost"]; - if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) - object[".google.api.oauthScopes"] = message[".google.api.oauthScopes"]; + object.kind = ""; + object.path = ""; + } + if (message.kind != null && message.hasOwnProperty("kind")) + object.kind = message.kind; + if (message.path != null && message.hasOwnProperty("path")) + object.path = message.path; return object; }; /** - * Converts this ServiceOptions to JSON. + * Converts this CustomHttpPattern to JSON. * @function toJSON - * @memberof google.protobuf.ServiceOptions + * @memberof google.api.CustomHttpPattern * @instance * @returns {Object.} JSON object */ - ServiceOptions.prototype.toJSON = function toJSON() { + CustomHttpPattern.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ServiceOptions; + return CustomHttpPattern; })(); - protobuf.MethodOptions = (function() { + return api; + })(); + + google.protobuf = (function() { + + /** + * Namespace protobuf. + * @memberof google + * @namespace + */ + var protobuf = {}; + + protobuf.FileDescriptorSet = (function() { /** - * Properties of a MethodOptions. + * Properties of a FileDescriptorSet. * @memberof google.protobuf - * @interface IMethodOptions - * @property {boolean|null} [deprecated] MethodOptions deprecated - * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel - * @property {Array.|null} [uninterpretedOption] MethodOptions uninterpretedOption - * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http - * @property {Array.|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature + * @interface IFileDescriptorSet + * @property {Array.|null} [file] FileDescriptorSet file */ /** - * Constructs a new MethodOptions. + * Constructs a new FileDescriptorSet. * @memberof google.protobuf - * @classdesc Represents a MethodOptions. - * @implements IMethodOptions + * @classdesc Represents a FileDescriptorSet. + * @implements IFileDescriptorSet * @constructor - * @param {google.protobuf.IMethodOptions=} [properties] Properties to set + * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set */ - function MethodOptions(properties) { - this.uninterpretedOption = []; - this[".google.api.methodSignature"] = []; + function FileDescriptorSet(properties) { + this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -7003,133 +11729,78 @@ } /** - * MethodOptions deprecated. - * @member {boolean} deprecated - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype.deprecated = false; - - /** - * MethodOptions idempotencyLevel. - * @member {google.protobuf.MethodOptions.IdempotencyLevel} idempotencyLevel - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype.idempotencyLevel = 0; - - /** - * MethodOptions uninterpretedOption. - * @member {Array.} uninterpretedOption - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype.uninterpretedOption = $util.emptyArray; - - /** - * MethodOptions .google.api.http. - * @member {google.api.IHttpRule|null|undefined} .google.api.http - * @memberof google.protobuf.MethodOptions - * @instance - */ - MethodOptions.prototype[".google.api.http"] = null; - - /** - * MethodOptions .google.api.methodSignature. - * @member {Array.} .google.api.methodSignature - * @memberof google.protobuf.MethodOptions + * FileDescriptorSet file. + * @member {Array.} file + * @memberof google.protobuf.FileDescriptorSet * @instance */ - MethodOptions.prototype[".google.api.methodSignature"] = $util.emptyArray; + FileDescriptorSet.prototype.file = $util.emptyArray; /** - * Creates a new MethodOptions instance using the specified properties. + * Creates a new FileDescriptorSet instance using the specified properties. * @function create - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static - * @param {google.protobuf.IMethodOptions=} [properties] Properties to set - * @returns {google.protobuf.MethodOptions} MethodOptions instance + * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet instance */ - MethodOptions.create = function create(properties) { - return new MethodOptions(properties); + FileDescriptorSet.create = function create(properties) { + return new FileDescriptorSet(properties); }; /** - * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. * @function encode - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static - * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MethodOptions.encode = function encode(message, writer) { + FileDescriptorSet.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) - writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); - if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel")) - writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel); - if (message.uninterpretedOption != null && message.uninterpretedOption.length) - for (var i = 0; i < message.uninterpretedOption.length; ++i) - $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); - if (message[".google.api.methodSignature"] != null && message[".google.api.methodSignature"].length) - for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) - writer.uint32(/* id 1051, wireType 2 =*/8410).string(message[".google.api.methodSignature"][i]); - if (message[".google.api.http"] != null && Object.hasOwnProperty.call(message, ".google.api.http")) - $root.google.api.HttpRule.encode(message[".google.api.http"], writer.uint32(/* id 72295728, wireType 2 =*/578365826).fork()).ldelim(); + if (message.file != null && message.file.length) + for (var i = 0; i < message.file.length; ++i) + $root.google.protobuf.FileDescriptorProto.encode(message.file[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static - * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MethodOptions.encodeDelimited = function encodeDelimited(message, writer) { + FileDescriptorSet.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a MethodOptions message from the specified reader or buffer. + * Decodes a FileDescriptorSet message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.MethodOptions} MethodOptions + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length) { + FileDescriptorSet.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { - case 33: - message.deprecated = reader.bool(); - break; - case 34: - message.idempotencyLevel = reader.int32(); - break; - case 999: - if (!(message.uninterpretedOption && message.uninterpretedOption.length)) - message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); - break; - case 72295728: - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); - break; - case 1051: - if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length)) - message[".google.api.methodSignature"] = []; - message[".google.api.methodSignature"].push(reader.string()); + case 1: + if (!(message.file && message.file.length)) + message.file = []; + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); @@ -7140,217 +11811,142 @@ }; /** - * Decodes a MethodOptions message from the specified reader or buffer, length delimited. + * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.MethodOptions} MethodOptions + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decodeDelimited = function decodeDelimited(reader) { + FileDescriptorSet.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a MethodOptions message. + * Verifies a FileDescriptorSet message. * @function verify - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - if (typeof message.deprecated !== "boolean") - return "deprecated: boolean expected"; - if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) - switch (message.idempotencyLevel) { - default: - return "idempotencyLevel: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { - if (!Array.isArray(message.uninterpretedOption)) - return "uninterpretedOption: array expected"; - for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (message.file != null && message.hasOwnProperty("file")) { + if (!Array.isArray(message.file)) + return "file: array expected"; + for (var i = 0; i < message.file.length; ++i) { + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); if (error) - return "uninterpretedOption." + error; + return "file." + error; } } - if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); - if (error) - return ".google.api.http." + error; - } - if (message[".google.api.methodSignature"] != null && message.hasOwnProperty(".google.api.methodSignature")) { - if (!Array.isArray(message[".google.api.methodSignature"])) - return ".google.api.methodSignature: array expected"; - for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) - if (!$util.isString(message[".google.api.methodSignature"][i])) - return ".google.api.methodSignature: string[] expected"; - } return null; }; /** - * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. + * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static * @param {Object.} object Plain object - * @returns {google.protobuf.MethodOptions} MethodOptions + * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - MethodOptions.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.MethodOptions) + FileDescriptorSet.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; - var message = new $root.google.protobuf.MethodOptions(); - if (object.deprecated != null) - message.deprecated = Boolean(object.deprecated); - switch (object.idempotencyLevel) { - case "IDEMPOTENCY_UNKNOWN": - case 0: - message.idempotencyLevel = 0; - break; - case "NO_SIDE_EFFECTS": - case 1: - message.idempotencyLevel = 1; - break; - case "IDEMPOTENT": - case 2: - message.idempotencyLevel = 2; - break; - } - if (object.uninterpretedOption) { - if (!Array.isArray(object.uninterpretedOption)) - throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected"); - message.uninterpretedOption = []; - for (var i = 0; i < object.uninterpretedOption.length; ++i) { - if (typeof object.uninterpretedOption[i] !== "object") - throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + var message = new $root.google.protobuf.FileDescriptorSet(); + if (object.file) { + if (!Array.isArray(object.file)) + throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected"); + message.file = []; + for (var i = 0; i < object.file.length; ++i) { + if (typeof object.file[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); } } - if (object[".google.api.http"] != null) { - if (typeof object[".google.api.http"] !== "object") - throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); - } - if (object[".google.api.methodSignature"]) { - if (!Array.isArray(object[".google.api.methodSignature"])) - throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected"); - message[".google.api.methodSignature"] = []; - for (var i = 0; i < object[".google.api.methodSignature"].length; ++i) - message[".google.api.methodSignature"][i] = String(object[".google.api.methodSignature"][i]); - } return message; }; /** - * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. + * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @static - * @param {google.protobuf.MethodOptions} message MethodOptions + * @param {google.protobuf.FileDescriptorSet} message FileDescriptorSet * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - MethodOptions.toObject = function toObject(message, options) { + FileDescriptorSet.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) { - object.uninterpretedOption = []; - object[".google.api.methodSignature"] = []; - } - if (options.defaults) { - object.deprecated = false; - object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0; - object[".google.api.http"] = null; - } - if (message.deprecated != null && message.hasOwnProperty("deprecated")) - object.deprecated = message.deprecated; - if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) - object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel; - if (message.uninterpretedOption && message.uninterpretedOption.length) { - object.uninterpretedOption = []; - for (var j = 0; j < message.uninterpretedOption.length; ++j) - object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); - } - if (message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length) { - object[".google.api.methodSignature"] = []; - for (var j = 0; j < message[".google.api.methodSignature"].length; ++j) - object[".google.api.methodSignature"][j] = message[".google.api.methodSignature"][j]; + if (options.arrays || options.defaults) + object.file = []; + if (message.file && message.file.length) { + object.file = []; + for (var j = 0; j < message.file.length; ++j) + object.file[j] = $root.google.protobuf.FileDescriptorProto.toObject(message.file[j], options); } - if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) - object[".google.api.http"] = $root.google.api.HttpRule.toObject(message[".google.api.http"], options); return object; }; /** - * Converts this MethodOptions to JSON. + * Converts this FileDescriptorSet to JSON. * @function toJSON - * @memberof google.protobuf.MethodOptions + * @memberof google.protobuf.FileDescriptorSet * @instance * @returns {Object.} JSON object */ - MethodOptions.prototype.toJSON = function toJSON() { + FileDescriptorSet.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - /** - * IdempotencyLevel enum. - * @name google.protobuf.MethodOptions.IdempotencyLevel - * @enum {number} - * @property {number} IDEMPOTENCY_UNKNOWN=0 IDEMPOTENCY_UNKNOWN value - * @property {number} NO_SIDE_EFFECTS=1 NO_SIDE_EFFECTS value - * @property {number} IDEMPOTENT=2 IDEMPOTENT value - */ - MethodOptions.IdempotencyLevel = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "IDEMPOTENCY_UNKNOWN"] = 0; - values[valuesById[1] = "NO_SIDE_EFFECTS"] = 1; - values[valuesById[2] = "IDEMPOTENT"] = 2; - return values; - })(); - - return MethodOptions; + return FileDescriptorSet; })(); - protobuf.UninterpretedOption = (function() { + protobuf.FileDescriptorProto = (function() { /** - * Properties of an UninterpretedOption. + * Properties of a FileDescriptorProto. * @memberof google.protobuf - * @interface IUninterpretedOption - * @property {Array.|null} [name] UninterpretedOption name - * @property {string|null} [identifierValue] UninterpretedOption identifierValue - * @property {number|Long|null} [positiveIntValue] UninterpretedOption positiveIntValue - * @property {number|Long|null} [negativeIntValue] UninterpretedOption negativeIntValue - * @property {number|null} [doubleValue] UninterpretedOption doubleValue - * @property {Uint8Array|null} [stringValue] UninterpretedOption stringValue - * @property {string|null} [aggregateValue] UninterpretedOption aggregateValue + * @interface IFileDescriptorProto + * @property {string|null} [name] FileDescriptorProto name + * @property {string|null} ["package"] FileDescriptorProto package + * @property {Array.|null} [dependency] FileDescriptorProto dependency + * @property {Array.|null} [publicDependency] FileDescriptorProto publicDependency + * @property {Array.|null} [weakDependency] FileDescriptorProto weakDependency + * @property {Array.|null} [messageType] FileDescriptorProto messageType + * @property {Array.|null} [enumType] FileDescriptorProto enumType + * @property {Array.|null} [service] FileDescriptorProto service + * @property {Array.|null} [extension] FileDescriptorProto extension + * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options + * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo + * @property {string|null} [syntax] FileDescriptorProto syntax */ /** - * Constructs a new UninterpretedOption. + * Constructs a new FileDescriptorProto. * @memberof google.protobuf - * @classdesc Represents an UninterpretedOption. - * @implements IUninterpretedOption + * @classdesc Represents a FileDescriptorProto. + * @implements IFileDescriptorProto * @constructor - * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set + * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set */ - function UninterpretedOption(properties) { - this.name = []; + function FileDescriptorProto(properties) { + this.dependency = []; + this.publicDependency = []; + this.weakDependency = []; + this.messageType = []; + this.enumType = []; + this.service = []; + this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -7358,582 +11954,582 @@ } /** - * UninterpretedOption name. - * @member {Array.} name - * @memberof google.protobuf.UninterpretedOption + * FileDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.FileDescriptorProto * @instance */ - UninterpretedOption.prototype.name = $util.emptyArray; + FileDescriptorProto.prototype.name = ""; /** - * UninterpretedOption identifierValue. - * @member {string} identifierValue - * @memberof google.protobuf.UninterpretedOption + * FileDescriptorProto package. + * @member {string} package + * @memberof google.protobuf.FileDescriptorProto * @instance */ - UninterpretedOption.prototype.identifierValue = ""; + FileDescriptorProto.prototype["package"] = ""; /** - * UninterpretedOption positiveIntValue. - * @member {number|Long} positiveIntValue - * @memberof google.protobuf.UninterpretedOption + * FileDescriptorProto dependency. + * @member {Array.} dependency + * @memberof google.protobuf.FileDescriptorProto * @instance */ - UninterpretedOption.prototype.positiveIntValue = $util.Long ? $util.Long.fromBits(0,0,true) : 0; + FileDescriptorProto.prototype.dependency = $util.emptyArray; /** - * UninterpretedOption negativeIntValue. - * @member {number|Long} negativeIntValue - * @memberof google.protobuf.UninterpretedOption + * FileDescriptorProto publicDependency. + * @member {Array.} publicDependency + * @memberof google.protobuf.FileDescriptorProto * @instance */ - UninterpretedOption.prototype.negativeIntValue = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + FileDescriptorProto.prototype.publicDependency = $util.emptyArray; /** - * UninterpretedOption doubleValue. - * @member {number} doubleValue - * @memberof google.protobuf.UninterpretedOption + * FileDescriptorProto weakDependency. + * @member {Array.} weakDependency + * @memberof google.protobuf.FileDescriptorProto * @instance */ - UninterpretedOption.prototype.doubleValue = 0; + FileDescriptorProto.prototype.weakDependency = $util.emptyArray; /** - * UninterpretedOption stringValue. - * @member {Uint8Array} stringValue - * @memberof google.protobuf.UninterpretedOption + * FileDescriptorProto messageType. + * @member {Array.} messageType + * @memberof google.protobuf.FileDescriptorProto * @instance */ - UninterpretedOption.prototype.stringValue = $util.newBuffer([]); + FileDescriptorProto.prototype.messageType = $util.emptyArray; /** - * UninterpretedOption aggregateValue. - * @member {string} aggregateValue - * @memberof google.protobuf.UninterpretedOption + * FileDescriptorProto enumType. + * @member {Array.} enumType + * @memberof google.protobuf.FileDescriptorProto * @instance */ - UninterpretedOption.prototype.aggregateValue = ""; + FileDescriptorProto.prototype.enumType = $util.emptyArray; /** - * Creates a new UninterpretedOption instance using the specified properties. + * FileDescriptorProto service. + * @member {Array.} service + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.service = $util.emptyArray; + + /** + * FileDescriptorProto extension. + * @member {Array.} extension + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.extension = $util.emptyArray; + + /** + * FileDescriptorProto options. + * @member {google.protobuf.IFileOptions|null|undefined} options + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.options = null; + + /** + * FileDescriptorProto sourceCodeInfo. + * @member {google.protobuf.ISourceCodeInfo|null|undefined} sourceCodeInfo + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.sourceCodeInfo = null; + + /** + * FileDescriptorProto syntax. + * @member {string} syntax + * @memberof google.protobuf.FileDescriptorProto + * @instance + */ + FileDescriptorProto.prototype.syntax = ""; + + /** + * Creates a new FileDescriptorProto instance using the specified properties. * @function create - * @memberof google.protobuf.UninterpretedOption + * @memberof google.protobuf.FileDescriptorProto * @static - * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption instance + * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto instance */ - UninterpretedOption.create = function create(properties) { - return new UninterpretedOption(properties); + FileDescriptorProto.create = function create(properties) { + return new FileDescriptorProto(properties); }; /** - * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. * @function encode - * @memberof google.protobuf.UninterpretedOption + * @memberof google.protobuf.FileDescriptorProto * @static - * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UninterpretedOption.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && message.name.length) - for (var i = 0; i < message.name.length; ++i) - $root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.identifierValue != null && Object.hasOwnProperty.call(message, "identifierValue")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.identifierValue); - if (message.positiveIntValue != null && Object.hasOwnProperty.call(message, "positiveIntValue")) - writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.positiveIntValue); - if (message.negativeIntValue != null && Object.hasOwnProperty.call(message, "negativeIntValue")) - writer.uint32(/* id 5, wireType 0 =*/40).int64(message.negativeIntValue); - if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue")) - writer.uint32(/* id 6, wireType 1 =*/49).double(message.doubleValue); - if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) - writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.stringValue); - if (message.aggregateValue != null && Object.hasOwnProperty.call(message, "aggregateValue")) - writer.uint32(/* id 8, wireType 2 =*/66).string(message.aggregateValue); + * @returns {$protobuf.Writer} Writer + */ + FileDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message["package"] != null && Object.hasOwnProperty.call(message, "package")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message["package"]); + if (message.dependency != null && message.dependency.length) + for (var i = 0; i < message.dependency.length; ++i) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.dependency[i]); + if (message.messageType != null && message.messageType.length) + for (var i = 0; i < message.messageType.length; ++i) + $root.google.protobuf.DescriptorProto.encode(message.messageType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.enumType != null && message.enumType.length) + for (var i = 0; i < message.enumType.length; ++i) + $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.service != null && message.service.length) + for (var i = 0; i < message.service.length; ++i) + $root.google.protobuf.ServiceDescriptorProto.encode(message.service[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.extension != null && message.extension.length) + for (var i = 0; i < message.extension.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.FileOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.sourceCodeInfo != null && Object.hasOwnProperty.call(message, "sourceCodeInfo")) + $root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.publicDependency != null && message.publicDependency.length) + for (var i = 0; i < message.publicDependency.length; ++i) + writer.uint32(/* id 10, wireType 0 =*/80).int32(message.publicDependency[i]); + if (message.weakDependency != null && message.weakDependency.length) + for (var i = 0; i < message.weakDependency.length; ++i) + writer.uint32(/* id 11, wireType 0 =*/88).int32(message.weakDependency[i]); + if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax")) + writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax); return writer; }; /** - * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.UninterpretedOption + * @memberof google.protobuf.FileDescriptorProto * @static - * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - UninterpretedOption.encodeDelimited = function encodeDelimited(message, writer) { + FileDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an UninterpretedOption message from the specified reader or buffer. + * Decodes a FileDescriptorProto message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.UninterpretedOption + * @memberof google.protobuf.FileDescriptorProto * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length) { + FileDescriptorProto.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; case 2: - if (!(message.name && message.name.length)) - message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message["package"] = reader.string(); break; case 3: - message.identifierValue = reader.string(); + if (!(message.dependency && message.dependency.length)) + message.dependency = []; + message.dependency.push(reader.string()); + break; + case 10: + if (!(message.publicDependency && message.publicDependency.length)) + message.publicDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.publicDependency.push(reader.int32()); + } else + message.publicDependency.push(reader.int32()); + break; + case 11: + if (!(message.weakDependency && message.weakDependency.length)) + message.weakDependency = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.weakDependency.push(reader.int32()); + } else + message.weakDependency.push(reader.int32()); break; case 4: - message.positiveIntValue = reader.uint64(); + if (!(message.messageType && message.messageType.length)) + message.messageType = []; + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); break; case 5: - message.negativeIntValue = reader.int64(); + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); break; case 6: - message.doubleValue = reader.double(); + if (!(message.service && message.service.length)) + message.service = []; + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); break; case 7: - message.stringValue = reader.bytes(); - break; - case 8: - message.aggregateValue = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UninterpretedOption.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an UninterpretedOption message. - * @function verify - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UninterpretedOption.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) { - if (!Array.isArray(message.name)) - return "name: array expected"; - for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); - if (error) - return "name." + error; - } - } - if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) - if (!$util.isString(message.identifierValue)) - return "identifierValue: string expected"; - if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) - if (!$util.isInteger(message.positiveIntValue) && !(message.positiveIntValue && $util.isInteger(message.positiveIntValue.low) && $util.isInteger(message.positiveIntValue.high))) - return "positiveIntValue: integer|Long expected"; - if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) - if (!$util.isInteger(message.negativeIntValue) && !(message.negativeIntValue && $util.isInteger(message.negativeIntValue.low) && $util.isInteger(message.negativeIntValue.high))) - return "negativeIntValue: integer|Long expected"; - if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) - if (typeof message.doubleValue !== "number") - return "doubleValue: number expected"; - if (message.stringValue != null && message.hasOwnProperty("stringValue")) - if (!(message.stringValue && typeof message.stringValue.length === "number" || $util.isString(message.stringValue))) - return "stringValue: buffer expected"; - if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) - if (!$util.isString(message.aggregateValue)) - return "aggregateValue: string expected"; - return null; - }; - - /** - * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.UninterpretedOption} UninterpretedOption - */ - UninterpretedOption.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.UninterpretedOption) - return object; - var message = new $root.google.protobuf.UninterpretedOption(); - if (object.name) { - if (!Array.isArray(object.name)) - throw TypeError(".google.protobuf.UninterpretedOption.name: array expected"); - message.name = []; - for (var i = 0; i < object.name.length; ++i) { - if (typeof object.name[i] !== "object") - throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); - } - } - if (object.identifierValue != null) - message.identifierValue = String(object.identifierValue); - if (object.positiveIntValue != null) - if ($util.Long) - (message.positiveIntValue = $util.Long.fromValue(object.positiveIntValue)).unsigned = true; - else if (typeof object.positiveIntValue === "string") - message.positiveIntValue = parseInt(object.positiveIntValue, 10); - else if (typeof object.positiveIntValue === "number") - message.positiveIntValue = object.positiveIntValue; - else if (typeof object.positiveIntValue === "object") - message.positiveIntValue = new $util.LongBits(object.positiveIntValue.low >>> 0, object.positiveIntValue.high >>> 0).toNumber(true); - if (object.negativeIntValue != null) - if ($util.Long) - (message.negativeIntValue = $util.Long.fromValue(object.negativeIntValue)).unsigned = false; - else if (typeof object.negativeIntValue === "string") - message.negativeIntValue = parseInt(object.negativeIntValue, 10); - else if (typeof object.negativeIntValue === "number") - message.negativeIntValue = object.negativeIntValue; - else if (typeof object.negativeIntValue === "object") - message.negativeIntValue = new $util.LongBits(object.negativeIntValue.low >>> 0, object.negativeIntValue.high >>> 0).toNumber(); - if (object.doubleValue != null) - message.doubleValue = Number(object.doubleValue); - if (object.stringValue != null) - if (typeof object.stringValue === "string") - $util.base64.decode(object.stringValue, message.stringValue = $util.newBuffer($util.base64.length(object.stringValue)), 0); - else if (object.stringValue.length) - message.stringValue = object.stringValue; - if (object.aggregateValue != null) - message.aggregateValue = String(object.aggregateValue); - return message; - }; - - /** - * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.UninterpretedOption - * @static - * @param {google.protobuf.UninterpretedOption} message UninterpretedOption - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UninterpretedOption.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.name = []; - if (options.defaults) { - object.identifierValue = ""; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.positiveIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.positiveIntValue = options.longs === String ? "0" : 0; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.negativeIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.negativeIntValue = options.longs === String ? "0" : 0; - object.doubleValue = 0; - if (options.bytes === String) - object.stringValue = ""; - else { - object.stringValue = []; - if (options.bytes !== Array) - object.stringValue = $util.newBuffer(object.stringValue); + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 8: + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + break; + case 9: + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + break; + case 12: + message.syntax = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; } - object.aggregateValue = ""; } - if (message.name && message.name.length) { - object.name = []; - for (var j = 0; j < message.name.length; ++j) - object.name[j] = $root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j], options); - } - if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) - object.identifierValue = message.identifierValue; - if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) - if (typeof message.positiveIntValue === "number") - object.positiveIntValue = options.longs === String ? String(message.positiveIntValue) : message.positiveIntValue; - else - object.positiveIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.positiveIntValue) : options.longs === Number ? new $util.LongBits(message.positiveIntValue.low >>> 0, message.positiveIntValue.high >>> 0).toNumber(true) : message.positiveIntValue; - if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) - if (typeof message.negativeIntValue === "number") - object.negativeIntValue = options.longs === String ? String(message.negativeIntValue) : message.negativeIntValue; - else - object.negativeIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.negativeIntValue) : options.longs === Number ? new $util.LongBits(message.negativeIntValue.low >>> 0, message.negativeIntValue.high >>> 0).toNumber() : message.negativeIntValue; - if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) - object.doubleValue = options.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue; - if (message.stringValue != null && message.hasOwnProperty("stringValue")) - object.stringValue = options.bytes === String ? $util.base64.encode(message.stringValue, 0, message.stringValue.length) : options.bytes === Array ? Array.prototype.slice.call(message.stringValue) : message.stringValue; - if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) - object.aggregateValue = message.aggregateValue; - return object; + return message; }; /** - * Converts this UninterpretedOption to JSON. - * @function toJSON - * @memberof google.protobuf.UninterpretedOption - * @instance - * @returns {Object.} JSON object + * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + FileDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); }; - UninterpretedOption.NamePart = (function() { - - /** - * Properties of a NamePart. - * @memberof google.protobuf.UninterpretedOption - * @interface INamePart - * @property {string} namePart NamePart namePart - * @property {boolean} isExtension NamePart isExtension - */ - - /** - * Constructs a new NamePart. - * @memberof google.protobuf.UninterpretedOption - * @classdesc Represents a NamePart. - * @implements INamePart - * @constructor - * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set - */ - function NamePart(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * NamePart namePart. - * @member {string} namePart - * @memberof google.protobuf.UninterpretedOption.NamePart - * @instance - */ - NamePart.prototype.namePart = ""; - - /** - * NamePart isExtension. - * @member {boolean} isExtension - * @memberof google.protobuf.UninterpretedOption.NamePart - * @instance - */ - NamePart.prototype.isExtension = false; - - /** - * Creates a new NamePart instance using the specified properties. - * @function create - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance - */ - NamePart.create = function create(properties) { - return new NamePart(properties); - }; - - /** - * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. - * @function encode - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - NamePart.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart); - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension); - return writer; - }; - - /** - * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - NamePart.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a NamePart message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - NamePart.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.namePart = reader.string(); - break; - case 2: - message.isExtension = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - if (!message.hasOwnProperty("namePart")) - throw $util.ProtocolError("missing required 'namePart'", { instance: message }); - if (!message.hasOwnProperty("isExtension")) - throw $util.ProtocolError("missing required 'isExtension'", { instance: message }); - return message; - }; - - /** - * Decodes a NamePart message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - NamePart.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a NamePart message. - * @function verify - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - NamePart.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (!$util.isString(message.namePart)) - return "namePart: string expected"; - if (typeof message.isExtension !== "boolean") - return "isExtension: boolean expected"; - return null; - }; - - /** - * Creates a NamePart message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart - */ - NamePart.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) - return object; - var message = new $root.google.protobuf.UninterpretedOption.NamePart(); - if (object.namePart != null) - message.namePart = String(object.namePart); - if (object.isExtension != null) - message.isExtension = Boolean(object.isExtension); - return message; - }; - - /** - * Creates a plain object from a NamePart message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.UninterpretedOption.NamePart - * @static - * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - NamePart.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.namePart = ""; - object.isExtension = false; + /** + * Verifies a FileDescriptorProto message. + * @function verify + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message["package"] != null && message.hasOwnProperty("package")) + if (!$util.isString(message["package"])) + return "package: string expected"; + if (message.dependency != null && message.hasOwnProperty("dependency")) { + if (!Array.isArray(message.dependency)) + return "dependency: array expected"; + for (var i = 0; i < message.dependency.length; ++i) + if (!$util.isString(message.dependency[i])) + return "dependency: string[] expected"; + } + if (message.publicDependency != null && message.hasOwnProperty("publicDependency")) { + if (!Array.isArray(message.publicDependency)) + return "publicDependency: array expected"; + for (var i = 0; i < message.publicDependency.length; ++i) + if (!$util.isInteger(message.publicDependency[i])) + return "publicDependency: integer[] expected"; + } + if (message.weakDependency != null && message.hasOwnProperty("weakDependency")) { + if (!Array.isArray(message.weakDependency)) + return "weakDependency: array expected"; + for (var i = 0; i < message.weakDependency.length; ++i) + if (!$util.isInteger(message.weakDependency[i])) + return "weakDependency: integer[] expected"; + } + if (message.messageType != null && message.hasOwnProperty("messageType")) { + if (!Array.isArray(message.messageType)) + return "messageType: array expected"; + for (var i = 0; i < message.messageType.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + if (error) + return "messageType." + error; } - if (message.namePart != null && message.hasOwnProperty("namePart")) - object.namePart = message.namePart; - if (message.isExtension != null && message.hasOwnProperty("isExtension")) - object.isExtension = message.isExtension; + } + if (message.enumType != null && message.hasOwnProperty("enumType")) { + if (!Array.isArray(message.enumType)) + return "enumType: array expected"; + for (var i = 0; i < message.enumType.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + if (error) + return "enumType." + error; + } + } + if (message.service != null && message.hasOwnProperty("service")) { + if (!Array.isArray(message.service)) + return "service: array expected"; + for (var i = 0; i < message.service.length; ++i) { + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + if (error) + return "service." + error; + } + } + if (message.extension != null && message.hasOwnProperty("extension")) { + if (!Array.isArray(message.extension)) + return "extension: array expected"; + for (var i = 0; i < message.extension.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + if (error) + return "extension." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.FileOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + if (error) + return "sourceCodeInfo." + error; + } + if (message.syntax != null && message.hasOwnProperty("syntax")) + if (!$util.isString(message.syntax)) + return "syntax: string expected"; + return null; + }; + + /** + * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto + */ + FileDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; - }; + var message = new $root.google.protobuf.FileDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object["package"] != null) + message["package"] = String(object["package"]); + if (object.dependency) { + if (!Array.isArray(object.dependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected"); + message.dependency = []; + for (var i = 0; i < object.dependency.length; ++i) + message.dependency[i] = String(object.dependency[i]); + } + if (object.publicDependency) { + if (!Array.isArray(object.publicDependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected"); + message.publicDependency = []; + for (var i = 0; i < object.publicDependency.length; ++i) + message.publicDependency[i] = object.publicDependency[i] | 0; + } + if (object.weakDependency) { + if (!Array.isArray(object.weakDependency)) + throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected"); + message.weakDependency = []; + for (var i = 0; i < object.weakDependency.length; ++i) + message.weakDependency[i] = object.weakDependency[i] | 0; + } + if (object.messageType) { + if (!Array.isArray(object.messageType)) + throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected"); + message.messageType = []; + for (var i = 0; i < object.messageType.length; ++i) { + if (typeof object.messageType[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + } + } + if (object.enumType) { + if (!Array.isArray(object.enumType)) + throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected"); + message.enumType = []; + for (var i = 0; i < object.enumType.length; ++i) { + if (typeof object.enumType[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + } + } + if (object.service) { + if (!Array.isArray(object.service)) + throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected"); + message.service = []; + for (var i = 0; i < object.service.length; ++i) { + if (typeof object.service[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + } + } + if (object.extension) { + if (!Array.isArray(object.extension)) + throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected"); + message.extension = []; + for (var i = 0; i < object.extension.length; ++i) { + if (typeof object.extension[i] !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + } + if (object.sourceCodeInfo != null) { + if (typeof object.sourceCodeInfo !== "object") + throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + } + if (object.syntax != null) + message.syntax = String(object.syntax); + return message; + }; - /** - * Converts this NamePart to JSON. - * @function toJSON - * @memberof google.protobuf.UninterpretedOption.NamePart - * @instance - * @returns {Object.} JSON object - */ - NamePart.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileDescriptorProto + * @static + * @param {google.protobuf.FileDescriptorProto} message FileDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.dependency = []; + object.messageType = []; + object.enumType = []; + object.service = []; + object.extension = []; + object.publicDependency = []; + object.weakDependency = []; + } + if (options.defaults) { + object.name = ""; + object["package"] = ""; + object.options = null; + object.sourceCodeInfo = null; + object.syntax = ""; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message["package"] != null && message.hasOwnProperty("package")) + object["package"] = message["package"]; + if (message.dependency && message.dependency.length) { + object.dependency = []; + for (var j = 0; j < message.dependency.length; ++j) + object.dependency[j] = message.dependency[j]; + } + if (message.messageType && message.messageType.length) { + object.messageType = []; + for (var j = 0; j < message.messageType.length; ++j) + object.messageType[j] = $root.google.protobuf.DescriptorProto.toObject(message.messageType[j], options); + } + if (message.enumType && message.enumType.length) { + object.enumType = []; + for (var j = 0; j < message.enumType.length; ++j) + object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); + } + if (message.service && message.service.length) { + object.service = []; + for (var j = 0; j < message.service.length; ++j) + object.service[j] = $root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j], options); + } + if (message.extension && message.extension.length) { + object.extension = []; + for (var j = 0; j < message.extension.length; ++j) + object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.FileOptions.toObject(message.options, options); + if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) + object.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo, options); + if (message.publicDependency && message.publicDependency.length) { + object.publicDependency = []; + for (var j = 0; j < message.publicDependency.length; ++j) + object.publicDependency[j] = message.publicDependency[j]; + } + if (message.weakDependency && message.weakDependency.length) { + object.weakDependency = []; + for (var j = 0; j < message.weakDependency.length; ++j) + object.weakDependency[j] = message.weakDependency[j]; + } + if (message.syntax != null && message.hasOwnProperty("syntax")) + object.syntax = message.syntax; + return object; + }; - return NamePart; - })(); + /** + * Converts this FileDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.FileDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + FileDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return UninterpretedOption; + return FileDescriptorProto; })(); - protobuf.SourceCodeInfo = (function() { + protobuf.DescriptorProto = (function() { /** - * Properties of a SourceCodeInfo. + * Properties of a DescriptorProto. * @memberof google.protobuf - * @interface ISourceCodeInfo - * @property {Array.|null} [location] SourceCodeInfo location + * @interface IDescriptorProto + * @property {string|null} [name] DescriptorProto name + * @property {Array.|null} [field] DescriptorProto field + * @property {Array.|null} [extension] DescriptorProto extension + * @property {Array.|null} [nestedType] DescriptorProto nestedType + * @property {Array.|null} [enumType] DescriptorProto enumType + * @property {Array.|null} [extensionRange] DescriptorProto extensionRange + * @property {Array.|null} [oneofDecl] DescriptorProto oneofDecl + * @property {google.protobuf.IMessageOptions|null} [options] DescriptorProto options + * @property {Array.|null} [reservedRange] DescriptorProto reservedRange + * @property {Array.|null} [reservedName] DescriptorProto reservedName */ /** - * Constructs a new SourceCodeInfo. + * Constructs a new DescriptorProto. * @memberof google.protobuf - * @classdesc Represents a SourceCodeInfo. - * @implements ISourceCodeInfo + * @classdesc Represents a DescriptorProto. + * @implements IDescriptorProto * @constructor - * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set + * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set */ - function SourceCodeInfo(properties) { - this.location = []; + function DescriptorProto(properties) { + this.field = []; + this.extension = []; + this.nestedType = []; + this.enumType = []; + this.extensionRange = []; + this.oneofDecl = []; + this.reservedRange = []; + this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -7941,78 +12537,216 @@ } /** - * SourceCodeInfo location. - * @member {Array.} location - * @memberof google.protobuf.SourceCodeInfo + * DescriptorProto name. + * @member {string} name + * @memberof google.protobuf.DescriptorProto * @instance */ - SourceCodeInfo.prototype.location = $util.emptyArray; + DescriptorProto.prototype.name = ""; /** - * Creates a new SourceCodeInfo instance using the specified properties. + * DescriptorProto field. + * @member {Array.} field + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.field = $util.emptyArray; + + /** + * DescriptorProto extension. + * @member {Array.} extension + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.extension = $util.emptyArray; + + /** + * DescriptorProto nestedType. + * @member {Array.} nestedType + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.nestedType = $util.emptyArray; + + /** + * DescriptorProto enumType. + * @member {Array.} enumType + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.enumType = $util.emptyArray; + + /** + * DescriptorProto extensionRange. + * @member {Array.} extensionRange + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.extensionRange = $util.emptyArray; + + /** + * DescriptorProto oneofDecl. + * @member {Array.} oneofDecl + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.oneofDecl = $util.emptyArray; + + /** + * DescriptorProto options. + * @member {google.protobuf.IMessageOptions|null|undefined} options + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.options = null; + + /** + * DescriptorProto reservedRange. + * @member {Array.} reservedRange + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.reservedRange = $util.emptyArray; + + /** + * DescriptorProto reservedName. + * @member {Array.} reservedName + * @memberof google.protobuf.DescriptorProto + * @instance + */ + DescriptorProto.prototype.reservedName = $util.emptyArray; + + /** + * Creates a new DescriptorProto instance using the specified properties. * @function create - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static - * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo instance + * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto} DescriptorProto instance */ - SourceCodeInfo.create = function create(properties) { - return new SourceCodeInfo(properties); + DescriptorProto.create = function create(properties) { + return new DescriptorProto(properties); }; /** - * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. * @function encode - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static - * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - SourceCodeInfo.encode = function encode(message, writer) { + DescriptorProto.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.location != null && message.location.length) - for (var i = 0; i < message.location.length; ++i) - $root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.field != null && message.field.length) + for (var i = 0; i < message.field.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.field[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.nestedType != null && message.nestedType.length) + for (var i = 0; i < message.nestedType.length; ++i) + $root.google.protobuf.DescriptorProto.encode(message.nestedType[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.enumType != null && message.enumType.length) + for (var i = 0; i < message.enumType.length; ++i) + $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.extensionRange != null && message.extensionRange.length) + for (var i = 0; i < message.extensionRange.length; ++i) + $root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.extension != null && message.extension.length) + for (var i = 0; i < message.extension.length; ++i) + $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.MessageOptions.encode(message.options, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); + if (message.oneofDecl != null && message.oneofDecl.length) + for (var i = 0; i < message.oneofDecl.length; ++i) + $root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.reservedRange != null && message.reservedRange.length) + for (var i = 0; i < message.reservedRange.length; ++i) + $root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); + if (message.reservedName != null && message.reservedName.length) + for (var i = 0; i < message.reservedName.length; ++i) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.reservedName[i]); return writer; }; /** - * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static - * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - SourceCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { + DescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a SourceCodeInfo message from the specified reader or buffer. + * Decodes a DescriptorProto message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @returns {google.protobuf.DescriptorProto} DescriptorProto * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length) { + DescriptorProto.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (!(message.location && message.location.length)) - message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.name = reader.string(); + break; + case 2: + if (!(message.field && message.field.length)) + message.field = []; + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 6: + if (!(message.extension && message.extension.length)) + message.extension = []; + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + if (!(message.nestedType && message.nestedType.length)) + message.nestedType = []; + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + break; + case 4: + if (!(message.enumType && message.enumType.length)) + message.enumType = []; + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.extensionRange && message.extensionRange.length)) + message.extensionRange = []; + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + break; + case 8: + if (!(message.oneofDecl && message.oneofDecl.length)) + message.oneofDecl = []; + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + break; + case 7: + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + break; + case 9: + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + break; + case 10: + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); break; default: reader.skipType(tag & 7); @@ -8023,128 +12757,317 @@ }; /** - * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. + * Decodes a DescriptorProto message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @returns {google.protobuf.DescriptorProto} DescriptorProto * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decodeDelimited = function decodeDelimited(reader) { + DescriptorProto.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a SourceCodeInfo message. + * Verifies a DescriptorProto message. * @function verify - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + DescriptorProto.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.location != null && message.hasOwnProperty("location")) { - if (!Array.isArray(message.location)) - return "location: array expected"; - for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.field != null && message.hasOwnProperty("field")) { + if (!Array.isArray(message.field)) + return "field: array expected"; + for (var i = 0; i < message.field.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); if (error) - return "location." + error; + return "field." + error; + } + } + if (message.extension != null && message.hasOwnProperty("extension")) { + if (!Array.isArray(message.extension)) + return "extension: array expected"; + for (var i = 0; i < message.extension.length; ++i) { + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + if (error) + return "extension." + error; + } + } + if (message.nestedType != null && message.hasOwnProperty("nestedType")) { + if (!Array.isArray(message.nestedType)) + return "nestedType: array expected"; + for (var i = 0; i < message.nestedType.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + if (error) + return "nestedType." + error; + } + } + if (message.enumType != null && message.hasOwnProperty("enumType")) { + if (!Array.isArray(message.enumType)) + return "enumType: array expected"; + for (var i = 0; i < message.enumType.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + if (error) + return "enumType." + error; + } + } + if (message.extensionRange != null && message.hasOwnProperty("extensionRange")) { + if (!Array.isArray(message.extensionRange)) + return "extensionRange: array expected"; + for (var i = 0; i < message.extensionRange.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + if (error) + return "extensionRange." + error; + } + } + if (message.oneofDecl != null && message.hasOwnProperty("oneofDecl")) { + if (!Array.isArray(message.oneofDecl)) + return "oneofDecl: array expected"; + for (var i = 0; i < message.oneofDecl.length; ++i) { + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + if (error) + return "oneofDecl." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.MessageOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { + if (!Array.isArray(message.reservedRange)) + return "reservedRange: array expected"; + for (var i = 0; i < message.reservedRange.length; ++i) { + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + if (error) + return "reservedRange." + error; } } + if (message.reservedName != null && message.hasOwnProperty("reservedName")) { + if (!Array.isArray(message.reservedName)) + return "reservedName: array expected"; + for (var i = 0; i < message.reservedName.length; ++i) + if (!$util.isString(message.reservedName[i])) + return "reservedName: string[] expected"; + } return null; }; /** - * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. + * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static * @param {Object.} object Plain object - * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - SourceCodeInfo.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.SourceCodeInfo) + DescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto) return object; - var message = new $root.google.protobuf.SourceCodeInfo(); - if (object.location) { - if (!Array.isArray(object.location)) - throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected"); - message.location = []; - for (var i = 0; i < object.location.length; ++i) { - if (typeof object.location[i] !== "object") - throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + var message = new $root.google.protobuf.DescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.field) { + if (!Array.isArray(object.field)) + throw TypeError(".google.protobuf.DescriptorProto.field: array expected"); + message.field = []; + for (var i = 0; i < object.field.length; ++i) { + if (typeof object.field[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + } + } + if (object.extension) { + if (!Array.isArray(object.extension)) + throw TypeError(".google.protobuf.DescriptorProto.extension: array expected"); + message.extension = []; + for (var i = 0; i < object.extension.length; ++i) { + if (typeof object.extension[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + } + } + if (object.nestedType) { + if (!Array.isArray(object.nestedType)) + throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected"); + message.nestedType = []; + for (var i = 0; i < object.nestedType.length; ++i) { + if (typeof object.nestedType[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + } + } + if (object.enumType) { + if (!Array.isArray(object.enumType)) + throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected"); + message.enumType = []; + for (var i = 0; i < object.enumType.length; ++i) { + if (typeof object.enumType[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + } + } + if (object.extensionRange) { + if (!Array.isArray(object.extensionRange)) + throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected"); + message.extensionRange = []; + for (var i = 0; i < object.extensionRange.length; ++i) { + if (typeof object.extensionRange[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + } + } + if (object.oneofDecl) { + if (!Array.isArray(object.oneofDecl)) + throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected"); + message.oneofDecl = []; + for (var i = 0; i < object.oneofDecl.length; ++i) { + if (typeof object.oneofDecl[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + } + if (object.reservedRange) { + if (!Array.isArray(object.reservedRange)) + throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected"); + message.reservedRange = []; + for (var i = 0; i < object.reservedRange.length; ++i) { + if (typeof object.reservedRange[i] !== "object") + throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); } } + if (object.reservedName) { + if (!Array.isArray(object.reservedName)) + throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected"); + message.reservedName = []; + for (var i = 0; i < object.reservedName.length; ++i) + message.reservedName[i] = String(object.reservedName[i]); + } return message; }; /** - * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified. + * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @static - * @param {google.protobuf.SourceCodeInfo} message SourceCodeInfo + * @param {google.protobuf.DescriptorProto} message DescriptorProto * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - SourceCodeInfo.toObject = function toObject(message, options) { + DescriptorProto.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.location = []; - if (message.location && message.location.length) { - object.location = []; - for (var j = 0; j < message.location.length; ++j) - object.location[j] = $root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j], options); + if (options.arrays || options.defaults) { + object.field = []; + object.nestedType = []; + object.enumType = []; + object.extensionRange = []; + object.extension = []; + object.oneofDecl = []; + object.reservedRange = []; + object.reservedName = []; + } + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.field && message.field.length) { + object.field = []; + for (var j = 0; j < message.field.length; ++j) + object.field[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.field[j], options); + } + if (message.nestedType && message.nestedType.length) { + object.nestedType = []; + for (var j = 0; j < message.nestedType.length; ++j) + object.nestedType[j] = $root.google.protobuf.DescriptorProto.toObject(message.nestedType[j], options); + } + if (message.enumType && message.enumType.length) { + object.enumType = []; + for (var j = 0; j < message.enumType.length; ++j) + object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options); + } + if (message.extensionRange && message.extensionRange.length) { + object.extensionRange = []; + for (var j = 0; j < message.extensionRange.length; ++j) + object.extensionRange[j] = $root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j], options); + } + if (message.extension && message.extension.length) { + object.extension = []; + for (var j = 0; j < message.extension.length; ++j) + object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.MessageOptions.toObject(message.options, options); + if (message.oneofDecl && message.oneofDecl.length) { + object.oneofDecl = []; + for (var j = 0; j < message.oneofDecl.length; ++j) + object.oneofDecl[j] = $root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j], options); + } + if (message.reservedRange && message.reservedRange.length) { + object.reservedRange = []; + for (var j = 0; j < message.reservedRange.length; ++j) + object.reservedRange[j] = $root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j], options); + } + if (message.reservedName && message.reservedName.length) { + object.reservedName = []; + for (var j = 0; j < message.reservedName.length; ++j) + object.reservedName[j] = message.reservedName[j]; } return object; }; /** - * Converts this SourceCodeInfo to JSON. + * Converts this DescriptorProto to JSON. * @function toJSON - * @memberof google.protobuf.SourceCodeInfo + * @memberof google.protobuf.DescriptorProto * @instance * @returns {Object.} JSON object */ - SourceCodeInfo.prototype.toJSON = function toJSON() { + DescriptorProto.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - SourceCodeInfo.Location = (function() { + DescriptorProto.ExtensionRange = (function() { /** - * Properties of a Location. - * @memberof google.protobuf.SourceCodeInfo - * @interface ILocation - * @property {Array.|null} [path] Location path - * @property {Array.|null} [span] Location span - * @property {string|null} [leadingComments] Location leadingComments - * @property {string|null} [trailingComments] Location trailingComments - * @property {Array.|null} [leadingDetachedComments] Location leadingDetachedComments + * Properties of an ExtensionRange. + * @memberof google.protobuf.DescriptorProto + * @interface IExtensionRange + * @property {number|null} [start] ExtensionRange start + * @property {number|null} [end] ExtensionRange end + * @property {google.protobuf.IExtensionRangeOptions|null} [options] ExtensionRange options */ /** - * Constructs a new Location. - * @memberof google.protobuf.SourceCodeInfo - * @classdesc Represents a Location. - * @implements ILocation + * Constructs a new ExtensionRange. + * @memberof google.protobuf.DescriptorProto + * @classdesc Represents an ExtensionRange. + * @implements IExtensionRange * @constructor - * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set + * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set */ - function Location(properties) { - this.path = []; - this.span = []; - this.leadingDetachedComments = []; + function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -8152,671 +13075,323 @@ } /** - * Location path. - * @member {Array.} path - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.path = $util.emptyArray; - - /** - * Location span. - * @member {Array.} span - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.span = $util.emptyArray; - - /** - * Location leadingComments. - * @member {string} leadingComments - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.leadingComments = ""; - - /** - * Location trailingComments. - * @member {string} trailingComments - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.trailingComments = ""; - - /** - * Location leadingDetachedComments. - * @member {Array.} leadingDetachedComments - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - */ - Location.prototype.leadingDetachedComments = $util.emptyArray; - - /** - * Creates a new Location instance using the specified properties. - * @function create - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set - * @returns {google.protobuf.SourceCodeInfo.Location} Location instance - */ - Location.create = function create(properties) { - return new Location(properties); - }; - - /** - * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. - * @function encode - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Location.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.path != null && message.path.length) { - writer.uint32(/* id 1, wireType 2 =*/10).fork(); - for (var i = 0; i < message.path.length; ++i) - writer.int32(message.path[i]); - writer.ldelim(); - } - if (message.span != null && message.span.length) { - writer.uint32(/* id 2, wireType 2 =*/18).fork(); - for (var i = 0; i < message.span.length; ++i) - writer.int32(message.span[i]); - writer.ldelim(); - } - if (message.leadingComments != null && Object.hasOwnProperty.call(message, "leadingComments")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.leadingComments); - if (message.trailingComments != null && Object.hasOwnProperty.call(message, "trailingComments")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.trailingComments); - if (message.leadingDetachedComments != null && message.leadingDetachedComments.length) - for (var i = 0; i < message.leadingDetachedComments.length; ++i) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.leadingDetachedComments[i]); - return writer; - }; - - /** - * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Location.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a Location message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.SourceCodeInfo.Location} Location - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Location.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.path && message.path.length)) - message.path = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.path.push(reader.int32()); - } else - message.path.push(reader.int32()); - break; - case 2: - if (!(message.span && message.span.length)) - message.span = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.span.push(reader.int32()); - } else - message.span.push(reader.int32()); - break; - case 3: - message.leadingComments = reader.string(); - break; - case 4: - message.trailingComments = reader.string(); - break; - case 6: - if (!(message.leadingDetachedComments && message.leadingDetachedComments.length)) - message.leadingDetachedComments = []; - message.leadingDetachedComments.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a Location message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.SourceCodeInfo.Location} Location - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Location.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a Location message. - * @function verify - * @memberof google.protobuf.SourceCodeInfo.Location - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Location.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.path != null && message.hasOwnProperty("path")) { - if (!Array.isArray(message.path)) - return "path: array expected"; - for (var i = 0; i < message.path.length; ++i) - if (!$util.isInteger(message.path[i])) - return "path: integer[] expected"; - } - if (message.span != null && message.hasOwnProperty("span")) { - if (!Array.isArray(message.span)) - return "span: array expected"; - for (var i = 0; i < message.span.length; ++i) - if (!$util.isInteger(message.span[i])) - return "span: integer[] expected"; - } - if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) - if (!$util.isString(message.leadingComments)) - return "leadingComments: string expected"; - if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) - if (!$util.isString(message.trailingComments)) - return "trailingComments: string expected"; - if (message.leadingDetachedComments != null && message.hasOwnProperty("leadingDetachedComments")) { - if (!Array.isArray(message.leadingDetachedComments)) - return "leadingDetachedComments: array expected"; - for (var i = 0; i < message.leadingDetachedComments.length; ++i) - if (!$util.isString(message.leadingDetachedComments[i])) - return "leadingDetachedComments: string[] expected"; - } - return null; - }; + * ExtensionRange start. + * @member {number} start + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.start = 0; /** - * Creates a Location message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.SourceCodeInfo.Location + * ExtensionRange end. + * @member {number} end + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.end = 0; + + /** + * ExtensionRange options. + * @member {google.protobuf.IExtensionRangeOptions|null|undefined} options + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + */ + ExtensionRange.prototype.options = null; + + /** + * Creates a new ExtensionRange instance using the specified properties. + * @function create + * @memberof google.protobuf.DescriptorProto.ExtensionRange * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.SourceCodeInfo.Location} Location + * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange instance */ - Location.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) - return object; - var message = new $root.google.protobuf.SourceCodeInfo.Location(); - if (object.path) { - if (!Array.isArray(object.path)) - throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected"); - message.path = []; - for (var i = 0; i < object.path.length; ++i) - message.path[i] = object.path[i] | 0; - } - if (object.span) { - if (!Array.isArray(object.span)) - throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected"); - message.span = []; - for (var i = 0; i < object.span.length; ++i) - message.span[i] = object.span[i] | 0; - } - if (object.leadingComments != null) - message.leadingComments = String(object.leadingComments); - if (object.trailingComments != null) - message.trailingComments = String(object.trailingComments); - if (object.leadingDetachedComments) { - if (!Array.isArray(object.leadingDetachedComments)) - throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected"); - message.leadingDetachedComments = []; - for (var i = 0; i < object.leadingDetachedComments.length; ++i) - message.leadingDetachedComments[i] = String(object.leadingDetachedComments[i]); - } - return message; + ExtensionRange.create = function create(properties) { + return new ExtensionRange(properties); }; /** - * Creates a plain object from a Location message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.SourceCodeInfo.Location + * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.DescriptorProto.ExtensionRange * @static - * @param {google.protobuf.SourceCodeInfo.Location} message Location - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object + * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer */ - Location.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.path = []; - object.span = []; - object.leadingDetachedComments = []; - } - if (options.defaults) { - object.leadingComments = ""; - object.trailingComments = ""; - } - if (message.path && message.path.length) { - object.path = []; - for (var j = 0; j < message.path.length; ++j) - object.path[j] = message.path[j]; - } - if (message.span && message.span.length) { - object.span = []; - for (var j = 0; j < message.span.length; ++j) - object.span[j] = message.span[j]; - } - if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) - object.leadingComments = message.leadingComments; - if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) - object.trailingComments = message.trailingComments; - if (message.leadingDetachedComments && message.leadingDetachedComments.length) { - object.leadingDetachedComments = []; - for (var j = 0; j < message.leadingDetachedComments.length; ++j) - object.leadingDetachedComments[j] = message.leadingDetachedComments[j]; - } - return object; + ExtensionRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.ExtensionRangeOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; }; /** - * Converts this Location to JSON. - * @function toJSON - * @memberof google.protobuf.SourceCodeInfo.Location - * @instance - * @returns {Object.} JSON object + * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer */ - Location.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + ExtensionRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); }; - return Location; - })(); - - return SourceCodeInfo; - })(); - - protobuf.GeneratedCodeInfo = (function() { - - /** - * Properties of a GeneratedCodeInfo. - * @memberof google.protobuf - * @interface IGeneratedCodeInfo - * @property {Array.|null} [annotation] GeneratedCodeInfo annotation - */ - - /** - * Constructs a new GeneratedCodeInfo. - * @memberof google.protobuf - * @classdesc Represents a GeneratedCodeInfo. - * @implements IGeneratedCodeInfo - * @constructor - * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set - */ - function GeneratedCodeInfo(properties) { - this.annotation = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * GeneratedCodeInfo annotation. - * @member {Array.} annotation - * @memberof google.protobuf.GeneratedCodeInfo - * @instance - */ - GeneratedCodeInfo.prototype.annotation = $util.emptyArray; - - /** - * Creates a new GeneratedCodeInfo instance using the specified properties. - * @function create - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo instance - */ - GeneratedCodeInfo.create = function create(properties) { - return new GeneratedCodeInfo(properties); - }; - - /** - * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. - * @function encode - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GeneratedCodeInfo.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.annotation != null && message.annotation.length) - for (var i = 0; i < message.annotation.length; ++i) - $root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. - * @function encodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GeneratedCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a GeneratedCodeInfo message from the specified reader or buffer. - * @function decode - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GeneratedCodeInfo.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.annotation && message.annotation.length)) - message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + /** + * Decodes an ExtensionRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRange.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + case 3: + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } } - } - return message; - }; + return message; + }; - /** - * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GeneratedCodeInfo.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes an ExtensionRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Verifies a GeneratedCodeInfo message. - * @function verify - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - GeneratedCodeInfo.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.annotation != null && message.hasOwnProperty("annotation")) { - if (!Array.isArray(message.annotation)) - return "annotation: array expected"; - for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + /** + * Verifies an ExtensionRange message. + * @function verify + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ExtensionRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); if (error) - return "annotation." + error; + return "options." + error; } - } - return null; - }; + return null; + }; - /** - * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo - */ - GeneratedCodeInfo.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.GeneratedCodeInfo) - return object; - var message = new $root.google.protobuf.GeneratedCodeInfo(); - if (object.annotation) { - if (!Array.isArray(object.annotation)) - throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected"); - message.annotation = []; - for (var i = 0; i < object.annotation.length; ++i) { - if (typeof object.annotation[i] !== "object") - throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + /** + * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange + */ + ExtensionRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) + return object; + var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); } - } - return message; - }; + return message; + }; - /** - * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified. - * @function toObject - * @memberof google.protobuf.GeneratedCodeInfo - * @static - * @param {google.protobuf.GeneratedCodeInfo} message GeneratedCodeInfo - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - GeneratedCodeInfo.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.annotation = []; - if (message.annotation && message.annotation.length) { - object.annotation = []; - for (var j = 0; j < message.annotation.length; ++j) - object.annotation[j] = $root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j], options); - } - return object; - }; + /** + * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @static + * @param {google.protobuf.DescriptorProto.ExtensionRange} message ExtensionRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ExtensionRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + object.options = null; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.ExtensionRangeOptions.toObject(message.options, options); + return object; + }; - /** - * Converts this GeneratedCodeInfo to JSON. - * @function toJSON - * @memberof google.protobuf.GeneratedCodeInfo - * @instance - * @returns {Object.} JSON object - */ - GeneratedCodeInfo.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this ExtensionRange to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto.ExtensionRange + * @instance + * @returns {Object.} JSON object + */ + ExtensionRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - GeneratedCodeInfo.Annotation = (function() { + return ExtensionRange; + })(); + + DescriptorProto.ReservedRange = (function() { /** - * Properties of an Annotation. - * @memberof google.protobuf.GeneratedCodeInfo - * @interface IAnnotation - * @property {Array.|null} [path] Annotation path - * @property {string|null} [sourceFile] Annotation sourceFile - * @property {number|null} [begin] Annotation begin - * @property {number|null} [end] Annotation end + * Properties of a ReservedRange. + * @memberof google.protobuf.DescriptorProto + * @interface IReservedRange + * @property {number|null} [start] ReservedRange start + * @property {number|null} [end] ReservedRange end */ /** - * Constructs a new Annotation. - * @memberof google.protobuf.GeneratedCodeInfo - * @classdesc Represents an Annotation. - * @implements IAnnotation + * Constructs a new ReservedRange. + * @memberof google.protobuf.DescriptorProto + * @classdesc Represents a ReservedRange. + * @implements IReservedRange * @constructor - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set + * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set */ - function Annotation(properties) { - this.path = []; + function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * Annotation path. - * @member {Array.} path - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - */ - Annotation.prototype.path = $util.emptyArray; - - /** - * Annotation sourceFile. - * @member {string} sourceFile - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - */ - Annotation.prototype.sourceFile = ""; + this[keys[i]] = properties[keys[i]]; + } /** - * Annotation begin. - * @member {number} begin - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * ReservedRange start. + * @member {number} start + * @memberof google.protobuf.DescriptorProto.ReservedRange * @instance */ - Annotation.prototype.begin = 0; + ReservedRange.prototype.start = 0; /** - * Annotation end. + * ReservedRange end. * @member {number} end - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @instance */ - Annotation.prototype.end = 0; + ReservedRange.prototype.end = 0; /** - * Creates a new Annotation instance using the specified properties. + * Creates a new ReservedRange instance using the specified properties. * @function create - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation instance + * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange instance */ - Annotation.create = function create(properties) { - return new Annotation(properties); + ReservedRange.create = function create(properties) { + return new ReservedRange(properties); }; /** - * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. * @function encode - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Annotation.encode = function encode(message, writer) { + ReservedRange.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.path != null && message.path.length) { - writer.uint32(/* id 1, wireType 2 =*/10).fork(); - for (var i = 0; i < message.path.length; ++i) - writer.int32(message.path[i]); - writer.ldelim(); - } - if (message.sourceFile != null && Object.hasOwnProperty.call(message, "sourceFile")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.sourceFile); - if (message.begin != null && Object.hasOwnProperty.call(message, "begin")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.begin); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); if (message.end != null && Object.hasOwnProperty.call(message, "end")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.end); + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); return writer; }; /** - * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static - * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Annotation.encodeDelimited = function encodeDelimited(message, writer) { + ReservedRange.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an Annotation message from the specified reader or buffer. + * Decodes a ReservedRange message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length) { + ReservedRange.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (!(message.path && message.path.length)) - message.path = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.path.push(reader.int32()); - } else - message.path.push(reader.int32()); + message.start = reader.int32(); break; case 2: - message.sourceFile = reader.string(); - break; - case 3: - message.begin = reader.int32(); - break; - case 4: message.end = reader.int32(); break; default: @@ -8828,45 +13403,35 @@ }; /** - * Decodes an Annotation message from the specified reader or buffer, length delimited. + * Decodes a ReservedRange message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decodeDelimited = function decodeDelimited(reader) { + ReservedRange.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies an Annotation message. + * Verifies a ReservedRange message. * @function verify - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + ReservedRange.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.path != null && message.hasOwnProperty("path")) { - if (!Array.isArray(message.path)) - return "path: array expected"; - for (var i = 0; i < message.path.length; ++i) - if (!$util.isInteger(message.path[i])) - return "path: integer[] expected"; - } - if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) - if (!$util.isString(message.sourceFile)) - return "sourceFile: string expected"; - if (message.begin != null && message.hasOwnProperty("begin")) - if (!$util.isInteger(message.begin)) - return "begin: integer expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; if (message.end != null && message.hasOwnProperty("end")) if (!$util.isInteger(message.end)) return "end: integer expected"; @@ -8874,165 +13439,508 @@ }; /** - * Creates an Annotation message from a plain object. Also converts values to their respective internal types. + * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static * @param {Object.} object Plain object - * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - Annotation.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) + ReservedRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; - var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); - if (object.path) { - if (!Array.isArray(object.path)) - throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected"); - message.path = []; - for (var i = 0; i < object.path.length; ++i) - message.path[i] = object.path[i] | 0; - } - if (object.sourceFile != null) - message.sourceFile = String(object.sourceFile); - if (object.begin != null) - message.begin = object.begin | 0; + var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); + if (object.start != null) + message.start = object.start | 0; if (object.end != null) message.end = object.end | 0; return message; }; /** - * Creates a plain object from an Annotation message. Also converts values to other types if specified. + * Creates a plain object from a ReservedRange message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @memberof google.protobuf.DescriptorProto.ReservedRange * @static - * @param {google.protobuf.GeneratedCodeInfo.Annotation} message Annotation + * @param {google.protobuf.DescriptorProto.ReservedRange} message ReservedRange * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Annotation.toObject = function toObject(message, options) { + ReservedRange.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.path = []; if (options.defaults) { - object.sourceFile = ""; - object.begin = 0; + object.start = 0; object.end = 0; } - if (message.path && message.path.length) { - object.path = []; - for (var j = 0; j < message.path.length; ++j) - object.path[j] = message.path[j]; + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; + + /** + * Converts this ReservedRange to JSON. + * @function toJSON + * @memberof google.protobuf.DescriptorProto.ReservedRange + * @instance + * @returns {Object.} JSON object + */ + ReservedRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return ReservedRange; + })(); + + return DescriptorProto; + })(); + + protobuf.ExtensionRangeOptions = (function() { + + /** + * Properties of an ExtensionRangeOptions. + * @memberof google.protobuf + * @interface IExtensionRangeOptions + * @property {Array.|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption + */ + + /** + * Constructs a new ExtensionRangeOptions. + * @memberof google.protobuf + * @classdesc Represents an ExtensionRangeOptions. + * @implements IExtensionRangeOptions + * @constructor + * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set + */ + function ExtensionRangeOptions(properties) { + this.uninterpretedOption = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ExtensionRangeOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.ExtensionRangeOptions + * @instance + */ + ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray; + + /** + * Creates a new ExtensionRangeOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions instance + */ + ExtensionRangeOptions.create = function create(properties) { + return new ExtensionRangeOptions(properties); + }; + + /** + * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRangeOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ExtensionRangeOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRangeOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ExtensionRangeOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an ExtensionRangeOptions message. + * @function verify + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ExtensionRangeOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; } - if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) - object.sourceFile = message.sourceFile; - if (message.begin != null && message.hasOwnProperty("begin")) - object.begin = message.begin; - if (message.end != null && message.hasOwnProperty("end")) - object.end = message.end; + } + return null; + }; + + /** + * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions + */ + ExtensionRangeOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; - }; + var message = new $root.google.protobuf.ExtensionRangeOptions(); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; - /** - * Converts this Annotation to JSON. - * @function toJSON - * @memberof google.protobuf.GeneratedCodeInfo.Annotation - * @instance - * @returns {Object.} JSON object - */ - Annotation.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ExtensionRangeOptions + * @static + * @param {google.protobuf.ExtensionRangeOptions} message ExtensionRangeOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ExtensionRangeOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; - return Annotation; - })(); + /** + * Converts this ExtensionRangeOptions to JSON. + * @function toJSON + * @memberof google.protobuf.ExtensionRangeOptions + * @instance + * @returns {Object.} JSON object + */ + ExtensionRangeOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return GeneratedCodeInfo; + return ExtensionRangeOptions; })(); - protobuf.Empty = (function() { + protobuf.FieldDescriptorProto = (function() { /** - * Properties of an Empty. + * Properties of a FieldDescriptorProto. * @memberof google.protobuf - * @interface IEmpty + * @interface IFieldDescriptorProto + * @property {string|null} [name] FieldDescriptorProto name + * @property {number|null} [number] FieldDescriptorProto number + * @property {google.protobuf.FieldDescriptorProto.Label|null} [label] FieldDescriptorProto label + * @property {google.protobuf.FieldDescriptorProto.Type|null} [type] FieldDescriptorProto type + * @property {string|null} [typeName] FieldDescriptorProto typeName + * @property {string|null} [extendee] FieldDescriptorProto extendee + * @property {string|null} [defaultValue] FieldDescriptorProto defaultValue + * @property {number|null} [oneofIndex] FieldDescriptorProto oneofIndex + * @property {string|null} [jsonName] FieldDescriptorProto jsonName + * @property {google.protobuf.IFieldOptions|null} [options] FieldDescriptorProto options + * @property {boolean|null} [proto3Optional] FieldDescriptorProto proto3Optional */ /** - * Constructs a new Empty. + * Constructs a new FieldDescriptorProto. * @memberof google.protobuf - * @classdesc Represents an Empty. - * @implements IEmpty + * @classdesc Represents a FieldDescriptorProto. + * @implements IFieldDescriptorProto * @constructor - * @param {google.protobuf.IEmpty=} [properties] Properties to set + * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set + */ + function FieldDescriptorProto(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * FieldDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.name = ""; + + /** + * FieldDescriptorProto number. + * @member {number} number + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.number = 0; + + /** + * FieldDescriptorProto label. + * @member {google.protobuf.FieldDescriptorProto.Label} label + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.label = 1; + + /** + * FieldDescriptorProto type. + * @member {google.protobuf.FieldDescriptorProto.Type} type + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.type = 1; + + /** + * FieldDescriptorProto typeName. + * @member {string} typeName + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.typeName = ""; + + /** + * FieldDescriptorProto extendee. + * @member {string} extendee + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.extendee = ""; + + /** + * FieldDescriptorProto defaultValue. + * @member {string} defaultValue + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.defaultValue = ""; + + /** + * FieldDescriptorProto oneofIndex. + * @member {number} oneofIndex + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.oneofIndex = 0; + + /** + * FieldDescriptorProto jsonName. + * @member {string} jsonName + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.jsonName = ""; + + /** + * FieldDescriptorProto options. + * @member {google.protobuf.IFieldOptions|null|undefined} options + * @memberof google.protobuf.FieldDescriptorProto + * @instance + */ + FieldDescriptorProto.prototype.options = null; + + /** + * FieldDescriptorProto proto3Optional. + * @member {boolean} proto3Optional + * @memberof google.protobuf.FieldDescriptorProto + * @instance */ - function Empty(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + FieldDescriptorProto.prototype.proto3Optional = false; /** - * Creates a new Empty instance using the specified properties. + * Creates a new FieldDescriptorProto instance using the specified properties. * @function create - * @memberof google.protobuf.Empty + * @memberof google.protobuf.FieldDescriptorProto * @static - * @param {google.protobuf.IEmpty=} [properties] Properties to set - * @returns {google.protobuf.Empty} Empty instance + * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto instance */ - Empty.create = function create(properties) { - return new Empty(properties); + FieldDescriptorProto.create = function create(properties) { + return new FieldDescriptorProto(properties); }; /** - * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. * @function encode - * @memberof google.protobuf.Empty + * @memberof google.protobuf.FieldDescriptorProto * @static - * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Empty.encode = function encode(message, writer) { + FieldDescriptorProto.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.extendee != null && Object.hasOwnProperty.call(message, "extendee")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.extendee); + if (message.number != null && Object.hasOwnProperty.call(message, "number")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.number); + if (message.label != null && Object.hasOwnProperty.call(message, "label")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.label); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 5, wireType 0 =*/40).int32(message.type); + if (message.typeName != null && Object.hasOwnProperty.call(message, "typeName")) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.typeName); + if (message.defaultValue != null && Object.hasOwnProperty.call(message, "defaultValue")) + writer.uint32(/* id 7, wireType 2 =*/58).string(message.defaultValue); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.FieldOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); + if (message.oneofIndex != null && Object.hasOwnProperty.call(message, "oneofIndex")) + writer.uint32(/* id 9, wireType 0 =*/72).int32(message.oneofIndex); + if (message.jsonName != null && Object.hasOwnProperty.call(message, "jsonName")) + writer.uint32(/* id 10, wireType 2 =*/82).string(message.jsonName); + if (message.proto3Optional != null && Object.hasOwnProperty.call(message, "proto3Optional")) + writer.uint32(/* id 17, wireType 0 =*/136).bool(message.proto3Optional); return writer; }; /** - * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages. * @function encodeDelimited - * @memberof google.protobuf.Empty + * @memberof google.protobuf.FieldDescriptorProto * @static - * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Empty.encodeDelimited = function encodeDelimited(message, writer) { + FieldDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes an Empty message from the specified reader or buffer. + * Decodes a FieldDescriptorProto message from the specified reader or buffer. * @function decode - * @memberof google.protobuf.Empty + * @memberof google.protobuf.FieldDescriptorProto * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.protobuf.Empty} Empty + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length) { + FieldDescriptorProto.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 3: + message.number = reader.int32(); + break; + case 4: + message.label = reader.int32(); + break; + case 5: + message.type = reader.int32(); + break; + case 6: + message.typeName = reader.string(); + break; + case 2: + message.extendee = reader.string(); + break; + case 7: + message.defaultValue = reader.string(); + break; + case 9: + message.oneofIndex = reader.int32(); + break; + case 10: + message.jsonName = reader.string(); + break; + case 8: + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + break; + case 17: + message.proto3Optional = reader.bool(); + break; default: reader.skipType(tag & 7); break; @@ -9042,5158 +13950,6458 @@ }; /** - * Decodes an Empty message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.protobuf.Empty - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.protobuf.Empty} Empty - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Empty.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an Empty message. - * @function verify - * @memberof google.protobuf.Empty - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Empty.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - return null; - }; - - /** - * Creates an Empty message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.protobuf.Empty - * @static - * @param {Object.} object Plain object - * @returns {google.protobuf.Empty} Empty - */ - Empty.fromObject = function fromObject(object) { - if (object instanceof $root.google.protobuf.Empty) - return object; - return new $root.google.protobuf.Empty(); - }; - - /** - * Creates a plain object from an Empty message. Also converts values to other types if specified. + * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a FieldDescriptorProto message. + * @function verify + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.number != null && message.hasOwnProperty("number")) + if (!$util.isInteger(message.number)) + return "number: integer expected"; + if (message.label != null && message.hasOwnProperty("label")) + switch (message.label) { + default: + return "label: enum value expected"; + case 1: + case 2: + case 3: + break; + } + if (message.type != null && message.hasOwnProperty("type")) + switch (message.type) { + default: + return "type: enum value expected"; + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + break; + } + if (message.typeName != null && message.hasOwnProperty("typeName")) + if (!$util.isString(message.typeName)) + return "typeName: string expected"; + if (message.extendee != null && message.hasOwnProperty("extendee")) + if (!$util.isString(message.extendee)) + return "extendee: string expected"; + if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) + if (!$util.isString(message.defaultValue)) + return "defaultValue: string expected"; + if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) + if (!$util.isInteger(message.oneofIndex)) + return "oneofIndex: integer expected"; + if (message.jsonName != null && message.hasOwnProperty("jsonName")) + if (!$util.isString(message.jsonName)) + return "jsonName: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.FieldOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) + if (typeof message.proto3Optional !== "boolean") + return "proto3Optional: boolean expected"; + return null; + }; + + /** + * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto + */ + FieldDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldDescriptorProto) + return object; + var message = new $root.google.protobuf.FieldDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.number != null) + message.number = object.number | 0; + switch (object.label) { + case "LABEL_OPTIONAL": + case 1: + message.label = 1; + break; + case "LABEL_REQUIRED": + case 2: + message.label = 2; + break; + case "LABEL_REPEATED": + case 3: + message.label = 3; + break; + } + switch (object.type) { + case "TYPE_DOUBLE": + case 1: + message.type = 1; + break; + case "TYPE_FLOAT": + case 2: + message.type = 2; + break; + case "TYPE_INT64": + case 3: + message.type = 3; + break; + case "TYPE_UINT64": + case 4: + message.type = 4; + break; + case "TYPE_INT32": + case 5: + message.type = 5; + break; + case "TYPE_FIXED64": + case 6: + message.type = 6; + break; + case "TYPE_FIXED32": + case 7: + message.type = 7; + break; + case "TYPE_BOOL": + case 8: + message.type = 8; + break; + case "TYPE_STRING": + case 9: + message.type = 9; + break; + case "TYPE_GROUP": + case 10: + message.type = 10; + break; + case "TYPE_MESSAGE": + case 11: + message.type = 11; + break; + case "TYPE_BYTES": + case 12: + message.type = 12; + break; + case "TYPE_UINT32": + case 13: + message.type = 13; + break; + case "TYPE_ENUM": + case 14: + message.type = 14; + break; + case "TYPE_SFIXED32": + case 15: + message.type = 15; + break; + case "TYPE_SFIXED64": + case 16: + message.type = 16; + break; + case "TYPE_SINT32": + case 17: + message.type = 17; + break; + case "TYPE_SINT64": + case 18: + message.type = 18; + break; + } + if (object.typeName != null) + message.typeName = String(object.typeName); + if (object.extendee != null) + message.extendee = String(object.extendee); + if (object.defaultValue != null) + message.defaultValue = String(object.defaultValue); + if (object.oneofIndex != null) + message.oneofIndex = object.oneofIndex | 0; + if (object.jsonName != null) + message.jsonName = String(object.jsonName); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + } + if (object.proto3Optional != null) + message.proto3Optional = Boolean(object.proto3Optional); + return message; + }; + + /** + * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified. * @function toObject - * @memberof google.protobuf.Empty + * @memberof google.protobuf.FieldDescriptorProto * @static - * @param {google.protobuf.Empty} message Empty + * @param {google.protobuf.FieldDescriptorProto} message FieldDescriptorProto * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Empty.toObject = function toObject() { - return {}; + FieldDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.extendee = ""; + object.number = 0; + object.label = options.enums === String ? "LABEL_OPTIONAL" : 1; + object.type = options.enums === String ? "TYPE_DOUBLE" : 1; + object.typeName = ""; + object.defaultValue = ""; + object.options = null; + object.oneofIndex = 0; + object.jsonName = ""; + object.proto3Optional = false; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.extendee != null && message.hasOwnProperty("extendee")) + object.extendee = message.extendee; + if (message.number != null && message.hasOwnProperty("number")) + object.number = message.number; + if (message.label != null && message.hasOwnProperty("label")) + object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label; + if (message.type != null && message.hasOwnProperty("type")) + object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type; + if (message.typeName != null && message.hasOwnProperty("typeName")) + object.typeName = message.typeName; + if (message.defaultValue != null && message.hasOwnProperty("defaultValue")) + object.defaultValue = message.defaultValue; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.FieldOptions.toObject(message.options, options); + if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex")) + object.oneofIndex = message.oneofIndex; + if (message.jsonName != null && message.hasOwnProperty("jsonName")) + object.jsonName = message.jsonName; + if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional")) + object.proto3Optional = message.proto3Optional; + return object; }; /** - * Converts this Empty to JSON. + * Converts this FieldDescriptorProto to JSON. * @function toJSON - * @memberof google.protobuf.Empty + * @memberof google.protobuf.FieldDescriptorProto * @instance * @returns {Object.} JSON object */ - Empty.prototype.toJSON = function toJSON() { + FieldDescriptorProto.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Empty; - })(); - - return protobuf; - })(); - - google.cloud = (function() { - - /** - * Namespace cloud. - * @memberof google - * @namespace - */ - var cloud = {}; - - cloud.binaryauthorization = (function() { - /** - * Namespace binaryauthorization. - * @memberof google.cloud - * @namespace - */ - var binaryauthorization = {}; - - binaryauthorization.v1beta1 = (function() { - - /** - * Namespace v1beta1. - * @memberof google.cloud.binaryauthorization - * @namespace - */ - var v1beta1 = {}; - - v1beta1.ContinuousValidationEvent = (function() { - - /** - * Properties of a ContinuousValidationEvent. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IContinuousValidationEvent - * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null} [podEvent] ContinuousValidationEvent podEvent - * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null} [unsupportedPolicyEvent] ContinuousValidationEvent unsupportedPolicyEvent - */ - - /** - * Constructs a new ContinuousValidationEvent. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a ContinuousValidationEvent. - * @implements IContinuousValidationEvent - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent=} [properties] Properties to set - */ - function ContinuousValidationEvent(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ContinuousValidationEvent podEvent. - * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent|null|undefined} podEvent - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @instance - */ - ContinuousValidationEvent.prototype.podEvent = null; - - /** - * ContinuousValidationEvent unsupportedPolicyEvent. - * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent|null|undefined} unsupportedPolicyEvent - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @instance - */ - ContinuousValidationEvent.prototype.unsupportedPolicyEvent = null; + * Type enum. + * @name google.protobuf.FieldDescriptorProto.Type + * @enum {number} + * @property {number} TYPE_DOUBLE=1 TYPE_DOUBLE value + * @property {number} TYPE_FLOAT=2 TYPE_FLOAT value + * @property {number} TYPE_INT64=3 TYPE_INT64 value + * @property {number} TYPE_UINT64=4 TYPE_UINT64 value + * @property {number} TYPE_INT32=5 TYPE_INT32 value + * @property {number} TYPE_FIXED64=6 TYPE_FIXED64 value + * @property {number} TYPE_FIXED32=7 TYPE_FIXED32 value + * @property {number} TYPE_BOOL=8 TYPE_BOOL value + * @property {number} TYPE_STRING=9 TYPE_STRING value + * @property {number} TYPE_GROUP=10 TYPE_GROUP value + * @property {number} TYPE_MESSAGE=11 TYPE_MESSAGE value + * @property {number} TYPE_BYTES=12 TYPE_BYTES value + * @property {number} TYPE_UINT32=13 TYPE_UINT32 value + * @property {number} TYPE_ENUM=14 TYPE_ENUM value + * @property {number} TYPE_SFIXED32=15 TYPE_SFIXED32 value + * @property {number} TYPE_SFIXED64=16 TYPE_SFIXED64 value + * @property {number} TYPE_SINT32=17 TYPE_SINT32 value + * @property {number} TYPE_SINT64=18 TYPE_SINT64 value + */ + FieldDescriptorProto.Type = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "TYPE_DOUBLE"] = 1; + values[valuesById[2] = "TYPE_FLOAT"] = 2; + values[valuesById[3] = "TYPE_INT64"] = 3; + values[valuesById[4] = "TYPE_UINT64"] = 4; + values[valuesById[5] = "TYPE_INT32"] = 5; + values[valuesById[6] = "TYPE_FIXED64"] = 6; + values[valuesById[7] = "TYPE_FIXED32"] = 7; + values[valuesById[8] = "TYPE_BOOL"] = 8; + values[valuesById[9] = "TYPE_STRING"] = 9; + values[valuesById[10] = "TYPE_GROUP"] = 10; + values[valuesById[11] = "TYPE_MESSAGE"] = 11; + values[valuesById[12] = "TYPE_BYTES"] = 12; + values[valuesById[13] = "TYPE_UINT32"] = 13; + values[valuesById[14] = "TYPE_ENUM"] = 14; + values[valuesById[15] = "TYPE_SFIXED32"] = 15; + values[valuesById[16] = "TYPE_SFIXED64"] = 16; + values[valuesById[17] = "TYPE_SINT32"] = 17; + values[valuesById[18] = "TYPE_SINT64"] = 18; + return values; + })(); - // OneOf field names bound to virtual getters and setters - var $oneOfFields; + /** + * Label enum. + * @name google.protobuf.FieldDescriptorProto.Label + * @enum {number} + * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value + * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value + * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value + */ + FieldDescriptorProto.Label = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "LABEL_OPTIONAL"] = 1; + values[valuesById[2] = "LABEL_REQUIRED"] = 2; + values[valuesById[3] = "LABEL_REPEATED"] = 3; + return values; + })(); - /** - * ContinuousValidationEvent eventType. - * @member {"podEvent"|"unsupportedPolicyEvent"|undefined} eventType - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @instance - */ - Object.defineProperty(ContinuousValidationEvent.prototype, "eventType", { - get: $util.oneOfGetter($oneOfFields = ["podEvent", "unsupportedPolicyEvent"]), - set: $util.oneOfSetter($oneOfFields) - }); + return FieldDescriptorProto; + })(); - /** - * Creates a new ContinuousValidationEvent instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent instance - */ - ContinuousValidationEvent.create = function create(properties) { - return new ContinuousValidationEvent(properties); - }; + protobuf.OneofDescriptorProto = (function() { - /** - * Encodes the specified ContinuousValidationEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent} message ContinuousValidationEvent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ContinuousValidationEvent.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.podEvent != null && Object.hasOwnProperty.call(message, "podEvent")) - $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.encode(message.podEvent, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.unsupportedPolicyEvent != null && Object.hasOwnProperty.call(message, "unsupportedPolicyEvent")) - $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.encode(message.unsupportedPolicyEvent, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - return writer; - }; + /** + * Properties of an OneofDescriptorProto. + * @memberof google.protobuf + * @interface IOneofDescriptorProto + * @property {string|null} [name] OneofDescriptorProto name + * @property {google.protobuf.IOneofOptions|null} [options] OneofDescriptorProto options + */ - /** - * Encodes the specified ContinuousValidationEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IContinuousValidationEvent} message ContinuousValidationEvent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ContinuousValidationEvent.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Constructs a new OneofDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an OneofDescriptorProto. + * @implements IOneofDescriptorProto + * @constructor + * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set + */ + function OneofDescriptorProto(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Decodes a ContinuousValidationEvent message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ContinuousValidationEvent.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.podEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.decode(reader, reader.uint32()); - break; - case 2: - message.unsupportedPolicyEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * OneofDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.OneofDescriptorProto + * @instance + */ + OneofDescriptorProto.prototype.name = ""; - /** - * Decodes a ContinuousValidationEvent message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ContinuousValidationEvent.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * OneofDescriptorProto options. + * @member {google.protobuf.IOneofOptions|null|undefined} options + * @memberof google.protobuf.OneofDescriptorProto + * @instance + */ + OneofDescriptorProto.prototype.options = null; - /** - * Verifies a ContinuousValidationEvent message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ContinuousValidationEvent.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - var properties = {}; - if (message.podEvent != null && message.hasOwnProperty("podEvent")) { - properties.eventType = 1; - { - var error = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify(message.podEvent); - if (error) - return "podEvent." + error; - } - } - if (message.unsupportedPolicyEvent != null && message.hasOwnProperty("unsupportedPolicyEvent")) { - if (properties.eventType === 1) - return "eventType: multiple values"; - properties.eventType = 1; - { - var error = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify(message.unsupportedPolicyEvent); - if (error) - return "unsupportedPolicyEvent." + error; - } - } - return null; - }; + /** + * Creates a new OneofDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto instance + */ + OneofDescriptorProto.create = function create(properties) { + return new OneofDescriptorProto(properties); + }; - /** - * Creates a ContinuousValidationEvent message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} ContinuousValidationEvent - */ - ContinuousValidationEvent.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent(); - if (object.podEvent != null) { - if (typeof object.podEvent !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.podEvent: object expected"); - message.podEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.fromObject(object.podEvent); - } - if (object.unsupportedPolicyEvent != null) { - if (typeof object.unsupportedPolicyEvent !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.unsupportedPolicyEvent: object expected"); - message.unsupportedPolicyEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.fromObject(object.unsupportedPolicyEvent); - } - return message; - }; + /** + * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.OneofOptions.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; - /** - * Creates a plain object from a ContinuousValidationEvent message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent} message ContinuousValidationEvent - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ContinuousValidationEvent.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (message.podEvent != null && message.hasOwnProperty("podEvent")) { - object.podEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.toObject(message.podEvent, options); - if (options.oneofs) - object.eventType = "podEvent"; - } - if (message.unsupportedPolicyEvent != null && message.hasOwnProperty("unsupportedPolicyEvent")) { - object.unsupportedPolicyEvent = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.toObject(message.unsupportedPolicyEvent, options); - if (options.oneofs) - object.eventType = "unsupportedPolicyEvent"; - } - return object; - }; + /** + * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Converts this ContinuousValidationEvent to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @instance - * @returns {Object.} JSON object - */ - ContinuousValidationEvent.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofDescriptorProto.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - ContinuousValidationEvent.ContinuousValidationPodEvent = (function() { + /** + * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Properties of a ContinuousValidationPodEvent. - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @interface IContinuousValidationPodEvent - * @property {string|null} [pod] ContinuousValidationPodEvent pod - * @property {google.protobuf.ITimestamp|null} [deployTime] ContinuousValidationPodEvent deployTime - * @property {google.protobuf.ITimestamp|null} [endTime] ContinuousValidationPodEvent endTime - * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict|null} [verdict] ContinuousValidationPodEvent verdict - * @property {Array.|null} [images] ContinuousValidationPodEvent images - */ + /** + * Verifies an OneofDescriptorProto message. + * @function verify + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OneofDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.OneofOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; - /** - * Constructs a new ContinuousValidationPodEvent. - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @classdesc Represents a ContinuousValidationPodEvent. - * @implements IContinuousValidationPodEvent - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent=} [properties] Properties to set - */ - function ContinuousValidationPodEvent(properties) { - this.images = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto + */ + OneofDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.OneofDescriptorProto) + return object; + var message = new $root.google.protobuf.OneofDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + } + return message; + }; - /** - * ContinuousValidationPodEvent pod. - * @member {string} pod - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @instance - */ - ContinuousValidationPodEvent.prototype.pod = ""; + /** + * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.OneofDescriptorProto + * @static + * @param {google.protobuf.OneofDescriptorProto} message OneofDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OneofDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.OneofOptions.toObject(message.options, options); + return object; + }; - /** - * ContinuousValidationPodEvent deployTime. - * @member {google.protobuf.ITimestamp|null|undefined} deployTime - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @instance - */ - ContinuousValidationPodEvent.prototype.deployTime = null; + /** + * Converts this OneofDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.OneofDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + OneofDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * ContinuousValidationPodEvent endTime. - * @member {google.protobuf.ITimestamp|null|undefined} endTime - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @instance - */ - ContinuousValidationPodEvent.prototype.endTime = null; + return OneofDescriptorProto; + })(); - /** - * ContinuousValidationPodEvent verdict. - * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict} verdict - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @instance - */ - ContinuousValidationPodEvent.prototype.verdict = 0; + protobuf.EnumDescriptorProto = (function() { - /** - * ContinuousValidationPodEvent images. - * @member {Array.} images - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @instance - */ - ContinuousValidationPodEvent.prototype.images = $util.emptyArray; + /** + * Properties of an EnumDescriptorProto. + * @memberof google.protobuf + * @interface IEnumDescriptorProto + * @property {string|null} [name] EnumDescriptorProto name + * @property {Array.|null} [value] EnumDescriptorProto value + * @property {google.protobuf.IEnumOptions|null} [options] EnumDescriptorProto options + * @property {Array.|null} [reservedRange] EnumDescriptorProto reservedRange + * @property {Array.|null} [reservedName] EnumDescriptorProto reservedName + */ + + /** + * Constructs a new EnumDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an EnumDescriptorProto. + * @implements IEnumDescriptorProto + * @constructor + * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set + */ + function EnumDescriptorProto(properties) { + this.value = []; + this.reservedRange = []; + this.reservedName = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Creates a new ContinuousValidationPodEvent instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent instance - */ - ContinuousValidationPodEvent.create = function create(properties) { - return new ContinuousValidationPodEvent(properties); - }; + /** + * EnumDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.name = ""; - /** - * Encodes the specified ContinuousValidationPodEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent} message ContinuousValidationPodEvent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ContinuousValidationPodEvent.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.pod != null && Object.hasOwnProperty.call(message, "pod")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.pod); - if (message.deployTime != null && Object.hasOwnProperty.call(message, "deployTime")) - $root.google.protobuf.Timestamp.encode(message.deployTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime")) - $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.verdict != null && Object.hasOwnProperty.call(message, "verdict")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.verdict); - if (message.images != null && message.images.length) - for (var i = 0; i < message.images.length; ++i) - $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.encode(message.images[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - return writer; - }; + /** + * EnumDescriptorProto value. + * @member {Array.} value + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.value = $util.emptyArray; - /** - * Encodes the specified ContinuousValidationPodEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IContinuousValidationPodEvent} message ContinuousValidationPodEvent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ContinuousValidationPodEvent.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * EnumDescriptorProto options. + * @member {google.protobuf.IEnumOptions|null|undefined} options + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.options = null; - /** - * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ContinuousValidationPodEvent.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.pod = reader.string(); - break; - case 2: - message.deployTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 3: - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - case 4: - message.verdict = reader.int32(); - break; - case 5: - if (!(message.images && message.images.length)) - message.images = []; - message.images.push($root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * EnumDescriptorProto reservedRange. + * @member {Array.} reservedRange + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.reservedRange = $util.emptyArray; - /** - * Decodes a ContinuousValidationPodEvent message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ContinuousValidationPodEvent.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * EnumDescriptorProto reservedName. + * @member {Array.} reservedName + * @memberof google.protobuf.EnumDescriptorProto + * @instance + */ + EnumDescriptorProto.prototype.reservedName = $util.emptyArray; - /** - * Verifies a ContinuousValidationPodEvent message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ContinuousValidationPodEvent.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.pod != null && message.hasOwnProperty("pod")) - if (!$util.isString(message.pod)) - return "pod: string expected"; - if (message.deployTime != null && message.hasOwnProperty("deployTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deployTime); - if (error) - return "deployTime." + error; - } - if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); - if (error) - return "endTime." + error; - } - if (message.verdict != null && message.hasOwnProperty("verdict")) - switch (message.verdict) { - default: - return "verdict: enum value expected"; - case 0: - case 1: - break; - } - if (message.images != null && message.hasOwnProperty("images")) { - if (!Array.isArray(message.images)) - return "images: array expected"; - for (var i = 0; i < message.images.length; ++i) { - var error = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify(message.images[i]); - if (error) - return "images." + error; - } - } - return null; - }; + /** + * Creates a new EnumDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto instance + */ + EnumDescriptorProto.create = function create(properties) { + return new EnumDescriptorProto(properties); + }; - /** - * Creates a ContinuousValidationPodEvent message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} ContinuousValidationPodEvent - */ - ContinuousValidationPodEvent.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent(); - if (object.pod != null) - message.pod = String(object.pod); - if (object.deployTime != null) { - if (typeof object.deployTime !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.deployTime: object expected"); - message.deployTime = $root.google.protobuf.Timestamp.fromObject(object.deployTime); - } - if (object.endTime != null) { - if (typeof object.endTime !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); - } - switch (object.verdict) { - case "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED": - case 0: - message.verdict = 0; - break; - case "VIOLATES_POLICY": - case 1: - message.verdict = 1; - break; - } - if (object.images) { - if (!Array.isArray(object.images)) - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.images: array expected"); - message.images = []; - for (var i = 0; i < object.images.length; ++i) { - if (typeof object.images[i] !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.images: object expected"); - message.images[i] = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.fromObject(object.images[i]); - } - } - return message; - }; + /** + * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.value != null && message.value.length) + for (var i = 0; i < message.value.length; ++i) + $root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.EnumOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.reservedRange != null && message.reservedRange.length) + for (var i = 0; i < message.reservedRange.length; ++i) + $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.reservedName != null && message.reservedName.length) + for (var i = 0; i < message.reservedName.length; ++i) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.reservedName[i]); + return writer; + }; - /** - * Creates a plain object from a ContinuousValidationPodEvent message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent} message ContinuousValidationPodEvent - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ContinuousValidationPodEvent.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.images = []; - if (options.defaults) { - object.pod = ""; - object.deployTime = null; - object.endTime = null; - object.verdict = options.enums === String ? "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED" : 0; - } - if (message.pod != null && message.hasOwnProperty("pod")) - object.pod = message.pod; - if (message.deployTime != null && message.hasOwnProperty("deployTime")) - object.deployTime = $root.google.protobuf.Timestamp.toObject(message.deployTime, options); - if (message.endTime != null && message.hasOwnProperty("endTime")) - object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options); - if (message.verdict != null && message.hasOwnProperty("verdict")) - object.verdict = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict[message.verdict] : message.verdict; - if (message.images && message.images.length) { - object.images = []; - for (var j = 0; j < message.images.length; ++j) - object.images[j] = $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.toObject(message.images[j], options); - } - return object; - }; + /** + * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Converts this ContinuousValidationPodEvent to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @instance - * @returns {Object.} JSON object - */ - ContinuousValidationPodEvent.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumDescriptorProto.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.value && message.value.length)) + message.value = []; + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + break; + case 4: + if (!(message.reservedRange && message.reservedRange.length)) + message.reservedRange = []; + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + break; + case 5: + if (!(message.reservedName && message.reservedName.length)) + message.reservedName = []; + message.reservedName.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - ContinuousValidationPodEvent.ImageDetails = (function() { + /** + * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Properties of an ImageDetails. - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @interface IImageDetails - * @property {string|null} [image] ImageDetails image - * @property {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult|null} [result] ImageDetails result - * @property {string|null} [description] ImageDetails description - */ + /** + * Verifies an EnumDescriptorProto message. + * @function verify + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.value != null && message.hasOwnProperty("value")) { + if (!Array.isArray(message.value)) + return "value: array expected"; + for (var i = 0; i < message.value.length; ++i) { + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + if (error) + return "value." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.EnumOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) { + if (!Array.isArray(message.reservedRange)) + return "reservedRange: array expected"; + for (var i = 0; i < message.reservedRange.length; ++i) { + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + if (error) + return "reservedRange." + error; + } + } + if (message.reservedName != null && message.hasOwnProperty("reservedName")) { + if (!Array.isArray(message.reservedName)) + return "reservedName: array expected"; + for (var i = 0; i < message.reservedName.length; ++i) + if (!$util.isString(message.reservedName[i])) + return "reservedName: string[] expected"; + } + return null; + }; - /** - * Constructs a new ImageDetails. - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent - * @classdesc Represents an ImageDetails. - * @implements IImageDetails - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails=} [properties] Properties to set - */ - function ImageDetails(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto + */ + EnumDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumDescriptorProto) + return object; + var message = new $root.google.protobuf.EnumDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.value) { + if (!Array.isArray(object.value)) + throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected"); + message.value = []; + for (var i = 0; i < object.value.length; ++i) { + if (typeof object.value[i] !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + } + if (object.reservedRange) { + if (!Array.isArray(object.reservedRange)) + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected"); + message.reservedRange = []; + for (var i = 0; i < object.reservedRange.length; ++i) { + if (typeof object.reservedRange[i] !== "object") + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + } + } + if (object.reservedName) { + if (!Array.isArray(object.reservedName)) + throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected"); + message.reservedName = []; + for (var i = 0; i < object.reservedName.length; ++i) + message.reservedName[i] = String(object.reservedName[i]); + } + return message; + }; - /** - * ImageDetails image. - * @member {string} image - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @instance - */ - ImageDetails.prototype.image = ""; + /** + * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumDescriptorProto + * @static + * @param {google.protobuf.EnumDescriptorProto} message EnumDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.value = []; + object.reservedRange = []; + object.reservedName = []; + } + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.value && message.value.length) { + object.value = []; + for (var j = 0; j < message.value.length; ++j) + object.value[j] = $root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.EnumOptions.toObject(message.options, options); + if (message.reservedRange && message.reservedRange.length) { + object.reservedRange = []; + for (var j = 0; j < message.reservedRange.length; ++j) + object.reservedRange[j] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j], options); + } + if (message.reservedName && message.reservedName.length) { + object.reservedName = []; + for (var j = 0; j < message.reservedName.length; ++j) + object.reservedName[j] = message.reservedName[j]; + } + return object; + }; - /** - * ImageDetails result. - * @member {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult} result - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @instance - */ - ImageDetails.prototype.result = 0; + /** + * Converts this EnumDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.EnumDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + EnumDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * ImageDetails description. - * @member {string} description - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @instance - */ - ImageDetails.prototype.description = ""; + EnumDescriptorProto.EnumReservedRange = (function() { - /** - * Creates a new ImageDetails instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails instance - */ - ImageDetails.create = function create(properties) { - return new ImageDetails(properties); - }; + /** + * Properties of an EnumReservedRange. + * @memberof google.protobuf.EnumDescriptorProto + * @interface IEnumReservedRange + * @property {number|null} [start] EnumReservedRange start + * @property {number|null} [end] EnumReservedRange end + */ - /** - * Encodes the specified ImageDetails message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails} message ImageDetails message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ImageDetails.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.image != null && Object.hasOwnProperty.call(message, "image")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.image); - if (message.result != null && Object.hasOwnProperty.call(message, "result")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.result); - if (message.description != null && Object.hasOwnProperty.call(message, "description")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.description); - return writer; - }; + /** + * Constructs a new EnumReservedRange. + * @memberof google.protobuf.EnumDescriptorProto + * @classdesc Represents an EnumReservedRange. + * @implements IEnumReservedRange + * @constructor + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set + */ + function EnumReservedRange(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Encodes the specified ImageDetails message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.IImageDetails} message ImageDetails message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ImageDetails.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * EnumReservedRange start. + * @member {number} start + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + */ + EnumReservedRange.prototype.start = 0; - /** - * Decodes an ImageDetails message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ImageDetails.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.image = reader.string(); - break; - case 2: - message.result = reader.int32(); - break; - case 3: - message.description = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * EnumReservedRange end. + * @member {number} end + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + */ + EnumReservedRange.prototype.end = 0; - /** - * Decodes an ImageDetails message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ImageDetails.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a new EnumReservedRange instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange instance + */ + EnumReservedRange.create = function create(properties) { + return new EnumReservedRange(properties); + }; - /** - * Verifies an ImageDetails message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ImageDetails.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.image != null && message.hasOwnProperty("image")) - if (!$util.isString(message.image)) - return "image: string expected"; - if (message.result != null && message.hasOwnProperty("result")) - switch (message.result) { - default: - return "result: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.description != null && message.hasOwnProperty("description")) - if (!$util.isString(message.description)) - return "description: string expected"; - return null; - }; + /** + * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumReservedRange.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.start != null && Object.hasOwnProperty.call(message, "start")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end); + return writer; + }; - /** - * Creates an ImageDetails message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} ImageDetails - */ - ImageDetails.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails(); - if (object.image != null) - message.image = String(object.image); - switch (object.result) { - case "AUDIT_RESULT_UNSPECIFIED": - case 0: - message.result = 0; - break; - case "ALLOW": - case 1: - message.result = 1; - break; - case "DENY": - case 2: - message.result = 2; - break; - } - if (object.description != null) - message.description = String(object.description); - return message; - }; + /** + * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumReservedRange.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a plain object from an ImageDetails message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails} message ImageDetails - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ImageDetails.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.image = ""; - object.result = options.enums === String ? "AUDIT_RESULT_UNSPECIFIED" : 0; - object.description = ""; - } - if (message.image != null && message.hasOwnProperty("image")) - object.image = message.image; - if (message.result != null && message.hasOwnProperty("result")) - object.result = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult[message.result] : message.result; - if (message.description != null && message.hasOwnProperty("description")) - object.description = message.description; - return object; - }; + /** + * Decodes an EnumReservedRange message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumReservedRange.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.start = reader.int32(); + break; + case 2: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Converts this ImageDetails to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails - * @instance - * @returns {Object.} JSON object - */ - ImageDetails.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumReservedRange.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * AuditResult enum. - * @name google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.ImageDetails.AuditResult - * @enum {number} - * @property {number} AUDIT_RESULT_UNSPECIFIED=0 AUDIT_RESULT_UNSPECIFIED value - * @property {number} ALLOW=1 ALLOW value - * @property {number} DENY=2 DENY value - */ - ImageDetails.AuditResult = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "AUDIT_RESULT_UNSPECIFIED"] = 0; - values[valuesById[1] = "ALLOW"] = 1; - values[valuesById[2] = "DENY"] = 2; - return values; - })(); + /** + * Verifies an EnumReservedRange message. + * @function verify + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumReservedRange.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.start != null && message.hasOwnProperty("start")) + if (!$util.isInteger(message.start)) + return "start: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; - return ImageDetails; - })(); + /** + * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange + */ + EnumReservedRange.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) + return object; + var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); + if (object.start != null) + message.start = object.start | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; - /** - * PolicyConformanceVerdict enum. - * @name google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.ContinuousValidationPodEvent.PolicyConformanceVerdict - * @enum {number} - * @property {number} POLICY_CONFORMANCE_VERDICT_UNSPECIFIED=0 POLICY_CONFORMANCE_VERDICT_UNSPECIFIED value - * @property {number} VIOLATES_POLICY=1 VIOLATES_POLICY value - */ - ContinuousValidationPodEvent.PolicyConformanceVerdict = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED"] = 0; - values[valuesById[1] = "VIOLATES_POLICY"] = 1; - return values; - })(); + /** + * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @static + * @param {google.protobuf.EnumDescriptorProto.EnumReservedRange} message EnumReservedRange + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumReservedRange.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.start = 0; + object.end = 0; + } + if (message.start != null && message.hasOwnProperty("start")) + object.start = message.start; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; - return ContinuousValidationPodEvent; - })(); + /** + * Converts this EnumReservedRange to JSON. + * @function toJSON + * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange + * @instance + * @returns {Object.} JSON object + */ + EnumReservedRange.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - ContinuousValidationEvent.UnsupportedPolicyEvent = (function() { + return EnumReservedRange; + })(); - /** - * Properties of an UnsupportedPolicyEvent. - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @interface IUnsupportedPolicyEvent - * @property {string|null} [description] UnsupportedPolicyEvent description - */ + return EnumDescriptorProto; + })(); - /** - * Constructs a new UnsupportedPolicyEvent. - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent - * @classdesc Represents an UnsupportedPolicyEvent. - * @implements IUnsupportedPolicyEvent - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent=} [properties] Properties to set - */ - function UnsupportedPolicyEvent(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + protobuf.EnumValueDescriptorProto = (function() { - /** - * UnsupportedPolicyEvent description. - * @member {string} description - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @instance - */ - UnsupportedPolicyEvent.prototype.description = ""; + /** + * Properties of an EnumValueDescriptorProto. + * @memberof google.protobuf + * @interface IEnumValueDescriptorProto + * @property {string|null} [name] EnumValueDescriptorProto name + * @property {number|null} [number] EnumValueDescriptorProto number + * @property {google.protobuf.IEnumValueOptions|null} [options] EnumValueDescriptorProto options + */ - /** - * Creates a new UnsupportedPolicyEvent instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent instance - */ - UnsupportedPolicyEvent.create = function create(properties) { - return new UnsupportedPolicyEvent(properties); - }; + /** + * Constructs a new EnumValueDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents an EnumValueDescriptorProto. + * @implements IEnumValueDescriptorProto + * @constructor + * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set + */ + function EnumValueDescriptorProto(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Encodes the specified UnsupportedPolicyEvent message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent} message UnsupportedPolicyEvent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UnsupportedPolicyEvent.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.description != null && Object.hasOwnProperty.call(message, "description")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.description); - return writer; - }; + /** + * EnumValueDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.name = ""; - /** - * Encodes the specified UnsupportedPolicyEvent message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.IUnsupportedPolicyEvent} message UnsupportedPolicyEvent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UnsupportedPolicyEvent.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * EnumValueDescriptorProto number. + * @member {number} number + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.number = 0; - /** - * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UnsupportedPolicyEvent.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.description = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * EnumValueDescriptorProto options. + * @member {google.protobuf.IEnumValueOptions|null|undefined} options + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + */ + EnumValueDescriptorProto.prototype.options = null; - /** - * Decodes an UnsupportedPolicyEvent message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UnsupportedPolicyEvent.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a new EnumValueDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto instance + */ + EnumValueDescriptorProto.create = function create(properties) { + return new EnumValueDescriptorProto(properties); + }; - /** - * Verifies an UnsupportedPolicyEvent message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UnsupportedPolicyEvent.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.description != null && message.hasOwnProperty("description")) - if (!$util.isString(message.description)) - return "description: string expected"; - return null; - }; + /** + * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.number != null && Object.hasOwnProperty.call(message, "number")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.number); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.EnumValueOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; - /** - * Creates an UnsupportedPolicyEvent message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} UnsupportedPolicyEvent - */ - UnsupportedPolicyEvent.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent(); - if (object.description != null) - message.description = String(object.description); - return message; - }; + /** + * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueDescriptorProto.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.number = reader.int32(); + break; + case 3: + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a plain object from an UnsupportedPolicyEvent message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent} message UnsupportedPolicyEvent - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UnsupportedPolicyEvent.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.description = ""; - if (message.description != null && message.hasOwnProperty("description")) - object.description = message.description; - return object; - }; + /** + * Verifies an EnumValueDescriptorProto message. + * @function verify + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumValueDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.number != null && message.hasOwnProperty("number")) + if (!$util.isInteger(message.number)) + return "number: integer expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; - /** - * Converts this UnsupportedPolicyEvent to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.ContinuousValidationEvent.UnsupportedPolicyEvent - * @instance - * @returns {Object.} JSON object - */ - UnsupportedPolicyEvent.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto + */ + EnumValueDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) + return object; + var message = new $root.google.protobuf.EnumValueDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.number != null) + message.number = object.number | 0; + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + } + return message; + }; - return UnsupportedPolicyEvent; - })(); + /** + * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumValueDescriptorProto + * @static + * @param {google.protobuf.EnumValueDescriptorProto} message EnumValueDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumValueDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.number = 0; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.number != null && message.hasOwnProperty("number")) + object.number = message.number; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.EnumValueOptions.toObject(message.options, options); + return object; + }; - return ContinuousValidationEvent; - })(); + /** + * Converts this EnumValueDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.EnumValueDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + EnumValueDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - v1beta1.Policy = (function() { + return EnumValueDescriptorProto; + })(); - /** - * Properties of a Policy. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IPolicy - * @property {string|null} [name] Policy name - * @property {string|null} [description] Policy description - * @property {google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode|null} [globalPolicyEvaluationMode] Policy globalPolicyEvaluationMode - * @property {Array.|null} [admissionWhitelistPatterns] Policy admissionWhitelistPatterns - * @property {Object.|null} [clusterAdmissionRules] Policy clusterAdmissionRules - * @property {google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null} [defaultAdmissionRule] Policy defaultAdmissionRule - * @property {google.protobuf.ITimestamp|null} [updateTime] Policy updateTime - */ + protobuf.ServiceDescriptorProto = (function() { - /** - * Constructs a new Policy. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a Policy. - * @implements IPolicy - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IPolicy=} [properties] Properties to set - */ - function Policy(properties) { - this.admissionWhitelistPatterns = []; - this.clusterAdmissionRules = {}; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Properties of a ServiceDescriptorProto. + * @memberof google.protobuf + * @interface IServiceDescriptorProto + * @property {string|null} [name] ServiceDescriptorProto name + * @property {Array.|null} [method] ServiceDescriptorProto method + * @property {google.protobuf.IServiceOptions|null} [options] ServiceDescriptorProto options + */ - /** - * Policy name. - * @member {string} name - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - */ - Policy.prototype.name = ""; + /** + * Constructs a new ServiceDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a ServiceDescriptorProto. + * @implements IServiceDescriptorProto + * @constructor + * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set + */ + function ServiceDescriptorProto(properties) { + this.method = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Policy description. - * @member {string} description - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - */ - Policy.prototype.description = ""; + /** + * ServiceDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.name = ""; - /** - * Policy globalPolicyEvaluationMode. - * @member {google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode} globalPolicyEvaluationMode - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - */ - Policy.prototype.globalPolicyEvaluationMode = 0; + /** + * ServiceDescriptorProto method. + * @member {Array.} method + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.method = $util.emptyArray; - /** - * Policy admissionWhitelistPatterns. - * @member {Array.} admissionWhitelistPatterns - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - */ - Policy.prototype.admissionWhitelistPatterns = $util.emptyArray; + /** + * ServiceDescriptorProto options. + * @member {google.protobuf.IServiceOptions|null|undefined} options + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + */ + ServiceDescriptorProto.prototype.options = null; - /** - * Policy clusterAdmissionRules. - * @member {Object.} clusterAdmissionRules - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - */ - Policy.prototype.clusterAdmissionRules = $util.emptyObject; + /** + * Creates a new ServiceDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto instance + */ + ServiceDescriptorProto.create = function create(properties) { + return new ServiceDescriptorProto(properties); + }; - /** - * Policy defaultAdmissionRule. - * @member {google.cloud.binaryauthorization.v1beta1.IAdmissionRule|null|undefined} defaultAdmissionRule - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - */ - Policy.prototype.defaultAdmissionRule = null; + /** + * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.method != null && message.method.length) + for (var i = 0; i < message.method.length; ++i) + $root.google.protobuf.MethodDescriptorProto.encode(message.method[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.ServiceOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + return writer; + }; - /** - * Policy updateTime. - * @member {google.protobuf.ITimestamp|null|undefined} updateTime - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - */ - Policy.prototype.updateTime = null; + /** + * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Creates a new Policy instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IPolicy=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy instance - */ - Policy.create = function create(properties) { - return new Policy(properties); - }; + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceDescriptorProto.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + if (!(message.method && message.method.length)) + message.method = []; + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + break; + case 3: + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Encodes the specified Policy message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IPolicy} message Policy message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Policy.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.admissionWhitelistPatterns != null && message.admissionWhitelistPatterns.length) - for (var i = 0; i < message.admissionWhitelistPatterns.length; ++i) - $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.encode(message.admissionWhitelistPatterns[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.clusterAdmissionRules != null && Object.hasOwnProperty.call(message, "clusterAdmissionRules")) - for (var keys = Object.keys(message.clusterAdmissionRules), i = 0; i < keys.length; ++i) { - writer.uint32(/* id 3, wireType 2 =*/26).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); - $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.encode(message.clusterAdmissionRules[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); - } - if (message.defaultAdmissionRule != null && Object.hasOwnProperty.call(message, "defaultAdmissionRule")) - $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.encode(message.defaultAdmissionRule, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) - $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.description != null && Object.hasOwnProperty.call(message, "description")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); - if (message.globalPolicyEvaluationMode != null && Object.hasOwnProperty.call(message, "globalPolicyEvaluationMode")) - writer.uint32(/* id 7, wireType 0 =*/56).int32(message.globalPolicyEvaluationMode); - return writer; - }; + /** + * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Policy.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IPolicy} message Policy message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Policy.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Verifies a ServiceDescriptorProto message. + * @function verify + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ServiceDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.method != null && message.hasOwnProperty("method")) { + if (!Array.isArray(message.method)) + return "method: array expected"; + for (var i = 0; i < message.method.length; ++i) { + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + if (error) + return "method." + error; + } + } + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.ServiceOptions.verify(message.options); + if (error) + return "options." + error; + } + return null; + }; - /** - * Decodes a Policy message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Policy.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.Policy(), key, value; - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 6: - message.description = reader.string(); - break; - case 7: - message.globalPolicyEvaluationMode = reader.int32(); - break; - case 2: - if (!(message.admissionWhitelistPatterns && message.admissionWhitelistPatterns.length)) - message.admissionWhitelistPatterns = []; - message.admissionWhitelistPatterns.push($root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.decode(reader, reader.uint32())); - break; - case 3: - if (message.clusterAdmissionRules === $util.emptyObject) - message.clusterAdmissionRules = {}; - var end2 = reader.uint32() + reader.pos; - key = ""; - value = null; - while (reader.pos < end2) { - var tag2 = reader.uint32(); - switch (tag2 >>> 3) { - case 1: - key = reader.string(); - break; - case 2: - value = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag2 & 7); - break; - } - } - message.clusterAdmissionRules[key] = value; - break; - case 4: - message.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.decode(reader, reader.uint32()); - break; - case 5: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto + */ + ServiceDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ServiceDescriptorProto) + return object; + var message = new $root.google.protobuf.ServiceDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.method) { + if (!Array.isArray(object.method)) + throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected"); + message.method = []; + for (var i = 0; i < object.method.length; ++i) { + if (typeof object.method[i] !== "object") + throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + } + } + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + } + return message; + }; - /** - * Decodes a Policy message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Policy.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ServiceDescriptorProto + * @static + * @param {google.protobuf.ServiceDescriptorProto} message ServiceDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ServiceDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.method = []; + if (options.defaults) { + object.name = ""; + object.options = null; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.method && message.method.length) { + object.method = []; + for (var j = 0; j < message.method.length; ++j) + object.method[j] = $root.google.protobuf.MethodDescriptorProto.toObject(message.method[j], options); + } + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.ServiceOptions.toObject(message.options, options); + return object; + }; - /** - * Verifies a Policy message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Policy.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.description != null && message.hasOwnProperty("description")) - if (!$util.isString(message.description)) - return "description: string expected"; - if (message.globalPolicyEvaluationMode != null && message.hasOwnProperty("globalPolicyEvaluationMode")) - switch (message.globalPolicyEvaluationMode) { - default: - return "globalPolicyEvaluationMode: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.admissionWhitelistPatterns != null && message.hasOwnProperty("admissionWhitelistPatterns")) { - if (!Array.isArray(message.admissionWhitelistPatterns)) - return "admissionWhitelistPatterns: array expected"; - for (var i = 0; i < message.admissionWhitelistPatterns.length; ++i) { - var error = $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify(message.admissionWhitelistPatterns[i]); - if (error) - return "admissionWhitelistPatterns." + error; - } - } - if (message.clusterAdmissionRules != null && message.hasOwnProperty("clusterAdmissionRules")) { - if (!$util.isObject(message.clusterAdmissionRules)) - return "clusterAdmissionRules: object expected"; - var key = Object.keys(message.clusterAdmissionRules); - for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify(message.clusterAdmissionRules[key[i]]); - if (error) - return "clusterAdmissionRules." + error; - } - } - if (message.defaultAdmissionRule != null && message.hasOwnProperty("defaultAdmissionRule")) { - var error = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify(message.defaultAdmissionRule); - if (error) - return "defaultAdmissionRule." + error; - } - if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); - if (error) - return "updateTime." + error; - } - return null; - }; + /** + * Converts this ServiceDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.ServiceDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + ServiceDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates a Policy message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.Policy} Policy - */ - Policy.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.Policy) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.Policy(); - if (object.name != null) - message.name = String(object.name); - if (object.description != null) - message.description = String(object.description); - switch (object.globalPolicyEvaluationMode) { - case "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED": - case 0: - message.globalPolicyEvaluationMode = 0; - break; - case "ENABLE": - case 1: - message.globalPolicyEvaluationMode = 1; - break; - case "DISABLE": - case 2: - message.globalPolicyEvaluationMode = 2; - break; - } - if (object.admissionWhitelistPatterns) { - if (!Array.isArray(object.admissionWhitelistPatterns)) - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.admissionWhitelistPatterns: array expected"); - message.admissionWhitelistPatterns = []; - for (var i = 0; i < object.admissionWhitelistPatterns.length; ++i) { - if (typeof object.admissionWhitelistPatterns[i] !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.admissionWhitelistPatterns: object expected"); - message.admissionWhitelistPatterns[i] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.fromObject(object.admissionWhitelistPatterns[i]); - } - } - if (object.clusterAdmissionRules) { - if (typeof object.clusterAdmissionRules !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.clusterAdmissionRules: object expected"); - message.clusterAdmissionRules = {}; - for (var keys = Object.keys(object.clusterAdmissionRules), i = 0; i < keys.length; ++i) { - if (typeof object.clusterAdmissionRules[keys[i]] !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.clusterAdmissionRules: object expected"); - message.clusterAdmissionRules[keys[i]] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.fromObject(object.clusterAdmissionRules[keys[i]]); - } - } - if (object.defaultAdmissionRule != null) { - if (typeof object.defaultAdmissionRule !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.defaultAdmissionRule: object expected"); - message.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.fromObject(object.defaultAdmissionRule); - } - if (object.updateTime != null) { - if (typeof object.updateTime !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Policy.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); - } - return message; - }; + return ServiceDescriptorProto; + })(); - /** - * Creates a plain object from a Policy message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @static - * @param {google.cloud.binaryauthorization.v1beta1.Policy} message Policy - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Policy.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.admissionWhitelistPatterns = []; - if (options.objects || options.defaults) - object.clusterAdmissionRules = {}; - if (options.defaults) { - object.name = ""; - object.defaultAdmissionRule = null; - object.updateTime = null; - object.description = ""; - object.globalPolicyEvaluationMode = options.enums === String ? "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED" : 0; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.admissionWhitelistPatterns && message.admissionWhitelistPatterns.length) { - object.admissionWhitelistPatterns = []; - for (var j = 0; j < message.admissionWhitelistPatterns.length; ++j) - object.admissionWhitelistPatterns[j] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.toObject(message.admissionWhitelistPatterns[j], options); - } - var keys2; - if (message.clusterAdmissionRules && (keys2 = Object.keys(message.clusterAdmissionRules)).length) { - object.clusterAdmissionRules = {}; - for (var j = 0; j < keys2.length; ++j) - object.clusterAdmissionRules[keys2[j]] = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.toObject(message.clusterAdmissionRules[keys2[j]], options); - } - if (message.defaultAdmissionRule != null && message.hasOwnProperty("defaultAdmissionRule")) - object.defaultAdmissionRule = $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.toObject(message.defaultAdmissionRule, options); - if (message.updateTime != null && message.hasOwnProperty("updateTime")) - object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); - if (message.description != null && message.hasOwnProperty("description")) - object.description = message.description; - if (message.globalPolicyEvaluationMode != null && message.hasOwnProperty("globalPolicyEvaluationMode")) - object.globalPolicyEvaluationMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode[message.globalPolicyEvaluationMode] : message.globalPolicyEvaluationMode; - return object; - }; + protobuf.MethodDescriptorProto = (function() { + + /** + * Properties of a MethodDescriptorProto. + * @memberof google.protobuf + * @interface IMethodDescriptorProto + * @property {string|null} [name] MethodDescriptorProto name + * @property {string|null} [inputType] MethodDescriptorProto inputType + * @property {string|null} [outputType] MethodDescriptorProto outputType + * @property {google.protobuf.IMethodOptions|null} [options] MethodDescriptorProto options + * @property {boolean|null} [clientStreaming] MethodDescriptorProto clientStreaming + * @property {boolean|null} [serverStreaming] MethodDescriptorProto serverStreaming + */ + + /** + * Constructs a new MethodDescriptorProto. + * @memberof google.protobuf + * @classdesc Represents a MethodDescriptorProto. + * @implements IMethodDescriptorProto + * @constructor + * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set + */ + function MethodDescriptorProto(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Converts this Policy to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.Policy - * @instance - * @returns {Object.} JSON object - */ - Policy.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * MethodDescriptorProto name. + * @member {string} name + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.name = ""; - /** - * GlobalPolicyEvaluationMode enum. - * @name google.cloud.binaryauthorization.v1beta1.Policy.GlobalPolicyEvaluationMode - * @enum {number} - * @property {number} GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED=0 GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED value - * @property {number} ENABLE=1 ENABLE value - * @property {number} DISABLE=2 DISABLE value - */ - Policy.GlobalPolicyEvaluationMode = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED"] = 0; - values[valuesById[1] = "ENABLE"] = 1; - values[valuesById[2] = "DISABLE"] = 2; - return values; - })(); + /** + * MethodDescriptorProto inputType. + * @member {string} inputType + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.inputType = ""; - return Policy; - })(); + /** + * MethodDescriptorProto outputType. + * @member {string} outputType + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.outputType = ""; - v1beta1.AdmissionWhitelistPattern = (function() { + /** + * MethodDescriptorProto options. + * @member {google.protobuf.IMethodOptions|null|undefined} options + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.options = null; - /** - * Properties of an AdmissionWhitelistPattern. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IAdmissionWhitelistPattern - * @property {string|null} [namePattern] AdmissionWhitelistPattern namePattern - */ + /** + * MethodDescriptorProto clientStreaming. + * @member {boolean} clientStreaming + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.clientStreaming = false; - /** - * Constructs a new AdmissionWhitelistPattern. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents an AdmissionWhitelistPattern. - * @implements IAdmissionWhitelistPattern - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern=} [properties] Properties to set - */ - function AdmissionWhitelistPattern(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; + /** + * MethodDescriptorProto serverStreaming. + * @member {boolean} serverStreaming + * @memberof google.protobuf.MethodDescriptorProto + * @instance + */ + MethodDescriptorProto.prototype.serverStreaming = false; + + /** + * Creates a new MethodDescriptorProto instance using the specified properties. + * @function create + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto instance + */ + MethodDescriptorProto.create = function create(properties) { + return new MethodDescriptorProto(properties); + }; + + /** + * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodDescriptorProto.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && Object.hasOwnProperty.call(message, "name")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); + if (message.inputType != null && Object.hasOwnProperty.call(message, "inputType")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.inputType); + if (message.outputType != null && Object.hasOwnProperty.call(message, "outputType")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.outputType); + if (message.options != null && Object.hasOwnProperty.call(message, "options")) + $root.google.protobuf.MethodOptions.encode(message.options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.clientStreaming != null && Object.hasOwnProperty.call(message, "clientStreaming")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.clientStreaming); + if (message.serverStreaming != null && Object.hasOwnProperty.call(message, "serverStreaming")) + writer.uint32(/* id 6, wireType 0 =*/48).bool(message.serverStreaming); + return writer; + }; + + /** + * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodDescriptorProto.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.name = reader.string(); + break; + case 2: + message.inputType = reader.string(); + break; + case 3: + message.outputType = reader.string(); + break; + case 4: + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + break; + case 5: + message.clientStreaming = reader.bool(); + break; + case 6: + message.serverStreaming = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; } + } + return message; + }; - /** - * AdmissionWhitelistPattern namePattern. - * @member {string} namePattern - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @instance - */ - AdmissionWhitelistPattern.prototype.namePattern = ""; + /** + * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodDescriptorProto.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a MethodDescriptorProto message. + * @function verify + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MethodDescriptorProto.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) + if (!$util.isString(message.name)) + return "name: string expected"; + if (message.inputType != null && message.hasOwnProperty("inputType")) + if (!$util.isString(message.inputType)) + return "inputType: string expected"; + if (message.outputType != null && message.hasOwnProperty("outputType")) + if (!$util.isString(message.outputType)) + return "outputType: string expected"; + if (message.options != null && message.hasOwnProperty("options")) { + var error = $root.google.protobuf.MethodOptions.verify(message.options); + if (error) + return "options." + error; + } + if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) + if (typeof message.clientStreaming !== "boolean") + return "clientStreaming: boolean expected"; + if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) + if (typeof message.serverStreaming !== "boolean") + return "serverStreaming: boolean expected"; + return null; + }; + + /** + * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto + */ + MethodDescriptorProto.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MethodDescriptorProto) + return object; + var message = new $root.google.protobuf.MethodDescriptorProto(); + if (object.name != null) + message.name = String(object.name); + if (object.inputType != null) + message.inputType = String(object.inputType); + if (object.outputType != null) + message.outputType = String(object.outputType); + if (object.options != null) { + if (typeof object.options !== "object") + throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + } + if (object.clientStreaming != null) + message.clientStreaming = Boolean(object.clientStreaming); + if (object.serverStreaming != null) + message.serverStreaming = Boolean(object.serverStreaming); + return message; + }; - /** - * Creates a new AdmissionWhitelistPattern instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern instance - */ - AdmissionWhitelistPattern.create = function create(properties) { - return new AdmissionWhitelistPattern(properties); - }; + /** + * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MethodDescriptorProto + * @static + * @param {google.protobuf.MethodDescriptorProto} message MethodDescriptorProto + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MethodDescriptorProto.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.name = ""; + object.inputType = ""; + object.outputType = ""; + object.options = null; + object.clientStreaming = false; + object.serverStreaming = false; + } + if (message.name != null && message.hasOwnProperty("name")) + object.name = message.name; + if (message.inputType != null && message.hasOwnProperty("inputType")) + object.inputType = message.inputType; + if (message.outputType != null && message.hasOwnProperty("outputType")) + object.outputType = message.outputType; + if (message.options != null && message.hasOwnProperty("options")) + object.options = $root.google.protobuf.MethodOptions.toObject(message.options, options); + if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming")) + object.clientStreaming = message.clientStreaming; + if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming")) + object.serverStreaming = message.serverStreaming; + return object; + }; - /** - * Encodes the specified AdmissionWhitelistPattern message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern} message AdmissionWhitelistPattern message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AdmissionWhitelistPattern.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.namePattern != null && Object.hasOwnProperty.call(message, "namePattern")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePattern); - return writer; - }; + /** + * Converts this MethodDescriptorProto to JSON. + * @function toJSON + * @memberof google.protobuf.MethodDescriptorProto + * @instance + * @returns {Object.} JSON object + */ + MethodDescriptorProto.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Encodes the specified AdmissionWhitelistPattern message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionWhitelistPattern} message AdmissionWhitelistPattern message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AdmissionWhitelistPattern.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + return MethodDescriptorProto; + })(); - /** - * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AdmissionWhitelistPattern.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.namePattern = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + protobuf.FileOptions = (function() { - /** - * Decodes an AdmissionWhitelistPattern message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AdmissionWhitelistPattern.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Properties of a FileOptions. + * @memberof google.protobuf + * @interface IFileOptions + * @property {string|null} [javaPackage] FileOptions javaPackage + * @property {string|null} [javaOuterClassname] FileOptions javaOuterClassname + * @property {boolean|null} [javaMultipleFiles] FileOptions javaMultipleFiles + * @property {boolean|null} [javaGenerateEqualsAndHash] FileOptions javaGenerateEqualsAndHash + * @property {boolean|null} [javaStringCheckUtf8] FileOptions javaStringCheckUtf8 + * @property {google.protobuf.FileOptions.OptimizeMode|null} [optimizeFor] FileOptions optimizeFor + * @property {string|null} [goPackage] FileOptions goPackage + * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices + * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices + * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices + * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices + * @property {boolean|null} [deprecated] FileOptions deprecated + * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas + * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix + * @property {string|null} [csharpNamespace] FileOptions csharpNamespace + * @property {string|null} [swiftPrefix] FileOptions swiftPrefix + * @property {string|null} [phpClassPrefix] FileOptions phpClassPrefix + * @property {string|null} [phpNamespace] FileOptions phpNamespace + * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace + * @property {string|null} [rubyPackage] FileOptions rubyPackage + * @property {Array.|null} [uninterpretedOption] FileOptions uninterpretedOption + * @property {Array.|null} [".google.api.resourceDefinition"] FileOptions .google.api.resourceDefinition + */ - /** - * Verifies an AdmissionWhitelistPattern message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - AdmissionWhitelistPattern.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.namePattern != null && message.hasOwnProperty("namePattern")) - if (!$util.isString(message.namePattern)) - return "namePattern: string expected"; - return null; - }; + /** + * Constructs a new FileOptions. + * @memberof google.protobuf + * @classdesc Represents a FileOptions. + * @implements IFileOptions + * @constructor + * @param {google.protobuf.IFileOptions=} [properties] Properties to set + */ + function FileOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.resourceDefinition"] = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Creates an AdmissionWhitelistPattern message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} AdmissionWhitelistPattern - */ - AdmissionWhitelistPattern.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern(); - if (object.namePattern != null) - message.namePattern = String(object.namePattern); - return message; - }; + /** + * FileOptions javaPackage. + * @member {string} javaPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaPackage = ""; - /** - * Creates a plain object from an AdmissionWhitelistPattern message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @static - * @param {google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern} message AdmissionWhitelistPattern - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - AdmissionWhitelistPattern.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.namePattern = ""; - if (message.namePattern != null && message.hasOwnProperty("namePattern")) - object.namePattern = message.namePattern; - return object; - }; + /** + * FileOptions javaOuterClassname. + * @member {string} javaOuterClassname + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaOuterClassname = ""; - /** - * Converts this AdmissionWhitelistPattern to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern - * @instance - * @returns {Object.} JSON object - */ - AdmissionWhitelistPattern.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * FileOptions javaMultipleFiles. + * @member {boolean} javaMultipleFiles + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaMultipleFiles = false; - return AdmissionWhitelistPattern; - })(); + /** + * FileOptions javaGenerateEqualsAndHash. + * @member {boolean} javaGenerateEqualsAndHash + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaGenerateEqualsAndHash = false; - v1beta1.AdmissionRule = (function() { + /** + * FileOptions javaStringCheckUtf8. + * @member {boolean} javaStringCheckUtf8 + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaStringCheckUtf8 = false; - /** - * Properties of an AdmissionRule. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IAdmissionRule - * @property {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode|null} [evaluationMode] AdmissionRule evaluationMode - * @property {Array.|null} [requireAttestationsBy] AdmissionRule requireAttestationsBy - * @property {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode|null} [enforcementMode] AdmissionRule enforcementMode - */ + /** + * FileOptions optimizeFor. + * @member {google.protobuf.FileOptions.OptimizeMode} optimizeFor + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.optimizeFor = 1; - /** - * Constructs a new AdmissionRule. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents an AdmissionRule. - * @implements IAdmissionRule - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule=} [properties] Properties to set - */ - function AdmissionRule(properties) { - this.requireAttestationsBy = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * FileOptions goPackage. + * @member {string} goPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.goPackage = ""; - /** - * AdmissionRule evaluationMode. - * @member {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode} evaluationMode - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @instance - */ - AdmissionRule.prototype.evaluationMode = 0; + /** + * FileOptions ccGenericServices. + * @member {boolean} ccGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.ccGenericServices = false; - /** - * AdmissionRule requireAttestationsBy. - * @member {Array.} requireAttestationsBy - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @instance - */ - AdmissionRule.prototype.requireAttestationsBy = $util.emptyArray; + /** + * FileOptions javaGenericServices. + * @member {boolean} javaGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.javaGenericServices = false; - /** - * AdmissionRule enforcementMode. - * @member {google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode} enforcementMode - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @instance - */ - AdmissionRule.prototype.enforcementMode = 0; + /** + * FileOptions pyGenericServices. + * @member {boolean} pyGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.pyGenericServices = false; - /** - * Creates a new AdmissionRule instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule instance - */ - AdmissionRule.create = function create(properties) { - return new AdmissionRule(properties); - }; + /** + * FileOptions phpGenericServices. + * @member {boolean} phpGenericServices + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpGenericServices = false; - /** - * Encodes the specified AdmissionRule message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule} message AdmissionRule message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AdmissionRule.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.evaluationMode != null && Object.hasOwnProperty.call(message, "evaluationMode")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.evaluationMode); - if (message.requireAttestationsBy != null && message.requireAttestationsBy.length) - for (var i = 0; i < message.requireAttestationsBy.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.requireAttestationsBy[i]); - if (message.enforcementMode != null && Object.hasOwnProperty.call(message, "enforcementMode")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.enforcementMode); - return writer; - }; + /** + * FileOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.deprecated = false; - /** - * Encodes the specified AdmissionRule message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AdmissionRule.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAdmissionRule} message AdmissionRule message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AdmissionRule.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * FileOptions ccEnableArenas. + * @member {boolean} ccEnableArenas + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.ccEnableArenas = true; - /** - * Decodes an AdmissionRule message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AdmissionRule.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.evaluationMode = reader.int32(); - break; - case 2: - if (!(message.requireAttestationsBy && message.requireAttestationsBy.length)) - message.requireAttestationsBy = []; - message.requireAttestationsBy.push(reader.string()); - break; - case 3: - message.enforcementMode = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * FileOptions objcClassPrefix. + * @member {string} objcClassPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.objcClassPrefix = ""; - /** - * Decodes an AdmissionRule message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AdmissionRule.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * FileOptions csharpNamespace. + * @member {string} csharpNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.csharpNamespace = ""; + + /** + * FileOptions swiftPrefix. + * @member {string} swiftPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.swiftPrefix = ""; + + /** + * FileOptions phpClassPrefix. + * @member {string} phpClassPrefix + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpClassPrefix = ""; - /** - * Verifies an AdmissionRule message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - AdmissionRule.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode")) - switch (message.evaluationMode) { - default: - return "evaluationMode: enum value expected"; - case 0: - case 1: - case 2: - case 3: - break; - } - if (message.requireAttestationsBy != null && message.hasOwnProperty("requireAttestationsBy")) { - if (!Array.isArray(message.requireAttestationsBy)) - return "requireAttestationsBy: array expected"; - for (var i = 0; i < message.requireAttestationsBy.length; ++i) - if (!$util.isString(message.requireAttestationsBy[i])) - return "requireAttestationsBy: string[] expected"; - } - if (message.enforcementMode != null && message.hasOwnProperty("enforcementMode")) - switch (message.enforcementMode) { - default: - return "enforcementMode: enum value expected"; - case 0: - case 1: - case 2: - break; - } - return null; - }; + /** + * FileOptions phpNamespace. + * @member {string} phpNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpNamespace = ""; - /** - * Creates an AdmissionRule message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.AdmissionRule} AdmissionRule - */ - AdmissionRule.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule(); - switch (object.evaluationMode) { - case "EVALUATION_MODE_UNSPECIFIED": - case 0: - message.evaluationMode = 0; - break; - case "ALWAYS_ALLOW": - case 1: - message.evaluationMode = 1; - break; - case "REQUIRE_ATTESTATION": - case 2: - message.evaluationMode = 2; - break; - case "ALWAYS_DENY": - case 3: - message.evaluationMode = 3; - break; - } - if (object.requireAttestationsBy) { - if (!Array.isArray(object.requireAttestationsBy)) - throw TypeError(".google.cloud.binaryauthorization.v1beta1.AdmissionRule.requireAttestationsBy: array expected"); - message.requireAttestationsBy = []; - for (var i = 0; i < object.requireAttestationsBy.length; ++i) - message.requireAttestationsBy[i] = String(object.requireAttestationsBy[i]); - } - switch (object.enforcementMode) { - case "ENFORCEMENT_MODE_UNSPECIFIED": - case 0: - message.enforcementMode = 0; - break; - case "ENFORCED_BLOCK_AND_AUDIT_LOG": - case 1: - message.enforcementMode = 1; - break; - case "DRYRUN_AUDIT_LOG_ONLY": - case 2: - message.enforcementMode = 2; - break; - } - return message; - }; + /** + * FileOptions phpMetadataNamespace. + * @member {string} phpMetadataNamespace + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.phpMetadataNamespace = ""; - /** - * Creates a plain object from an AdmissionRule message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @static - * @param {google.cloud.binaryauthorization.v1beta1.AdmissionRule} message AdmissionRule - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - AdmissionRule.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.requireAttestationsBy = []; - if (options.defaults) { - object.evaluationMode = options.enums === String ? "EVALUATION_MODE_UNSPECIFIED" : 0; - object.enforcementMode = options.enums === String ? "ENFORCEMENT_MODE_UNSPECIFIED" : 0; - } - if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode")) - object.evaluationMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode[message.evaluationMode] : message.evaluationMode; - if (message.requireAttestationsBy && message.requireAttestationsBy.length) { - object.requireAttestationsBy = []; - for (var j = 0; j < message.requireAttestationsBy.length; ++j) - object.requireAttestationsBy[j] = message.requireAttestationsBy[j]; - } - if (message.enforcementMode != null && message.hasOwnProperty("enforcementMode")) - object.enforcementMode = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode[message.enforcementMode] : message.enforcementMode; - return object; - }; + /** + * FileOptions rubyPackage. + * @member {string} rubyPackage + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.rubyPackage = ""; - /** - * Converts this AdmissionRule to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.AdmissionRule - * @instance - * @returns {Object.} JSON object - */ - AdmissionRule.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * FileOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype.uninterpretedOption = $util.emptyArray; - /** - * EvaluationMode enum. - * @name google.cloud.binaryauthorization.v1beta1.AdmissionRule.EvaluationMode - * @enum {number} - * @property {number} EVALUATION_MODE_UNSPECIFIED=0 EVALUATION_MODE_UNSPECIFIED value - * @property {number} ALWAYS_ALLOW=1 ALWAYS_ALLOW value - * @property {number} REQUIRE_ATTESTATION=2 REQUIRE_ATTESTATION value - * @property {number} ALWAYS_DENY=3 ALWAYS_DENY value - */ - AdmissionRule.EvaluationMode = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "EVALUATION_MODE_UNSPECIFIED"] = 0; - values[valuesById[1] = "ALWAYS_ALLOW"] = 1; - values[valuesById[2] = "REQUIRE_ATTESTATION"] = 2; - values[valuesById[3] = "ALWAYS_DENY"] = 3; - return values; - })(); + /** + * FileOptions .google.api.resourceDefinition. + * @member {Array.} .google.api.resourceDefinition + * @memberof google.protobuf.FileOptions + * @instance + */ + FileOptions.prototype[".google.api.resourceDefinition"] = $util.emptyArray; - /** - * EnforcementMode enum. - * @name google.cloud.binaryauthorization.v1beta1.AdmissionRule.EnforcementMode - * @enum {number} - * @property {number} ENFORCEMENT_MODE_UNSPECIFIED=0 ENFORCEMENT_MODE_UNSPECIFIED value - * @property {number} ENFORCED_BLOCK_AND_AUDIT_LOG=1 ENFORCED_BLOCK_AND_AUDIT_LOG value - * @property {number} DRYRUN_AUDIT_LOG_ONLY=2 DRYRUN_AUDIT_LOG_ONLY value - */ - AdmissionRule.EnforcementMode = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "ENFORCEMENT_MODE_UNSPECIFIED"] = 0; - values[valuesById[1] = "ENFORCED_BLOCK_AND_AUDIT_LOG"] = 1; - values[valuesById[2] = "DRYRUN_AUDIT_LOG_ONLY"] = 2; - return values; - })(); + /** + * Creates a new FileOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions=} [properties] Properties to set + * @returns {google.protobuf.FileOptions} FileOptions instance + */ + FileOptions.create = function create(properties) { + return new FileOptions(properties); + }; + + /** + * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.javaPackage != null && Object.hasOwnProperty.call(message, "javaPackage")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.javaPackage); + if (message.javaOuterClassname != null && Object.hasOwnProperty.call(message, "javaOuterClassname")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.javaOuterClassname); + if (message.optimizeFor != null && Object.hasOwnProperty.call(message, "optimizeFor")) + writer.uint32(/* id 9, wireType 0 =*/72).int32(message.optimizeFor); + if (message.javaMultipleFiles != null && Object.hasOwnProperty.call(message, "javaMultipleFiles")) + writer.uint32(/* id 10, wireType 0 =*/80).bool(message.javaMultipleFiles); + if (message.goPackage != null && Object.hasOwnProperty.call(message, "goPackage")) + writer.uint32(/* id 11, wireType 2 =*/90).string(message.goPackage); + if (message.ccGenericServices != null && Object.hasOwnProperty.call(message, "ccGenericServices")) + writer.uint32(/* id 16, wireType 0 =*/128).bool(message.ccGenericServices); + if (message.javaGenericServices != null && Object.hasOwnProperty.call(message, "javaGenericServices")) + writer.uint32(/* id 17, wireType 0 =*/136).bool(message.javaGenericServices); + if (message.pyGenericServices != null && Object.hasOwnProperty.call(message, "pyGenericServices")) + writer.uint32(/* id 18, wireType 0 =*/144).bool(message.pyGenericServices); + if (message.javaGenerateEqualsAndHash != null && Object.hasOwnProperty.call(message, "javaGenerateEqualsAndHash")) + writer.uint32(/* id 20, wireType 0 =*/160).bool(message.javaGenerateEqualsAndHash); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 23, wireType 0 =*/184).bool(message.deprecated); + if (message.javaStringCheckUtf8 != null && Object.hasOwnProperty.call(message, "javaStringCheckUtf8")) + writer.uint32(/* id 27, wireType 0 =*/216).bool(message.javaStringCheckUtf8); + if (message.ccEnableArenas != null && Object.hasOwnProperty.call(message, "ccEnableArenas")) + writer.uint32(/* id 31, wireType 0 =*/248).bool(message.ccEnableArenas); + if (message.objcClassPrefix != null && Object.hasOwnProperty.call(message, "objcClassPrefix")) + writer.uint32(/* id 36, wireType 2 =*/290).string(message.objcClassPrefix); + if (message.csharpNamespace != null && Object.hasOwnProperty.call(message, "csharpNamespace")) + writer.uint32(/* id 37, wireType 2 =*/298).string(message.csharpNamespace); + if (message.swiftPrefix != null && Object.hasOwnProperty.call(message, "swiftPrefix")) + writer.uint32(/* id 39, wireType 2 =*/314).string(message.swiftPrefix); + if (message.phpClassPrefix != null && Object.hasOwnProperty.call(message, "phpClassPrefix")) + writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix); + if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace")) + writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace); + if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices")) + writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices); + if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace")) + writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace); + if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage")) + writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.resourceDefinition"] != null && message[".google.api.resourceDefinition"].length) + for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) + $root.google.api.ResourceDescriptor.encode(message[".google.api.resourceDefinition"][i], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); + return writer; + }; - return AdmissionRule; - })(); + /** + * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FileOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - v1beta1.Attestor = (function() { + /** + * Decodes a FileOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FileOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FileOptions} FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.javaPackage = reader.string(); + break; + case 8: + message.javaOuterClassname = reader.string(); + break; + case 10: + message.javaMultipleFiles = reader.bool(); + break; + case 20: + message.javaGenerateEqualsAndHash = reader.bool(); + break; + case 27: + message.javaStringCheckUtf8 = reader.bool(); + break; + case 9: + message.optimizeFor = reader.int32(); + break; + case 11: + message.goPackage = reader.string(); + break; + case 16: + message.ccGenericServices = reader.bool(); + break; + case 17: + message.javaGenericServices = reader.bool(); + break; + case 18: + message.pyGenericServices = reader.bool(); + break; + case 42: + message.phpGenericServices = reader.bool(); + break; + case 23: + message.deprecated = reader.bool(); + break; + case 31: + message.ccEnableArenas = reader.bool(); + break; + case 36: + message.objcClassPrefix = reader.string(); + break; + case 37: + message.csharpNamespace = reader.string(); + break; + case 39: + message.swiftPrefix = reader.string(); + break; + case 40: + message.phpClassPrefix = reader.string(); + break; + case 41: + message.phpNamespace = reader.string(); + break; + case 44: + message.phpMetadataNamespace = reader.string(); + break; + case 45: + message.rubyPackage = reader.string(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1053: + if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) + message[".google.api.resourceDefinition"] = []; + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Properties of an Attestor. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IAttestor - * @property {string|null} [name] Attestor name - * @property {string|null} [description] Attestor description - * @property {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null} [userOwnedDrydockNote] Attestor userOwnedDrydockNote - * @property {google.protobuf.ITimestamp|null} [updateTime] Attestor updateTime - */ + /** + * Decodes a FileOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FileOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FileOptions} FileOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FileOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Constructs a new Attestor. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents an Attestor. - * @implements IAttestor - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IAttestor=} [properties] Properties to set - */ - function Attestor(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; + /** + * Verifies a FileOptions message. + * @function verify + * @memberof google.protobuf.FileOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FileOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) + if (!$util.isString(message.javaPackage)) + return "javaPackage: string expected"; + if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) + if (!$util.isString(message.javaOuterClassname)) + return "javaOuterClassname: string expected"; + if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) + if (typeof message.javaMultipleFiles !== "boolean") + return "javaMultipleFiles: boolean expected"; + if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) + if (typeof message.javaGenerateEqualsAndHash !== "boolean") + return "javaGenerateEqualsAndHash: boolean expected"; + if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) + if (typeof message.javaStringCheckUtf8 !== "boolean") + return "javaStringCheckUtf8: boolean expected"; + if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) + switch (message.optimizeFor) { + default: + return "optimizeFor: enum value expected"; + case 1: + case 2: + case 3: + break; + } + if (message.goPackage != null && message.hasOwnProperty("goPackage")) + if (!$util.isString(message.goPackage)) + return "goPackage: string expected"; + if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) + if (typeof message.ccGenericServices !== "boolean") + return "ccGenericServices: boolean expected"; + if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) + if (typeof message.javaGenericServices !== "boolean") + return "javaGenericServices: boolean expected"; + if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) + if (typeof message.pyGenericServices !== "boolean") + return "pyGenericServices: boolean expected"; + if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) + if (typeof message.phpGenericServices !== "boolean") + return "phpGenericServices: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) + if (typeof message.ccEnableArenas !== "boolean") + return "ccEnableArenas: boolean expected"; + if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) + if (!$util.isString(message.objcClassPrefix)) + return "objcClassPrefix: string expected"; + if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) + if (!$util.isString(message.csharpNamespace)) + return "csharpNamespace: string expected"; + if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) + if (!$util.isString(message.swiftPrefix)) + return "swiftPrefix: string expected"; + if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) + if (!$util.isString(message.phpClassPrefix)) + return "phpClassPrefix: string expected"; + if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) + if (!$util.isString(message.phpNamespace)) + return "phpNamespace: string expected"; + if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) + if (!$util.isString(message.phpMetadataNamespace)) + return "phpMetadataNamespace: string expected"; + if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) + if (!$util.isString(message.rubyPackage)) + return "rubyPackage: string expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.resourceDefinition"] != null && message.hasOwnProperty(".google.api.resourceDefinition")) { + if (!Array.isArray(message[".google.api.resourceDefinition"])) + return ".google.api.resourceDefinition: array expected"; + for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + if (error) + return ".google.api.resourceDefinition." + error; } + } + return null; + }; - /** - * Attestor name. - * @member {string} name - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @instance - */ - Attestor.prototype.name = ""; - - /** - * Attestor description. - * @member {string} description - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @instance - */ - Attestor.prototype.description = ""; - - /** - * Attestor userOwnedDrydockNote. - * @member {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote|null|undefined} userOwnedDrydockNote - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @instance - */ - Attestor.prototype.userOwnedDrydockNote = null; - - /** - * Attestor updateTime. - * @member {google.protobuf.ITimestamp|null|undefined} updateTime - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @instance - */ - Attestor.prototype.updateTime = null; + /** + * Creates a FileOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FileOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FileOptions} FileOptions + */ + FileOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FileOptions) + return object; + var message = new $root.google.protobuf.FileOptions(); + if (object.javaPackage != null) + message.javaPackage = String(object.javaPackage); + if (object.javaOuterClassname != null) + message.javaOuterClassname = String(object.javaOuterClassname); + if (object.javaMultipleFiles != null) + message.javaMultipleFiles = Boolean(object.javaMultipleFiles); + if (object.javaGenerateEqualsAndHash != null) + message.javaGenerateEqualsAndHash = Boolean(object.javaGenerateEqualsAndHash); + if (object.javaStringCheckUtf8 != null) + message.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8); + switch (object.optimizeFor) { + case "SPEED": + case 1: + message.optimizeFor = 1; + break; + case "CODE_SIZE": + case 2: + message.optimizeFor = 2; + break; + case "LITE_RUNTIME": + case 3: + message.optimizeFor = 3; + break; + } + if (object.goPackage != null) + message.goPackage = String(object.goPackage); + if (object.ccGenericServices != null) + message.ccGenericServices = Boolean(object.ccGenericServices); + if (object.javaGenericServices != null) + message.javaGenericServices = Boolean(object.javaGenericServices); + if (object.pyGenericServices != null) + message.pyGenericServices = Boolean(object.pyGenericServices); + if (object.phpGenericServices != null) + message.phpGenericServices = Boolean(object.phpGenericServices); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.ccEnableArenas != null) + message.ccEnableArenas = Boolean(object.ccEnableArenas); + if (object.objcClassPrefix != null) + message.objcClassPrefix = String(object.objcClassPrefix); + if (object.csharpNamespace != null) + message.csharpNamespace = String(object.csharpNamespace); + if (object.swiftPrefix != null) + message.swiftPrefix = String(object.swiftPrefix); + if (object.phpClassPrefix != null) + message.phpClassPrefix = String(object.phpClassPrefix); + if (object.phpNamespace != null) + message.phpNamespace = String(object.phpNamespace); + if (object.phpMetadataNamespace != null) + message.phpMetadataNamespace = String(object.phpMetadataNamespace); + if (object.rubyPackage != null) + message.rubyPackage = String(object.rubyPackage); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.resourceDefinition"]) { + if (!Array.isArray(object[".google.api.resourceDefinition"])) + throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: array expected"); + message[".google.api.resourceDefinition"] = []; + for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { + if (typeof object[".google.api.resourceDefinition"][i] !== "object") + throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + } + } + return message; + }; - // OneOf field names bound to virtual getters and setters - var $oneOfFields; + /** + * Creates a plain object from a FileOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FileOptions + * @static + * @param {google.protobuf.FileOptions} message FileOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FileOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.resourceDefinition"] = []; + } + if (options.defaults) { + object.javaPackage = ""; + object.javaOuterClassname = ""; + object.optimizeFor = options.enums === String ? "SPEED" : 1; + object.javaMultipleFiles = false; + object.goPackage = ""; + object.ccGenericServices = false; + object.javaGenericServices = false; + object.pyGenericServices = false; + object.javaGenerateEqualsAndHash = false; + object.deprecated = false; + object.javaStringCheckUtf8 = false; + object.ccEnableArenas = true; + object.objcClassPrefix = ""; + object.csharpNamespace = ""; + object.swiftPrefix = ""; + object.phpClassPrefix = ""; + object.phpNamespace = ""; + object.phpGenericServices = false; + object.phpMetadataNamespace = ""; + object.rubyPackage = ""; + } + if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) + object.javaPackage = message.javaPackage; + if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname")) + object.javaOuterClassname = message.javaOuterClassname; + if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor")) + object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor; + if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles")) + object.javaMultipleFiles = message.javaMultipleFiles; + if (message.goPackage != null && message.hasOwnProperty("goPackage")) + object.goPackage = message.goPackage; + if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices")) + object.ccGenericServices = message.ccGenericServices; + if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices")) + object.javaGenericServices = message.javaGenericServices; + if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices")) + object.pyGenericServices = message.pyGenericServices; + if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash")) + object.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8")) + object.javaStringCheckUtf8 = message.javaStringCheckUtf8; + if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas")) + object.ccEnableArenas = message.ccEnableArenas; + if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix")) + object.objcClassPrefix = message.objcClassPrefix; + if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace")) + object.csharpNamespace = message.csharpNamespace; + if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix")) + object.swiftPrefix = message.swiftPrefix; + if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix")) + object.phpClassPrefix = message.phpClassPrefix; + if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace")) + object.phpNamespace = message.phpNamespace; + if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices")) + object.phpGenericServices = message.phpGenericServices; + if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace")) + object.phpMetadataNamespace = message.phpMetadataNamespace; + if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage")) + object.rubyPackage = message.rubyPackage; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length) { + object[".google.api.resourceDefinition"] = []; + for (var j = 0; j < message[".google.api.resourceDefinition"].length; ++j) + object[".google.api.resourceDefinition"][j] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resourceDefinition"][j], options); + } + return object; + }; - /** - * Attestor attestorType. - * @member {"userOwnedDrydockNote"|undefined} attestorType - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @instance - */ - Object.defineProperty(Attestor.prototype, "attestorType", { - get: $util.oneOfGetter($oneOfFields = ["userOwnedDrydockNote"]), - set: $util.oneOfSetter($oneOfFields) - }); + /** + * Converts this FileOptions to JSON. + * @function toJSON + * @memberof google.protobuf.FileOptions + * @instance + * @returns {Object.} JSON object + */ + FileOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Creates a new Attestor instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAttestor=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor instance - */ - Attestor.create = function create(properties) { - return new Attestor(properties); - }; + /** + * OptimizeMode enum. + * @name google.protobuf.FileOptions.OptimizeMode + * @enum {number} + * @property {number} SPEED=1 SPEED value + * @property {number} CODE_SIZE=2 CODE_SIZE value + * @property {number} LITE_RUNTIME=3 LITE_RUNTIME value + */ + FileOptions.OptimizeMode = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[1] = "SPEED"] = 1; + values[valuesById[2] = "CODE_SIZE"] = 2; + values[valuesById[3] = "LITE_RUNTIME"] = 3; + return values; + })(); - /** - * Encodes the specified Attestor message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAttestor} message Attestor message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Attestor.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.userOwnedDrydockNote != null && Object.hasOwnProperty.call(message, "userOwnedDrydockNote")) - $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.encode(message.userOwnedDrydockNote, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime")) - $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.description != null && Object.hasOwnProperty.call(message, "description")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.description); - return writer; - }; + return FileOptions; + })(); - /** - * Encodes the specified Attestor message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.Attestor.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAttestor} message Attestor message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Attestor.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + protobuf.MessageOptions = (function() { - /** - * Decodes an Attestor message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Attestor.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.Attestor(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 6: - message.description = reader.string(); - break; - case 3: - message.userOwnedDrydockNote = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.decode(reader, reader.uint32()); - break; - case 4: - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Properties of a MessageOptions. + * @memberof google.protobuf + * @interface IMessageOptions + * @property {boolean|null} [messageSetWireFormat] MessageOptions messageSetWireFormat + * @property {boolean|null} [noStandardDescriptorAccessor] MessageOptions noStandardDescriptorAccessor + * @property {boolean|null} [deprecated] MessageOptions deprecated + * @property {boolean|null} [mapEntry] MessageOptions mapEntry + * @property {Array.|null} [uninterpretedOption] MessageOptions uninterpretedOption + * @property {google.api.IResourceDescriptor|null} [".google.api.resource"] MessageOptions .google.api.resource + */ - /** - * Decodes an Attestor message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Attestor.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Constructs a new MessageOptions. + * @memberof google.protobuf + * @classdesc Represents a MessageOptions. + * @implements IMessageOptions + * @constructor + * @param {google.protobuf.IMessageOptions=} [properties] Properties to set + */ + function MessageOptions(properties) { + this.uninterpretedOption = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Verifies an Attestor message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Attestor.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - var properties = {}; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.description != null && message.hasOwnProperty("description")) - if (!$util.isString(message.description)) - return "description: string expected"; - if (message.userOwnedDrydockNote != null && message.hasOwnProperty("userOwnedDrydockNote")) { - properties.attestorType = 1; - { - var error = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify(message.userOwnedDrydockNote); - if (error) - return "userOwnedDrydockNote." + error; - } - } - if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); - if (error) - return "updateTime." + error; - } - return null; - }; + /** + * MessageOptions messageSetWireFormat. + * @member {boolean} messageSetWireFormat + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.messageSetWireFormat = false; - /** - * Creates an Attestor message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.Attestor} Attestor - */ - Attestor.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.Attestor) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.Attestor(); - if (object.name != null) - message.name = String(object.name); - if (object.description != null) - message.description = String(object.description); - if (object.userOwnedDrydockNote != null) { - if (typeof object.userOwnedDrydockNote !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Attestor.userOwnedDrydockNote: object expected"); - message.userOwnedDrydockNote = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.fromObject(object.userOwnedDrydockNote); - } - if (object.updateTime != null) { - if (typeof object.updateTime !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.Attestor.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); - } - return message; - }; + /** + * MessageOptions noStandardDescriptorAccessor. + * @member {boolean} noStandardDescriptorAccessor + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.noStandardDescriptorAccessor = false; - /** - * Creates a plain object from an Attestor message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @static - * @param {google.cloud.binaryauthorization.v1beta1.Attestor} message Attestor - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Attestor.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.updateTime = null; - object.description = ""; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.userOwnedDrydockNote != null && message.hasOwnProperty("userOwnedDrydockNote")) { - object.userOwnedDrydockNote = $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.toObject(message.userOwnedDrydockNote, options); - if (options.oneofs) - object.attestorType = "userOwnedDrydockNote"; - } - if (message.updateTime != null && message.hasOwnProperty("updateTime")) - object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options); - if (message.description != null && message.hasOwnProperty("description")) - object.description = message.description; - return object; - }; + /** + * MessageOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.deprecated = false; - /** - * Converts this Attestor to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.Attestor - * @instance - * @returns {Object.} JSON object - */ - Attestor.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * MessageOptions mapEntry. + * @member {boolean} mapEntry + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.mapEntry = false; + + /** + * MessageOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype.uninterpretedOption = $util.emptyArray; - return Attestor; - })(); + /** + * MessageOptions .google.api.resource. + * @member {google.api.IResourceDescriptor|null|undefined} .google.api.resource + * @memberof google.protobuf.MessageOptions + * @instance + */ + MessageOptions.prototype[".google.api.resource"] = null; - v1beta1.UserOwnedDrydockNote = (function() { + /** + * Creates a new MessageOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions=} [properties] Properties to set + * @returns {google.protobuf.MessageOptions} MessageOptions instance + */ + MessageOptions.create = function create(properties) { + return new MessageOptions(properties); + }; - /** - * Properties of a UserOwnedDrydockNote. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IUserOwnedDrydockNote - * @property {string|null} [noteReference] UserOwnedDrydockNote noteReference - * @property {Array.|null} [publicKeys] UserOwnedDrydockNote publicKeys - * @property {string|null} [delegationServiceAccountEmail] UserOwnedDrydockNote delegationServiceAccountEmail - */ + /** + * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MessageOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.messageSetWireFormat != null && Object.hasOwnProperty.call(message, "messageSetWireFormat")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.messageSetWireFormat); + if (message.noStandardDescriptorAccessor != null && Object.hasOwnProperty.call(message, "noStandardDescriptorAccessor")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.noStandardDescriptorAccessor); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.mapEntry != null && Object.hasOwnProperty.call(message, "mapEntry")) + writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.resource"] != null && Object.hasOwnProperty.call(message, ".google.api.resource")) + $root.google.api.ResourceDescriptor.encode(message[".google.api.resource"], writer.uint32(/* id 1053, wireType 2 =*/8426).fork()).ldelim(); + return writer; + }; - /** - * Constructs a new UserOwnedDrydockNote. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a UserOwnedDrydockNote. - * @implements IUserOwnedDrydockNote - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote=} [properties] Properties to set - */ - function UserOwnedDrydockNote(properties) { - this.publicKeys = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; + /** + * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MessageOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MessageOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MessageOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MessageOptions} MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MessageOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.messageSetWireFormat = reader.bool(); + break; + case 2: + message.noStandardDescriptorAccessor = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 7: + message.mapEntry = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1053: + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; } + } + return message; + }; - /** - * UserOwnedDrydockNote noteReference. - * @member {string} noteReference - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @instance - */ - UserOwnedDrydockNote.prototype.noteReference = ""; + /** + * Decodes a MessageOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MessageOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MessageOptions} MessageOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MessageOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * UserOwnedDrydockNote publicKeys. - * @member {Array.} publicKeys - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @instance - */ - UserOwnedDrydockNote.prototype.publicKeys = $util.emptyArray; + /** + * Verifies a MessageOptions message. + * @function verify + * @memberof google.protobuf.MessageOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MessageOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) + if (typeof message.messageSetWireFormat !== "boolean") + return "messageSetWireFormat: boolean expected"; + if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) + if (typeof message.noStandardDescriptorAccessor !== "boolean") + return "noStandardDescriptorAccessor: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) + if (typeof message.mapEntry !== "boolean") + return "mapEntry: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + if (error) + return ".google.api.resource." + error; + } + return null; + }; - /** - * UserOwnedDrydockNote delegationServiceAccountEmail. - * @member {string} delegationServiceAccountEmail - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @instance - */ - UserOwnedDrydockNote.prototype.delegationServiceAccountEmail = ""; + /** + * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MessageOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MessageOptions} MessageOptions + */ + MessageOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MessageOptions) + return object; + var message = new $root.google.protobuf.MessageOptions(); + if (object.messageSetWireFormat != null) + message.messageSetWireFormat = Boolean(object.messageSetWireFormat); + if (object.noStandardDescriptorAccessor != null) + message.noStandardDescriptorAccessor = Boolean(object.noStandardDescriptorAccessor); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.mapEntry != null) + message.mapEntry = Boolean(object.mapEntry); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.resource"] != null) { + if (typeof object[".google.api.resource"] !== "object") + throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + } + return message; + }; - /** - * Creates a new UserOwnedDrydockNote instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote instance - */ - UserOwnedDrydockNote.create = function create(properties) { - return new UserOwnedDrydockNote(properties); - }; + /** + * Creates a plain object from a MessageOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MessageOptions + * @static + * @param {google.protobuf.MessageOptions} message MessageOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MessageOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.messageSetWireFormat = false; + object.noStandardDescriptorAccessor = false; + object.deprecated = false; + object.mapEntry = false; + object[".google.api.resource"] = null; + } + if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) + object.messageSetWireFormat = message.messageSetWireFormat; + if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor")) + object.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.mapEntry != null && message.hasOwnProperty("mapEntry")) + object.mapEntry = message.mapEntry; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) + object[".google.api.resource"] = $root.google.api.ResourceDescriptor.toObject(message[".google.api.resource"], options); + return object; + }; - /** - * Encodes the specified UserOwnedDrydockNote message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote} message UserOwnedDrydockNote message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UserOwnedDrydockNote.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.noteReference != null && Object.hasOwnProperty.call(message, "noteReference")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.noteReference); - if (message.publicKeys != null && message.publicKeys.length) - for (var i = 0; i < message.publicKeys.length; ++i) - $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.encode(message.publicKeys[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.delegationServiceAccountEmail != null && Object.hasOwnProperty.call(message, "delegationServiceAccountEmail")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.delegationServiceAccountEmail); - return writer; - }; + /** + * Converts this MessageOptions to JSON. + * @function toJSON + * @memberof google.protobuf.MessageOptions + * @instance + * @returns {Object.} JSON object + */ + MessageOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Encodes the specified UserOwnedDrydockNote message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUserOwnedDrydockNote} message UserOwnedDrydockNote message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UserOwnedDrydockNote.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + return MessageOptions; + })(); - /** - * Decodes a UserOwnedDrydockNote message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UserOwnedDrydockNote.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.noteReference = reader.string(); - break; - case 2: - if (!(message.publicKeys && message.publicKeys.length)) - message.publicKeys = []; - message.publicKeys.push($root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.decode(reader, reader.uint32())); - break; - case 3: - message.delegationServiceAccountEmail = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + protobuf.FieldOptions = (function() { - /** - * Decodes a UserOwnedDrydockNote message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UserOwnedDrydockNote.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Properties of a FieldOptions. + * @memberof google.protobuf + * @interface IFieldOptions + * @property {google.protobuf.FieldOptions.CType|null} [ctype] FieldOptions ctype + * @property {boolean|null} [packed] FieldOptions packed + * @property {google.protobuf.FieldOptions.JSType|null} [jstype] FieldOptions jstype + * @property {boolean|null} [lazy] FieldOptions lazy + * @property {boolean|null} [deprecated] FieldOptions deprecated + * @property {boolean|null} [weak] FieldOptions weak + * @property {Array.|null} [uninterpretedOption] FieldOptions uninterpretedOption + * @property {Array.|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior + * @property {google.api.IResourceReference|null} [".google.api.resourceReference"] FieldOptions .google.api.resourceReference + */ - /** - * Verifies a UserOwnedDrydockNote message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UserOwnedDrydockNote.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.noteReference != null && message.hasOwnProperty("noteReference")) - if (!$util.isString(message.noteReference)) - return "noteReference: string expected"; - if (message.publicKeys != null && message.hasOwnProperty("publicKeys")) { - if (!Array.isArray(message.publicKeys)) - return "publicKeys: array expected"; - for (var i = 0; i < message.publicKeys.length; ++i) { - var error = $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify(message.publicKeys[i]); - if (error) - return "publicKeys." + error; - } - } - if (message.delegationServiceAccountEmail != null && message.hasOwnProperty("delegationServiceAccountEmail")) - if (!$util.isString(message.delegationServiceAccountEmail)) - return "delegationServiceAccountEmail: string expected"; - return null; - }; + /** + * Constructs a new FieldOptions. + * @memberof google.protobuf + * @classdesc Represents a FieldOptions. + * @implements IFieldOptions + * @constructor + * @param {google.protobuf.IFieldOptions=} [properties] Properties to set + */ + function FieldOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.fieldBehavior"] = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Creates a UserOwnedDrydockNote message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} UserOwnedDrydockNote - */ - UserOwnedDrydockNote.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote(); - if (object.noteReference != null) - message.noteReference = String(object.noteReference); - if (object.publicKeys) { - if (!Array.isArray(object.publicKeys)) - throw TypeError(".google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.publicKeys: array expected"); - message.publicKeys = []; - for (var i = 0; i < object.publicKeys.length; ++i) { - if (typeof object.publicKeys[i] !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote.publicKeys: object expected"); - message.publicKeys[i] = $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.fromObject(object.publicKeys[i]); - } - } - if (object.delegationServiceAccountEmail != null) - message.delegationServiceAccountEmail = String(object.delegationServiceAccountEmail); - return message; - }; + /** + * FieldOptions ctype. + * @member {google.protobuf.FieldOptions.CType} ctype + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.ctype = 0; - /** - * Creates a plain object from a UserOwnedDrydockNote message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @static - * @param {google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote} message UserOwnedDrydockNote - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UserOwnedDrydockNote.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.publicKeys = []; - if (options.defaults) { - object.noteReference = ""; - object.delegationServiceAccountEmail = ""; - } - if (message.noteReference != null && message.hasOwnProperty("noteReference")) - object.noteReference = message.noteReference; - if (message.publicKeys && message.publicKeys.length) { - object.publicKeys = []; - for (var j = 0; j < message.publicKeys.length; ++j) - object.publicKeys[j] = $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.toObject(message.publicKeys[j], options); - } - if (message.delegationServiceAccountEmail != null && message.hasOwnProperty("delegationServiceAccountEmail")) - object.delegationServiceAccountEmail = message.delegationServiceAccountEmail; - return object; - }; + /** + * FieldOptions packed. + * @member {boolean} packed + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.packed = false; - /** - * Converts this UserOwnedDrydockNote to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote - * @instance - * @returns {Object.} JSON object - */ - UserOwnedDrydockNote.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * FieldOptions jstype. + * @member {google.protobuf.FieldOptions.JSType} jstype + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.jstype = 0; - return UserOwnedDrydockNote; - })(); + /** + * FieldOptions lazy. + * @member {boolean} lazy + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.lazy = false; - v1beta1.PkixPublicKey = (function() { + /** + * FieldOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.deprecated = false; - /** - * Properties of a PkixPublicKey. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IPkixPublicKey - * @property {string|null} [publicKeyPem] PkixPublicKey publicKeyPem - * @property {google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm|null} [signatureAlgorithm] PkixPublicKey signatureAlgorithm - */ + /** + * FieldOptions weak. + * @member {boolean} weak + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.weak = false; - /** - * Constructs a new PkixPublicKey. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a PkixPublicKey. - * @implements IPkixPublicKey - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey=} [properties] Properties to set - */ - function PkixPublicKey(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * FieldOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype.uninterpretedOption = $util.emptyArray; - /** - * PkixPublicKey publicKeyPem. - * @member {string} publicKeyPem - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @instance - */ - PkixPublicKey.prototype.publicKeyPem = ""; + /** + * FieldOptions .google.api.fieldBehavior. + * @member {Array.} .google.api.fieldBehavior + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype[".google.api.fieldBehavior"] = $util.emptyArray; - /** - * PkixPublicKey signatureAlgorithm. - * @member {google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm} signatureAlgorithm - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @instance - */ - PkixPublicKey.prototype.signatureAlgorithm = 0; + /** + * FieldOptions .google.api.resourceReference. + * @member {google.api.IResourceReference|null|undefined} .google.api.resourceReference + * @memberof google.protobuf.FieldOptions + * @instance + */ + FieldOptions.prototype[".google.api.resourceReference"] = null; - /** - * Creates a new PkixPublicKey instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey instance - */ - PkixPublicKey.create = function create(properties) { - return new PkixPublicKey(properties); - }; + /** + * Creates a new FieldOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions=} [properties] Properties to set + * @returns {google.protobuf.FieldOptions} FieldOptions instance + */ + FieldOptions.create = function create(properties) { + return new FieldOptions(properties); + }; - /** - * Encodes the specified PkixPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey} message PkixPublicKey message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PkixPublicKey.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.publicKeyPem != null && Object.hasOwnProperty.call(message, "publicKeyPem")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.publicKeyPem); - if (message.signatureAlgorithm != null && Object.hasOwnProperty.call(message, "signatureAlgorithm")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.signatureAlgorithm); - return writer; - }; + /** + * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.ctype != null && Object.hasOwnProperty.call(message, "ctype")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.ctype); + if (message.packed != null && Object.hasOwnProperty.call(message, "packed")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.packed); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.lazy != null && Object.hasOwnProperty.call(message, "lazy")) + writer.uint32(/* id 5, wireType 0 =*/40).bool(message.lazy); + if (message.jstype != null && Object.hasOwnProperty.call(message, "jstype")) + writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jstype); + if (message.weak != null && Object.hasOwnProperty.call(message, "weak")) + writer.uint32(/* id 10, wireType 0 =*/80).bool(message.weak); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.fieldBehavior"] != null && message[".google.api.fieldBehavior"].length) { + writer.uint32(/* id 1052, wireType 2 =*/8418).fork(); + for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) + writer.int32(message[".google.api.fieldBehavior"][i]); + writer.ldelim(); + } + if (message[".google.api.resourceReference"] != null && Object.hasOwnProperty.call(message, ".google.api.resourceReference")) + $root.google.api.ResourceReference.encode(message[".google.api.resourceReference"], writer.uint32(/* id 1055, wireType 2 =*/8442).fork()).ldelim(); + return writer; + }; - /** - * Encodes the specified PkixPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey} message PkixPublicKey message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PkixPublicKey.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + FieldOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes a PkixPublicKey message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PkixPublicKey.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.publicKeyPem = reader.string(); - break; - case 2: - message.signatureAlgorithm = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Decodes a FieldOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.FieldOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.FieldOptions} FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.ctype = reader.int32(); + break; + case 2: + message.packed = reader.bool(); + break; + case 6: + message.jstype = reader.int32(); + break; + case 5: + message.lazy = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 10: + message.weak = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1052: + if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length)) + message[".google.api.fieldBehavior"] = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message[".google.api.fieldBehavior"].push(reader.int32()); + } else + message[".google.api.fieldBehavior"].push(reader.int32()); + break; + case 1055: + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Decodes a PkixPublicKey message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PkixPublicKey.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a FieldOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.FieldOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.FieldOptions} FieldOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + FieldOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Verifies a PkixPublicKey message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - PkixPublicKey.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.publicKeyPem != null && message.hasOwnProperty("publicKeyPem")) - if (!$util.isString(message.publicKeyPem)) - return "publicKeyPem: string expected"; - if (message.signatureAlgorithm != null && message.hasOwnProperty("signatureAlgorithm")) - switch (message.signatureAlgorithm) { - default: - return "signatureAlgorithm: enum value expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - break; - } - return null; - }; + /** + * Verifies a FieldOptions message. + * @function verify + * @memberof google.protobuf.FieldOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + FieldOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.ctype != null && message.hasOwnProperty("ctype")) + switch (message.ctype) { + default: + return "ctype: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.packed != null && message.hasOwnProperty("packed")) + if (typeof message.packed !== "boolean") + return "packed: boolean expected"; + if (message.jstype != null && message.hasOwnProperty("jstype")) + switch (message.jstype) { + default: + return "jstype: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.lazy != null && message.hasOwnProperty("lazy")) + if (typeof message.lazy !== "boolean") + return "lazy: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.weak != null && message.hasOwnProperty("weak")) + if (typeof message.weak !== "boolean") + return "weak: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.fieldBehavior"] != null && message.hasOwnProperty(".google.api.fieldBehavior")) { + if (!Array.isArray(message[".google.api.fieldBehavior"])) + return ".google.api.fieldBehavior: array expected"; + for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i) + switch (message[".google.api.fieldBehavior"][i]) { + default: + return ".google.api.fieldBehavior: enum value[] expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + break; + } + } + if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + if (error) + return ".google.api.resourceReference." + error; + } + return null; + }; - /** - * Creates a PkixPublicKey message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} PkixPublicKey - */ - PkixPublicKey.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey(); - if (object.publicKeyPem != null) - message.publicKeyPem = String(object.publicKeyPem); - switch (object.signatureAlgorithm) { - case "SIGNATURE_ALGORITHM_UNSPECIFIED": + /** + * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.FieldOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.FieldOptions} FieldOptions + */ + FieldOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.FieldOptions) + return object; + var message = new $root.google.protobuf.FieldOptions(); + switch (object.ctype) { + case "STRING": + case 0: + message.ctype = 0; + break; + case "CORD": + case 1: + message.ctype = 1; + break; + case "STRING_PIECE": + case 2: + message.ctype = 2; + break; + } + if (object.packed != null) + message.packed = Boolean(object.packed); + switch (object.jstype) { + case "JS_NORMAL": + case 0: + message.jstype = 0; + break; + case "JS_STRING": + case 1: + message.jstype = 1; + break; + case "JS_NUMBER": + case 2: + message.jstype = 2; + break; + } + if (object.lazy != null) + message.lazy = Boolean(object.lazy); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.weak != null) + message.weak = Boolean(object.weak); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.fieldBehavior"]) { + if (!Array.isArray(object[".google.api.fieldBehavior"])) + throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected"); + message[".google.api.fieldBehavior"] = []; + for (var i = 0; i < object[".google.api.fieldBehavior"].length; ++i) + switch (object[".google.api.fieldBehavior"][i]) { + default: + case "FIELD_BEHAVIOR_UNSPECIFIED": case 0: - message.signatureAlgorithm = 0; + message[".google.api.fieldBehavior"][i] = 0; break; - case "RSA_PSS_2048_SHA256": + case "OPTIONAL": case 1: - message.signatureAlgorithm = 1; + message[".google.api.fieldBehavior"][i] = 1; break; - case "RSA_PSS_3072_SHA256": + case "REQUIRED": case 2: - message.signatureAlgorithm = 2; + message[".google.api.fieldBehavior"][i] = 2; break; - case "RSA_PSS_4096_SHA256": + case "OUTPUT_ONLY": case 3: - message.signatureAlgorithm = 3; + message[".google.api.fieldBehavior"][i] = 3; break; - case "RSA_PSS_4096_SHA512": + case "INPUT_ONLY": case 4: - message.signatureAlgorithm = 4; + message[".google.api.fieldBehavior"][i] = 4; break; - case "RSA_SIGN_PKCS1_2048_SHA256": + case "IMMUTABLE": case 5: - message.signatureAlgorithm = 5; + message[".google.api.fieldBehavior"][i] = 5; break; - case "RSA_SIGN_PKCS1_3072_SHA256": + case "UNORDERED_LIST": case 6: - message.signatureAlgorithm = 6; - break; - case "RSA_SIGN_PKCS1_4096_SHA256": - case 7: - message.signatureAlgorithm = 7; - break; - case "RSA_SIGN_PKCS1_4096_SHA512": - case 8: - message.signatureAlgorithm = 8; - break; - case "ECDSA_P256_SHA256": - case 9: - message.signatureAlgorithm = 9; - break; - case "ECDSA_P384_SHA384": - case 10: - message.signatureAlgorithm = 10; - break; - case "ECDSA_P521_SHA512": - case 11: - message.signatureAlgorithm = 11; + message[".google.api.fieldBehavior"][i] = 6; break; } - return message; - }; + } + if (object[".google.api.resourceReference"] != null) { + if (typeof object[".google.api.resourceReference"] !== "object") + throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + } + return message; + }; - /** - * Creates a plain object from a PkixPublicKey message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.PkixPublicKey} message PkixPublicKey - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - PkixPublicKey.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.publicKeyPem = ""; - object.signatureAlgorithm = options.enums === String ? "SIGNATURE_ALGORITHM_UNSPECIFIED" : 0; - } - if (message.publicKeyPem != null && message.hasOwnProperty("publicKeyPem")) - object.publicKeyPem = message.publicKeyPem; - if (message.signatureAlgorithm != null && message.hasOwnProperty("signatureAlgorithm")) - object.signatureAlgorithm = options.enums === String ? $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm[message.signatureAlgorithm] : message.signatureAlgorithm; - return object; - }; + /** + * Creates a plain object from a FieldOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.FieldOptions + * @static + * @param {google.protobuf.FieldOptions} message FieldOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + FieldOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.fieldBehavior"] = []; + } + if (options.defaults) { + object.ctype = options.enums === String ? "STRING" : 0; + object.packed = false; + object.deprecated = false; + object.lazy = false; + object.jstype = options.enums === String ? "JS_NORMAL" : 0; + object.weak = false; + object[".google.api.resourceReference"] = null; + } + if (message.ctype != null && message.hasOwnProperty("ctype")) + object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype; + if (message.packed != null && message.hasOwnProperty("packed")) + object.packed = message.packed; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.lazy != null && message.hasOwnProperty("lazy")) + object.lazy = message.lazy; + if (message.jstype != null && message.hasOwnProperty("jstype")) + object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype; + if (message.weak != null && message.hasOwnProperty("weak")) + object.weak = message.weak; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length) { + object[".google.api.fieldBehavior"] = []; + for (var j = 0; j < message[".google.api.fieldBehavior"].length; ++j) + object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j]; + } + if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) + object[".google.api.resourceReference"] = $root.google.api.ResourceReference.toObject(message[".google.api.resourceReference"], options); + return object; + }; - /** - * Converts this PkixPublicKey to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.PkixPublicKey - * @instance - * @returns {Object.} JSON object - */ - PkixPublicKey.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this FieldOptions to JSON. + * @function toJSON + * @memberof google.protobuf.FieldOptions + * @instance + * @returns {Object.} JSON object + */ + FieldOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * SignatureAlgorithm enum. - * @name google.cloud.binaryauthorization.v1beta1.PkixPublicKey.SignatureAlgorithm - * @enum {number} - * @property {number} SIGNATURE_ALGORITHM_UNSPECIFIED=0 SIGNATURE_ALGORITHM_UNSPECIFIED value - * @property {number} RSA_PSS_2048_SHA256=1 RSA_PSS_2048_SHA256 value - * @property {number} RSA_PSS_3072_SHA256=2 RSA_PSS_3072_SHA256 value - * @property {number} RSA_PSS_4096_SHA256=3 RSA_PSS_4096_SHA256 value - * @property {number} RSA_PSS_4096_SHA512=4 RSA_PSS_4096_SHA512 value - * @property {number} RSA_SIGN_PKCS1_2048_SHA256=5 RSA_SIGN_PKCS1_2048_SHA256 value - * @property {number} RSA_SIGN_PKCS1_3072_SHA256=6 RSA_SIGN_PKCS1_3072_SHA256 value - * @property {number} RSA_SIGN_PKCS1_4096_SHA256=7 RSA_SIGN_PKCS1_4096_SHA256 value - * @property {number} RSA_SIGN_PKCS1_4096_SHA512=8 RSA_SIGN_PKCS1_4096_SHA512 value - * @property {number} ECDSA_P256_SHA256=9 ECDSA_P256_SHA256 value - * @property {number} ECDSA_P384_SHA384=10 ECDSA_P384_SHA384 value - * @property {number} ECDSA_P521_SHA512=11 ECDSA_P521_SHA512 value - */ - PkixPublicKey.SignatureAlgorithm = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "SIGNATURE_ALGORITHM_UNSPECIFIED"] = 0; - values[valuesById[1] = "RSA_PSS_2048_SHA256"] = 1; - values[valuesById[2] = "RSA_PSS_3072_SHA256"] = 2; - values[valuesById[3] = "RSA_PSS_4096_SHA256"] = 3; - values[valuesById[4] = "RSA_PSS_4096_SHA512"] = 4; - values[valuesById[5] = "RSA_SIGN_PKCS1_2048_SHA256"] = 5; - values[valuesById[6] = "RSA_SIGN_PKCS1_3072_SHA256"] = 6; - values[valuesById[7] = "RSA_SIGN_PKCS1_4096_SHA256"] = 7; - values[valuesById[8] = "RSA_SIGN_PKCS1_4096_SHA512"] = 8; - values[valuesById[9] = "ECDSA_P256_SHA256"] = 9; - values[valuesById[10] = "ECDSA_P384_SHA384"] = 10; - values[valuesById[11] = "ECDSA_P521_SHA512"] = 11; - return values; - })(); + /** + * CType enum. + * @name google.protobuf.FieldOptions.CType + * @enum {number} + * @property {number} STRING=0 STRING value + * @property {number} CORD=1 CORD value + * @property {number} STRING_PIECE=2 STRING_PIECE value + */ + FieldOptions.CType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "STRING"] = 0; + values[valuesById[1] = "CORD"] = 1; + values[valuesById[2] = "STRING_PIECE"] = 2; + return values; + })(); + + /** + * JSType enum. + * @name google.protobuf.FieldOptions.JSType + * @enum {number} + * @property {number} JS_NORMAL=0 JS_NORMAL value + * @property {number} JS_STRING=1 JS_STRING value + * @property {number} JS_NUMBER=2 JS_NUMBER value + */ + FieldOptions.JSType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "JS_NORMAL"] = 0; + values[valuesById[1] = "JS_STRING"] = 1; + values[valuesById[2] = "JS_NUMBER"] = 2; + return values; + })(); + + return FieldOptions; + })(); + + protobuf.OneofOptions = (function() { + + /** + * Properties of an OneofOptions. + * @memberof google.protobuf + * @interface IOneofOptions + * @property {Array.|null} [uninterpretedOption] OneofOptions uninterpretedOption + */ + + /** + * Constructs a new OneofOptions. + * @memberof google.protobuf + * @classdesc Represents an OneofOptions. + * @implements IOneofOptions + * @constructor + * @param {google.protobuf.IOneofOptions=} [properties] Properties to set + */ + function OneofOptions(properties) { + this.uninterpretedOption = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * OneofOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.OneofOptions + * @instance + */ + OneofOptions.prototype.uninterpretedOption = $util.emptyArray; - return PkixPublicKey; - })(); + /** + * Creates a new OneofOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions=} [properties] Properties to set + * @returns {google.protobuf.OneofOptions} OneofOptions instance + */ + OneofOptions.create = function create(properties) { + return new OneofOptions(properties); + }; - v1beta1.AttestorPublicKey = (function() { + /** + * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; - /** - * Properties of an AttestorPublicKey. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IAttestorPublicKey - * @property {string|null} [comment] AttestorPublicKey comment - * @property {string|null} [id] AttestorPublicKey id - * @property {string|null} [asciiArmoredPgpPublicKey] AttestorPublicKey asciiArmoredPgpPublicKey - * @property {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null} [pkixPublicKey] AttestorPublicKey pkixPublicKey - */ + /** + * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + OneofOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Constructs a new AttestorPublicKey. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents an AttestorPublicKey. - * @implements IAttestorPublicKey - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey=} [properties] Properties to set - */ - function AttestorPublicKey(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; + /** + * Decodes an OneofOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.OneofOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.OneofOptions} OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; } + } + return message; + }; - /** - * AttestorPublicKey comment. - * @member {string} comment - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @instance - */ - AttestorPublicKey.prototype.comment = ""; - - /** - * AttestorPublicKey id. - * @member {string} id - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @instance - */ - AttestorPublicKey.prototype.id = ""; - - /** - * AttestorPublicKey asciiArmoredPgpPublicKey. - * @member {string|null|undefined} asciiArmoredPgpPublicKey - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @instance - */ - AttestorPublicKey.prototype.asciiArmoredPgpPublicKey = null; - - /** - * AttestorPublicKey pkixPublicKey. - * @member {google.cloud.binaryauthorization.v1beta1.IPkixPublicKey|null|undefined} pkixPublicKey - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @instance - */ - AttestorPublicKey.prototype.pkixPublicKey = null; + /** + * Decodes an OneofOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.OneofOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.OneofOptions} OneofOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + OneofOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - // OneOf field names bound to virtual getters and setters - var $oneOfFields; + /** + * Verifies an OneofOptions message. + * @function verify + * @memberof google.protobuf.OneofOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + OneofOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; - /** - * AttestorPublicKey publicKey. - * @member {"asciiArmoredPgpPublicKey"|"pkixPublicKey"|undefined} publicKey - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @instance - */ - Object.defineProperty(AttestorPublicKey.prototype, "publicKey", { - get: $util.oneOfGetter($oneOfFields = ["asciiArmoredPgpPublicKey", "pkixPublicKey"]), - set: $util.oneOfSetter($oneOfFields) - }); + /** + * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.OneofOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.OneofOptions} OneofOptions + */ + OneofOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.OneofOptions) + return object; + var message = new $root.google.protobuf.OneofOptions(); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; - /** - * Creates a new AttestorPublicKey instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey instance - */ - AttestorPublicKey.create = function create(properties) { - return new AttestorPublicKey(properties); - }; + /** + * Creates a plain object from an OneofOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.OneofOptions + * @static + * @param {google.protobuf.OneofOptions} message OneofOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + OneofOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; - /** - * Encodes the specified AttestorPublicKey message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey} message AttestorPublicKey message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AttestorPublicKey.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.comment != null && Object.hasOwnProperty.call(message, "comment")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.comment); - if (message.id != null && Object.hasOwnProperty.call(message, "id")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.id); - if (message.asciiArmoredPgpPublicKey != null && Object.hasOwnProperty.call(message, "asciiArmoredPgpPublicKey")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.asciiArmoredPgpPublicKey); - if (message.pkixPublicKey != null && Object.hasOwnProperty.call(message, "pkixPublicKey")) - $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.encode(message.pkixPublicKey, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - return writer; - }; + /** + * Converts this OneofOptions to JSON. + * @function toJSON + * @memberof google.protobuf.OneofOptions + * @instance + * @returns {Object.} JSON object + */ + OneofOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Encodes the specified AttestorPublicKey message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IAttestorPublicKey} message AttestorPublicKey message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AttestorPublicKey.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + return OneofOptions; + })(); - /** - * Decodes an AttestorPublicKey message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AttestorPublicKey.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.comment = reader.string(); - break; - case 2: - message.id = reader.string(); - break; - case 3: - message.asciiArmoredPgpPublicKey = reader.string(); - break; - case 5: - message.pkixPublicKey = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + protobuf.EnumOptions = (function() { - /** - * Decodes an AttestorPublicKey message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AttestorPublicKey.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Properties of an EnumOptions. + * @memberof google.protobuf + * @interface IEnumOptions + * @property {boolean|null} [allowAlias] EnumOptions allowAlias + * @property {boolean|null} [deprecated] EnumOptions deprecated + * @property {Array.|null} [uninterpretedOption] EnumOptions uninterpretedOption + */ - /** - * Verifies an AttestorPublicKey message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - AttestorPublicKey.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - var properties = {}; - if (message.comment != null && message.hasOwnProperty("comment")) - if (!$util.isString(message.comment)) - return "comment: string expected"; - if (message.id != null && message.hasOwnProperty("id")) - if (!$util.isString(message.id)) - return "id: string expected"; - if (message.asciiArmoredPgpPublicKey != null && message.hasOwnProperty("asciiArmoredPgpPublicKey")) { - properties.publicKey = 1; - if (!$util.isString(message.asciiArmoredPgpPublicKey)) - return "asciiArmoredPgpPublicKey: string expected"; - } - if (message.pkixPublicKey != null && message.hasOwnProperty("pkixPublicKey")) { - if (properties.publicKey === 1) - return "publicKey: multiple values"; - properties.publicKey = 1; - { - var error = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.verify(message.pkixPublicKey); - if (error) - return "pkixPublicKey." + error; - } - } - return null; - }; + /** + * Constructs a new EnumOptions. + * @memberof google.protobuf + * @classdesc Represents an EnumOptions. + * @implements IEnumOptions + * @constructor + * @param {google.protobuf.IEnumOptions=} [properties] Properties to set + */ + function EnumOptions(properties) { + this.uninterpretedOption = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Creates an AttestorPublicKey message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} AttestorPublicKey - */ - AttestorPublicKey.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.AttestorPublicKey(); - if (object.comment != null) - message.comment = String(object.comment); - if (object.id != null) - message.id = String(object.id); - if (object.asciiArmoredPgpPublicKey != null) - message.asciiArmoredPgpPublicKey = String(object.asciiArmoredPgpPublicKey); - if (object.pkixPublicKey != null) { - if (typeof object.pkixPublicKey !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.AttestorPublicKey.pkixPublicKey: object expected"); - message.pkixPublicKey = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.fromObject(object.pkixPublicKey); - } - return message; - }; + /** + * EnumOptions allowAlias. + * @member {boolean} allowAlias + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.allowAlias = false; - /** - * Creates a plain object from an AttestorPublicKey message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @static - * @param {google.cloud.binaryauthorization.v1beta1.AttestorPublicKey} message AttestorPublicKey - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - AttestorPublicKey.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.comment = ""; - object.id = ""; - } - if (message.comment != null && message.hasOwnProperty("comment")) - object.comment = message.comment; - if (message.id != null && message.hasOwnProperty("id")) - object.id = message.id; - if (message.asciiArmoredPgpPublicKey != null && message.hasOwnProperty("asciiArmoredPgpPublicKey")) { - object.asciiArmoredPgpPublicKey = message.asciiArmoredPgpPublicKey; - if (options.oneofs) - object.publicKey = "asciiArmoredPgpPublicKey"; - } - if (message.pkixPublicKey != null && message.hasOwnProperty("pkixPublicKey")) { - object.pkixPublicKey = $root.google.cloud.binaryauthorization.v1beta1.PkixPublicKey.toObject(message.pkixPublicKey, options); - if (options.oneofs) - object.publicKey = "pkixPublicKey"; - } - return object; - }; + /** + * EnumOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.deprecated = false; - /** - * Converts this AttestorPublicKey to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.AttestorPublicKey - * @instance - * @returns {Object.} JSON object - */ - AttestorPublicKey.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * EnumOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.EnumOptions + * @instance + */ + EnumOptions.prototype.uninterpretedOption = $util.emptyArray; - return AttestorPublicKey; - })(); + /** + * Creates a new EnumOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions=} [properties] Properties to set + * @returns {google.protobuf.EnumOptions} EnumOptions instance + */ + EnumOptions.create = function create(properties) { + return new EnumOptions(properties); + }; + + /** + * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.allowAlias != null && Object.hasOwnProperty.call(message, "allowAlias")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.allowAlias); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; - v1beta1.BinauthzManagementServiceV1Beta1 = (function() { + /** + * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Constructs a new BinauthzManagementServiceV1Beta1 service. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a BinauthzManagementServiceV1Beta1 - * @extends $protobuf.rpc.Service - * @constructor - * @param {$protobuf.RPCImpl} rpcImpl RPC implementation - * @param {boolean} [requestDelimited=false] Whether requests are length-delimited - * @param {boolean} [responseDelimited=false] Whether responses are length-delimited - */ - function BinauthzManagementServiceV1Beta1(rpcImpl, requestDelimited, responseDelimited) { - $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); + /** + * Decodes an EnumOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumOptions} EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: + message.allowAlias = reader.bool(); + break; + case 3: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; } + } + return message; + }; - (BinauthzManagementServiceV1Beta1.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = BinauthzManagementServiceV1Beta1; + /** + * Decodes an EnumOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumOptions} EnumOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates new BinauthzManagementServiceV1Beta1 service using the specified rpc implementation. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @static - * @param {$protobuf.RPCImpl} rpcImpl RPC implementation - * @param {boolean} [requestDelimited=false] Whether requests are length-delimited - * @param {boolean} [responseDelimited=false] Whether responses are length-delimited - * @returns {BinauthzManagementServiceV1Beta1} RPC service. Useful where requests and/or responses are streamed. - */ - BinauthzManagementServiceV1Beta1.create = function create(rpcImpl, requestDelimited, responseDelimited) { - return new this(rpcImpl, requestDelimited, responseDelimited); - }; + /** + * Verifies an EnumOptions message. + * @function verify + * @memberof google.protobuf.EnumOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) + if (typeof message.allowAlias !== "boolean") + return "allowAlias: boolean expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getPolicy}. - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @typedef GetPolicyCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.binaryauthorization.v1beta1.Policy} [response] Policy - */ + /** + * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumOptions} EnumOptions + */ + EnumOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumOptions) + return object; + var message = new $root.google.protobuf.EnumOptions(); + if (object.allowAlias != null) + message.allowAlias = Boolean(object.allowAlias); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; - /** - * Calls GetPolicy. - * @function getPolicy - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} request GetPolicyRequest message or plain object - * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetPolicyCallback} callback Node-style callback called with the error, if any, and Policy - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.getPolicy = function getPolicy(request, callback) { - return this.rpcCall(getPolicy, $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest, $root.google.cloud.binaryauthorization.v1beta1.Policy, request, callback); - }, "name", { value: "GetPolicy" }); + /** + * Creates a plain object from an EnumOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumOptions + * @static + * @param {google.protobuf.EnumOptions} message EnumOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.allowAlias = false; + object.deprecated = false; + } + if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) + object.allowAlias = message.allowAlias; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; - /** - * Calls GetPolicy. - * @function getPolicy - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} request GetPolicyRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Converts this EnumOptions to JSON. + * @function toJSON + * @memberof google.protobuf.EnumOptions + * @instance + * @returns {Object.} JSON object + */ + EnumOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updatePolicy}. - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @typedef UpdatePolicyCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.binaryauthorization.v1beta1.Policy} [response] Policy - */ + return EnumOptions; + })(); - /** - * Calls UpdatePolicy. - * @function updatePolicy - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} request UpdatePolicyRequest message or plain object - * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdatePolicyCallback} callback Node-style callback called with the error, if any, and Policy - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.updatePolicy = function updatePolicy(request, callback) { - return this.rpcCall(updatePolicy, $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest, $root.google.cloud.binaryauthorization.v1beta1.Policy, request, callback); - }, "name", { value: "UpdatePolicy" }); + protobuf.EnumValueOptions = (function() { - /** - * Calls UpdatePolicy. - * @function updatePolicy - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} request UpdatePolicyRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Properties of an EnumValueOptions. + * @memberof google.protobuf + * @interface IEnumValueOptions + * @property {boolean|null} [deprecated] EnumValueOptions deprecated + * @property {Array.|null} [uninterpretedOption] EnumValueOptions uninterpretedOption + */ + + /** + * Constructs a new EnumValueOptions. + * @memberof google.protobuf + * @classdesc Represents an EnumValueOptions. + * @implements IEnumValueOptions + * @constructor + * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set + */ + function EnumValueOptions(properties) { + this.uninterpretedOption = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#createAttestor}. - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @typedef CreateAttestorCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.binaryauthorization.v1beta1.Attestor} [response] Attestor - */ + /** + * EnumValueOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.EnumValueOptions + * @instance + */ + EnumValueOptions.prototype.deprecated = false; - /** - * Calls CreateAttestor. - * @function createAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} request CreateAttestorRequest message or plain object - * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.CreateAttestorCallback} callback Node-style callback called with the error, if any, and Attestor - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.createAttestor = function createAttestor(request, callback) { - return this.rpcCall(createAttestor, $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest, $root.google.cloud.binaryauthorization.v1beta1.Attestor, request, callback); - }, "name", { value: "CreateAttestor" }); + /** + * EnumValueOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.EnumValueOptions + * @instance + */ + EnumValueOptions.prototype.uninterpretedOption = $util.emptyArray; - /** - * Calls CreateAttestor. - * @function createAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} request CreateAttestorRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Creates a new EnumValueOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions instance + */ + EnumValueOptions.create = function create(properties) { + return new EnumValueOptions(properties); + }; - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#getAttestor}. - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @typedef GetAttestorCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.binaryauthorization.v1beta1.Attestor} [response] Attestor - */ + /** + * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + return writer; + }; - /** - * Calls GetAttestor. - * @function getAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} request GetAttestorRequest message or plain object - * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetAttestorCallback} callback Node-style callback called with the error, if any, and Attestor - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.getAttestor = function getAttestor(request, callback) { - return this.rpcCall(getAttestor, $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest, $root.google.cloud.binaryauthorization.v1beta1.Attestor, request, callback); - }, "name", { value: "GetAttestor" }); + /** + * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + EnumValueOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Calls GetAttestor. - * @function getAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} request GetAttestorRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Decodes an EnumValueOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#updateAttestor}. - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @typedef UpdateAttestorCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.binaryauthorization.v1beta1.Attestor} [response] Attestor - */ + /** + * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + EnumValueOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Calls UpdateAttestor. - * @function updateAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} request UpdateAttestorRequest message or plain object - * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdateAttestorCallback} callback Node-style callback called with the error, if any, and Attestor - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.updateAttestor = function updateAttestor(request, callback) { - return this.rpcCall(updateAttestor, $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest, $root.google.cloud.binaryauthorization.v1beta1.Attestor, request, callback); - }, "name", { value: "UpdateAttestor" }); + /** + * Verifies an EnumValueOptions message. + * @function verify + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + EnumValueOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + return null; + }; - /** - * Calls UpdateAttestor. - * @function updateAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} request UpdateAttestorRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.EnumValueOptions} EnumValueOptions + */ + EnumValueOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.EnumValueOptions) + return object; + var message = new $root.google.protobuf.EnumValueOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + return message; + }; - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#listAttestors}. - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @typedef ListAttestorsCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} [response] ListAttestorsResponse - */ + /** + * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.EnumValueOptions + * @static + * @param {google.protobuf.EnumValueOptions} message EnumValueOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + EnumValueOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) + object.deprecated = false; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + return object; + }; - /** - * Calls ListAttestors. - * @function listAttestors - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} request ListAttestorsRequest message or plain object - * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.ListAttestorsCallback} callback Node-style callback called with the error, if any, and ListAttestorsResponse - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.listAttestors = function listAttestors(request, callback) { - return this.rpcCall(listAttestors, $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest, $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse, request, callback); - }, "name", { value: "ListAttestors" }); + /** + * Converts this EnumValueOptions to JSON. + * @function toJSON + * @memberof google.protobuf.EnumValueOptions + * @instance + * @returns {Object.} JSON object + */ + EnumValueOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Calls ListAttestors. - * @function listAttestors - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} request ListAttestorsRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + return EnumValueOptions; + })(); - /** - * Callback as used by {@link google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1#deleteAttestor}. - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @typedef DeleteAttestorCallback - * @type {function} - * @param {Error|null} error Error, if any - * @param {google.protobuf.Empty} [response] Empty - */ + protobuf.ServiceOptions = (function() { - /** - * Calls DeleteAttestor. - * @function deleteAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} request DeleteAttestorRequest message or plain object - * @param {google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.DeleteAttestorCallback} callback Node-style callback called with the error, if any, and Empty - * @returns {undefined} - * @variation 1 - */ - Object.defineProperty(BinauthzManagementServiceV1Beta1.prototype.deleteAttestor = function deleteAttestor(request, callback) { - return this.rpcCall(deleteAttestor, $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest, $root.google.protobuf.Empty, request, callback); - }, "name", { value: "DeleteAttestor" }); + /** + * Properties of a ServiceOptions. + * @memberof google.protobuf + * @interface IServiceOptions + * @property {boolean|null} [deprecated] ServiceOptions deprecated + * @property {Array.|null} [uninterpretedOption] ServiceOptions uninterpretedOption + * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost + * @property {string|null} [".google.api.oauthScopes"] ServiceOptions .google.api.oauthScopes + */ - /** - * Calls DeleteAttestor. - * @function deleteAttestor - * @memberof google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 - * @instance - * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} request DeleteAttestorRequest message or plain object - * @returns {Promise} Promise - * @variation 2 - */ + /** + * Constructs a new ServiceOptions. + * @memberof google.protobuf + * @classdesc Represents a ServiceOptions. + * @implements IServiceOptions + * @constructor + * @param {google.protobuf.IServiceOptions=} [properties] Properties to set + */ + function ServiceOptions(properties) { + this.uninterpretedOption = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - return BinauthzManagementServiceV1Beta1; - })(); + /** + * ServiceOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype.deprecated = false; - v1beta1.GetPolicyRequest = (function() { + /** + * ServiceOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype.uninterpretedOption = $util.emptyArray; - /** - * Properties of a GetPolicyRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IGetPolicyRequest - * @property {string|null} [name] GetPolicyRequest name - */ + /** + * ServiceOptions .google.api.defaultHost. + * @member {string} .google.api.defaultHost + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype[".google.api.defaultHost"] = ""; - /** - * Constructs a new GetPolicyRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a GetPolicyRequest. - * @implements IGetPolicyRequest - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest=} [properties] Properties to set - */ - function GetPolicyRequest(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * ServiceOptions .google.api.oauthScopes. + * @member {string} .google.api.oauthScopes + * @memberof google.protobuf.ServiceOptions + * @instance + */ + ServiceOptions.prototype[".google.api.oauthScopes"] = ""; - /** - * GetPolicyRequest name. - * @member {string} name - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @instance - */ - GetPolicyRequest.prototype.name = ""; + /** + * Creates a new ServiceOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions=} [properties] Properties to set + * @returns {google.protobuf.ServiceOptions} ServiceOptions instance + */ + ServiceOptions.create = function create(properties) { + return new ServiceOptions(properties); + }; - /** - * Creates a new GetPolicyRequest instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest instance - */ - GetPolicyRequest.create = function create(properties) { - return new GetPolicyRequest(properties); - }; + /** + * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.defaultHost"] != null && Object.hasOwnProperty.call(message, ".google.api.defaultHost")) + writer.uint32(/* id 1049, wireType 2 =*/8394).string(message[".google.api.defaultHost"]); + if (message[".google.api.oauthScopes"] != null && Object.hasOwnProperty.call(message, ".google.api.oauthScopes")) + writer.uint32(/* id 1050, wireType 2 =*/8402).string(message[".google.api.oauthScopes"]); + return writer; + }; - /** - * Encodes the specified GetPolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} message GetPolicyRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GetPolicyRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - return writer; - }; + /** + * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Encodes the specified GetPolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetPolicyRequest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IGetPolicyRequest} message GetPolicyRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GetPolicyRequest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Decodes a ServiceOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.ServiceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 33: + message.deprecated = reader.bool(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 1049: + message[".google.api.defaultHost"] = reader.string(); + break; + case 1050: + message[".google.api.oauthScopes"] = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Decodes a GetPolicyRequest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GetPolicyRequest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Decodes a ServiceOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.ServiceOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.ServiceOptions} ServiceOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Decodes a GetPolicyRequest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GetPolicyRequest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Verifies a ServiceOptions message. + * @function verify + * @memberof google.protobuf.ServiceOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ServiceOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) + if (!$util.isString(message[".google.api.defaultHost"])) + return ".google.api.defaultHost: string expected"; + if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) + if (!$util.isString(message[".google.api.oauthScopes"])) + return ".google.api.oauthScopes: string expected"; + return null; + }; - /** - * Verifies a GetPolicyRequest message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - GetPolicyRequest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - return null; - }; + /** + * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.ServiceOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.ServiceOptions} ServiceOptions + */ + ServiceOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.ServiceOptions) + return object; + var message = new $root.google.protobuf.ServiceOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.defaultHost"] != null) + message[".google.api.defaultHost"] = String(object[".google.api.defaultHost"]); + if (object[".google.api.oauthScopes"] != null) + message[".google.api.oauthScopes"] = String(object[".google.api.oauthScopes"]); + return message; + }; - /** - * Creates a GetPolicyRequest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} GetPolicyRequest - */ - GetPolicyRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.GetPolicyRequest(); - if (object.name != null) - message.name = String(object.name); - return message; - }; + /** + * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.ServiceOptions + * @static + * @param {google.protobuf.ServiceOptions} message ServiceOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ServiceOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.uninterpretedOption = []; + if (options.defaults) { + object.deprecated = false; + object[".google.api.defaultHost"] = ""; + object[".google.api.oauthScopes"] = ""; + } + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost")) + object[".google.api.defaultHost"] = message[".google.api.defaultHost"]; + if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes")) + object[".google.api.oauthScopes"] = message[".google.api.oauthScopes"]; + return object; + }; - /** - * Creates a plain object from a GetPolicyRequest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.GetPolicyRequest} message GetPolicyRequest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - GetPolicyRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.name = ""; - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - return object; - }; + /** + * Converts this ServiceOptions to JSON. + * @function toJSON + * @memberof google.protobuf.ServiceOptions + * @instance + * @returns {Object.} JSON object + */ + ServiceOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Converts this GetPolicyRequest to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.GetPolicyRequest - * @instance - * @returns {Object.} JSON object - */ - GetPolicyRequest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + return ServiceOptions; + })(); - return GetPolicyRequest; - })(); + protobuf.MethodOptions = (function() { - v1beta1.UpdatePolicyRequest = (function() { + /** + * Properties of a MethodOptions. + * @memberof google.protobuf + * @interface IMethodOptions + * @property {boolean|null} [deprecated] MethodOptions deprecated + * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel + * @property {Array.|null} [uninterpretedOption] MethodOptions uninterpretedOption + * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http + * @property {Array.|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature + */ - /** - * Properties of an UpdatePolicyRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IUpdatePolicyRequest - * @property {google.cloud.binaryauthorization.v1beta1.IPolicy|null} [policy] UpdatePolicyRequest policy - */ + /** + * Constructs a new MethodOptions. + * @memberof google.protobuf + * @classdesc Represents a MethodOptions. + * @implements IMethodOptions + * @constructor + * @param {google.protobuf.IMethodOptions=} [properties] Properties to set + */ + function MethodOptions(properties) { + this.uninterpretedOption = []; + this[".google.api.methodSignature"] = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Constructs a new UpdatePolicyRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents an UpdatePolicyRequest. - * @implements IUpdatePolicyRequest - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest=} [properties] Properties to set - */ - function UpdatePolicyRequest(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * MethodOptions deprecated. + * @member {boolean} deprecated + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.deprecated = false; - /** - * UpdatePolicyRequest policy. - * @member {google.cloud.binaryauthorization.v1beta1.IPolicy|null|undefined} policy - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @instance - */ - UpdatePolicyRequest.prototype.policy = null; + /** + * MethodOptions idempotencyLevel. + * @member {google.protobuf.MethodOptions.IdempotencyLevel} idempotencyLevel + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.idempotencyLevel = 0; - /** - * Creates a new UpdatePolicyRequest instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest instance - */ - UpdatePolicyRequest.create = function create(properties) { - return new UpdatePolicyRequest(properties); - }; + /** + * MethodOptions uninterpretedOption. + * @member {Array.} uninterpretedOption + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype.uninterpretedOption = $util.emptyArray; - /** - * Encodes the specified UpdatePolicyRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} message UpdatePolicyRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UpdatePolicyRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.policy != null && Object.hasOwnProperty.call(message, "policy")) - $root.google.cloud.binaryauthorization.v1beta1.Policy.encode(message.policy, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; + /** + * MethodOptions .google.api.http. + * @member {google.api.IHttpRule|null|undefined} .google.api.http + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.api.http"] = null; - /** - * Encodes the specified UpdatePolicyRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUpdatePolicyRequest} message UpdatePolicyRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UpdatePolicyRequest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * MethodOptions .google.api.methodSignature. + * @member {Array.} .google.api.methodSignature + * @memberof google.protobuf.MethodOptions + * @instance + */ + MethodOptions.prototype[".google.api.methodSignature"] = $util.emptyArray; - /** - * Decodes an UpdatePolicyRequest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UpdatePolicyRequest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.policy = $root.google.cloud.binaryauthorization.v1beta1.Policy.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Creates a new MethodOptions instance using the specified properties. + * @function create + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions=} [properties] Properties to set + * @returns {google.protobuf.MethodOptions} MethodOptions instance + */ + MethodOptions.create = function create(properties) { + return new MethodOptions(properties); + }; + + /** + * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @function encode + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodOptions.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated")) + writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated); + if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel")) + writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel); + if (message.uninterpretedOption != null && message.uninterpretedOption.length) + for (var i = 0; i < message.uninterpretedOption.length; ++i) + $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim(); + if (message[".google.api.methodSignature"] != null && message[".google.api.methodSignature"].length) + for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) + writer.uint32(/* id 1051, wireType 2 =*/8410).string(message[".google.api.methodSignature"][i]); + if (message[".google.api.http"] != null && Object.hasOwnProperty.call(message, ".google.api.http")) + $root.google.api.HttpRule.encode(message[".google.api.http"], writer.uint32(/* id 72295728, wireType 2 =*/578365826).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + MethodOptions.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a MethodOptions message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.MethodOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.MethodOptions} MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodOptions.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 33: + message.deprecated = reader.bool(); + break; + case 34: + message.idempotencyLevel = reader.int32(); + break; + case 999: + if (!(message.uninterpretedOption && message.uninterpretedOption.length)) + message.uninterpretedOption = []; + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + break; + case 72295728: + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + break; + case 1051: + if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length)) + message[".google.api.methodSignature"] = []; + message[".google.api.methodSignature"].push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Decodes an UpdatePolicyRequest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UpdatePolicyRequest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a MethodOptions message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.MethodOptions + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.MethodOptions} MethodOptions + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + MethodOptions.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Verifies an UpdatePolicyRequest message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UpdatePolicyRequest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.policy != null && message.hasOwnProperty("policy")) { - var error = $root.google.cloud.binaryauthorization.v1beta1.Policy.verify(message.policy); - if (error) - return "policy." + error; - } - return null; - }; + /** + * Verifies a MethodOptions message. + * @function verify + * @memberof google.protobuf.MethodOptions + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + MethodOptions.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + if (typeof message.deprecated !== "boolean") + return "deprecated: boolean expected"; + if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) + switch (message.idempotencyLevel) { + default: + return "idempotencyLevel: enum value expected"; + case 0: + case 1: + case 2: + break; + } + if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { + if (!Array.isArray(message.uninterpretedOption)) + return "uninterpretedOption: array expected"; + for (var i = 0; i < message.uninterpretedOption.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + if (error) + return "uninterpretedOption." + error; + } + } + if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { + var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + if (error) + return ".google.api.http." + error; + } + if (message[".google.api.methodSignature"] != null && message.hasOwnProperty(".google.api.methodSignature")) { + if (!Array.isArray(message[".google.api.methodSignature"])) + return ".google.api.methodSignature: array expected"; + for (var i = 0; i < message[".google.api.methodSignature"].length; ++i) + if (!$util.isString(message[".google.api.methodSignature"][i])) + return ".google.api.methodSignature: string[] expected"; + } + return null; + }; - /** - * Creates an UpdatePolicyRequest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} UpdatePolicyRequest - */ - UpdatePolicyRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest(); - if (object.policy != null) { - if (typeof object.policy !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest.policy: object expected"); - message.policy = $root.google.cloud.binaryauthorization.v1beta1.Policy.fromObject(object.policy); - } - return message; - }; + /** + * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.MethodOptions + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.MethodOptions} MethodOptions + */ + MethodOptions.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.MethodOptions) + return object; + var message = new $root.google.protobuf.MethodOptions(); + if (object.deprecated != null) + message.deprecated = Boolean(object.deprecated); + switch (object.idempotencyLevel) { + case "IDEMPOTENCY_UNKNOWN": + case 0: + message.idempotencyLevel = 0; + break; + case "NO_SIDE_EFFECTS": + case 1: + message.idempotencyLevel = 1; + break; + case "IDEMPOTENT": + case 2: + message.idempotencyLevel = 2; + break; + } + if (object.uninterpretedOption) { + if (!Array.isArray(object.uninterpretedOption)) + throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected"); + message.uninterpretedOption = []; + for (var i = 0; i < object.uninterpretedOption.length; ++i) { + if (typeof object.uninterpretedOption[i] !== "object") + throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + } + } + if (object[".google.api.http"] != null) { + if (typeof object[".google.api.http"] !== "object") + throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + } + if (object[".google.api.methodSignature"]) { + if (!Array.isArray(object[".google.api.methodSignature"])) + throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected"); + message[".google.api.methodSignature"] = []; + for (var i = 0; i < object[".google.api.methodSignature"].length; ++i) + message[".google.api.methodSignature"][i] = String(object[".google.api.methodSignature"][i]); + } + return message; + }; - /** - * Creates a plain object from an UpdatePolicyRequest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest} message UpdatePolicyRequest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UpdatePolicyRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.policy = null; - if (message.policy != null && message.hasOwnProperty("policy")) - object.policy = $root.google.cloud.binaryauthorization.v1beta1.Policy.toObject(message.policy, options); - return object; - }; + /** + * Creates a plain object from a MethodOptions message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.MethodOptions + * @static + * @param {google.protobuf.MethodOptions} message MethodOptions + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + MethodOptions.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.uninterpretedOption = []; + object[".google.api.methodSignature"] = []; + } + if (options.defaults) { + object.deprecated = false; + object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0; + object[".google.api.http"] = null; + } + if (message.deprecated != null && message.hasOwnProperty("deprecated")) + object.deprecated = message.deprecated; + if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel")) + object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel; + if (message.uninterpretedOption && message.uninterpretedOption.length) { + object.uninterpretedOption = []; + for (var j = 0; j < message.uninterpretedOption.length; ++j) + object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options); + } + if (message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length) { + object[".google.api.methodSignature"] = []; + for (var j = 0; j < message[".google.api.methodSignature"].length; ++j) + object[".google.api.methodSignature"][j] = message[".google.api.methodSignature"][j]; + } + if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) + object[".google.api.http"] = $root.google.api.HttpRule.toObject(message[".google.api.http"], options); + return object; + }; + + /** + * Converts this MethodOptions to JSON. + * @function toJSON + * @memberof google.protobuf.MethodOptions + * @instance + * @returns {Object.} JSON object + */ + MethodOptions.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Converts this UpdatePolicyRequest to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.UpdatePolicyRequest - * @instance - * @returns {Object.} JSON object - */ - UpdatePolicyRequest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * IdempotencyLevel enum. + * @name google.protobuf.MethodOptions.IdempotencyLevel + * @enum {number} + * @property {number} IDEMPOTENCY_UNKNOWN=0 IDEMPOTENCY_UNKNOWN value + * @property {number} NO_SIDE_EFFECTS=1 NO_SIDE_EFFECTS value + * @property {number} IDEMPOTENT=2 IDEMPOTENT value + */ + MethodOptions.IdempotencyLevel = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "IDEMPOTENCY_UNKNOWN"] = 0; + values[valuesById[1] = "NO_SIDE_EFFECTS"] = 1; + values[valuesById[2] = "IDEMPOTENT"] = 2; + return values; + })(); - return UpdatePolicyRequest; - })(); + return MethodOptions; + })(); - v1beta1.CreateAttestorRequest = (function() { + protobuf.UninterpretedOption = (function() { - /** - * Properties of a CreateAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface ICreateAttestorRequest - * @property {string|null} [parent] CreateAttestorRequest parent - * @property {string|null} [attestorId] CreateAttestorRequest attestorId - * @property {google.cloud.binaryauthorization.v1beta1.IAttestor|null} [attestor] CreateAttestorRequest attestor - */ + /** + * Properties of an UninterpretedOption. + * @memberof google.protobuf + * @interface IUninterpretedOption + * @property {Array.|null} [name] UninterpretedOption name + * @property {string|null} [identifierValue] UninterpretedOption identifierValue + * @property {number|Long|null} [positiveIntValue] UninterpretedOption positiveIntValue + * @property {number|Long|null} [negativeIntValue] UninterpretedOption negativeIntValue + * @property {number|null} [doubleValue] UninterpretedOption doubleValue + * @property {Uint8Array|null} [stringValue] UninterpretedOption stringValue + * @property {string|null} [aggregateValue] UninterpretedOption aggregateValue + */ - /** - * Constructs a new CreateAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a CreateAttestorRequest. - * @implements ICreateAttestorRequest - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest=} [properties] Properties to set - */ - function CreateAttestorRequest(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Constructs a new UninterpretedOption. + * @memberof google.protobuf + * @classdesc Represents an UninterpretedOption. + * @implements IUninterpretedOption + * @constructor + * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set + */ + function UninterpretedOption(properties) { + this.name = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * CreateAttestorRequest parent. - * @member {string} parent - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @instance - */ - CreateAttestorRequest.prototype.parent = ""; + /** + * UninterpretedOption name. + * @member {Array.} name + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.name = $util.emptyArray; - /** - * CreateAttestorRequest attestorId. - * @member {string} attestorId - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @instance - */ - CreateAttestorRequest.prototype.attestorId = ""; + /** + * UninterpretedOption identifierValue. + * @member {string} identifierValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.identifierValue = ""; - /** - * CreateAttestorRequest attestor. - * @member {google.cloud.binaryauthorization.v1beta1.IAttestor|null|undefined} attestor - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @instance - */ - CreateAttestorRequest.prototype.attestor = null; + /** + * UninterpretedOption positiveIntValue. + * @member {number|Long} positiveIntValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.positiveIntValue = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - /** - * Creates a new CreateAttestorRequest instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest instance - */ - CreateAttestorRequest.create = function create(properties) { - return new CreateAttestorRequest(properties); - }; + /** + * UninterpretedOption negativeIntValue. + * @member {number|Long} negativeIntValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.negativeIntValue = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - /** - * Encodes the specified CreateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} message CreateAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - CreateAttestorRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); - if (message.attestorId != null && Object.hasOwnProperty.call(message, "attestorId")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.attestorId); - if (message.attestor != null && Object.hasOwnProperty.call(message, "attestor")) - $root.google.cloud.binaryauthorization.v1beta1.Attestor.encode(message.attestor, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; + /** + * UninterpretedOption doubleValue. + * @member {number} doubleValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.doubleValue = 0; - /** - * Encodes the specified CreateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ICreateAttestorRequest} message CreateAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - CreateAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * UninterpretedOption stringValue. + * @member {Uint8Array} stringValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.stringValue = $util.newBuffer([]); - /** - * Decodes a CreateAttestorRequest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - CreateAttestorRequest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.attestorId = reader.string(); - break; - case 3: - message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * UninterpretedOption aggregateValue. + * @member {string} aggregateValue + * @memberof google.protobuf.UninterpretedOption + * @instance + */ + UninterpretedOption.prototype.aggregateValue = ""; + + /** + * Creates a new UninterpretedOption instance using the specified properties. + * @function create + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption instance + */ + UninterpretedOption.create = function create(properties) { + return new UninterpretedOption(properties); + }; + + /** + * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @function encode + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UninterpretedOption.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.name != null && message.name.length) + for (var i = 0; i < message.name.length; ++i) + $root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.identifierValue != null && Object.hasOwnProperty.call(message, "identifierValue")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.identifierValue); + if (message.positiveIntValue != null && Object.hasOwnProperty.call(message, "positiveIntValue")) + writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.positiveIntValue); + if (message.negativeIntValue != null && Object.hasOwnProperty.call(message, "negativeIntValue")) + writer.uint32(/* id 5, wireType 0 =*/40).int64(message.negativeIntValue); + if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue")) + writer.uint32(/* id 6, wireType 1 =*/49).double(message.doubleValue); + if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue")) + writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.stringValue); + if (message.aggregateValue != null && Object.hasOwnProperty.call(message, "aggregateValue")) + writer.uint32(/* id 8, wireType 2 =*/66).string(message.aggregateValue); + return writer; + }; - /** - * Decodes a CreateAttestorRequest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - CreateAttestorRequest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UninterpretedOption.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Verifies a CreateAttestorRequest message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - CreateAttestorRequest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.parent != null && message.hasOwnProperty("parent")) - if (!$util.isString(message.parent)) - return "parent: string expected"; - if (message.attestorId != null && message.hasOwnProperty("attestorId")) - if (!$util.isString(message.attestorId)) - return "attestorId: string expected"; - if (message.attestor != null && message.hasOwnProperty("attestor")) { - var error = $root.google.cloud.binaryauthorization.v1beta1.Attestor.verify(message.attestor); - if (error) - return "attestor." + error; - } - return null; - }; + /** + * Decodes an UninterpretedOption message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UninterpretedOption.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: + if (!(message.name && message.name.length)) + message.name = []; + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + break; + case 3: + message.identifierValue = reader.string(); + break; + case 4: + message.positiveIntValue = reader.uint64(); + break; + case 5: + message.negativeIntValue = reader.int64(); + break; + case 6: + message.doubleValue = reader.double(); + break; + case 7: + message.stringValue = reader.bytes(); + break; + case 8: + message.aggregateValue = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a CreateAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} CreateAttestorRequest - */ - CreateAttestorRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest(); - if (object.parent != null) - message.parent = String(object.parent); - if (object.attestorId != null) - message.attestorId = String(object.attestorId); - if (object.attestor != null) { - if (typeof object.attestor !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest.attestor: object expected"); - message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.fromObject(object.attestor); - } - return message; - }; + /** + * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UninterpretedOption.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a plain object from a CreateAttestorRequest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest} message CreateAttestorRequest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - CreateAttestorRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.parent = ""; - object.attestorId = ""; - object.attestor = null; - } - if (message.parent != null && message.hasOwnProperty("parent")) - object.parent = message.parent; - if (message.attestorId != null && message.hasOwnProperty("attestorId")) - object.attestorId = message.attestorId; - if (message.attestor != null && message.hasOwnProperty("attestor")) - object.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.toObject(message.attestor, options); - return object; - }; + /** + * Verifies an UninterpretedOption message. + * @function verify + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UninterpretedOption.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.name != null && message.hasOwnProperty("name")) { + if (!Array.isArray(message.name)) + return "name: array expected"; + for (var i = 0; i < message.name.length; ++i) { + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + if (error) + return "name." + error; + } + } + if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) + if (!$util.isString(message.identifierValue)) + return "identifierValue: string expected"; + if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) + if (!$util.isInteger(message.positiveIntValue) && !(message.positiveIntValue && $util.isInteger(message.positiveIntValue.low) && $util.isInteger(message.positiveIntValue.high))) + return "positiveIntValue: integer|Long expected"; + if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) + if (!$util.isInteger(message.negativeIntValue) && !(message.negativeIntValue && $util.isInteger(message.negativeIntValue.low) && $util.isInteger(message.negativeIntValue.high))) + return "negativeIntValue: integer|Long expected"; + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) + if (typeof message.doubleValue !== "number") + return "doubleValue: number expected"; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) + if (!(message.stringValue && typeof message.stringValue.length === "number" || $util.isString(message.stringValue))) + return "stringValue: buffer expected"; + if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) + if (!$util.isString(message.aggregateValue)) + return "aggregateValue: string expected"; + return null; + }; + + /** + * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.UninterpretedOption} UninterpretedOption + */ + UninterpretedOption.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.UninterpretedOption) + return object; + var message = new $root.google.protobuf.UninterpretedOption(); + if (object.name) { + if (!Array.isArray(object.name)) + throw TypeError(".google.protobuf.UninterpretedOption.name: array expected"); + message.name = []; + for (var i = 0; i < object.name.length; ++i) { + if (typeof object.name[i] !== "object") + throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + } + } + if (object.identifierValue != null) + message.identifierValue = String(object.identifierValue); + if (object.positiveIntValue != null) + if ($util.Long) + (message.positiveIntValue = $util.Long.fromValue(object.positiveIntValue)).unsigned = true; + else if (typeof object.positiveIntValue === "string") + message.positiveIntValue = parseInt(object.positiveIntValue, 10); + else if (typeof object.positiveIntValue === "number") + message.positiveIntValue = object.positiveIntValue; + else if (typeof object.positiveIntValue === "object") + message.positiveIntValue = new $util.LongBits(object.positiveIntValue.low >>> 0, object.positiveIntValue.high >>> 0).toNumber(true); + if (object.negativeIntValue != null) + if ($util.Long) + (message.negativeIntValue = $util.Long.fromValue(object.negativeIntValue)).unsigned = false; + else if (typeof object.negativeIntValue === "string") + message.negativeIntValue = parseInt(object.negativeIntValue, 10); + else if (typeof object.negativeIntValue === "number") + message.negativeIntValue = object.negativeIntValue; + else if (typeof object.negativeIntValue === "object") + message.negativeIntValue = new $util.LongBits(object.negativeIntValue.low >>> 0, object.negativeIntValue.high >>> 0).toNumber(); + if (object.doubleValue != null) + message.doubleValue = Number(object.doubleValue); + if (object.stringValue != null) + if (typeof object.stringValue === "string") + $util.base64.decode(object.stringValue, message.stringValue = $util.newBuffer($util.base64.length(object.stringValue)), 0); + else if (object.stringValue.length) + message.stringValue = object.stringValue; + if (object.aggregateValue != null) + message.aggregateValue = String(object.aggregateValue); + return message; + }; - /** - * Converts this CreateAttestorRequest to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.CreateAttestorRequest - * @instance - * @returns {Object.} JSON object - */ - CreateAttestorRequest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.UninterpretedOption + * @static + * @param {google.protobuf.UninterpretedOption} message UninterpretedOption + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UninterpretedOption.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.name = []; + if (options.defaults) { + object.identifierValue = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, true); + object.positiveIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.positiveIntValue = options.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.negativeIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.negativeIntValue = options.longs === String ? "0" : 0; + object.doubleValue = 0; + if (options.bytes === String) + object.stringValue = ""; + else { + object.stringValue = []; + if (options.bytes !== Array) + object.stringValue = $util.newBuffer(object.stringValue); + } + object.aggregateValue = ""; + } + if (message.name && message.name.length) { + object.name = []; + for (var j = 0; j < message.name.length; ++j) + object.name[j] = $root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j], options); + } + if (message.identifierValue != null && message.hasOwnProperty("identifierValue")) + object.identifierValue = message.identifierValue; + if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue")) + if (typeof message.positiveIntValue === "number") + object.positiveIntValue = options.longs === String ? String(message.positiveIntValue) : message.positiveIntValue; + else + object.positiveIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.positiveIntValue) : options.longs === Number ? new $util.LongBits(message.positiveIntValue.low >>> 0, message.positiveIntValue.high >>> 0).toNumber(true) : message.positiveIntValue; + if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue")) + if (typeof message.negativeIntValue === "number") + object.negativeIntValue = options.longs === String ? String(message.negativeIntValue) : message.negativeIntValue; + else + object.negativeIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.negativeIntValue) : options.longs === Number ? new $util.LongBits(message.negativeIntValue.low >>> 0, message.negativeIntValue.high >>> 0).toNumber() : message.negativeIntValue; + if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) + object.doubleValue = options.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue; + if (message.stringValue != null && message.hasOwnProperty("stringValue")) + object.stringValue = options.bytes === String ? $util.base64.encode(message.stringValue, 0, message.stringValue.length) : options.bytes === Array ? Array.prototype.slice.call(message.stringValue) : message.stringValue; + if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue")) + object.aggregateValue = message.aggregateValue; + return object; + }; - return CreateAttestorRequest; - })(); + /** + * Converts this UninterpretedOption to JSON. + * @function toJSON + * @memberof google.protobuf.UninterpretedOption + * @instance + * @returns {Object.} JSON object + */ + UninterpretedOption.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - v1beta1.GetAttestorRequest = (function() { + UninterpretedOption.NamePart = (function() { - /** - * Properties of a GetAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IGetAttestorRequest - * @property {string|null} [name] GetAttestorRequest name - */ + /** + * Properties of a NamePart. + * @memberof google.protobuf.UninterpretedOption + * @interface INamePart + * @property {string} namePart NamePart namePart + * @property {boolean} isExtension NamePart isExtension + */ - /** - * Constructs a new GetAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a GetAttestorRequest. - * @implements IGetAttestorRequest - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest=} [properties] Properties to set - */ - function GetAttestorRequest(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Constructs a new NamePart. + * @memberof google.protobuf.UninterpretedOption + * @classdesc Represents a NamePart. + * @implements INamePart + * @constructor + * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set + */ + function NamePart(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * GetAttestorRequest name. - * @member {string} name - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @instance - */ - GetAttestorRequest.prototype.name = ""; + /** + * NamePart namePart. + * @member {string} namePart + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + */ + NamePart.prototype.namePart = ""; - /** - * Creates a new GetAttestorRequest instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest instance - */ - GetAttestorRequest.create = function create(properties) { - return new GetAttestorRequest(properties); - }; + /** + * NamePart isExtension. + * @member {boolean} isExtension + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + */ + NamePart.prototype.isExtension = false; - /** - * Encodes the specified GetAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} message GetAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GetAttestorRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - return writer; - }; + /** + * Creates a new NamePart instance using the specified properties. + * @function create + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance + */ + NamePart.create = function create(properties) { + return new NamePart(properties); + }; - /** - * Encodes the specified GetAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.GetAttestorRequest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IGetAttestorRequest} message GetAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - GetAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @function encode + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + NamePart.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart); + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension); + return writer; + }; - /** - * Decodes a GetAttestorRequest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GetAttestorRequest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + NamePart.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes a GetAttestorRequest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - GetAttestorRequest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a NamePart message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + NamePart.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.namePart = reader.string(); + break; + case 2: + message.isExtension = reader.bool(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + if (!message.hasOwnProperty("namePart")) + throw $util.ProtocolError("missing required 'namePart'", { instance: message }); + if (!message.hasOwnProperty("isExtension")) + throw $util.ProtocolError("missing required 'isExtension'", { instance: message }); + return message; + }; - /** - * Verifies a GetAttestorRequest message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - GetAttestorRequest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - return null; - }; + /** + * Decodes a NamePart message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + NamePart.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a GetAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} GetAttestorRequest - */ - GetAttestorRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.GetAttestorRequest(); - if (object.name != null) - message.name = String(object.name); - return message; - }; + /** + * Verifies a NamePart message. + * @function verify + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + NamePart.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (!$util.isString(message.namePart)) + return "namePart: string expected"; + if (typeof message.isExtension !== "boolean") + return "isExtension: boolean expected"; + return null; + }; - /** - * Creates a plain object from a GetAttestorRequest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.GetAttestorRequest} message GetAttestorRequest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - GetAttestorRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.name = ""; - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; + /** + * Creates a NamePart message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart + */ + NamePart.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; - }; + var message = new $root.google.protobuf.UninterpretedOption.NamePart(); + if (object.namePart != null) + message.namePart = String(object.namePart); + if (object.isExtension != null) + message.isExtension = Boolean(object.isExtension); + return message; + }; - /** - * Converts this GetAttestorRequest to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.GetAttestorRequest - * @instance - * @returns {Object.} JSON object - */ - GetAttestorRequest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from a NamePart message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.UninterpretedOption.NamePart + * @static + * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + NamePart.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.namePart = ""; + object.isExtension = false; + } + if (message.namePart != null && message.hasOwnProperty("namePart")) + object.namePart = message.namePart; + if (message.isExtension != null && message.hasOwnProperty("isExtension")) + object.isExtension = message.isExtension; + return object; + }; - return GetAttestorRequest; - })(); + /** + * Converts this NamePart to JSON. + * @function toJSON + * @memberof google.protobuf.UninterpretedOption.NamePart + * @instance + * @returns {Object.} JSON object + */ + NamePart.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - v1beta1.UpdateAttestorRequest = (function() { + return NamePart; + })(); - /** - * Properties of an UpdateAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IUpdateAttestorRequest - * @property {google.cloud.binaryauthorization.v1beta1.IAttestor|null} [attestor] UpdateAttestorRequest attestor - */ + return UninterpretedOption; + })(); - /** - * Constructs a new UpdateAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents an UpdateAttestorRequest. - * @implements IUpdateAttestorRequest - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest=} [properties] Properties to set - */ - function UpdateAttestorRequest(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + protobuf.SourceCodeInfo = (function() { - /** - * UpdateAttestorRequest attestor. - * @member {google.cloud.binaryauthorization.v1beta1.IAttestor|null|undefined} attestor - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @instance - */ - UpdateAttestorRequest.prototype.attestor = null; + /** + * Properties of a SourceCodeInfo. + * @memberof google.protobuf + * @interface ISourceCodeInfo + * @property {Array.|null} [location] SourceCodeInfo location + */ + + /** + * Constructs a new SourceCodeInfo. + * @memberof google.protobuf + * @classdesc Represents a SourceCodeInfo. + * @implements ISourceCodeInfo + * @constructor + * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set + */ + function SourceCodeInfo(properties) { + this.location = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Creates a new UpdateAttestorRequest instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest instance - */ - UpdateAttestorRequest.create = function create(properties) { - return new UpdateAttestorRequest(properties); - }; + /** + * SourceCodeInfo location. + * @member {Array.} location + * @memberof google.protobuf.SourceCodeInfo + * @instance + */ + SourceCodeInfo.prototype.location = $util.emptyArray; - /** - * Encodes the specified UpdateAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} message UpdateAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UpdateAttestorRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.attestor != null && Object.hasOwnProperty.call(message, "attestor")) - $root.google.cloud.binaryauthorization.v1beta1.Attestor.encode(message.attestor, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; + /** + * Creates a new SourceCodeInfo instance using the specified properties. + * @function create + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo instance + */ + SourceCodeInfo.create = function create(properties) { + return new SourceCodeInfo(properties); + }; - /** - * Encodes the specified UpdateAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IUpdateAttestorRequest} message UpdateAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UpdateAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @function encode + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SourceCodeInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.location != null && message.location.length) + for (var i = 0; i < message.location.length; ++i) + $root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; - /** - * Decodes an UpdateAttestorRequest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UpdateAttestorRequest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + SourceCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes an UpdateAttestorRequest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UpdateAttestorRequest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SourceCodeInfo.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.location && message.location.length)) + message.location = []; + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Verifies an UpdateAttestorRequest message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UpdateAttestorRequest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.attestor != null && message.hasOwnProperty("attestor")) { - var error = $root.google.cloud.binaryauthorization.v1beta1.Attestor.verify(message.attestor); - if (error) - return "attestor." + error; - } - return null; - }; + /** + * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + SourceCodeInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates an UpdateAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} UpdateAttestorRequest - */ - UpdateAttestorRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest(); - if (object.attestor != null) { - if (typeof object.attestor !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest.attestor: object expected"); - message.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.fromObject(object.attestor); - } - return message; - }; + /** + * Verifies a SourceCodeInfo message. + * @function verify + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + SourceCodeInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.location != null && message.hasOwnProperty("location")) { + if (!Array.isArray(message.location)) + return "location: array expected"; + for (var i = 0; i < message.location.length; ++i) { + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + if (error) + return "location." + error; + } + } + return null; + }; + + /** + * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo + */ + SourceCodeInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.SourceCodeInfo) + return object; + var message = new $root.google.protobuf.SourceCodeInfo(); + if (object.location) { + if (!Array.isArray(object.location)) + throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected"); + message.location = []; + for (var i = 0; i < object.location.length; ++i) { + if (typeof object.location[i] !== "object") + throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + } + } + return message; + }; - /** - * Creates a plain object from an UpdateAttestorRequest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest} message UpdateAttestorRequest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UpdateAttestorRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.attestor = null; - if (message.attestor != null && message.hasOwnProperty("attestor")) - object.attestor = $root.google.cloud.binaryauthorization.v1beta1.Attestor.toObject(message.attestor, options); - return object; - }; + /** + * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.SourceCodeInfo + * @static + * @param {google.protobuf.SourceCodeInfo} message SourceCodeInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + SourceCodeInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.location = []; + if (message.location && message.location.length) { + object.location = []; + for (var j = 0; j < message.location.length; ++j) + object.location[j] = $root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j], options); + } + return object; + }; - /** - * Converts this UpdateAttestorRequest to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.UpdateAttestorRequest - * @instance - * @returns {Object.} JSON object - */ - UpdateAttestorRequest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this SourceCodeInfo to JSON. + * @function toJSON + * @memberof google.protobuf.SourceCodeInfo + * @instance + * @returns {Object.} JSON object + */ + SourceCodeInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return UpdateAttestorRequest; - })(); + SourceCodeInfo.Location = (function() { - v1beta1.ListAttestorsRequest = (function() { + /** + * Properties of a Location. + * @memberof google.protobuf.SourceCodeInfo + * @interface ILocation + * @property {Array.|null} [path] Location path + * @property {Array.|null} [span] Location span + * @property {string|null} [leadingComments] Location leadingComments + * @property {string|null} [trailingComments] Location trailingComments + * @property {Array.|null} [leadingDetachedComments] Location leadingDetachedComments + */ - /** - * Properties of a ListAttestorsRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IListAttestorsRequest - * @property {string|null} [parent] ListAttestorsRequest parent - * @property {number|null} [pageSize] ListAttestorsRequest pageSize - * @property {string|null} [pageToken] ListAttestorsRequest pageToken - */ + /** + * Constructs a new Location. + * @memberof google.protobuf.SourceCodeInfo + * @classdesc Represents a Location. + * @implements ILocation + * @constructor + * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set + */ + function Location(properties) { + this.path = []; + this.span = []; + this.leadingDetachedComments = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Constructs a new ListAttestorsRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a ListAttestorsRequest. - * @implements IListAttestorsRequest - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest=} [properties] Properties to set - */ - function ListAttestorsRequest(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Location path. + * @member {Array.} path + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.path = $util.emptyArray; - /** - * ListAttestorsRequest parent. - * @member {string} parent - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @instance - */ - ListAttestorsRequest.prototype.parent = ""; + /** + * Location span. + * @member {Array.} span + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.span = $util.emptyArray; - /** - * ListAttestorsRequest pageSize. - * @member {number} pageSize - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @instance - */ - ListAttestorsRequest.prototype.pageSize = 0; + /** + * Location leadingComments. + * @member {string} leadingComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.leadingComments = ""; - /** - * ListAttestorsRequest pageToken. - * @member {string} pageToken - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @instance - */ - ListAttestorsRequest.prototype.pageToken = ""; + /** + * Location trailingComments. + * @member {string} trailingComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.trailingComments = ""; - /** - * Creates a new ListAttestorsRequest instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest instance - */ - ListAttestorsRequest.create = function create(properties) { - return new ListAttestorsRequest(properties); - }; + /** + * Location leadingDetachedComments. + * @member {Array.} leadingDetachedComments + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + */ + Location.prototype.leadingDetachedComments = $util.emptyArray; - /** - * Encodes the specified ListAttestorsRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} message ListAttestorsRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ListAttestorsRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.parent != null && Object.hasOwnProperty.call(message, "parent")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.parent); - if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize); - if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken); - return writer; - }; + /** + * Creates a new Location instance using the specified properties. + * @function create + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set + * @returns {google.protobuf.SourceCodeInfo.Location} Location instance + */ + Location.create = function create(properties) { + return new Location(properties); + }; - /** - * Encodes the specified ListAttestorsRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsRequest} message ListAttestorsRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ListAttestorsRequest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @function encode + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Location.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.path != null && message.path.length) { + writer.uint32(/* id 1, wireType 2 =*/10).fork(); + for (var i = 0; i < message.path.length; ++i) + writer.int32(message.path[i]); + writer.ldelim(); + } + if (message.span != null && message.span.length) { + writer.uint32(/* id 2, wireType 2 =*/18).fork(); + for (var i = 0; i < message.span.length; ++i) + writer.int32(message.span[i]); + writer.ldelim(); + } + if (message.leadingComments != null && Object.hasOwnProperty.call(message, "leadingComments")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.leadingComments); + if (message.trailingComments != null && Object.hasOwnProperty.call(message, "trailingComments")) + writer.uint32(/* id 4, wireType 2 =*/34).string(message.trailingComments); + if (message.leadingDetachedComments != null && message.leadingDetachedComments.length) + for (var i = 0; i < message.leadingDetachedComments.length; ++i) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.leadingDetachedComments[i]); + return writer; + }; - /** - * Decodes a ListAttestorsRequest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ListAttestorsRequest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.parent = reader.string(); - break; - case 2: - message.pageSize = reader.int32(); - break; - case 3: - message.pageToken = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Location.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Decodes a ListAttestorsRequest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ListAttestorsRequest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Decodes a Location message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.SourceCodeInfo.Location} Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Location.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else + message.path.push(reader.int32()); + break; + case 2: + if (!(message.span && message.span.length)) + message.span = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.span.push(reader.int32()); + } else + message.span.push(reader.int32()); + break; + case 3: + message.leadingComments = reader.string(); + break; + case 4: + message.trailingComments = reader.string(); + break; + case 6: + if (!(message.leadingDetachedComments && message.leadingDetachedComments.length)) + message.leadingDetachedComments = []; + message.leadingDetachedComments.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Verifies a ListAttestorsRequest message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ListAttestorsRequest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.parent != null && message.hasOwnProperty("parent")) - if (!$util.isString(message.parent)) - return "parent: string expected"; - if (message.pageSize != null && message.hasOwnProperty("pageSize")) - if (!$util.isInteger(message.pageSize)) - return "pageSize: integer expected"; - if (message.pageToken != null && message.hasOwnProperty("pageToken")) - if (!$util.isString(message.pageToken)) - return "pageToken: string expected"; - return null; - }; + /** + * Decodes a Location message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.SourceCodeInfo.Location} Location + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Location.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a ListAttestorsRequest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} ListAttestorsRequest - */ - ListAttestorsRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest(); - if (object.parent != null) - message.parent = String(object.parent); - if (object.pageSize != null) - message.pageSize = object.pageSize | 0; - if (object.pageToken != null) - message.pageToken = String(object.pageToken); - return message; - }; + /** + * Verifies a Location message. + * @function verify + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Location.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.path != null && message.hasOwnProperty("path")) { + if (!Array.isArray(message.path)) + return "path: array expected"; + for (var i = 0; i < message.path.length; ++i) + if (!$util.isInteger(message.path[i])) + return "path: integer[] expected"; + } + if (message.span != null && message.hasOwnProperty("span")) { + if (!Array.isArray(message.span)) + return "span: array expected"; + for (var i = 0; i < message.span.length; ++i) + if (!$util.isInteger(message.span[i])) + return "span: integer[] expected"; + } + if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) + if (!$util.isString(message.leadingComments)) + return "leadingComments: string expected"; + if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) + if (!$util.isString(message.trailingComments)) + return "trailingComments: string expected"; + if (message.leadingDetachedComments != null && message.hasOwnProperty("leadingDetachedComments")) { + if (!Array.isArray(message.leadingDetachedComments)) + return "leadingDetachedComments: array expected"; + for (var i = 0; i < message.leadingDetachedComments.length; ++i) + if (!$util.isString(message.leadingDetachedComments[i])) + return "leadingDetachedComments: string[] expected"; + } + return null; + }; - /** - * Creates a plain object from a ListAttestorsRequest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest} message ListAttestorsRequest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ListAttestorsRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.parent = ""; - object.pageSize = 0; - object.pageToken = ""; - } - if (message.parent != null && message.hasOwnProperty("parent")) - object.parent = message.parent; - if (message.pageSize != null && message.hasOwnProperty("pageSize")) - object.pageSize = message.pageSize; - if (message.pageToken != null && message.hasOwnProperty("pageToken")) - object.pageToken = message.pageToken; + /** + * Creates a Location message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.SourceCodeInfo.Location} Location + */ + Location.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; - }; - - /** - * Converts this ListAttestorsRequest to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest - * @instance - * @returns {Object.} JSON object - */ - ListAttestorsRequest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + var message = new $root.google.protobuf.SourceCodeInfo.Location(); + if (object.path) { + if (!Array.isArray(object.path)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected"); + message.path = []; + for (var i = 0; i < object.path.length; ++i) + message.path[i] = object.path[i] | 0; + } + if (object.span) { + if (!Array.isArray(object.span)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected"); + message.span = []; + for (var i = 0; i < object.span.length; ++i) + message.span[i] = object.span[i] | 0; + } + if (object.leadingComments != null) + message.leadingComments = String(object.leadingComments); + if (object.trailingComments != null) + message.trailingComments = String(object.trailingComments); + if (object.leadingDetachedComments) { + if (!Array.isArray(object.leadingDetachedComments)) + throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected"); + message.leadingDetachedComments = []; + for (var i = 0; i < object.leadingDetachedComments.length; ++i) + message.leadingDetachedComments[i] = String(object.leadingDetachedComments[i]); + } + return message; + }; - return ListAttestorsRequest; - })(); + /** + * Creates a plain object from a Location message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.SourceCodeInfo.Location + * @static + * @param {google.protobuf.SourceCodeInfo.Location} message Location + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Location.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.path = []; + object.span = []; + object.leadingDetachedComments = []; + } + if (options.defaults) { + object.leadingComments = ""; + object.trailingComments = ""; + } + if (message.path && message.path.length) { + object.path = []; + for (var j = 0; j < message.path.length; ++j) + object.path[j] = message.path[j]; + } + if (message.span && message.span.length) { + object.span = []; + for (var j = 0; j < message.span.length; ++j) + object.span[j] = message.span[j]; + } + if (message.leadingComments != null && message.hasOwnProperty("leadingComments")) + object.leadingComments = message.leadingComments; + if (message.trailingComments != null && message.hasOwnProperty("trailingComments")) + object.trailingComments = message.trailingComments; + if (message.leadingDetachedComments && message.leadingDetachedComments.length) { + object.leadingDetachedComments = []; + for (var j = 0; j < message.leadingDetachedComments.length; ++j) + object.leadingDetachedComments[j] = message.leadingDetachedComments[j]; + } + return object; + }; - v1beta1.ListAttestorsResponse = (function() { + /** + * Converts this Location to JSON. + * @function toJSON + * @memberof google.protobuf.SourceCodeInfo.Location + * @instance + * @returns {Object.} JSON object + */ + Location.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - /** - * Properties of a ListAttestorsResponse. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IListAttestorsResponse - * @property {Array.|null} [attestors] ListAttestorsResponse attestors - * @property {string|null} [nextPageToken] ListAttestorsResponse nextPageToken - */ + return Location; + })(); - /** - * Constructs a new ListAttestorsResponse. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a ListAttestorsResponse. - * @implements IListAttestorsResponse - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse=} [properties] Properties to set - */ - function ListAttestorsResponse(properties) { - this.attestors = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + return SourceCodeInfo; + })(); - /** - * ListAttestorsResponse attestors. - * @member {Array.} attestors - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @instance - */ - ListAttestorsResponse.prototype.attestors = $util.emptyArray; + protobuf.GeneratedCodeInfo = (function() { - /** - * ListAttestorsResponse nextPageToken. - * @member {string} nextPageToken - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @instance - */ - ListAttestorsResponse.prototype.nextPageToken = ""; + /** + * Properties of a GeneratedCodeInfo. + * @memberof google.protobuf + * @interface IGeneratedCodeInfo + * @property {Array.|null} [annotation] GeneratedCodeInfo annotation + */ - /** - * Creates a new ListAttestorsResponse instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse instance - */ - ListAttestorsResponse.create = function create(properties) { - return new ListAttestorsResponse(properties); - }; + /** + * Constructs a new GeneratedCodeInfo. + * @memberof google.protobuf + * @classdesc Represents a GeneratedCodeInfo. + * @implements IGeneratedCodeInfo + * @constructor + * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set + */ + function GeneratedCodeInfo(properties) { + this.annotation = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Encodes the specified ListAttestorsResponse message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse} message ListAttestorsResponse message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ListAttestorsResponse.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.attestors != null && message.attestors.length) - for (var i = 0; i < message.attestors.length; ++i) - $root.google.cloud.binaryauthorization.v1beta1.Attestor.encode(message.attestors[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken); - return writer; - }; + /** + * GeneratedCodeInfo annotation. + * @member {Array.} annotation + * @memberof google.protobuf.GeneratedCodeInfo + * @instance + */ + GeneratedCodeInfo.prototype.annotation = $util.emptyArray; - /** - * Encodes the specified ListAttestorsResponse message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IListAttestorsResponse} message ListAttestorsResponse message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ListAttestorsResponse.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a new GeneratedCodeInfo instance using the specified properties. + * @function create + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo instance + */ + GeneratedCodeInfo.create = function create(properties) { + return new GeneratedCodeInfo(properties); + }; - /** - * Decodes a ListAttestorsResponse message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ListAttestorsResponse.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.attestors && message.attestors.length)) - message.attestors = []; - message.attestors.push($root.google.cloud.binaryauthorization.v1beta1.Attestor.decode(reader, reader.uint32())); - break; - case 2: - message.nextPageToken = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @function encode + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GeneratedCodeInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.annotation != null && message.annotation.length) + for (var i = 0; i < message.annotation.length; ++i) + $root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; - /** - * Decodes a ListAttestorsResponse message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ListAttestorsResponse.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + GeneratedCodeInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Verifies a ListAttestorsResponse message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ListAttestorsResponse.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.attestors != null && message.hasOwnProperty("attestors")) { - if (!Array.isArray(message.attestors)) - return "attestors: array expected"; - for (var i = 0; i < message.attestors.length; ++i) { - var error = $root.google.cloud.binaryauthorization.v1beta1.Attestor.verify(message.attestors[i]); - if (error) - return "attestors." + error; - } - } - if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) - if (!$util.isString(message.nextPageToken)) - return "nextPageToken: string expected"; - return null; - }; + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GeneratedCodeInfo.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.annotation && message.annotation.length)) + message.annotation = []; + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a ListAttestorsResponse message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} ListAttestorsResponse - */ - ListAttestorsResponse.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse(); - if (object.attestors) { - if (!Array.isArray(object.attestors)) - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.attestors: array expected"); - message.attestors = []; - for (var i = 0; i < object.attestors.length; ++i) { - if (typeof object.attestors[i] !== "object") - throw TypeError(".google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.attestors: object expected"); - message.attestors[i] = $root.google.cloud.binaryauthorization.v1beta1.Attestor.fromObject(object.attestors[i]); - } - } - if (object.nextPageToken != null) - message.nextPageToken = String(object.nextPageToken); - return message; - }; + /** + * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + GeneratedCodeInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a plain object from a ListAttestorsResponse message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @static - * @param {google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse} message ListAttestorsResponse - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ListAttestorsResponse.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.attestors = []; - if (options.defaults) - object.nextPageToken = ""; - if (message.attestors && message.attestors.length) { - object.attestors = []; - for (var j = 0; j < message.attestors.length; ++j) - object.attestors[j] = $root.google.cloud.binaryauthorization.v1beta1.Attestor.toObject(message.attestors[j], options); - } - if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken")) - object.nextPageToken = message.nextPageToken; - return object; - }; + /** + * Verifies a GeneratedCodeInfo message. + * @function verify + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + GeneratedCodeInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.annotation != null && message.hasOwnProperty("annotation")) { + if (!Array.isArray(message.annotation)) + return "annotation: array expected"; + for (var i = 0; i < message.annotation.length; ++i) { + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + if (error) + return "annotation." + error; + } + } + return null; + }; - /** - * Converts this ListAttestorsResponse to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse - * @instance - * @returns {Object.} JSON object - */ - ListAttestorsResponse.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo + */ + GeneratedCodeInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.GeneratedCodeInfo) + return object; + var message = new $root.google.protobuf.GeneratedCodeInfo(); + if (object.annotation) { + if (!Array.isArray(object.annotation)) + throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected"); + message.annotation = []; + for (var i = 0; i < object.annotation.length; ++i) { + if (typeof object.annotation[i] !== "object") + throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + } + } + return message; + }; - return ListAttestorsResponse; - })(); + /** + * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.GeneratedCodeInfo + * @static + * @param {google.protobuf.GeneratedCodeInfo} message GeneratedCodeInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + GeneratedCodeInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.annotation = []; + if (message.annotation && message.annotation.length) { + object.annotation = []; + for (var j = 0; j < message.annotation.length; ++j) + object.annotation[j] = $root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j], options); + } + return object; + }; - v1beta1.DeleteAttestorRequest = (function() { + /** + * Converts this GeneratedCodeInfo to JSON. + * @function toJSON + * @memberof google.protobuf.GeneratedCodeInfo + * @instance + * @returns {Object.} JSON object + */ + GeneratedCodeInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + GeneratedCodeInfo.Annotation = (function() { + + /** + * Properties of an Annotation. + * @memberof google.protobuf.GeneratedCodeInfo + * @interface IAnnotation + * @property {Array.|null} [path] Annotation path + * @property {string|null} [sourceFile] Annotation sourceFile + * @property {number|null} [begin] Annotation begin + * @property {number|null} [end] Annotation end + */ - /** - * Properties of a DeleteAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @interface IDeleteAttestorRequest - * @property {string|null} [name] DeleteAttestorRequest name - */ + /** + * Constructs a new Annotation. + * @memberof google.protobuf.GeneratedCodeInfo + * @classdesc Represents an Annotation. + * @implements IAnnotation + * @constructor + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set + */ + function Annotation(properties) { + this.path = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } - /** - * Constructs a new DeleteAttestorRequest. - * @memberof google.cloud.binaryauthorization.v1beta1 - * @classdesc Represents a DeleteAttestorRequest. - * @implements IDeleteAttestorRequest - * @constructor - * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest=} [properties] Properties to set - */ - function DeleteAttestorRequest(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } + /** + * Annotation path. + * @member {Array.} path + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.path = $util.emptyArray; - /** - * DeleteAttestorRequest name. - * @member {string} name - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @instance - */ - DeleteAttestorRequest.prototype.name = ""; + /** + * Annotation sourceFile. + * @member {string} sourceFile + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.sourceFile = ""; - /** - * Creates a new DeleteAttestorRequest instance using the specified properties. - * @function create - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest=} [properties] Properties to set - * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest instance - */ - DeleteAttestorRequest.create = function create(properties) { - return new DeleteAttestorRequest(properties); - }; + /** + * Annotation begin. + * @member {number} begin + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.begin = 0; - /** - * Encodes the specified DeleteAttestorRequest message. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. - * @function encode - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} message DeleteAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DeleteAttestorRequest.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - return writer; - }; + /** + * Annotation end. + * @member {number} end + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + */ + Annotation.prototype.end = 0; - /** - * Encodes the specified DeleteAttestorRequest message, length delimited. Does not implicitly {@link google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest.verify|verify} messages. - * @function encodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.IDeleteAttestorRequest} message DeleteAttestorRequest message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DeleteAttestorRequest.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; + /** + * Creates a new Annotation instance using the specified properties. + * @function create + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation instance + */ + Annotation.create = function create(properties) { + return new Annotation(properties); + }; - /** - * Decodes a DeleteAttestorRequest message from the specified reader or buffer. - * @function decode - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DeleteAttestorRequest.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; + /** + * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @function encode + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Annotation.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.path != null && message.path.length) { + writer.uint32(/* id 1, wireType 2 =*/10).fork(); + for (var i = 0; i < message.path.length; ++i) + writer.int32(message.path[i]); + writer.ldelim(); + } + if (message.sourceFile != null && Object.hasOwnProperty.call(message, "sourceFile")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.sourceFile); + if (message.begin != null && Object.hasOwnProperty.call(message, "begin")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.begin); + if (message.end != null && Object.hasOwnProperty.call(message, "end")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.end); + return writer; + }; - /** - * Decodes a DeleteAttestorRequest message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DeleteAttestorRequest.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; + /** + * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Annotation.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; - /** - * Verifies a DeleteAttestorRequest message. - * @function verify - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - DeleteAttestorRequest.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - return null; - }; + /** + * Decodes an Annotation message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Annotation.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (!(message.path && message.path.length)) + message.path = []; + if ((tag & 7) === 2) { + var end2 = reader.uint32() + reader.pos; + while (reader.pos < end2) + message.path.push(reader.int32()); + } else + message.path.push(reader.int32()); + break; + case 2: + message.sourceFile = reader.string(); + break; + case 3: + message.begin = reader.int32(); + break; + case 4: + message.end = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; - /** - * Creates a DeleteAttestorRequest message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {Object.} object Plain object - * @returns {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} DeleteAttestorRequest - */ - DeleteAttestorRequest.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest) - return object; - var message = new $root.google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest(); - if (object.name != null) - message.name = String(object.name); - return message; - }; + /** + * Decodes an Annotation message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Annotation.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; - /** - * Creates a plain object from a DeleteAttestorRequest message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @static - * @param {google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest} message DeleteAttestorRequest - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - DeleteAttestorRequest.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.name = ""; - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; + /** + * Verifies an Annotation message. + * @function verify + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Annotation.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.path != null && message.hasOwnProperty("path")) { + if (!Array.isArray(message.path)) + return "path: array expected"; + for (var i = 0; i < message.path.length; ++i) + if (!$util.isInteger(message.path[i])) + return "path: integer[] expected"; + } + if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) + if (!$util.isString(message.sourceFile)) + return "sourceFile: string expected"; + if (message.begin != null && message.hasOwnProperty("begin")) + if (!$util.isInteger(message.begin)) + return "begin: integer expected"; + if (message.end != null && message.hasOwnProperty("end")) + if (!$util.isInteger(message.end)) + return "end: integer expected"; + return null; + }; + + /** + * Creates an Annotation message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation + */ + Annotation.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; - }; + var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); + if (object.path) { + if (!Array.isArray(object.path)) + throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected"); + message.path = []; + for (var i = 0; i < object.path.length; ++i) + message.path[i] = object.path[i] | 0; + } + if (object.sourceFile != null) + message.sourceFile = String(object.sourceFile); + if (object.begin != null) + message.begin = object.begin | 0; + if (object.end != null) + message.end = object.end | 0; + return message; + }; - /** - * Converts this DeleteAttestorRequest to JSON. - * @function toJSON - * @memberof google.cloud.binaryauthorization.v1beta1.DeleteAttestorRequest - * @instance - * @returns {Object.} JSON object - */ - DeleteAttestorRequest.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from an Annotation message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @static + * @param {google.protobuf.GeneratedCodeInfo.Annotation} message Annotation + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Annotation.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.path = []; + if (options.defaults) { + object.sourceFile = ""; + object.begin = 0; + object.end = 0; + } + if (message.path && message.path.length) { + object.path = []; + for (var j = 0; j < message.path.length; ++j) + object.path[j] = message.path[j]; + } + if (message.sourceFile != null && message.hasOwnProperty("sourceFile")) + object.sourceFile = message.sourceFile; + if (message.begin != null && message.hasOwnProperty("begin")) + object.begin = message.begin; + if (message.end != null && message.hasOwnProperty("end")) + object.end = message.end; + return object; + }; - return DeleteAttestorRequest; - })(); + /** + * Converts this Annotation to JSON. + * @function toJSON + * @memberof google.protobuf.GeneratedCodeInfo.Annotation + * @instance + * @returns {Object.} JSON object + */ + Annotation.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return v1beta1; + return Annotation; })(); - return binaryauthorization; + return GeneratedCodeInfo; })(); - return cloud; - })(); - - google.api = (function() { - - /** - * Namespace api. - * @memberof google - * @namespace - */ - var api = {}; - - api.Http = (function() { + protobuf.Timestamp = (function() { /** - * Properties of a Http. - * @memberof google.api - * @interface IHttp - * @property {Array.|null} [rules] Http rules - * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion + * Properties of a Timestamp. + * @memberof google.protobuf + * @interface ITimestamp + * @property {number|Long|null} [seconds] Timestamp seconds + * @property {number|null} [nanos] Timestamp nanos */ /** - * Constructs a new Http. - * @memberof google.api - * @classdesc Represents a Http. - * @implements IHttp + * Constructs a new Timestamp. + * @memberof google.protobuf + * @classdesc Represents a Timestamp. + * @implements ITimestamp * @constructor - * @param {google.api.IHttp=} [properties] Properties to set + * @param {google.protobuf.ITimestamp=} [properties] Properties to set */ - function Http(properties) { - this.rules = []; + function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -14201,91 +20409,88 @@ } /** - * Http rules. - * @member {Array.} rules - * @memberof google.api.Http + * Timestamp seconds. + * @member {number|Long} seconds + * @memberof google.protobuf.Timestamp * @instance */ - Http.prototype.rules = $util.emptyArray; + Timestamp.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0; /** - * Http fullyDecodeReservedExpansion. - * @member {boolean} fullyDecodeReservedExpansion - * @memberof google.api.Http + * Timestamp nanos. + * @member {number} nanos + * @memberof google.protobuf.Timestamp * @instance */ - Http.prototype.fullyDecodeReservedExpansion = false; + Timestamp.prototype.nanos = 0; /** - * Creates a new Http instance using the specified properties. + * Creates a new Timestamp instance using the specified properties. * @function create - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static - * @param {google.api.IHttp=} [properties] Properties to set - * @returns {google.api.Http} Http instance + * @param {google.protobuf.ITimestamp=} [properties] Properties to set + * @returns {google.protobuf.Timestamp} Timestamp instance */ - Http.create = function create(properties) { - return new Http(properties); + Timestamp.create = function create(properties) { + return new Timestamp(properties); }; /** - * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages. + * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. * @function encode - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static - * @param {google.api.IHttp} message Http message or plain object to encode + * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Http.encode = function encode(message, writer) { + Timestamp.encode = function encode(message, writer) { if (!writer) - writer = $Writer.create(); - if (message.rules != null && message.rules.length) - for (var i = 0; i < message.rules.length; ++i) - $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion); + writer = $Writer.create(); + if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds")) + writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds); + if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos); return writer; }; /** - * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages. + * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static - * @param {google.api.IHttp} message Http message or plain object to encode + * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - Http.encodeDelimited = function encodeDelimited(message, writer) { + Timestamp.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a Http message from the specified reader or buffer. + * Decodes a Timestamp message from the specified reader or buffer. * @function decode - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.Http} Http + * @returns {google.protobuf.Timestamp} Timestamp * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length) { + Timestamp.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (!(message.rules && message.rules.length)) - message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.seconds = reader.int64(); break; case 2: - message.fullyDecodeReservedExpansion = reader.bool(); + message.nanos = reader.int32(); break; default: reader.skipType(tag & 7); @@ -14296,143 +20501,129 @@ }; /** - * Decodes a Http message from the specified reader or buffer, length delimited. + * Decodes a Timestamp message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.Http} Http + * @returns {google.protobuf.Timestamp} Timestamp * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decodeDelimited = function decodeDelimited(reader) { + Timestamp.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a Http message. + * Verifies a Timestamp message. * @function verify - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Timestamp.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.rules != null && message.hasOwnProperty("rules")) { - if (!Array.isArray(message.rules)) - return "rules: array expected"; - for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); - if (error) - return "rules." + error; - } - } - if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) - if (typeof message.fullyDecodeReservedExpansion !== "boolean") - return "fullyDecodeReservedExpansion: boolean expected"; + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) + return "seconds: integer|Long expected"; + if (message.nanos != null && message.hasOwnProperty("nanos")) + if (!$util.isInteger(message.nanos)) + return "nanos: integer expected"; return null; }; /** - * Creates a Http message from a plain object. Also converts values to their respective internal types. + * Creates a Timestamp message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static * @param {Object.} object Plain object - * @returns {google.api.Http} Http + * @returns {google.protobuf.Timestamp} Timestamp */ - Http.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.Http) + Timestamp.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Timestamp) return object; - var message = new $root.google.api.Http(); - if (object.rules) { - if (!Array.isArray(object.rules)) - throw TypeError(".google.api.Http.rules: array expected"); - message.rules = []; - for (var i = 0; i < object.rules.length; ++i) { - if (typeof object.rules[i] !== "object") - throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); - } - } - if (object.fullyDecodeReservedExpansion != null) - message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion); + var message = new $root.google.protobuf.Timestamp(); + if (object.seconds != null) + if ($util.Long) + (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false; + else if (typeof object.seconds === "string") + message.seconds = parseInt(object.seconds, 10); + else if (typeof object.seconds === "number") + message.seconds = object.seconds; + else if (typeof object.seconds === "object") + message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber(); + if (object.nanos != null) + message.nanos = object.nanos | 0; return message; }; /** - * Creates a plain object from a Http message. Also converts values to other types if specified. + * Creates a plain object from a Timestamp message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @static - * @param {google.api.Http} message Http + * @param {google.protobuf.Timestamp} message Timestamp * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - Http.toObject = function toObject(message, options) { + Timestamp.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.rules = []; - if (options.defaults) - object.fullyDecodeReservedExpansion = false; - if (message.rules && message.rules.length) { - object.rules = []; - for (var j = 0; j < message.rules.length; ++j) - object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options); + if (options.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.seconds = options.longs === String ? "0" : 0; + object.nanos = 0; } - if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion")) - object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion; + if (message.seconds != null && message.hasOwnProperty("seconds")) + if (typeof message.seconds === "number") + object.seconds = options.longs === String ? String(message.seconds) : message.seconds; + else + object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds; + if (message.nanos != null && message.hasOwnProperty("nanos")) + object.nanos = message.nanos; return object; }; /** - * Converts this Http to JSON. + * Converts this Timestamp to JSON. * @function toJSON - * @memberof google.api.Http + * @memberof google.protobuf.Timestamp * @instance * @returns {Object.} JSON object */ - Http.prototype.toJSON = function toJSON() { + Timestamp.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return Http; + return Timestamp; })(); - api.HttpRule = (function() { + protobuf.Empty = (function() { /** - * Properties of a HttpRule. - * @memberof google.api - * @interface IHttpRule - * @property {string|null} [selector] HttpRule selector - * @property {string|null} [get] HttpRule get - * @property {string|null} [put] HttpRule put - * @property {string|null} [post] HttpRule post - * @property {string|null} ["delete"] HttpRule delete - * @property {string|null} [patch] HttpRule patch - * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom - * @property {string|null} [body] HttpRule body - * @property {string|null} [responseBody] HttpRule responseBody - * @property {Array.|null} [additionalBindings] HttpRule additionalBindings + * Properties of an Empty. + * @memberof google.protobuf + * @interface IEmpty */ /** - * Constructs a new HttpRule. - * @memberof google.api - * @classdesc Represents a HttpRule. - * @implements IHttpRule + * Constructs a new Empty. + * @memberof google.protobuf + * @classdesc Represents an Empty. + * @implements IEmpty * @constructor - * @param {google.api.IHttpRule=} [properties] Properties to set + * @param {google.protobuf.IEmpty=} [properties] Properties to set */ - function HttpRule(properties) { - this.additionalBindings = []; + function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -14440,453 +20631,565 @@ } /** - * HttpRule selector. - * @member {string} selector - * @memberof google.api.HttpRule - * @instance + * Creates a new Empty instance using the specified properties. + * @function create + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty=} [properties] Properties to set + * @returns {google.protobuf.Empty} Empty instance */ - HttpRule.prototype.selector = ""; + Empty.create = function create(properties) { + return new Empty(properties); + }; /** - * HttpRule get. - * @member {string|null|undefined} get - * @memberof google.api.HttpRule - * @instance + * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @function encode + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer */ - HttpRule.prototype.get = null; + Empty.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + return writer; + }; /** - * HttpRule put. - * @member {string|null|undefined} put - * @memberof google.api.HttpRule - * @instance + * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages. + * @function encodeDelimited + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.IEmpty} message Empty message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer */ - HttpRule.prototype.put = null; + Empty.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; /** - * HttpRule post. - * @member {string|null|undefined} post - * @memberof google.api.HttpRule - * @instance + * Decodes an Empty message from the specified reader or buffer. + * @function decode + * @memberof google.protobuf.Empty + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.protobuf.Empty} Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.prototype.post = null; + Empty.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an Empty message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.protobuf.Empty + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.protobuf.Empty} Empty + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Empty.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; /** - * HttpRule delete. - * @member {string|null|undefined} delete - * @memberof google.api.HttpRule - * @instance + * Verifies an Empty message. + * @function verify + * @memberof google.protobuf.Empty + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.prototype["delete"] = null; + Empty.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + return null; + }; /** - * HttpRule patch. - * @member {string|null|undefined} patch - * @memberof google.api.HttpRule - * @instance + * Creates an Empty message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.protobuf.Empty + * @static + * @param {Object.} object Plain object + * @returns {google.protobuf.Empty} Empty */ - HttpRule.prototype.patch = null; + Empty.fromObject = function fromObject(object) { + if (object instanceof $root.google.protobuf.Empty) + return object; + return new $root.google.protobuf.Empty(); + }; /** - * HttpRule custom. - * @member {google.api.ICustomHttpPattern|null|undefined} custom - * @memberof google.api.HttpRule - * @instance + * Creates a plain object from an Empty message. Also converts values to other types if specified. + * @function toObject + * @memberof google.protobuf.Empty + * @static + * @param {google.protobuf.Empty} message Empty + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object */ - HttpRule.prototype.custom = null; + Empty.toObject = function toObject() { + return {}; + }; /** - * HttpRule body. - * @member {string} body - * @memberof google.api.HttpRule + * Converts this Empty to JSON. + * @function toJSON + * @memberof google.protobuf.Empty * @instance + * @returns {Object.} JSON object */ - HttpRule.prototype.body = ""; + Empty.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Empty; + })(); + + return protobuf; + })(); + + return google; + })(); + + $root.grafeas = (function() { + + /** + * Namespace grafeas. + * @exports grafeas + * @namespace + */ + var grafeas = {}; + + grafeas.v1 = (function() { + + /** + * Namespace v1. + * @memberof grafeas + * @namespace + */ + var v1 = {}; + + v1.AttestationNote = (function() { /** - * HttpRule responseBody. - * @member {string} responseBody - * @memberof google.api.HttpRule - * @instance + * Properties of an AttestationNote. + * @memberof grafeas.v1 + * @interface IAttestationNote + * @property {grafeas.v1.AttestationNote.IHint|null} [hint] AttestationNote hint */ - HttpRule.prototype.responseBody = ""; /** - * HttpRule additionalBindings. - * @member {Array.} additionalBindings - * @memberof google.api.HttpRule - * @instance + * Constructs a new AttestationNote. + * @memberof grafeas.v1 + * @classdesc Represents an AttestationNote. + * @implements IAttestationNote + * @constructor + * @param {grafeas.v1.IAttestationNote=} [properties] Properties to set */ - HttpRule.prototype.additionalBindings = $util.emptyArray; - - // OneOf field names bound to virtual getters and setters - var $oneOfFields; + function AttestationNote(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } /** - * HttpRule pattern. - * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern - * @memberof google.api.HttpRule + * AttestationNote hint. + * @member {grafeas.v1.AttestationNote.IHint|null|undefined} hint + * @memberof grafeas.v1.AttestationNote * @instance */ - Object.defineProperty(HttpRule.prototype, "pattern", { - get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]), - set: $util.oneOfSetter($oneOfFields) - }); + AttestationNote.prototype.hint = null; /** - * Creates a new HttpRule instance using the specified properties. + * Creates a new AttestationNote instance using the specified properties. * @function create - * @memberof google.api.HttpRule + * @memberof grafeas.v1.AttestationNote * @static - * @param {google.api.IHttpRule=} [properties] Properties to set - * @returns {google.api.HttpRule} HttpRule instance + * @param {grafeas.v1.IAttestationNote=} [properties] Properties to set + * @returns {grafeas.v1.AttestationNote} AttestationNote instance */ - HttpRule.create = function create(properties) { - return new HttpRule(properties); + AttestationNote.create = function create(properties) { + return new AttestationNote(properties); }; /** - * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * Encodes the specified AttestationNote message. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages. * @function encode - * @memberof google.api.HttpRule + * @memberof grafeas.v1.AttestationNote * @static - * @param {google.api.IHttpRule} message HttpRule message or plain object to encode + * @param {grafeas.v1.IAttestationNote} message AttestationNote message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - HttpRule.encode = function encode(message, writer) { + AttestationNote.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.selector != null && Object.hasOwnProperty.call(message, "selector")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector); - if (message.get != null && Object.hasOwnProperty.call(message, "get")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.get); - if (message.put != null && Object.hasOwnProperty.call(message, "put")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.put); - if (message.post != null && Object.hasOwnProperty.call(message, "post")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.post); - if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]); - if (message.patch != null && Object.hasOwnProperty.call(message, "patch")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch); - if (message.body != null && Object.hasOwnProperty.call(message, "body")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.body); - if (message.custom != null && Object.hasOwnProperty.call(message, "custom")) - $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.additionalBindings != null && message.additionalBindings.length) - for (var i = 0; i < message.additionalBindings.length; ++i) - $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); - if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody); + if (message.hint != null && Object.hasOwnProperty.call(message, "hint")) + $root.grafeas.v1.AttestationNote.Hint.encode(message.hint, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages. + * Encodes the specified AttestationNote message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.HttpRule + * @memberof grafeas.v1.AttestationNote * @static - * @param {google.api.IHttpRule} message HttpRule message or plain object to encode + * @param {grafeas.v1.IAttestationNote} message AttestationNote message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - HttpRule.encodeDelimited = function encodeDelimited(message, writer) { + AttestationNote.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a HttpRule message from the specified reader or buffer. + * Decodes an AttestationNote message from the specified reader or buffer. * @function decode - * @memberof google.api.HttpRule + * @memberof grafeas.v1.AttestationNote * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.HttpRule} HttpRule + * @returns {grafeas.v1.AttestationNote} AttestationNote * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length) { + AttestationNote.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.AttestationNote(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.selector = reader.string(); - break; - case 2: - message.get = reader.string(); - break; - case 3: - message.put = reader.string(); - break; - case 4: - message.post = reader.string(); - break; - case 5: - message["delete"] = reader.string(); - break; - case 6: - message.patch = reader.string(); - break; - case 8: - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); - break; - case 7: - message.body = reader.string(); - break; - case 12: - message.responseBody = reader.string(); - break; - case 11: - if (!(message.additionalBindings && message.additionalBindings.length)) - message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a HttpRule message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof google.api.HttpRule - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.HttpRule} HttpRule - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HttpRule.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HttpRule message. - * @function verify - * @memberof google.api.HttpRule - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HttpRule.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - var properties = {}; - if (message.selector != null && message.hasOwnProperty("selector")) - if (!$util.isString(message.selector)) - return "selector: string expected"; - if (message.get != null && message.hasOwnProperty("get")) { - properties.pattern = 1; - if (!$util.isString(message.get)) - return "get: string expected"; - } - if (message.put != null && message.hasOwnProperty("put")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.put)) - return "put: string expected"; - } - if (message.post != null && message.hasOwnProperty("post")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.post)) - return "post: string expected"; - } - if (message["delete"] != null && message.hasOwnProperty("delete")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message["delete"])) - return "delete: string expected"; - } - if (message.patch != null && message.hasOwnProperty("patch")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - if (!$util.isString(message.patch)) - return "patch: string expected"; - } - if (message.custom != null && message.hasOwnProperty("custom")) { - if (properties.pattern === 1) - return "pattern: multiple values"; - properties.pattern = 1; - { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); - if (error) - return "custom." + error; + message.hint = $root.grafeas.v1.AttestationNote.Hint.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; } } - if (message.body != null && message.hasOwnProperty("body")) - if (!$util.isString(message.body)) - return "body: string expected"; - if (message.responseBody != null && message.hasOwnProperty("responseBody")) - if (!$util.isString(message.responseBody)) - return "responseBody: string expected"; - if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) { - if (!Array.isArray(message.additionalBindings)) - return "additionalBindings: array expected"; - for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); - if (error) - return "additionalBindings." + error; - } + return message; + }; + + /** + * Decodes an AttestationNote message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof grafeas.v1.AttestationNote + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {grafeas.v1.AttestationNote} AttestationNote + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + AttestationNote.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an AttestationNote message. + * @function verify + * @memberof grafeas.v1.AttestationNote + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + AttestationNote.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.hint != null && message.hasOwnProperty("hint")) { + var error = $root.grafeas.v1.AttestationNote.Hint.verify(message.hint); + if (error) + return "hint." + error; } return null; }; /** - * Creates a HttpRule message from a plain object. Also converts values to their respective internal types. + * Creates an AttestationNote message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.HttpRule + * @memberof grafeas.v1.AttestationNote * @static * @param {Object.} object Plain object - * @returns {google.api.HttpRule} HttpRule + * @returns {grafeas.v1.AttestationNote} AttestationNote */ - HttpRule.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.HttpRule) + AttestationNote.fromObject = function fromObject(object) { + if (object instanceof $root.grafeas.v1.AttestationNote) return object; - var message = new $root.google.api.HttpRule(); - if (object.selector != null) - message.selector = String(object.selector); - if (object.get != null) - message.get = String(object.get); - if (object.put != null) - message.put = String(object.put); - if (object.post != null) - message.post = String(object.post); - if (object["delete"] != null) - message["delete"] = String(object["delete"]); - if (object.patch != null) - message.patch = String(object.patch); - if (object.custom != null) { - if (typeof object.custom !== "object") - throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); - } - if (object.body != null) - message.body = String(object.body); - if (object.responseBody != null) - message.responseBody = String(object.responseBody); - if (object.additionalBindings) { - if (!Array.isArray(object.additionalBindings)) - throw TypeError(".google.api.HttpRule.additionalBindings: array expected"); - message.additionalBindings = []; - for (var i = 0; i < object.additionalBindings.length; ++i) { - if (typeof object.additionalBindings[i] !== "object") - throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); - } + var message = new $root.grafeas.v1.AttestationNote(); + if (object.hint != null) { + if (typeof object.hint !== "object") + throw TypeError(".grafeas.v1.AttestationNote.hint: object expected"); + message.hint = $root.grafeas.v1.AttestationNote.Hint.fromObject(object.hint); } return message; }; /** - * Creates a plain object from a HttpRule message. Also converts values to other types if specified. + * Creates a plain object from an AttestationNote message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.HttpRule + * @memberof grafeas.v1.AttestationNote * @static - * @param {google.api.HttpRule} message HttpRule + * @param {grafeas.v1.AttestationNote} message AttestationNote * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - HttpRule.toObject = function toObject(message, options) { + AttestationNote.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) - object.additionalBindings = []; - if (options.defaults) { - object.selector = ""; - object.body = ""; - object.responseBody = ""; - } - if (message.selector != null && message.hasOwnProperty("selector")) - object.selector = message.selector; - if (message.get != null && message.hasOwnProperty("get")) { - object.get = message.get; - if (options.oneofs) - object.pattern = "get"; - } - if (message.put != null && message.hasOwnProperty("put")) { - object.put = message.put; - if (options.oneofs) - object.pattern = "put"; - } - if (message.post != null && message.hasOwnProperty("post")) { - object.post = message.post; - if (options.oneofs) - object.pattern = "post"; - } - if (message["delete"] != null && message.hasOwnProperty("delete")) { - object["delete"] = message["delete"]; - if (options.oneofs) - object.pattern = "delete"; - } - if (message.patch != null && message.hasOwnProperty("patch")) { - object.patch = message.patch; - if (options.oneofs) - object.pattern = "patch"; - } - if (message.body != null && message.hasOwnProperty("body")) - object.body = message.body; - if (message.custom != null && message.hasOwnProperty("custom")) { - object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options); - if (options.oneofs) - object.pattern = "custom"; - } - if (message.additionalBindings && message.additionalBindings.length) { - object.additionalBindings = []; - for (var j = 0; j < message.additionalBindings.length; ++j) - object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options); - } - if (message.responseBody != null && message.hasOwnProperty("responseBody")) - object.responseBody = message.responseBody; + if (options.defaults) + object.hint = null; + if (message.hint != null && message.hasOwnProperty("hint")) + object.hint = $root.grafeas.v1.AttestationNote.Hint.toObject(message.hint, options); return object; }; - /** - * Converts this HttpRule to JSON. - * @function toJSON - * @memberof google.api.HttpRule - * @instance - * @returns {Object.} JSON object - */ - HttpRule.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Converts this AttestationNote to JSON. + * @function toJSON + * @memberof grafeas.v1.AttestationNote + * @instance + * @returns {Object.} JSON object + */ + AttestationNote.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + AttestationNote.Hint = (function() { + + /** + * Properties of a Hint. + * @memberof grafeas.v1.AttestationNote + * @interface IHint + * @property {string|null} [humanReadableName] Hint humanReadableName + */ + + /** + * Constructs a new Hint. + * @memberof grafeas.v1.AttestationNote + * @classdesc Represents a Hint. + * @implements IHint + * @constructor + * @param {grafeas.v1.AttestationNote.IHint=} [properties] Properties to set + */ + function Hint(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Hint humanReadableName. + * @member {string} humanReadableName + * @memberof grafeas.v1.AttestationNote.Hint + * @instance + */ + Hint.prototype.humanReadableName = ""; + + /** + * Creates a new Hint instance using the specified properties. + * @function create + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {grafeas.v1.AttestationNote.IHint=} [properties] Properties to set + * @returns {grafeas.v1.AttestationNote.Hint} Hint instance + */ + Hint.create = function create(properties) { + return new Hint(properties); + }; + + /** + * Encodes the specified Hint message. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages. + * @function encode + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {grafeas.v1.AttestationNote.IHint} message Hint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Hint.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.humanReadableName != null && Object.hasOwnProperty.call(message, "humanReadableName")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.humanReadableName); + return writer; + }; + + /** + * Encodes the specified Hint message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages. + * @function encodeDelimited + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {grafeas.v1.AttestationNote.IHint} message Hint message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Hint.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Hint message from the specified reader or buffer. + * @function decode + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {grafeas.v1.AttestationNote.Hint} Hint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Hint.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.AttestationNote.Hint(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.humanReadableName = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Hint message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {grafeas.v1.AttestationNote.Hint} Hint + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Hint.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Hint message. + * @function verify + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Hint.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.humanReadableName != null && message.hasOwnProperty("humanReadableName")) + if (!$util.isString(message.humanReadableName)) + return "humanReadableName: string expected"; + return null; + }; + + /** + * Creates a Hint message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {Object.} object Plain object + * @returns {grafeas.v1.AttestationNote.Hint} Hint + */ + Hint.fromObject = function fromObject(object) { + if (object instanceof $root.grafeas.v1.AttestationNote.Hint) + return object; + var message = new $root.grafeas.v1.AttestationNote.Hint(); + if (object.humanReadableName != null) + message.humanReadableName = String(object.humanReadableName); + return message; + }; + + /** + * Creates a plain object from a Hint message. Also converts values to other types if specified. + * @function toObject + * @memberof grafeas.v1.AttestationNote.Hint + * @static + * @param {grafeas.v1.AttestationNote.Hint} message Hint + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Hint.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.humanReadableName = ""; + if (message.humanReadableName != null && message.hasOwnProperty("humanReadableName")) + object.humanReadableName = message.humanReadableName; + return object; + }; + + /** + * Converts this Hint to JSON. + * @function toJSON + * @memberof grafeas.v1.AttestationNote.Hint + * @instance + * @returns {Object.} JSON object + */ + Hint.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Hint; + })(); - return HttpRule; + return AttestationNote; })(); - api.CustomHttpPattern = (function() { + v1.AttestationOccurrence = (function() { /** - * Properties of a CustomHttpPattern. - * @memberof google.api - * @interface ICustomHttpPattern - * @property {string|null} [kind] CustomHttpPattern kind - * @property {string|null} [path] CustomHttpPattern path + * Properties of an AttestationOccurrence. + * @memberof grafeas.v1 + * @interface IAttestationOccurrence + * @property {Uint8Array|null} [serializedPayload] AttestationOccurrence serializedPayload + * @property {Array.|null} [signatures] AttestationOccurrence signatures */ /** - * Constructs a new CustomHttpPattern. - * @memberof google.api - * @classdesc Represents a CustomHttpPattern. - * @implements ICustomHttpPattern + * Constructs a new AttestationOccurrence. + * @memberof grafeas.v1 + * @classdesc Represents an AttestationOccurrence. + * @implements IAttestationOccurrence * @constructor - * @param {google.api.ICustomHttpPattern=} [properties] Properties to set + * @param {grafeas.v1.IAttestationOccurrence=} [properties] Properties to set */ - function CustomHttpPattern(properties) { + function AttestationOccurrence(properties) { + this.signatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -14894,88 +21197,91 @@ } /** - * CustomHttpPattern kind. - * @member {string} kind - * @memberof google.api.CustomHttpPattern + * AttestationOccurrence serializedPayload. + * @member {Uint8Array} serializedPayload + * @memberof grafeas.v1.AttestationOccurrence * @instance */ - CustomHttpPattern.prototype.kind = ""; + AttestationOccurrence.prototype.serializedPayload = $util.newBuffer([]); /** - * CustomHttpPattern path. - * @member {string} path - * @memberof google.api.CustomHttpPattern + * AttestationOccurrence signatures. + * @member {Array.} signatures + * @memberof grafeas.v1.AttestationOccurrence * @instance */ - CustomHttpPattern.prototype.path = ""; + AttestationOccurrence.prototype.signatures = $util.emptyArray; /** - * Creates a new CustomHttpPattern instance using the specified properties. + * Creates a new AttestationOccurrence instance using the specified properties. * @function create - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static - * @param {google.api.ICustomHttpPattern=} [properties] Properties to set - * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance + * @param {grafeas.v1.IAttestationOccurrence=} [properties] Properties to set + * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence instance */ - CustomHttpPattern.create = function create(properties) { - return new CustomHttpPattern(properties); + AttestationOccurrence.create = function create(properties) { + return new AttestationOccurrence(properties); }; /** - * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * Encodes the specified AttestationOccurrence message. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages. * @function encode - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static - * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode + * @param {grafeas.v1.IAttestationOccurrence} message AttestationOccurrence message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CustomHttpPattern.encode = function encode(message, writer) { + AttestationOccurrence.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.kind != null && Object.hasOwnProperty.call(message, "kind")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind); - if (message.path != null && Object.hasOwnProperty.call(message, "path")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.path); + if (message.serializedPayload != null && Object.hasOwnProperty.call(message, "serializedPayload")) + writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.serializedPayload); + if (message.signatures != null && message.signatures.length) + for (var i = 0; i < message.signatures.length; ++i) + $root.grafeas.v1.Signature.encode(message.signatures[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); return writer; }; /** - * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages. + * Encodes the specified AttestationOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static - * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode + * @param {grafeas.v1.IAttestationOccurrence} message AttestationOccurrence message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) { + AttestationOccurrence.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer. + * Decodes an AttestationOccurrence message from the specified reader or buffer. * @function decode - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length) { + AttestationOccurrence.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.AttestationOccurrence(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.kind = reader.string(); + message.serializedPayload = reader.bytes(); break; case 2: - message.path = reader.string(); + if (!(message.signatures && message.signatures.length)) + message.signatures = []; + message.signatures.push($root.grafeas.v1.Signature.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); @@ -14986,148 +21292,171 @@ }; /** - * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited. + * Decodes an AttestationOccurrence message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) { + AttestationOccurrence.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a CustomHttpPattern message. + * Verifies an AttestationOccurrence message. * @function verify - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + AttestationOccurrence.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.kind != null && message.hasOwnProperty("kind")) - if (!$util.isString(message.kind)) - return "kind: string expected"; - if (message.path != null && message.hasOwnProperty("path")) - if (!$util.isString(message.path)) - return "path: string expected"; + if (message.serializedPayload != null && message.hasOwnProperty("serializedPayload")) + if (!(message.serializedPayload && typeof message.serializedPayload.length === "number" || $util.isString(message.serializedPayload))) + return "serializedPayload: buffer expected"; + if (message.signatures != null && message.hasOwnProperty("signatures")) { + if (!Array.isArray(message.signatures)) + return "signatures: array expected"; + for (var i = 0; i < message.signatures.length; ++i) { + var error = $root.grafeas.v1.Signature.verify(message.signatures[i]); + if (error) + return "signatures." + error; + } + } return null; }; /** - * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types. + * Creates an AttestationOccurrence message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static * @param {Object.} object Plain object - * @returns {google.api.CustomHttpPattern} CustomHttpPattern + * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence */ - CustomHttpPattern.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.CustomHttpPattern) + AttestationOccurrence.fromObject = function fromObject(object) { + if (object instanceof $root.grafeas.v1.AttestationOccurrence) return object; - var message = new $root.google.api.CustomHttpPattern(); - if (object.kind != null) - message.kind = String(object.kind); - if (object.path != null) - message.path = String(object.path); + var message = new $root.grafeas.v1.AttestationOccurrence(); + if (object.serializedPayload != null) + if (typeof object.serializedPayload === "string") + $util.base64.decode(object.serializedPayload, message.serializedPayload = $util.newBuffer($util.base64.length(object.serializedPayload)), 0); + else if (object.serializedPayload.length) + message.serializedPayload = object.serializedPayload; + if (object.signatures) { + if (!Array.isArray(object.signatures)) + throw TypeError(".grafeas.v1.AttestationOccurrence.signatures: array expected"); + message.signatures = []; + for (var i = 0; i < object.signatures.length; ++i) { + if (typeof object.signatures[i] !== "object") + throw TypeError(".grafeas.v1.AttestationOccurrence.signatures: object expected"); + message.signatures[i] = $root.grafeas.v1.Signature.fromObject(object.signatures[i]); + } + } return message; }; /** - * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified. + * Creates a plain object from an AttestationOccurrence message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @static - * @param {google.api.CustomHttpPattern} message CustomHttpPattern + * @param {grafeas.v1.AttestationOccurrence} message AttestationOccurrence * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - CustomHttpPattern.toObject = function toObject(message, options) { + AttestationOccurrence.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.kind = ""; - object.path = ""; + if (options.arrays || options.defaults) + object.signatures = []; + if (options.defaults) + if (options.bytes === String) + object.serializedPayload = ""; + else { + object.serializedPayload = []; + if (options.bytes !== Array) + object.serializedPayload = $util.newBuffer(object.serializedPayload); + } + if (message.serializedPayload != null && message.hasOwnProperty("serializedPayload")) + object.serializedPayload = options.bytes === String ? $util.base64.encode(message.serializedPayload, 0, message.serializedPayload.length) : options.bytes === Array ? Array.prototype.slice.call(message.serializedPayload) : message.serializedPayload; + if (message.signatures && message.signatures.length) { + object.signatures = []; + for (var j = 0; j < message.signatures.length; ++j) + object.signatures[j] = $root.grafeas.v1.Signature.toObject(message.signatures[j], options); } - if (message.kind != null && message.hasOwnProperty("kind")) - object.kind = message.kind; - if (message.path != null && message.hasOwnProperty("path")) - object.path = message.path; return object; }; /** - * Converts this CustomHttpPattern to JSON. + * Converts this AttestationOccurrence to JSON. * @function toJSON - * @memberof google.api.CustomHttpPattern + * @memberof grafeas.v1.AttestationOccurrence * @instance * @returns {Object.} JSON object */ - CustomHttpPattern.prototype.toJSON = function toJSON() { + AttestationOccurrence.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return CustomHttpPattern; + return AttestationOccurrence; })(); /** - * FieldBehavior enum. - * @name google.api.FieldBehavior + * NoteKind enum. + * @name grafeas.v1.NoteKind * @enum {number} - * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value - * @property {number} OPTIONAL=1 OPTIONAL value - * @property {number} REQUIRED=2 REQUIRED value - * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value - * @property {number} INPUT_ONLY=4 INPUT_ONLY value - * @property {number} IMMUTABLE=5 IMMUTABLE value - * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value + * @property {number} NOTE_KIND_UNSPECIFIED=0 NOTE_KIND_UNSPECIFIED value + * @property {number} VULNERABILITY=1 VULNERABILITY value + * @property {number} BUILD=2 BUILD value + * @property {number} IMAGE=3 IMAGE value + * @property {number} PACKAGE=4 PACKAGE value + * @property {number} DEPLOYMENT=5 DEPLOYMENT value + * @property {number} DISCOVERY=6 DISCOVERY value + * @property {number} ATTESTATION=7 ATTESTATION value + * @property {number} UPGRADE=8 UPGRADE value */ - api.FieldBehavior = (function() { + v1.NoteKind = (function() { var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0; - values[valuesById[1] = "OPTIONAL"] = 1; - values[valuesById[2] = "REQUIRED"] = 2; - values[valuesById[3] = "OUTPUT_ONLY"] = 3; - values[valuesById[4] = "INPUT_ONLY"] = 4; - values[valuesById[5] = "IMMUTABLE"] = 5; - values[valuesById[6] = "UNORDERED_LIST"] = 6; + values[valuesById[0] = "NOTE_KIND_UNSPECIFIED"] = 0; + values[valuesById[1] = "VULNERABILITY"] = 1; + values[valuesById[2] = "BUILD"] = 2; + values[valuesById[3] = "IMAGE"] = 3; + values[valuesById[4] = "PACKAGE"] = 4; + values[valuesById[5] = "DEPLOYMENT"] = 5; + values[valuesById[6] = "DISCOVERY"] = 6; + values[valuesById[7] = "ATTESTATION"] = 7; + values[valuesById[8] = "UPGRADE"] = 8; return values; })(); - api.ResourceDescriptor = (function() { + v1.RelatedUrl = (function() { /** - * Properties of a ResourceDescriptor. - * @memberof google.api - * @interface IResourceDescriptor - * @property {string|null} [type] ResourceDescriptor type - * @property {Array.|null} [pattern] ResourceDescriptor pattern - * @property {string|null} [nameField] ResourceDescriptor nameField - * @property {google.api.ResourceDescriptor.History|null} [history] ResourceDescriptor history - * @property {string|null} [plural] ResourceDescriptor plural - * @property {string|null} [singular] ResourceDescriptor singular - * @property {Array.|null} [style] ResourceDescriptor style + * Properties of a RelatedUrl. + * @memberof grafeas.v1 + * @interface IRelatedUrl + * @property {string|null} [url] RelatedUrl url + * @property {string|null} [label] RelatedUrl label */ /** - * Constructs a new ResourceDescriptor. - * @memberof google.api - * @classdesc Represents a ResourceDescriptor. - * @implements IResourceDescriptor + * Constructs a new RelatedUrl. + * @memberof grafeas.v1 + * @classdesc Represents a RelatedUrl. + * @implements IRelatedUrl * @constructor - * @param {google.api.IResourceDescriptor=} [properties] Properties to set + * @param {grafeas.v1.IRelatedUrl=} [properties] Properties to set */ - function ResourceDescriptor(properties) { - this.pattern = []; - this.style = []; + function RelatedUrl(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -15135,167 +21464,88 @@ } /** - * ResourceDescriptor type. - * @member {string} type - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.type = ""; - - /** - * ResourceDescriptor pattern. - * @member {Array.} pattern - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.pattern = $util.emptyArray; - - /** - * ResourceDescriptor nameField. - * @member {string} nameField - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.nameField = ""; - - /** - * ResourceDescriptor history. - * @member {google.api.ResourceDescriptor.History} history - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.history = 0; - - /** - * ResourceDescriptor plural. - * @member {string} plural - * @memberof google.api.ResourceDescriptor - * @instance - */ - ResourceDescriptor.prototype.plural = ""; - - /** - * ResourceDescriptor singular. - * @member {string} singular - * @memberof google.api.ResourceDescriptor + * RelatedUrl url. + * @member {string} url + * @memberof grafeas.v1.RelatedUrl * @instance */ - ResourceDescriptor.prototype.singular = ""; + RelatedUrl.prototype.url = ""; /** - * ResourceDescriptor style. - * @member {Array.} style - * @memberof google.api.ResourceDescriptor + * RelatedUrl label. + * @member {string} label + * @memberof grafeas.v1.RelatedUrl * @instance */ - ResourceDescriptor.prototype.style = $util.emptyArray; + RelatedUrl.prototype.label = ""; /** - * Creates a new ResourceDescriptor instance using the specified properties. + * Creates a new RelatedUrl instance using the specified properties. * @function create - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static - * @param {google.api.IResourceDescriptor=} [properties] Properties to set - * @returns {google.api.ResourceDescriptor} ResourceDescriptor instance + * @param {grafeas.v1.IRelatedUrl=} [properties] Properties to set + * @returns {grafeas.v1.RelatedUrl} RelatedUrl instance */ - ResourceDescriptor.create = function create(properties) { - return new ResourceDescriptor(properties); + RelatedUrl.create = function create(properties) { + return new RelatedUrl(properties); }; /** - * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * Encodes the specified RelatedUrl message. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages. * @function encode - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static - * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode + * @param {grafeas.v1.IRelatedUrl} message RelatedUrl message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceDescriptor.encode = function encode(message, writer) { + RelatedUrl.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); - if (message.pattern != null && message.pattern.length) - for (var i = 0; i < message.pattern.length; ++i) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.pattern[i]); - if (message.nameField != null && Object.hasOwnProperty.call(message, "nameField")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.nameField); - if (message.history != null && Object.hasOwnProperty.call(message, "history")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.history); - if (message.plural != null && Object.hasOwnProperty.call(message, "plural")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.plural); - if (message.singular != null && Object.hasOwnProperty.call(message, "singular")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.singular); - if (message.style != null && message.style.length) { - writer.uint32(/* id 10, wireType 2 =*/82).fork(); - for (var i = 0; i < message.style.length; ++i) - writer.int32(message.style[i]); - writer.ldelim(); - } + if (message.url != null && Object.hasOwnProperty.call(message, "url")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.url); + if (message.label != null && Object.hasOwnProperty.call(message, "label")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.label); return writer; }; /** - * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages. + * Encodes the specified RelatedUrl message, length delimited. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static - * @param {google.api.IResourceDescriptor} message ResourceDescriptor message or plain object to encode + * @param {grafeas.v1.IRelatedUrl} message RelatedUrl message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceDescriptor.encodeDelimited = function encodeDelimited(message, writer) { + RelatedUrl.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer. + * Decodes a RelatedUrl message from the specified reader or buffer. * @function decode - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @returns {grafeas.v1.RelatedUrl} RelatedUrl * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length) { + RelatedUrl.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.RelatedUrl(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.type = reader.string(); + message.url = reader.string(); break; case 2: - if (!(message.pattern && message.pattern.length)) - message.pattern = []; - message.pattern.push(reader.string()); - break; - case 3: - message.nameField = reader.string(); - break; - case 4: - message.history = reader.int32(); - break; - case 5: - message.plural = reader.string(); - break; - case 6: - message.singular = reader.string(); - break; - case 10: - if (!(message.style && message.style.length)) - message.style = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.style.push(reader.int32()); - } else - message.style.push(reader.int32()); + message.label = reader.string(); break; default: reader.skipType(tag & 7); @@ -15306,246 +21556,117 @@ }; /** - * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited. + * Decodes a RelatedUrl message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @returns {grafeas.v1.RelatedUrl} RelatedUrl * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decodeDelimited = function decodeDelimited(reader) { + RelatedUrl.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ResourceDescriptor message. + * Verifies a RelatedUrl message. * @function verify - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + RelatedUrl.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.type != null && message.hasOwnProperty("type")) - if (!$util.isString(message.type)) - return "type: string expected"; - if (message.pattern != null && message.hasOwnProperty("pattern")) { - if (!Array.isArray(message.pattern)) - return "pattern: array expected"; - for (var i = 0; i < message.pattern.length; ++i) - if (!$util.isString(message.pattern[i])) - return "pattern: string[] expected"; - } - if (message.nameField != null && message.hasOwnProperty("nameField")) - if (!$util.isString(message.nameField)) - return "nameField: string expected"; - if (message.history != null && message.hasOwnProperty("history")) - switch (message.history) { - default: - return "history: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.plural != null && message.hasOwnProperty("plural")) - if (!$util.isString(message.plural)) - return "plural: string expected"; - if (message.singular != null && message.hasOwnProperty("singular")) - if (!$util.isString(message.singular)) - return "singular: string expected"; - if (message.style != null && message.hasOwnProperty("style")) { - if (!Array.isArray(message.style)) - return "style: array expected"; - for (var i = 0; i < message.style.length; ++i) - switch (message.style[i]) { - default: - return "style: enum value[] expected"; - case 0: - case 1: - break; - } - } + if (message.url != null && message.hasOwnProperty("url")) + if (!$util.isString(message.url)) + return "url: string expected"; + if (message.label != null && message.hasOwnProperty("label")) + if (!$util.isString(message.label)) + return "label: string expected"; return null; }; /** - * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types. + * Creates a RelatedUrl message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static * @param {Object.} object Plain object - * @returns {google.api.ResourceDescriptor} ResourceDescriptor + * @returns {grafeas.v1.RelatedUrl} RelatedUrl */ - ResourceDescriptor.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.ResourceDescriptor) + RelatedUrl.fromObject = function fromObject(object) { + if (object instanceof $root.grafeas.v1.RelatedUrl) return object; - var message = new $root.google.api.ResourceDescriptor(); - if (object.type != null) - message.type = String(object.type); - if (object.pattern) { - if (!Array.isArray(object.pattern)) - throw TypeError(".google.api.ResourceDescriptor.pattern: array expected"); - message.pattern = []; - for (var i = 0; i < object.pattern.length; ++i) - message.pattern[i] = String(object.pattern[i]); - } - if (object.nameField != null) - message.nameField = String(object.nameField); - switch (object.history) { - case "HISTORY_UNSPECIFIED": - case 0: - message.history = 0; - break; - case "ORIGINALLY_SINGLE_PATTERN": - case 1: - message.history = 1; - break; - case "FUTURE_MULTI_PATTERN": - case 2: - message.history = 2; - break; - } - if (object.plural != null) - message.plural = String(object.plural); - if (object.singular != null) - message.singular = String(object.singular); - if (object.style) { - if (!Array.isArray(object.style)) - throw TypeError(".google.api.ResourceDescriptor.style: array expected"); - message.style = []; - for (var i = 0; i < object.style.length; ++i) - switch (object.style[i]) { - default: - case "STYLE_UNSPECIFIED": - case 0: - message.style[i] = 0; - break; - case "DECLARATIVE_FRIENDLY": - case 1: - message.style[i] = 1; - break; - } - } + var message = new $root.grafeas.v1.RelatedUrl(); + if (object.url != null) + message.url = String(object.url); + if (object.label != null) + message.label = String(object.label); return message; }; /** - * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified. + * Creates a plain object from a RelatedUrl message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @static - * @param {google.api.ResourceDescriptor} message ResourceDescriptor + * @param {grafeas.v1.RelatedUrl} message RelatedUrl * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ResourceDescriptor.toObject = function toObject(message, options) { + RelatedUrl.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.arrays || options.defaults) { - object.pattern = []; - object.style = []; - } if (options.defaults) { - object.type = ""; - object.nameField = ""; - object.history = options.enums === String ? "HISTORY_UNSPECIFIED" : 0; - object.plural = ""; - object.singular = ""; - } - if (message.type != null && message.hasOwnProperty("type")) - object.type = message.type; - if (message.pattern && message.pattern.length) { - object.pattern = []; - for (var j = 0; j < message.pattern.length; ++j) - object.pattern[j] = message.pattern[j]; - } - if (message.nameField != null && message.hasOwnProperty("nameField")) - object.nameField = message.nameField; - if (message.history != null && message.hasOwnProperty("history")) - object.history = options.enums === String ? $root.google.api.ResourceDescriptor.History[message.history] : message.history; - if (message.plural != null && message.hasOwnProperty("plural")) - object.plural = message.plural; - if (message.singular != null && message.hasOwnProperty("singular")) - object.singular = message.singular; - if (message.style && message.style.length) { - object.style = []; - for (var j = 0; j < message.style.length; ++j) - object.style[j] = options.enums === String ? $root.google.api.ResourceDescriptor.Style[message.style[j]] : message.style[j]; + object.url = ""; + object.label = ""; } + if (message.url != null && message.hasOwnProperty("url")) + object.url = message.url; + if (message.label != null && message.hasOwnProperty("label")) + object.label = message.label; return object; }; /** - * Converts this ResourceDescriptor to JSON. + * Converts this RelatedUrl to JSON. * @function toJSON - * @memberof google.api.ResourceDescriptor + * @memberof grafeas.v1.RelatedUrl * @instance * @returns {Object.} JSON object */ - ResourceDescriptor.prototype.toJSON = function toJSON() { + RelatedUrl.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - /** - * History enum. - * @name google.api.ResourceDescriptor.History - * @enum {number} - * @property {number} HISTORY_UNSPECIFIED=0 HISTORY_UNSPECIFIED value - * @property {number} ORIGINALLY_SINGLE_PATTERN=1 ORIGINALLY_SINGLE_PATTERN value - * @property {number} FUTURE_MULTI_PATTERN=2 FUTURE_MULTI_PATTERN value - */ - ResourceDescriptor.History = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "HISTORY_UNSPECIFIED"] = 0; - values[valuesById[1] = "ORIGINALLY_SINGLE_PATTERN"] = 1; - values[valuesById[2] = "FUTURE_MULTI_PATTERN"] = 2; - return values; - })(); - - /** - * Style enum. - * @name google.api.ResourceDescriptor.Style - * @enum {number} - * @property {number} STYLE_UNSPECIFIED=0 STYLE_UNSPECIFIED value - * @property {number} DECLARATIVE_FRIENDLY=1 DECLARATIVE_FRIENDLY value - */ - ResourceDescriptor.Style = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "STYLE_UNSPECIFIED"] = 0; - values[valuesById[1] = "DECLARATIVE_FRIENDLY"] = 1; - return values; - })(); - - return ResourceDescriptor; + return RelatedUrl; })(); - api.ResourceReference = (function() { + v1.Signature = (function() { /** - * Properties of a ResourceReference. - * @memberof google.api - * @interface IResourceReference - * @property {string|null} [type] ResourceReference type - * @property {string|null} [childType] ResourceReference childType + * Properties of a Signature. + * @memberof grafeas.v1 + * @interface ISignature + * @property {Uint8Array|null} [signature] Signature signature + * @property {string|null} [publicKeyId] Signature publicKeyId */ /** - * Constructs a new ResourceReference. - * @memberof google.api - * @classdesc Represents a ResourceReference. - * @implements IResourceReference + * Constructs a new Signature. + * @memberof grafeas.v1 + * @classdesc Represents a Signature. + * @implements ISignature * @constructor - * @param {google.api.IResourceReference=} [properties] Properties to set + * @param {grafeas.v1.ISignature=} [properties] Properties to set */ - function ResourceReference(properties) { + function Signature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -15553,88 +21674,88 @@ } /** - * ResourceReference type. - * @member {string} type - * @memberof google.api.ResourceReference + * Signature signature. + * @member {Uint8Array} signature + * @memberof grafeas.v1.Signature * @instance */ - ResourceReference.prototype.type = ""; + Signature.prototype.signature = $util.newBuffer([]); /** - * ResourceReference childType. - * @member {string} childType - * @memberof google.api.ResourceReference + * Signature publicKeyId. + * @member {string} publicKeyId + * @memberof grafeas.v1.Signature * @instance */ - ResourceReference.prototype.childType = ""; + Signature.prototype.publicKeyId = ""; /** - * Creates a new ResourceReference instance using the specified properties. + * Creates a new Signature instance using the specified properties. * @function create - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static - * @param {google.api.IResourceReference=} [properties] Properties to set - * @returns {google.api.ResourceReference} ResourceReference instance + * @param {grafeas.v1.ISignature=} [properties] Properties to set + * @returns {grafeas.v1.Signature} Signature instance */ - ResourceReference.create = function create(properties) { - return new ResourceReference(properties); + Signature.create = function create(properties) { + return new Signature(properties); }; /** - * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * Encodes the specified Signature message. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages. * @function encode - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static - * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode + * @param {grafeas.v1.ISignature} message Signature message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceReference.encode = function encode(message, writer) { + Signature.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.type != null && Object.hasOwnProperty.call(message, "type")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.type); - if (message.childType != null && Object.hasOwnProperty.call(message, "childType")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.childType); + if (message.signature != null && Object.hasOwnProperty.call(message, "signature")) + writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.signature); + if (message.publicKeyId != null && Object.hasOwnProperty.call(message, "publicKeyId")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.publicKeyId); return writer; }; /** - * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages. + * Encodes the specified Signature message, length delimited. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages. * @function encodeDelimited - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static - * @param {google.api.IResourceReference} message ResourceReference message or plain object to encode + * @param {grafeas.v1.ISignature} message Signature message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ResourceReference.encodeDelimited = function encodeDelimited(message, writer) { + Signature.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ResourceReference message from the specified reader or buffer. + * Decodes a Signature message from the specified reader or buffer. * @function decode - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.api.ResourceReference} ResourceReference + * @returns {grafeas.v1.Signature} Signature * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length) { + Signature.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.Signature(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.type = reader.string(); + message.signature = reader.bytes(); break; case 2: - message.childType = reader.string(); + message.publicKeyId = reader.string(); break; default: reader.skipType(tag & 7); @@ -15645,102 +21766,111 @@ }; /** - * Decodes a ResourceReference message from the specified reader or buffer, length delimited. + * Decodes a Signature message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.api.ResourceReference} ResourceReference + * @returns {grafeas.v1.Signature} Signature * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decodeDelimited = function decodeDelimited(reader) { + Signature.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ResourceReference message. + * Verifies a Signature message. * @function verify - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + Signature.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.type != null && message.hasOwnProperty("type")) - if (!$util.isString(message.type)) - return "type: string expected"; - if (message.childType != null && message.hasOwnProperty("childType")) - if (!$util.isString(message.childType)) - return "childType: string expected"; + if (message.signature != null && message.hasOwnProperty("signature")) + if (!(message.signature && typeof message.signature.length === "number" || $util.isString(message.signature))) + return "signature: buffer expected"; + if (message.publicKeyId != null && message.hasOwnProperty("publicKeyId")) + if (!$util.isString(message.publicKeyId)) + return "publicKeyId: string expected"; return null; }; /** - * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types. + * Creates a Signature message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static * @param {Object.} object Plain object - * @returns {google.api.ResourceReference} ResourceReference + * @returns {grafeas.v1.Signature} Signature */ - ResourceReference.fromObject = function fromObject(object) { - if (object instanceof $root.google.api.ResourceReference) + Signature.fromObject = function fromObject(object) { + if (object instanceof $root.grafeas.v1.Signature) return object; - var message = new $root.google.api.ResourceReference(); - if (object.type != null) - message.type = String(object.type); - if (object.childType != null) - message.childType = String(object.childType); + var message = new $root.grafeas.v1.Signature(); + if (object.signature != null) + if (typeof object.signature === "string") + $util.base64.decode(object.signature, message.signature = $util.newBuffer($util.base64.length(object.signature)), 0); + else if (object.signature.length) + message.signature = object.signature; + if (object.publicKeyId != null) + message.publicKeyId = String(object.publicKeyId); return message; }; /** - * Creates a plain object from a ResourceReference message. Also converts values to other types if specified. + * Creates a plain object from a Signature message. Also converts values to other types if specified. * @function toObject - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @static - * @param {google.api.ResourceReference} message ResourceReference + * @param {grafeas.v1.Signature} message Signature * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ResourceReference.toObject = function toObject(message, options) { + Signature.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.type = ""; - object.childType = ""; + if (options.bytes === String) + object.signature = ""; + else { + object.signature = []; + if (options.bytes !== Array) + object.signature = $util.newBuffer(object.signature); + } + object.publicKeyId = ""; } - if (message.type != null && message.hasOwnProperty("type")) - object.type = message.type; - if (message.childType != null && message.hasOwnProperty("childType")) - object.childType = message.childType; + if (message.signature != null && message.hasOwnProperty("signature")) + object.signature = options.bytes === String ? $util.base64.encode(message.signature, 0, message.signature.length) : options.bytes === Array ? Array.prototype.slice.call(message.signature) : message.signature; + if (message.publicKeyId != null && message.hasOwnProperty("publicKeyId")) + object.publicKeyId = message.publicKeyId; return object; }; /** - * Converts this ResourceReference to JSON. + * Converts this Signature to JSON. * @function toJSON - * @memberof google.api.ResourceReference + * @memberof grafeas.v1.Signature * @instance * @returns {Object.} JSON object */ - ResourceReference.prototype.toJSON = function toJSON() { + Signature.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return ResourceReference; + return Signature; })(); - return api; + return v1; })(); - return google; + return grafeas; })(); return $root; diff --git a/protos/protos.json b/protos/protos.json index adf18d9..f2fc409 100644 --- a/protos/protos.json +++ b/protos/protos.json @@ -2,1737 +2,2480 @@ "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" - }, + "cloud": { "nested": { - "Timestamp": { - "fields": { - "seconds": { - "type": "int64", - "id": 1 - }, - "nanos": { - "type": "int32", - "id": 2 - } - } - }, - "FileDescriptorSet": { - "fields": { - "file": { - "rule": "repeated", - "type": "FileDescriptorProto", - "id": 1 - } - } - }, - "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 - } - } - }, - "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 - } - }, + "binaryauthorization": { "nested": { - "ExtensionRange": { - "fields": { - "start": { - "type": "int32", - "id": 1 + "v1": { + "options": { + "cc_enable_arenas": true, + "csharp_namespace": "Google.Cloud.BinaryAuthorization.V1", + "go_package": "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1;binaryauthorization", + "java_multiple_files": false, + "java_package": "com.google.protos.google.cloud.binaryauthorization.v1", + "php_namespace": "Google\\Cloud\\BinaryAuthorization\\V1", + "ruby_package": "Google::Cloud::BinaryAuthorization::V1" + }, + "nested": { + "Policy": { + "options": { + "(google.api.resource).type": "binaryauthorization.googleapis.com/Policy", + "(google.api.resource).pattern": "locations/{location}/policy" + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "description": { + "type": "string", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "globalPolicyEvaluationMode": { + "type": "GlobalPolicyEvaluationMode", + "id": 7, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "admissionWhitelistPatterns": { + "rule": "repeated", + "type": "AdmissionWhitelistPattern", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "clusterAdmissionRules": { + "keyType": "string", + "type": "AdmissionRule", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "kubernetesNamespaceAdmissionRules": { + "keyType": "string", + "type": "AdmissionRule", + "id": 10, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "kubernetesServiceAccountAdmissionRules": { + "keyType": "string", + "type": "AdmissionRule", + "id": 8, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "istioServiceIdentityAdmissionRules": { + "keyType": "string", + "type": "AdmissionRule", + "id": 9, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "defaultAdmissionRule": { + "type": "AdmissionRule", + "id": 4, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + }, + "nested": { + "GlobalPolicyEvaluationMode": { + "values": { + "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED": 0, + "ENABLE": 1, + "DISABLE": 2 + } + } + } }, - "end": { - "type": "int32", - "id": 2 + "AdmissionWhitelistPattern": { + "fields": { + "namePattern": { + "type": "string", + "id": 1 + } + } }, - "options": { - "type": "ExtensionRangeOptions", - "id": 3 - } - } - }, - "ReservedRange": { - "fields": { - "start": { - "type": "int32", - "id": 1 + "AdmissionRule": { + "fields": { + "evaluationMode": { + "type": "EvaluationMode", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "requireAttestationsBy": { + "rule": "repeated", + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "enforcementMode": { + "type": "EnforcementMode", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + }, + "nested": { + "EvaluationMode": { + "values": { + "EVALUATION_MODE_UNSPECIFIED": 0, + "ALWAYS_ALLOW": 1, + "REQUIRE_ATTESTATION": 2, + "ALWAYS_DENY": 3 + } + }, + "EnforcementMode": { + "values": { + "ENFORCEMENT_MODE_UNSPECIFIED": 0, + "ENFORCED_BLOCK_AND_AUDIT_LOG": 1, + "DRYRUN_AUDIT_LOG_ONLY": 2 + } + } + } }, - "end": { - "type": "int32", - "id": 2 - } - } - } - } - }, - "ExtensionRangeOptions": { - "fields": { - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] - }, - "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_REQUIRED": 2, - "LABEL_REPEATED": 3 - } - } - } - }, - "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 + "Attestor": { + "options": { + "(google.api.resource).type": "binaryauthorization.googleapis.com/Attestor", + "(google.api.resource).pattern": "projects/{project}/attestors/{attestor}" + }, + "oneofs": { + "attestorType": { + "oneof": [ + "userOwnedGrafeasNote" + ] + } + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "description": { + "type": "string", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "userOwnedGrafeasNote": { + "type": "UserOwnedGrafeasNote", + "id": 3 + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } }, - "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 - } - }, - "phpGenericServices": { - "type": "bool", - "id": 42, - "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 - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 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 - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 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 - } - }, - "deprecated": { - "type": "bool", - "id": 3, - "options": { - "default": false - } - }, - "weak": { - "type": "bool", - "id": 10, - "options": { - "default": false - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 4, - 4 - ] - ], - "nested": { - "CType": { - "values": { - "STRING": 0, - "CORD": 1, - "STRING_PIECE": 2 - } - }, - "JSType": { - "values": { - "JS_NORMAL": 0, - "JS_STRING": 1, - "JS_NUMBER": 2 - } - } - } - }, - "OneofOptions": { - "fields": { - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] - }, - "EnumOptions": { - "fields": { - "allowAlias": { - "type": "bool", - "id": 2 - }, - "deprecated": { - "type": "bool", - "id": 3, - "options": { - "default": false - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ], - "reserved": [ - [ - 5, - 5 - ] - ] - }, - "EnumValueOptions": { - "fields": { - "deprecated": { - "type": "bool", - "id": 1, - "options": { - "default": false - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] - }, - "ServiceOptions": { - "fields": { - "deprecated": { - "type": "bool", - "id": 33, - "options": { - "default": false - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 536870911 - ] - ] - }, - "MethodOptions": { - "fields": { - "deprecated": { - "type": "bool", - "id": 33, - "options": { - "default": false - } - }, - "idempotencyLevel": { - "type": "IdempotencyLevel", - "id": 34, - "options": { - "default": "IDEMPOTENCY_UNKNOWN" - } - }, - "uninterpretedOption": { - "rule": "repeated", - "type": "UninterpretedOption", - "id": 999 - } - }, - "extensions": [ - [ - 1000, - 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 + "UserOwnedGrafeasNote": { + "fields": { + "noteReference": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "publicKeys": { + "rule": "repeated", + "type": "AttestorPublicKey", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "delegationServiceAccountEmail": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } + }, + "PkixPublicKey": { + "fields": { + "publicKeyPem": { + "type": "string", + "id": 1 + }, + "signatureAlgorithm": { + "type": "SignatureAlgorithm", + "id": 2 + } + }, + "nested": { + "SignatureAlgorithm": { + "options": { + "allow_alias": true + }, + "values": { + "SIGNATURE_ALGORITHM_UNSPECIFIED": 0, + "RSA_PSS_2048_SHA256": 1, + "RSA_PSS_3072_SHA256": 2, + "RSA_PSS_4096_SHA256": 3, + "RSA_PSS_4096_SHA512": 4, + "RSA_SIGN_PKCS1_2048_SHA256": 5, + "RSA_SIGN_PKCS1_3072_SHA256": 6, + "RSA_SIGN_PKCS1_4096_SHA256": 7, + "RSA_SIGN_PKCS1_4096_SHA512": 8, + "ECDSA_P256_SHA256": 9, + "EC_SIGN_P256_SHA256": 9, + "ECDSA_P384_SHA384": 10, + "EC_SIGN_P384_SHA384": 10, + "ECDSA_P521_SHA512": 11, + "EC_SIGN_P521_SHA512": 11 + } + } + } + }, + "AttestorPublicKey": { + "oneofs": { + "publicKey": { + "oneof": [ + "asciiArmoredPgpPublicKey", + "pkixPublicKey" + ] + } + }, + "fields": { + "comment": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "id": { + "type": "string", + "id": 2 + }, + "asciiArmoredPgpPublicKey": { + "type": "string", + "id": 3 + }, + "pkixPublicKey": { + "type": "PkixPublicKey", + "id": 5 + } + } + }, + "BinauthzManagementServiceV1": { + "options": { + "(google.api.default_host)": "binaryauthorization.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "GetPolicy": { + "requestType": "GetPolicyRequest", + "responseType": "Policy", + "options": { + "(google.api.http).get": "/v1/{name=projects/*/policy}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=projects/*/policy}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "UpdatePolicy": { + "requestType": "UpdatePolicyRequest", + "responseType": "Policy", + "options": { + "(google.api.http).put": "/v1/{policy.name=projects/*/policy}", + "(google.api.http).body": "policy", + "(google.api.method_signature)": "policy" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "put": "/v1/{policy.name=projects/*/policy}", + "body": "policy" + } + }, + { + "(google.api.method_signature)": "policy" + } + ] + }, + "CreateAttestor": { + "requestType": "CreateAttestorRequest", + "responseType": "Attestor", + "options": { + "(google.api.http).post": "/v1/{parent=projects/*}/attestors", + "(google.api.http).body": "attestor", + "(google.api.method_signature)": "parent,attestor_id,attestor" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1/{parent=projects/*}/attestors", + "body": "attestor" + } + }, + { + "(google.api.method_signature)": "parent,attestor_id,attestor" + } + ] + }, + "GetAttestor": { + "requestType": "GetAttestorRequest", + "responseType": "Attestor", + "options": { + "(google.api.http).get": "/v1/{name=projects/*/attestors/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=projects/*/attestors/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + }, + "UpdateAttestor": { + "requestType": "UpdateAttestorRequest", + "responseType": "Attestor", + "options": { + "(google.api.http).put": "/v1/{attestor.name=projects/*/attestors/*}", + "(google.api.http).body": "attestor", + "(google.api.method_signature)": "attestor" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "put": "/v1/{attestor.name=projects/*/attestors/*}", + "body": "attestor" + } + }, + { + "(google.api.method_signature)": "attestor" + } + ] + }, + "ListAttestors": { + "requestType": "ListAttestorsRequest", + "responseType": "ListAttestorsResponse", + "options": { + "(google.api.http).get": "/v1/{parent=projects/*}/attestors", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{parent=projects/*}/attestors" + } + }, + { + "(google.api.method_signature)": "parent" + } + ] + }, + "DeleteAttestor": { + "requestType": "DeleteAttestorRequest", + "responseType": "google.protobuf.Empty", + "options": { + "(google.api.http).delete": "/v1/{name=projects/*/attestors/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1/{name=projects/*/attestors/*}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + } + } + }, + "SystemPolicyV1": { + "options": { + "(google.api.default_host)": "binaryauthorization.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "GetSystemPolicy": { + "requestType": "GetSystemPolicyRequest", + "responseType": "Policy", + "options": { + "(google.api.http).get": "/v1/{name=locations/*/policy}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1/{name=locations/*/policy}" + } + }, + { + "(google.api.method_signature)": "name" + } + ] + } + } + }, + "ValidationHelperV1": { + "options": { + "(google.api.default_host)": "binaryauthorization.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" + }, + "methods": { + "ValidateAttestationOccurrence": { + "requestType": "ValidateAttestationOccurrenceRequest", + "responseType": "ValidateAttestationOccurrenceResponse", + "options": { + "(google.api.http).post": "/v1/{attestor=projects/*/attestors/*}:validateAttestationOccurrence", + "(google.api.http).body": "*" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1/{attestor=projects/*/attestors/*}:validateAttestationOccurrence", + "body": "*" + } + } + ] + } + } + }, + "GetPolicyRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Policy" + } + } + } + }, + "UpdatePolicyRequest": { + "fields": { + "policy": { + "type": "Policy", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } }, - "isExtension": { - "rule": "required", - "type": "bool", - "id": 2 + "CreateAttestorRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "cloudresourcemanager.googleapis.com/Project" + } + }, + "attestorId": { + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "attestor": { + "type": "Attestor", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "GetAttestorRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Attestor" + } + } + } + }, + "UpdateAttestorRequest": { + "fields": { + "attestor": { + "type": "Attestor", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "ListAttestorsRequest": { + "fields": { + "parent": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "cloudresourcemanager.googleapis.com/Project" + } + }, + "pageSize": { + "type": "int32", + "id": 2 + }, + "pageToken": { + "type": "string", + "id": 3 + } + } + }, + "ListAttestorsResponse": { + "fields": { + "attestors": { + "rule": "repeated", + "type": "Attestor", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 + } + } + }, + "DeleteAttestorRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Attestor" + } + } + } + }, + "GetSystemPolicyRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Policy" + } + } + } + }, + "ValidateAttestationOccurrenceRequest": { + "fields": { + "attestor": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "attestation": { + "type": "grafeas.v1.AttestationOccurrence", + "id": 2, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "occurrenceNote": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "occurrenceResourceUri": { + "type": "string", + "id": 4, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + } + }, + "ValidateAttestationOccurrenceResponse": { + "fields": { + "result": { + "type": "Result", + "id": 1 + }, + "denialReason": { + "type": "string", + "id": 2 + } + }, + "nested": { + "Result": { + "values": { + "RESULT_UNSPECIFIED": 0, + "VERIFIED": 1, + "ATTESTATION_NOT_VERIFIABLE": 2 + } + } + } } } - } - } - }, - "SourceCodeInfo": { - "fields": { - "location": { - "rule": "repeated", - "type": "Location", - "id": 1 - } - }, - "nested": { - "Location": { - "fields": { - "path": { - "rule": "repeated", - "type": "int32", - "id": 1 + }, + "v1beta1": { + "options": { + "cc_enable_arenas": true, + "csharp_namespace": "Google.Cloud.BinaryAuthorization.V1Beta1", + "go_package": "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1beta1;binaryauthorization", + "java_multiple_files": true, + "java_outer_classname": "BinaryAuthorizationServiceProto", + "java_package": "com.google.cloud.binaryauthorization.v1beta1", + "php_namespace": "Google\\Cloud\\BinaryAuthorization\\V1beta1", + "ruby_package": "Google::Cloud::BinaryAuthorization::V1beta1" + }, + "nested": { + "ContinuousValidationEvent": { + "oneofs": { + "eventType": { + "oneof": [ + "podEvent", + "unsupportedPolicyEvent" + ] + } + }, + "fields": { + "podEvent": { + "type": "ContinuousValidationPodEvent", + "id": 1 + }, + "unsupportedPolicyEvent": { + "type": "UnsupportedPolicyEvent", + "id": 2 + } + }, + "nested": { + "ContinuousValidationPodEvent": { + "fields": { + "pod": { + "type": "string", + "id": 1 + }, + "deployTime": { + "type": "google.protobuf.Timestamp", + "id": 2 + }, + "endTime": { + "type": "google.protobuf.Timestamp", + "id": 3 + }, + "verdict": { + "type": "PolicyConformanceVerdict", + "id": 4 + }, + "images": { + "rule": "repeated", + "type": "ImageDetails", + "id": 5 + } + }, + "nested": { + "ImageDetails": { + "fields": { + "image": { + "type": "string", + "id": 1 + }, + "result": { + "type": "AuditResult", + "id": 2 + }, + "description": { + "type": "string", + "id": 3 + } + }, + "nested": { + "AuditResult": { + "values": { + "AUDIT_RESULT_UNSPECIFIED": 0, + "ALLOW": 1, + "DENY": 2 + } + } + } + }, + "PolicyConformanceVerdict": { + "values": { + "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED": 0, + "VIOLATES_POLICY": 1 + } + } + } + }, + "UnsupportedPolicyEvent": { + "fields": { + "description": { + "type": "string", + "id": 1 + } + } + } + } }, - "span": { - "rule": "repeated", - "type": "int32", - "id": 2 + "Policy": { + "options": { + "(google.api.resource).type": "binaryauthorization.googleapis.com/Policy", + "(google.api.resource).pattern": "projects/{project}/policy" + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + }, + "description": { + "type": "string", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "globalPolicyEvaluationMode": { + "type": "GlobalPolicyEvaluationMode", + "id": 7, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "admissionWhitelistPatterns": { + "rule": "repeated", + "type": "AdmissionWhitelistPattern", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "clusterAdmissionRules": { + "keyType": "string", + "type": "AdmissionRule", + "id": 3, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "defaultAdmissionRule": { + "type": "AdmissionRule", + "id": 4, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 5, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + }, + "nested": { + "GlobalPolicyEvaluationMode": { + "values": { + "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED": 0, + "ENABLE": 1, + "DISABLE": 2 + } + } + } }, - "leadingComments": { - "type": "string", - "id": 3 + "AdmissionWhitelistPattern": { + "fields": { + "namePattern": { + "type": "string", + "id": 1 + } + } }, - "trailingComments": { - "type": "string", - "id": 4 + "AdmissionRule": { + "fields": { + "evaluationMode": { + "type": "EvaluationMode", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "requireAttestationsBy": { + "rule": "repeated", + "type": "string", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "enforcementMode": { + "type": "EnforcementMode", + "id": 3, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + } + }, + "nested": { + "EvaluationMode": { + "values": { + "EVALUATION_MODE_UNSPECIFIED": 0, + "ALWAYS_ALLOW": 1, + "REQUIRE_ATTESTATION": 2, + "ALWAYS_DENY": 3 + } + }, + "EnforcementMode": { + "values": { + "ENFORCEMENT_MODE_UNSPECIFIED": 0, + "ENFORCED_BLOCK_AND_AUDIT_LOG": 1, + "DRYRUN_AUDIT_LOG_ONLY": 2 + } + } + } }, - "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 + "Attestor": { + "options": { + "(google.api.resource).type": "binaryauthorization.googleapis.com/Attestor", + "(google.api.resource).pattern": "projects/{project}/attestors/{attestor}" + }, + "oneofs": { + "attestorType": { + "oneof": [ + "userOwnedDrydockNote" + ] + } + }, + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "description": { + "type": "string", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "userOwnedDrydockNote": { + "type": "UserOwnedDrydockNote", + "id": 3 + }, + "updateTime": { + "type": "google.protobuf.Timestamp", + "id": 4, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } }, - "sourceFile": { - "type": "string", - "id": 2 + "UserOwnedDrydockNote": { + "fields": { + "noteReference": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" + } + }, + "publicKeys": { + "rule": "repeated", + "type": "AttestorPublicKey", + "id": 2, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } + }, + "delegationServiceAccountEmail": { + "type": "string", + "id": 3, + "options": { + "(google.api.field_behavior)": "OUTPUT_ONLY" + } + } + } }, - "begin": { - "type": "int32", - "id": 3 + "PkixPublicKey": { + "fields": { + "publicKeyPem": { + "type": "string", + "id": 1 + }, + "signatureAlgorithm": { + "type": "SignatureAlgorithm", + "id": 2 + } + }, + "nested": { + "SignatureAlgorithm": { + "values": { + "SIGNATURE_ALGORITHM_UNSPECIFIED": 0, + "RSA_PSS_2048_SHA256": 1, + "RSA_PSS_3072_SHA256": 2, + "RSA_PSS_4096_SHA256": 3, + "RSA_PSS_4096_SHA512": 4, + "RSA_SIGN_PKCS1_2048_SHA256": 5, + "RSA_SIGN_PKCS1_3072_SHA256": 6, + "RSA_SIGN_PKCS1_4096_SHA256": 7, + "RSA_SIGN_PKCS1_4096_SHA512": 8, + "ECDSA_P256_SHA256": 9, + "ECDSA_P384_SHA384": 10, + "ECDSA_P521_SHA512": 11 + } + } + } }, - "end": { - "type": "int32", - "id": 4 - } - } - } - } - }, - "Empty": { - "fields": {} - } - } - }, - "cloud": { - "nested": { - "binaryauthorization": { - "nested": { - "v1beta1": { - "options": { - "cc_enable_arenas": true, - "csharp_namespace": "Google.Cloud.BinaryAuthorization.V1Beta1", - "go_package": "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1beta1;binaryauthorization", - "java_multiple_files": true, - "java_outer_classname": "BinaryAuthorizationServiceProto", - "java_package": "com.google.cloud.binaryauthorization.v1beta1", - "php_namespace": "Google\\Cloud\\BinaryAuthorization\\V1beta1", - "ruby_package": "Google::Cloud::BinaryAuthorization::V1beta1" - }, - "nested": { - "ContinuousValidationEvent": { + "AttestorPublicKey": { "oneofs": { - "eventType": { + "publicKey": { "oneof": [ - "podEvent", - "unsupportedPolicyEvent" + "asciiArmoredPgpPublicKey", + "pkixPublicKey" ] } }, "fields": { - "podEvent": { - "type": "ContinuousValidationPodEvent", - "id": 1 + "comment": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } }, - "unsupportedPolicyEvent": { - "type": "UnsupportedPolicyEvent", + "id": { + "type": "string", "id": 2 + }, + "asciiArmoredPgpPublicKey": { + "type": "string", + "id": 3 + }, + "pkixPublicKey": { + "type": "PkixPublicKey", + "id": 5 } + } + }, + "BinauthzManagementServiceV1Beta1": { + "options": { + "(google.api.default_host)": "binaryauthorization.googleapis.com", + "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" }, - "nested": { - "ContinuousValidationPodEvent": { - "fields": { - "pod": { - "type": "string", - "id": 1 + "methods": { + "GetPolicy": { + "requestType": "GetPolicyRequest", + "responseType": "Policy", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/policy}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/policy}" + } }, - "deployTime": { - "type": "google.protobuf.Timestamp", - "id": 2 + { + "(google.api.method_signature)": "name" + } + ] + }, + "UpdatePolicy": { + "requestType": "UpdatePolicyRequest", + "responseType": "Policy", + "options": { + "(google.api.http).put": "/v1beta1/{policy.name=projects/*/policy}", + "(google.api.http).body": "policy", + "(google.api.method_signature)": "policy" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "put": "/v1beta1/{policy.name=projects/*/policy}", + "body": "policy" + } }, - "endTime": { - "type": "google.protobuf.Timestamp", - "id": 3 + { + "(google.api.method_signature)": "policy" + } + ] + }, + "CreateAttestor": { + "requestType": "CreateAttestorRequest", + "responseType": "Attestor", + "options": { + "(google.api.http).post": "/v1beta1/{parent=projects/*}/attestors", + "(google.api.http).body": "attestor", + "(google.api.method_signature)": "parent,attestor_id,attestor" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "post": "/v1beta1/{parent=projects/*}/attestors", + "body": "attestor" + } }, - "verdict": { - "type": "PolicyConformanceVerdict", - "id": 4 + { + "(google.api.method_signature)": "parent,attestor_id,attestor" + } + ] + }, + "GetAttestor": { + "requestType": "GetAttestorRequest", + "responseType": "Attestor", + "options": { + "(google.api.http).get": "/v1beta1/{name=projects/*/attestors/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{name=projects/*/attestors/*}" + } }, - "images": { - "rule": "repeated", - "type": "ImageDetails", - "id": 5 + { + "(google.api.method_signature)": "name" } + ] + }, + "UpdateAttestor": { + "requestType": "UpdateAttestorRequest", + "responseType": "Attestor", + "options": { + "(google.api.http).put": "/v1beta1/{attestor.name=projects/*/attestors/*}", + "(google.api.http).body": "attestor", + "(google.api.method_signature)": "attestor" }, - "nested": { - "ImageDetails": { - "fields": { - "image": { - "type": "string", - "id": 1 - }, - "result": { - "type": "AuditResult", - "id": 2 - }, - "description": { - "type": "string", - "id": 3 - } - }, - "nested": { - "AuditResult": { - "values": { - "AUDIT_RESULT_UNSPECIFIED": 0, - "ALLOW": 1, - "DENY": 2 - } - } + "parsedOptions": [ + { + "(google.api.http)": { + "put": "/v1beta1/{attestor.name=projects/*/attestors/*}", + "body": "attestor" } }, - "PolicyConformanceVerdict": { - "values": { - "POLICY_CONFORMANCE_VERDICT_UNSPECIFIED": 0, - "VIOLATES_POLICY": 1 + { + "(google.api.method_signature)": "attestor" + } + ] + }, + "ListAttestors": { + "requestType": "ListAttestorsRequest", + "responseType": "ListAttestorsResponse", + "options": { + "(google.api.http).get": "/v1beta1/{parent=projects/*}/attestors", + "(google.api.method_signature)": "parent" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "get": "/v1beta1/{parent=projects/*}/attestors" } + }, + { + "(google.api.method_signature)": "parent" } - } + ] }, - "UnsupportedPolicyEvent": { - "fields": { - "description": { - "type": "string", - "id": 1 + "DeleteAttestor": { + "requestType": "DeleteAttestorRequest", + "responseType": "google.protobuf.Empty", + "options": { + "(google.api.http).delete": "/v1beta1/{name=projects/*/attestors/*}", + "(google.api.method_signature)": "name" + }, + "parsedOptions": [ + { + "(google.api.http)": { + "delete": "/v1beta1/{name=projects/*/attestors/*}" + } + }, + { + "(google.api.method_signature)": "name" } + ] + } + } + }, + "GetPolicyRequest": { + "fields": { + "name": { + "type": "string", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Policy" + } + } + } + }, + "UpdatePolicyRequest": { + "fields": { + "policy": { + "type": "Policy", + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED" } } } }, - "Policy": { - "options": { - "(google.api.resource).type": "binaryauthorization.googleapis.com/Policy", - "(google.api.resource).pattern": "projects/{project}/policy" - }, + "CreateAttestorRequest": { "fields": { - "name": { + "parent": { "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "cloudresourcemanager.googleapis.com/Project" } }, - "description": { + "attestorId": { "type": "string", - "id": 6, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "globalPolicyEvaluationMode": { - "type": "GlobalPolicyEvaluationMode", - "id": 7, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "admissionWhitelistPatterns": { - "rule": "repeated", - "type": "AdmissionWhitelistPattern", "id": 2, "options": { - "(google.api.field_behavior)": "OPTIONAL" + "(google.api.field_behavior)": "REQUIRED" } }, - "clusterAdmissionRules": { - "keyType": "string", - "type": "AdmissionRule", + "attestor": { + "type": "Attestor", "id": 3, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "defaultAdmissionRule": { - "type": "AdmissionRule", - "id": 4, "options": { "(google.api.field_behavior)": "REQUIRED" } - }, - "updateTime": { - "type": "google.protobuf.Timestamp", - "id": 5, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - } - }, - "nested": { - "GlobalPolicyEvaluationMode": { - "values": { - "GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED": 0, - "ENABLE": 1, - "DISABLE": 2 - } } } }, - "AdmissionWhitelistPattern": { + "GetAttestorRequest": { "fields": { - "namePattern": { + "name": { "type": "string", - "id": 1 + "id": 1, + "options": { + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Attestor" + } } } }, - "AdmissionRule": { + "UpdateAttestorRequest": { "fields": { - "evaluationMode": { - "type": "EvaluationMode", + "attestor": { + "type": "Attestor", "id": 1, "options": { "(google.api.field_behavior)": "REQUIRED" } - }, - "requireAttestationsBy": { - "rule": "repeated", + } + } + }, + "ListAttestorsRequest": { + "fields": { + "parent": { "type": "string", - "id": 2, + "id": 1, "options": { - "(google.api.field_behavior)": "OPTIONAL" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "cloudresourcemanager.googleapis.com/Project" } }, - "enforcementMode": { - "type": "EnforcementMode", - "id": 3, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - }, - "nested": { - "EvaluationMode": { - "values": { - "EVALUATION_MODE_UNSPECIFIED": 0, - "ALWAYS_ALLOW": 1, - "REQUIRE_ATTESTATION": 2, - "ALWAYS_DENY": 3 - } + "pageSize": { + "type": "int32", + "id": 2 }, - "EnforcementMode": { - "values": { - "ENFORCEMENT_MODE_UNSPECIFIED": 0, - "ENFORCED_BLOCK_AND_AUDIT_LOG": 1, - "DRYRUN_AUDIT_LOG_ONLY": 2 - } + "pageToken": { + "type": "string", + "id": 3 } } }, - "Attestor": { - "options": { - "(google.api.resource).type": "binaryauthorization.googleapis.com/Attestor", - "(google.api.resource).pattern": "projects/{project}/attestors/{attestor}" - }, - "oneofs": { - "attestorType": { - "oneof": [ - "userOwnedDrydockNote" - ] + "ListAttestorsResponse": { + "fields": { + "attestors": { + "rule": "repeated", + "type": "Attestor", + "id": 1 + }, + "nextPageToken": { + "type": "string", + "id": 2 } - }, + } + }, + "DeleteAttestorRequest": { "fields": { "name": { "type": "string", "id": 1, "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "description": { - "type": "string", - "id": 6, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "userOwnedDrydockNote": { - "type": "UserOwnedDrydockNote", - "id": 3 - }, - "updateTime": { - "type": "google.protobuf.Timestamp", - "id": 4, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" + "(google.api.field_behavior)": "REQUIRED", + "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Attestor" } } } + } + } + } + } + } + } + }, + "api": { + "options": { + "go_package": "google.golang.org/genproto/googleapis/api/annotations;annotations", + "java_multiple_files": true, + "java_outer_classname": "ClientProto", + "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" + }, + "FieldBehavior": { + "values": { + "FIELD_BEHAVIOR_UNSPECIFIED": 0, + "OPTIONAL": 1, + "REQUIRED": 2, + "OUTPUT_ONLY": 3, + "INPUT_ONLY": 4, + "IMMUTABLE": 5, + "UNORDERED_LIST": 6 + } + }, + "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" + } + } + }, + "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 + } + } + }, + "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 + } + } + }, + "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 }, - "UserOwnedDrydockNote": { - "fields": { - "noteReference": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "publicKeys": { - "rule": "repeated", - "type": "AttestorPublicKey", - "id": 2, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "delegationServiceAccountEmail": { - "type": "string", - "id": 3, - "options": { - "(google.api.field_behavior)": "OUTPUT_ONLY" - } - } - } + "end": { + "type": "int32", + "id": 2 }, - "PkixPublicKey": { - "fields": { - "publicKeyPem": { - "type": "string", - "id": 1 - }, - "signatureAlgorithm": { - "type": "SignatureAlgorithm", - "id": 2 - } - }, - "nested": { - "SignatureAlgorithm": { - "values": { - "SIGNATURE_ALGORITHM_UNSPECIFIED": 0, - "RSA_PSS_2048_SHA256": 1, - "RSA_PSS_3072_SHA256": 2, - "RSA_PSS_4096_SHA256": 3, - "RSA_PSS_4096_SHA512": 4, - "RSA_SIGN_PKCS1_2048_SHA256": 5, - "RSA_SIGN_PKCS1_3072_SHA256": 6, - "RSA_SIGN_PKCS1_4096_SHA256": 7, - "RSA_SIGN_PKCS1_4096_SHA512": 8, - "ECDSA_P256_SHA256": 9, - "ECDSA_P384_SHA384": 10, - "ECDSA_P521_SHA512": 11 - } - } - } + "options": { + "type": "ExtensionRangeOptions", + "id": 3 + } + } + }, + "ReservedRange": { + "fields": { + "start": { + "type": "int32", + "id": 1 }, - "AttestorPublicKey": { - "oneofs": { - "publicKey": { - "oneof": [ - "asciiArmoredPgpPublicKey", - "pkixPublicKey" - ] - } - }, - "fields": { - "comment": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "OPTIONAL" - } - }, - "id": { - "type": "string", - "id": 2 - }, - "asciiArmoredPgpPublicKey": { - "type": "string", - "id": 3 - }, - "pkixPublicKey": { - "type": "PkixPublicKey", - "id": 5 - } - } + "end": { + "type": "int32", + "id": 2 + } + } + } + } + }, + "ExtensionRangeOptions": { + "fields": { + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "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_REQUIRED": 2, + "LABEL_REPEATED": 3 + } + } + } + }, + "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 }, - "BinauthzManagementServiceV1Beta1": { - "options": { - "(google.api.default_host)": "binaryauthorization.googleapis.com", - "(google.api.oauth_scopes)": "https://www.googleapis.com/auth/cloud-platform" - }, - "methods": { - "GetPolicy": { - "requestType": "GetPolicyRequest", - "responseType": "Policy", - "options": { - "(google.api.http).get": "/v1beta1/{name=projects/*/policy}", - "(google.api.method_signature)": "name" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{name=projects/*/policy}" - } - }, - { - "(google.api.method_signature)": "name" - } - ] - }, - "UpdatePolicy": { - "requestType": "UpdatePolicyRequest", - "responseType": "Policy", - "options": { - "(google.api.http).put": "/v1beta1/{policy.name=projects/*/policy}", - "(google.api.http).body": "policy", - "(google.api.method_signature)": "policy" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "put": "/v1beta1/{policy.name=projects/*/policy}", - "body": "policy" - } - }, - { - "(google.api.method_signature)": "policy" - } - ] - }, - "CreateAttestor": { - "requestType": "CreateAttestorRequest", - "responseType": "Attestor", - "options": { - "(google.api.http).post": "/v1beta1/{parent=projects/*}/attestors", - "(google.api.http).body": "attestor", - "(google.api.method_signature)": "parent,attestor_id,attestor" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "post": "/v1beta1/{parent=projects/*}/attestors", - "body": "attestor" - } - }, - { - "(google.api.method_signature)": "parent,attestor_id,attestor" - } - ] - }, - "GetAttestor": { - "requestType": "GetAttestorRequest", - "responseType": "Attestor", - "options": { - "(google.api.http).get": "/v1beta1/{name=projects/*/attestors/*}", - "(google.api.method_signature)": "name" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{name=projects/*/attestors/*}" - } - }, - { - "(google.api.method_signature)": "name" - } - ] - }, - "UpdateAttestor": { - "requestType": "UpdateAttestorRequest", - "responseType": "Attestor", - "options": { - "(google.api.http).put": "/v1beta1/{attestor.name=projects/*/attestors/*}", - "(google.api.http).body": "attestor", - "(google.api.method_signature)": "attestor" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "put": "/v1beta1/{attestor.name=projects/*/attestors/*}", - "body": "attestor" - } - }, - { - "(google.api.method_signature)": "attestor" - } - ] - }, - "ListAttestors": { - "requestType": "ListAttestorsRequest", - "responseType": "ListAttestorsResponse", - "options": { - "(google.api.http).get": "/v1beta1/{parent=projects/*}/attestors", - "(google.api.method_signature)": "parent" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "get": "/v1beta1/{parent=projects/*}/attestors" - } - }, - { - "(google.api.method_signature)": "parent" - } - ] - }, - "DeleteAttestor": { - "requestType": "DeleteAttestorRequest", - "responseType": "google.protobuf.Empty", - "options": { - "(google.api.http).delete": "/v1beta1/{name=projects/*/attestors/*}", - "(google.api.method_signature)": "name" - }, - "parsedOptions": [ - { - "(google.api.http)": { - "delete": "/v1beta1/{name=projects/*/attestors/*}" - } - }, - { - "(google.api.method_signature)": "name" - } - ] - } - } + "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 + } + }, + "phpGenericServices": { + "type": "bool", + "id": 42, + "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 + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 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 + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 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 + } + }, + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } + }, + "weak": { + "type": "bool", + "id": 10, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 4, + 4 + ] + ], + "nested": { + "CType": { + "values": { + "STRING": 0, + "CORD": 1, + "STRING_PIECE": 2 + } + }, + "JSType": { + "values": { + "JS_NORMAL": 0, + "JS_STRING": 1, + "JS_NUMBER": 2 + } + } + } + }, + "OneofOptions": { + "fields": { + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "EnumOptions": { + "fields": { + "allowAlias": { + "type": "bool", + "id": 2 + }, + "deprecated": { + "type": "bool", + "id": 3, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ], + "reserved": [ + [ + 5, + 5 + ] + ] + }, + "EnumValueOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 1, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "ServiceOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 33, + "options": { + "default": false + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 536870911 + ] + ] + }, + "MethodOptions": { + "fields": { + "deprecated": { + "type": "bool", + "id": 33, + "options": { + "default": false + } + }, + "idempotencyLevel": { + "type": "IdempotencyLevel", + "id": 34, + "options": { + "default": "IDEMPOTENCY_UNKNOWN" + } + }, + "uninterpretedOption": { + "rule": "repeated", + "type": "UninterpretedOption", + "id": 999 + } + }, + "extensions": [ + [ + 1000, + 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 }, - "GetPolicyRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED", - "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Policy" - } - } - } + "isExtension": { + "rule": "required", + "type": "bool", + "id": 2 + } + } + } + } + }, + "SourceCodeInfo": { + "fields": { + "location": { + "rule": "repeated", + "type": "Location", + "id": 1 + } + }, + "nested": { + "Location": { + "fields": { + "path": { + "rule": "repeated", + "type": "int32", + "id": 1 }, - "UpdatePolicyRequest": { - "fields": { - "policy": { - "type": "Policy", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } + "span": { + "rule": "repeated", + "type": "int32", + "id": 2 }, - "CreateAttestorRequest": { - "fields": { - "parent": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED", - "(google.api.resource_reference).type": "cloudresourcemanager.googleapis.com/Project" - } - }, - "attestorId": { - "type": "string", - "id": 2, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - }, - "attestor": { - "type": "Attestor", - "id": 3, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } + "leadingComments": { + "type": "string", + "id": 3 }, - "GetAttestorRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED", - "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Attestor" - } - } - } + "trailingComments": { + "type": "string", + "id": 4 }, - "UpdateAttestorRequest": { - "fields": { - "attestor": { - "type": "Attestor", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED" - } - } - } + "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 }, - "ListAttestorsRequest": { - "fields": { - "parent": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED", - "(google.api.resource_reference).type": "cloudresourcemanager.googleapis.com/Project" - } - }, - "pageSize": { - "type": "int32", - "id": 2 - }, - "pageToken": { - "type": "string", - "id": 3 - } - } + "sourceFile": { + "type": "string", + "id": 2 }, - "ListAttestorsResponse": { - "fields": { - "attestors": { - "rule": "repeated", - "type": "Attestor", - "id": 1 - }, - "nextPageToken": { - "type": "string", - "id": 2 - } - } + "begin": { + "type": "int32", + "id": 3 }, - "DeleteAttestorRequest": { - "fields": { - "name": { - "type": "string", - "id": 1, - "options": { - "(google.api.field_behavior)": "REQUIRED", - "(google.api.resource_reference).type": "binaryauthorization.googleapis.com/Attestor" - } - } - } + "end": { + "type": "int32", + "id": 4 } } } } - } - } - }, - "api": { - "options": { - "go_package": "google.golang.org/genproto/googleapis/api/annotations;annotations", - "java_multiple_files": true, - "java_outer_classname": "ClientProto", - "java_package": "com.google.api", - "objc_class_prefix": "GAPI", - "cc_enable_arenas": true - }, - "nested": { - "http": { - "type": "HttpRule", - "id": 72295728, - "extend": "google.protobuf.MethodOptions" }, - "Http": { + "Timestamp": { "fields": { - "rules": { - "rule": "repeated", - "type": "HttpRule", + "seconds": { + "type": "int64", "id": 1 }, - "fullyDecodeReservedExpansion": { - "type": "bool", + "nanos": { + "type": "int32", "id": 2 } } }, - "HttpRule": { - "oneofs": { - "pattern": { - "oneof": [ - "get", - "put", - "post", - "delete", - "patch", - "custom" - ] - } - }, + "Empty": { + "fields": {} + } + } + } + } + }, + "grafeas": { + "nested": { + "v1": { + "options": { + "go_package": "google.golang.org/genproto/googleapis/grafeas/v1;grafeas", + "java_multiple_files": true, + "java_package": "io.grafeas.v1", + "objc_class_prefix": "GRA" + }, + "nested": { + "AttestationNote": { "fields": { - "selector": { - "type": "string", + "hint": { + "type": "Hint", "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 + } + }, + "nested": { + "Hint": { + "fields": { + "humanReadableName": { + "type": "string", + "id": 1 + } + } } } }, - "CustomHttpPattern": { + "AttestationOccurrence": { "fields": { - "kind": { - "type": "string", + "serializedPayload": { + "type": "bytes", "id": 1 }, - "path": { - "type": "string", + "signatures": { + "rule": "repeated", + "type": "Signature", "id": 2 } } }, - "fieldBehavior": { - "rule": "repeated", - "type": "google.api.FieldBehavior", - "id": 1052, - "extend": "google.protobuf.FieldOptions" - }, - "FieldBehavior": { + "NoteKind": { "values": { - "FIELD_BEHAVIOR_UNSPECIFIED": 0, - "OPTIONAL": 1, - "REQUIRED": 2, - "OUTPUT_ONLY": 3, - "INPUT_ONLY": 4, - "IMMUTABLE": 5, - "UNORDERED_LIST": 6 + "NOTE_KIND_UNSPECIFIED": 0, + "VULNERABILITY": 1, + "BUILD": 2, + "IMAGE": 3, + "PACKAGE": 4, + "DEPLOYMENT": 5, + "DISCOVERY": 6, + "ATTESTATION": 7, + "UPGRADE": 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": { + "RelatedUrl": { "fields": { - "type": { + "url": { "type": "string", "id": 1 }, - "pattern": { - "rule": "repeated", + "label": { "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": { + "Signature": { "fields": { - "type": { - "type": "string", + "signature": { + "type": "bytes", "id": 1 }, - "childType": { + "publicKeyId": { "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" } } } diff --git a/samples/generated/v1/binauthz_management_service_v1.create_attestor.js b/samples/generated/v1/binauthz_management_service_v1.create_attestor.js new file mode 100644 index 0000000..13c7da2 --- /dev/null +++ b/samples/generated/v1/binauthz_management_service_v1.create_attestor.js @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(parent, attestorId, attestor) { + // [START binaryauthorization_v1_generated_BinauthzManagementServiceV1_CreateAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent of this [attestor][google.cloud.binaryauthorization.v1.Attestor]. + */ + // const parent = 'abc123' + /** + * Required. The [attestors][google.cloud.binaryauthorization.v1.Attestor] ID. + */ + // const attestorId = 'abc123' + /** + * Required. The initial [attestor][google.cloud.binaryauthorization.v1.Attestor] value. The service will + * overwrite the [attestor name][google.cloud.binaryauthorization.v1.Attestor.name] field with the resource name, + * in the format `projects/* /attestors/*`. + */ + // const attestor = '' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new BinauthzManagementServiceV1Client(); + + async function createAttestor() { + // Construct request + const request = { + parent, + attestorId, + attestor, + }; + + // Run request + const response = await binaryauthorizationClient.createAttestor(request); + console.log(response); + } + + createAttestor(); + // [END binaryauthorization_v1_generated_BinauthzManagementServiceV1_CreateAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/binauthz_management_service_v1.delete_attestor.js b/samples/generated/v1/binauthz_management_service_v1.delete_attestor.js new file mode 100644 index 0000000..6ac01b3 --- /dev/null +++ b/samples/generated/v1/binauthz_management_service_v1.delete_attestor.js @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START binaryauthorization_v1_generated_BinauthzManagementServiceV1_DeleteAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The name of the [attestors][google.cloud.binaryauthorization.v1.Attestor] to delete, in the format + * `projects/* /attestors/*`. + */ + // const name = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new BinauthzManagementServiceV1Client(); + + async function deleteAttestor() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await binaryauthorizationClient.deleteAttestor(request); + console.log(response); + } + + deleteAttestor(); + // [END binaryauthorization_v1_generated_BinauthzManagementServiceV1_DeleteAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/binauthz_management_service_v1.get_attestor.js b/samples/generated/v1/binauthz_management_service_v1.get_attestor.js new file mode 100644 index 0000000..ddb3dad --- /dev/null +++ b/samples/generated/v1/binauthz_management_service_v1.get_attestor.js @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START binaryauthorization_v1_generated_BinauthzManagementServiceV1_GetAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The name of the [attestor][google.cloud.binaryauthorization.v1.Attestor] to retrieve, in the format + * `projects/* /attestors/*`. + */ + // const name = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new BinauthzManagementServiceV1Client(); + + async function getAttestor() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await binaryauthorizationClient.getAttestor(request); + console.log(response); + } + + getAttestor(); + // [END binaryauthorization_v1_generated_BinauthzManagementServiceV1_GetAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/binauthz_management_service_v1.get_policy.js b/samples/generated/v1/binauthz_management_service_v1.get_policy.js new file mode 100644 index 0000000..ac5cdc1 --- /dev/null +++ b/samples/generated/v1/binauthz_management_service_v1.get_policy.js @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START binaryauthorization_v1_generated_BinauthzManagementServiceV1_GetPolicy_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The resource name of the [policy][google.cloud.binaryauthorization.v1.Policy] to retrieve, + * in the format `projects/* /policy`. + */ + // const name = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new BinauthzManagementServiceV1Client(); + + async function getPolicy() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await binaryauthorizationClient.getPolicy(request); + console.log(response); + } + + getPolicy(); + // [END binaryauthorization_v1_generated_BinauthzManagementServiceV1_GetPolicy_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/binauthz_management_service_v1.list_attestors.js b/samples/generated/v1/binauthz_management_service_v1.list_attestors.js new file mode 100644 index 0000000..268b9e9 --- /dev/null +++ b/samples/generated/v1/binauthz_management_service_v1.list_attestors.js @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(parent) { + // [START binaryauthorization_v1_generated_BinauthzManagementServiceV1_ListAttestors_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The resource name of the project associated with the + * [attestors][google.cloud.binaryauthorization.v1.Attestor], in the format `projects/*`. + */ + // const parent = 'abc123' + /** + * Requested page size. The server may return fewer results than requested. If + * unspecified, the server will pick an appropriate default. + */ + // const pageSize = 1234 + /** + * A token identifying a page of results the server should return. Typically, + * this is the value of [ListAttestorsResponse.next_page_token][google.cloud.binaryauthorization.v1.ListAttestorsResponse.next_page_token] returned + * from the previous call to the `ListAttestors` method. + */ + // const pageToken = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new BinauthzManagementServiceV1Client(); + + async function listAttestors() { + // Construct request + const request = { + parent, + }; + + // Run request + const iterable = await binaryauthorizationClient.listAttestorsAsync( + request + ); + for await (const response of iterable) { + console.log(response); + } + } + + listAttestors(); + // [END binaryauthorization_v1_generated_BinauthzManagementServiceV1_ListAttestors_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/binauthz_management_service_v1.update_attestor.js b/samples/generated/v1/binauthz_management_service_v1.update_attestor.js new file mode 100644 index 0000000..c946e67 --- /dev/null +++ b/samples/generated/v1/binauthz_management_service_v1.update_attestor.js @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(attestor) { + // [START binaryauthorization_v1_generated_BinauthzManagementServiceV1_UpdateAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The updated [attestor][google.cloud.binaryauthorization.v1.Attestor] value. The service will + * overwrite the [attestor name][google.cloud.binaryauthorization.v1.Attestor.name] field with the resource name + * in the request URL, in the format `projects/* /attestors/*`. + */ + // const attestor = '' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new BinauthzManagementServiceV1Client(); + + async function updateAttestor() { + // Construct request + const request = { + attestor, + }; + + // Run request + const response = await binaryauthorizationClient.updateAttestor(request); + console.log(response); + } + + updateAttestor(); + // [END binaryauthorization_v1_generated_BinauthzManagementServiceV1_UpdateAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/binauthz_management_service_v1.update_policy.js b/samples/generated/v1/binauthz_management_service_v1.update_policy.js new file mode 100644 index 0000000..53a6dd1 --- /dev/null +++ b/samples/generated/v1/binauthz_management_service_v1.update_policy.js @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(policy) { + // [START binaryauthorization_v1_generated_BinauthzManagementServiceV1_UpdatePolicy_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. A new or updated [policy][google.cloud.binaryauthorization.v1.Policy] value. The service will + * overwrite the [policy name][google.cloud.binaryauthorization.v1.Policy.name] field with the resource name in + * the request URL, in the format `projects/* /policy`. + */ + // const policy = '' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new BinauthzManagementServiceV1Client(); + + async function updatePolicy() { + // Construct request + const request = { + policy, + }; + + // Run request + const response = await binaryauthorizationClient.updatePolicy(request); + console.log(response); + } + + updatePolicy(); + // [END binaryauthorization_v1_generated_BinauthzManagementServiceV1_UpdatePolicy_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/system_policy_v1.get_system_policy.js b/samples/generated/v1/system_policy_v1.get_system_policy.js new file mode 100644 index 0000000..aabc254 --- /dev/null +++ b/samples/generated/v1/system_policy_v1.get_system_policy.js @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START binaryauthorization_v1_generated_SystemPolicyV1_GetSystemPolicy_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The resource name, in the format `locations/* /policy`. + * Note that the system policy is not associated with a project. + */ + // const name = 'abc123' + + // Imports the Binaryauthorization library + const {SystemPolicyV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new SystemPolicyV1Client(); + + async function getSystemPolicy() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await binaryauthorizationClient.getSystemPolicy(request); + console.log(response); + } + + getSystemPolicy(); + // [END binaryauthorization_v1_generated_SystemPolicyV1_GetSystemPolicy_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1/validation_helper_v1.validate_attestation_occurrence.js b/samples/generated/v1/validation_helper_v1.validate_attestation_occurrence.js new file mode 100644 index 0000000..c4aab8f --- /dev/null +++ b/samples/generated/v1/validation_helper_v1.validate_attestation_occurrence.js @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(attestor, attestation, occurrenceNote, occurrenceResourceUri) { + // [START binaryauthorization_v1_generated_ValidationHelperV1_ValidateAttestationOccurrence_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The resource name of the [Attestor][google.cloud.binaryauthorization.v1.Attestor] of the + * [occurrence][grafeas.v1.Occurrence], in the format + * `projects/* /attestors/*`. + */ + // const attestor = 'abc123' + /** + * Required. An [AttestationOccurrence][grafeas.v1.AttestationOccurrence] to + * be checked that it can be verified by the Attestor. It does not have to be + * an existing entity in Container Analysis. It must otherwise be a valid + * AttestationOccurrence. + */ + // const attestation = '' + /** + * Required. The resource name of the [Note][grafeas.v1.Note] to which the + * containing [Occurrence][grafeas.v1.Occurrence] is associated. + */ + // const occurrenceNote = 'abc123' + /** + * Required. The URI of the artifact (e.g. container image) that is the + * subject of the containing [Occurrence][grafeas.v1.Occurrence]. + */ + // const occurrenceResourceUri = 'abc123' + + // Imports the Binaryauthorization library + const {ValidationHelperV1Client} = + require('@google-cloud/binary-authorization').v1; + + // Instantiates a client + const binaryauthorizationClient = new ValidationHelperV1Client(); + + async function validateAttestationOccurrence() { + // Construct request + const request = { + attestor, + attestation, + occurrenceNote, + occurrenceResourceUri, + }; + + // Run request + const response = + await binaryauthorizationClient.validateAttestationOccurrence(request); + console.log(response); + } + + validateAttestationOccurrence(); + // [END binaryauthorization_v1_generated_ValidationHelperV1_ValidateAttestationOccurrence_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1beta1/binauthz_management_service_v1_beta1.create_attestor.js b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.create_attestor.js new file mode 100644 index 0000000..f624455 --- /dev/null +++ b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.create_attestor.js @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(parent, attestorId, attestor) { + // [START binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_CreateAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The parent of this + * [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. + */ + // const parent = 'abc123' + /** + * Required. The + * [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] ID. + */ + // const attestorId = 'abc123' + /** + * Required. The initial + * [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] value. The + * service will overwrite the [attestor + * name][google.cloud.binaryauthorization.v1beta1.Attestor.name] field with + * the resource name, in the format `projects/* /attestors/*`. + */ + // const attestor = '' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Beta1Client} = + require('@google-cloud/binary-authorization').v1beta1; + + // Instantiates a client + const binaryauthorizationClient = + new BinauthzManagementServiceV1Beta1Client(); + + async function createAttestor() { + // Construct request + const request = { + parent, + attestorId, + attestor, + }; + + // Run request + const response = await binaryauthorizationClient.createAttestor(request); + console.log(response); + } + + createAttestor(); + // [END binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_CreateAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1beta1/binauthz_management_service_v1_beta1.delete_attestor.js b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.delete_attestor.js new file mode 100644 index 0000000..16b38be --- /dev/null +++ b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.delete_attestor.js @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_DeleteAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The name of the + * [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] to delete, + * in the format `projects/* /attestors/*`. + */ + // const name = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Beta1Client} = + require('@google-cloud/binary-authorization').v1beta1; + + // Instantiates a client + const binaryauthorizationClient = + new BinauthzManagementServiceV1Beta1Client(); + + async function deleteAttestor() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await binaryauthorizationClient.deleteAttestor(request); + console.log(response); + } + + deleteAttestor(); + // [END binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_DeleteAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1beta1/binauthz_management_service_v1_beta1.get_attestor.js b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.get_attestor.js new file mode 100644 index 0000000..e93ac9b --- /dev/null +++ b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.get_attestor.js @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_GetAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The name of the + * [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] to retrieve, + * in the format `projects/* /attestors/*`. + */ + // const name = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Beta1Client} = + require('@google-cloud/binary-authorization').v1beta1; + + // Instantiates a client + const binaryauthorizationClient = + new BinauthzManagementServiceV1Beta1Client(); + + async function getAttestor() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await binaryauthorizationClient.getAttestor(request); + console.log(response); + } + + getAttestor(); + // [END binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_GetAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1beta1/binauthz_management_service_v1_beta1.get_policy.js b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.get_policy.js new file mode 100644 index 0000000..ea7b216 --- /dev/null +++ b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.get_policy.js @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(name) { + // [START binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_GetPolicy_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The resource name of the + * [policy][google.cloud.binaryauthorization.v1beta1.Policy] to retrieve, in + * the format `projects/* /policy`. + */ + // const name = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Beta1Client} = + require('@google-cloud/binary-authorization').v1beta1; + + // Instantiates a client + const binaryauthorizationClient = + new BinauthzManagementServiceV1Beta1Client(); + + async function getPolicy() { + // Construct request + const request = { + name, + }; + + // Run request + const response = await binaryauthorizationClient.getPolicy(request); + console.log(response); + } + + getPolicy(); + // [END binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_GetPolicy_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1beta1/binauthz_management_service_v1_beta1.list_attestors.js b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.list_attestors.js new file mode 100644 index 0000000..f4f7fbc --- /dev/null +++ b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.list_attestors.js @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(parent) { + // [START binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_ListAttestors_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The resource name of the project associated with the + * [attestors][google.cloud.binaryauthorization.v1beta1.Attestor], in the + * format `projects/*`. + */ + // const parent = 'abc123' + /** + * Requested page size. The server may return fewer results than requested. If + * unspecified, the server will pick an appropriate default. + */ + // const pageSize = 1234 + /** + * A token identifying a page of results the server should return. Typically, + * this is the value of + * [ListAttestorsResponse.next_page_token][google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.next_page_token] + * returned from the previous call to the `ListAttestors` method. + */ + // const pageToken = 'abc123' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Beta1Client} = + require('@google-cloud/binary-authorization').v1beta1; + + // Instantiates a client + const binaryauthorizationClient = + new BinauthzManagementServiceV1Beta1Client(); + + async function listAttestors() { + // Construct request + const request = { + parent, + }; + + // Run request + const iterable = await binaryauthorizationClient.listAttestorsAsync( + request + ); + for await (const response of iterable) { + console.log(response); + } + } + + listAttestors(); + // [END binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_ListAttestors_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1beta1/binauthz_management_service_v1_beta1.update_attestor.js b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.update_attestor.js new file mode 100644 index 0000000..090fbe7 --- /dev/null +++ b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.update_attestor.js @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(attestor) { + // [START binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_UpdateAttestor_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. The updated + * [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] value. The + * service will overwrite the [attestor + * name][google.cloud.binaryauthorization.v1beta1.Attestor.name] field with + * the resource name in the request URL, in the format + * `projects/* /attestors/*`. + */ + // const attestor = '' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Beta1Client} = + require('@google-cloud/binary-authorization').v1beta1; + + // Instantiates a client + const binaryauthorizationClient = + new BinauthzManagementServiceV1Beta1Client(); + + async function updateAttestor() { + // Construct request + const request = { + attestor, + }; + + // Run request + const response = await binaryauthorizationClient.updateAttestor(request); + console.log(response); + } + + updateAttestor(); + // [END binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_UpdateAttestor_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/samples/generated/v1beta1/binauthz_management_service_v1_beta1.update_policy.js b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.update_policy.js new file mode 100644 index 0000000..10d4f18 --- /dev/null +++ b/samples/generated/v1beta1/binauthz_management_service_v1_beta1.update_policy.js @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +'use strict'; + +function main(policy) { + // [START binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_UpdatePolicy_async] + /** + * TODO(developer): Uncomment these variables before running the sample. + */ + /** + * Required. A new or updated + * [policy][google.cloud.binaryauthorization.v1beta1.Policy] value. The + * service will overwrite the [policy + * name][google.cloud.binaryauthorization.v1beta1.Policy.name] field with the + * resource name in the request URL, in the format `projects/* /policy`. + */ + // const policy = '' + + // Imports the Binaryauthorization library + const {BinauthzManagementServiceV1Beta1Client} = + require('@google-cloud/binary-authorization').v1beta1; + + // Instantiates a client + const binaryauthorizationClient = + new BinauthzManagementServiceV1Beta1Client(); + + async function updatePolicy() { + // Construct request + const request = { + policy, + }; + + // Run request + const response = await binaryauthorizationClient.updatePolicy(request); + console.log(response); + } + + updatePolicy(); + // [END binaryauthorization_v1beta1_generated_BinauthzManagementServiceV1Beta1_UpdatePolicy_async] +} + +process.on('unhandledRejection', err => { + console.error(err.message); + process.exitCode = 1; +}); +main(...process.argv.slice(2)); diff --git a/src/index.ts b/src/index.ts index ab28a39..de84e67 100644 --- a/src/index.ts +++ b/src/index.ts @@ -16,6 +16,7 @@ // ** https://github.com/googleapis/synthtool ** // ** All changes to this file may be overwritten. ** +import * as v1 from './v1'; import * as v1beta1 from './v1beta1'; const BinauthzManagementServiceV1Beta1Client = @@ -23,7 +24,7 @@ const BinauthzManagementServiceV1Beta1Client = type BinauthzManagementServiceV1Beta1Client = v1beta1.BinauthzManagementServiceV1Beta1Client; -export {v1beta1, BinauthzManagementServiceV1Beta1Client}; -export default {v1beta1, BinauthzManagementServiceV1Beta1Client}; +export {v1, v1beta1, BinauthzManagementServiceV1Beta1Client}; +export default {v1, v1beta1, BinauthzManagementServiceV1Beta1Client}; import * as protos from '../protos/protos'; export {protos}; diff --git a/src/v1/binauthz_management_service_v1_client.ts b/src/v1/binauthz_management_service_v1_client.ts new file mode 100644 index 0000000..be2d417 --- /dev/null +++ b/src/v1/binauthz_management_service_v1_client.ts @@ -0,0 +1,1279 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + +/* global window */ +import * as gax from 'google-gax'; +import { + Callback, + CallOptions, + Descriptors, + ClientOptions, + PaginationCallback, + GaxCall, +} from 'google-gax'; + +import {Transform} from 'stream'; +import {RequestType} from 'google-gax/build/src/apitypes'; +import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); +/** + * Client JSON configuration object, loaded from + * `src/v1/binauthz_management_service_v1_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './binauthz_management_service_v1_client_config.json'; + +const version = require('../../../package.json').version; + +/** + * Google Cloud Management Service for Binary Authorization admission policies + * and attestation authorities. + * + * This API implements a REST model with the following objects: + * + * * {@link google.cloud.binaryauthorization.v1.Policy|Policy} + * * {@link google.cloud.binaryauthorization.v1.Attestor|Attestor} + * @class + * @memberof v1 + */ +export class BinauthzManagementServiceV1Client { + private _terminated = false; + private _opts: ClientOptions; + private _providedCustomServicePath: boolean; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + warn: (code: string, message: string, warnType?: string) => void; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + binauthzManagementServiceV1Stub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of BinauthzManagementServiceV1Client. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this + .constructor as typeof BinauthzManagementServiceV1Client; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + attestorPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/attestors/{attestor}' + ), + locationPolicyPathTemplate: new this._gaxModule.PathTemplate( + 'locations/{location}/policy' + ), + projectPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}' + ), + projectPolicyPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/policy' + ), + }; + + // Some of the methods on this service return "paged" results, + // (e.g. 50 results at a time, with tokens to get subsequent + // pages). Denote the keys used for pagination and results. + this.descriptors.page = { + listAttestors: new this._gaxModule.PageDescriptor( + 'pageToken', + 'nextPageToken', + 'attestors' + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.binauthzManagementServiceV1Stub) { + return this.binauthzManagementServiceV1Stub; + } + + // Put together the "service stub" for + // google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1. + this.binauthzManagementServiceV1Stub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.binaryauthorization.v1 + .BinauthzManagementServiceV1, + this._opts, + this._providedCustomServicePath + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const binauthzManagementServiceV1StubMethods = [ + 'getPolicy', + 'updatePolicy', + 'createAttestor', + 'getAttestor', + 'updateAttestor', + 'listAttestors', + 'deleteAttestor', + ]; + for (const methodName of binauthzManagementServiceV1StubMethods) { + const callPromise = this.binauthzManagementServiceV1Stub.then( + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = this.descriptors.page[methodName] || undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.binauthzManagementServiceV1Stub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'binaryauthorization.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'binaryauthorization.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + getPolicy( + request?: protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IPolicy, + protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest | undefined, + {} | undefined + ] + >; + getPolicy( + request: protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest + | null + | undefined, + {} | null | undefined + > + ): void; + getPolicy( + request: protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * A {@link google.cloud.binaryauthorization.v1.Policy|policy} specifies the {@link google.cloud.binaryauthorization.v1.Attestor|attestors} that must attest to + * a container image, before the project is allowed to deploy that + * image. There is at most one policy per project. All image admission + * requests are permitted if a project has no policy. + * + * Gets the {@link google.cloud.binaryauthorization.v1.Policy|policy} for this project. Returns a default + * {@link google.cloud.binaryauthorization.v1.Policy|policy} if the project does not have one. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The resource name of the {@link google.cloud.binaryauthorization.v1.Policy|policy} to retrieve, + * in the format `projects/* /policy`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Policy]{@link google.cloud.binaryauthorization.v1.Policy}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getPolicy(request); + */ + getPolicy( + request?: protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IPolicy, + protos.google.cloud.binaryauthorization.v1.IGetPolicyRequest | undefined, + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getPolicy(request, options, callback); + } + updatePolicy( + request?: protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IPolicy, + ( + | protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest + | undefined + ), + {} | undefined + ] + >; + updatePolicy( + request: protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest + | null + | undefined, + {} | null | undefined + > + ): void; + updatePolicy( + request: protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Creates or updates a project's {@link google.cloud.binaryauthorization.v1.Policy|policy}, and returns a copy of the + * new {@link google.cloud.binaryauthorization.v1.Policy|policy}. A policy is always updated as a whole, to avoid race + * conditions with concurrent policy enforcement (or management!) + * requests. Returns NOT_FOUND if the project does not exist, INVALID_ARGUMENT + * if the request is malformed. + * + * @param {Object} request + * The request object that will be sent. + * @param {google.cloud.binaryauthorization.v1.Policy} request.policy + * Required. A new or updated {@link google.cloud.binaryauthorization.v1.Policy|policy} value. The service will + * overwrite the {@link google.cloud.binaryauthorization.v1.Policy.name|policy name} field with the resource name in + * the request URL, in the format `projects/* /policy`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Policy]{@link google.cloud.binaryauthorization.v1.Policy}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.updatePolicy(request); + */ + updatePolicy( + request?: protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IPolicy, + ( + | protos.google.cloud.binaryauthorization.v1.IUpdatePolicyRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + 'policy.name': request.policy!.name || '', + }); + this.initialize(); + return this.innerApiCalls.updatePolicy(request, options, callback); + } + createAttestor( + request?: protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor, + ( + | protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest + | undefined + ), + {} | undefined + ] + >; + createAttestor( + request: protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + createAttestor( + request: protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Creates an {@link google.cloud.binaryauthorization.v1.Attestor|attestor}, and returns a copy of the new + * {@link google.cloud.binaryauthorization.v1.Attestor|attestor}. Returns NOT_FOUND if the project does not exist, + * INVALID_ARGUMENT if the request is malformed, ALREADY_EXISTS if the + * {@link google.cloud.binaryauthorization.v1.Attestor|attestor} already exists. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The parent of this {@link google.cloud.binaryauthorization.v1.Attestor|attestor}. + * @param {string} request.attestorId + * Required. The {@link google.cloud.binaryauthorization.v1.Attestor|attestors} ID. + * @param {google.cloud.binaryauthorization.v1.Attestor} request.attestor + * Required. The initial {@link google.cloud.binaryauthorization.v1.Attestor|attestor} value. The service will + * overwrite the {@link google.cloud.binaryauthorization.v1.Attestor.name|attestor name} field with the resource name, + * in the format `projects/* /attestors/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Attestor]{@link google.cloud.binaryauthorization.v1.Attestor}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.createAttestor(request); + */ + createAttestor( + request?: protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor, + ( + | protos.google.cloud.binaryauthorization.v1.ICreateAttestorRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.createAttestor(request, options, callback); + } + getAttestor( + request?: protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor, + ( + | protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest + | undefined + ), + {} | undefined + ] + >; + getAttestor( + request: protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + getAttestor( + request: protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Gets an {@link google.cloud.binaryauthorization.v1.Attestor|attestor}. + * Returns NOT_FOUND if the {@link google.cloud.binaryauthorization.v1.Attestor|attestor} does not exist. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the {@link google.cloud.binaryauthorization.v1.Attestor|attestor} to retrieve, in the format + * `projects/* /attestors/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Attestor]{@link google.cloud.binaryauthorization.v1.Attestor}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getAttestor(request); + */ + getAttestor( + request?: protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor, + ( + | protos.google.cloud.binaryauthorization.v1.IGetAttestorRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getAttestor(request, options, callback); + } + updateAttestor( + request?: protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor, + ( + | protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest + | undefined + ), + {} | undefined + ] + >; + updateAttestor( + request: protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + updateAttestor( + request: protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Updates an {@link google.cloud.binaryauthorization.v1.Attestor|attestor}. + * Returns NOT_FOUND if the {@link google.cloud.binaryauthorization.v1.Attestor|attestor} does not exist. + * + * @param {Object} request + * The request object that will be sent. + * @param {google.cloud.binaryauthorization.v1.Attestor} request.attestor + * Required. The updated {@link google.cloud.binaryauthorization.v1.Attestor|attestor} value. The service will + * overwrite the {@link google.cloud.binaryauthorization.v1.Attestor.name|attestor name} field with the resource name + * in the request URL, in the format `projects/* /attestors/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Attestor]{@link google.cloud.binaryauthorization.v1.Attestor}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.updateAttestor(request); + */ + updateAttestor( + request?: protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.binaryauthorization.v1.IAttestor, + | protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor, + ( + | protos.google.cloud.binaryauthorization.v1.IUpdateAttestorRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + 'attestor.name': request.attestor!.name || '', + }); + this.initialize(); + return this.innerApiCalls.updateAttestor(request, options, callback); + } + deleteAttestor( + request?: protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest, + options?: CallOptions + ): Promise< + [ + protos.google.protobuf.IEmpty, + ( + | protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest + | undefined + ), + {} | undefined + ] + >; + deleteAttestor( + request: protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest, + options: CallOptions, + callback: Callback< + protos.google.protobuf.IEmpty, + | protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + deleteAttestor( + request: protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest, + callback: Callback< + protos.google.protobuf.IEmpty, + | protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Deletes an {@link google.cloud.binaryauthorization.v1.Attestor|attestor}. Returns NOT_FOUND if the + * {@link google.cloud.binaryauthorization.v1.Attestor|attestor} does not exist. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The name of the {@link google.cloud.binaryauthorization.v1.Attestor|attestors} to delete, in the format + * `projects/* /attestors/*`. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Empty]{@link google.protobuf.Empty}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.deleteAttestor(request); + */ + deleteAttestor( + request?: protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.protobuf.IEmpty, + | protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.protobuf.IEmpty, + | protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.protobuf.IEmpty, + ( + | protos.google.cloud.binaryauthorization.v1.IDeleteAttestorRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.deleteAttestor(request, options, callback); + } + + listAttestors( + request?: protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor[], + protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest | null, + protos.google.cloud.binaryauthorization.v1.IListAttestorsResponse + ] + >; + listAttestors( + request: protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + options: CallOptions, + callback: PaginationCallback< + protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + | protos.google.cloud.binaryauthorization.v1.IListAttestorsResponse + | null + | undefined, + protos.google.cloud.binaryauthorization.v1.IAttestor + > + ): void; + listAttestors( + request: protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + callback: PaginationCallback< + protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + | protos.google.cloud.binaryauthorization.v1.IListAttestorsResponse + | null + | undefined, + protos.google.cloud.binaryauthorization.v1.IAttestor + > + ): void; + /** + * Lists {@link google.cloud.binaryauthorization.v1.Attestor|attestors}. + * Returns INVALID_ARGUMENT if the project does not exist. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The resource name of the project associated with the + * {@link google.cloud.binaryauthorization.v1.Attestor|attestors}, in the format `projects/*`. + * @param {number} request.pageSize + * Requested page size. The server may return fewer results than requested. If + * unspecified, the server will pick an appropriate default. + * @param {string} request.pageToken + * A token identifying a page of results the server should return. Typically, + * this is the value of {@link google.cloud.binaryauthorization.v1.ListAttestorsResponse.next_page_token|ListAttestorsResponse.next_page_token} returned + * from the previous call to the `ListAttestors` method. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is Array of [Attestor]{@link google.cloud.binaryauthorization.v1.Attestor}. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed and will merge results from all the pages into this array. + * Note that it can affect your quota. + * We recommend using `listAttestorsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listAttestors( + request?: protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + optionsOrCallback?: + | CallOptions + | PaginationCallback< + protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + | protos.google.cloud.binaryauthorization.v1.IListAttestorsResponse + | null + | undefined, + protos.google.cloud.binaryauthorization.v1.IAttestor + >, + callback?: PaginationCallback< + protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + | protos.google.cloud.binaryauthorization.v1.IListAttestorsResponse + | null + | undefined, + protos.google.cloud.binaryauthorization.v1.IAttestor + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IAttestor[], + protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest | null, + protos.google.cloud.binaryauthorization.v1.IListAttestorsResponse + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + this.initialize(); + return this.innerApiCalls.listAttestors(request, options, callback); + } + + /** + * Equivalent to `method.name.toCamelCase()`, but returns a NodeJS Stream object. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The resource name of the project associated with the + * {@link google.cloud.binaryauthorization.v1.Attestor|attestors}, in the format `projects/*`. + * @param {number} request.pageSize + * Requested page size. The server may return fewer results than requested. If + * unspecified, the server will pick an appropriate default. + * @param {string} request.pageToken + * A token identifying a page of results the server should return. Typically, + * this is the value of {@link google.cloud.binaryauthorization.v1.ListAttestorsResponse.next_page_token|ListAttestorsResponse.next_page_token} returned + * from the previous call to the `ListAttestors` method. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Stream} + * An object stream which emits an object representing [Attestor]{@link google.cloud.binaryauthorization.v1.Attestor} on 'data' event. + * The client library will perform auto-pagination by default: it will call the API as many + * times as needed. Note that it can affect your quota. + * We recommend using `listAttestorsAsync()` + * method described below for async iteration which you can stop as needed. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + */ + listAttestorsStream( + request?: protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + options?: CallOptions + ): Transform { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + const defaultCallSettings = this._defaults['listAttestors']; + const callSettings = defaultCallSettings.merge(options); + this.initialize(); + return this.descriptors.page.listAttestors.createStream( + this.innerApiCalls.listAttestors as gax.GaxCall, + request, + callSettings + ); + } + + /** + * Equivalent to `listAttestors`, but returns an iterable object. + * + * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand. + * @param {Object} request + * The request object that will be sent. + * @param {string} request.parent + * Required. The resource name of the project associated with the + * {@link google.cloud.binaryauthorization.v1.Attestor|attestors}, in the format `projects/*`. + * @param {number} request.pageSize + * Requested page size. The server may return fewer results than requested. If + * unspecified, the server will pick an appropriate default. + * @param {string} request.pageToken + * A token identifying a page of results the server should return. Typically, + * this is the value of {@link google.cloud.binaryauthorization.v1.ListAttestorsResponse.next_page_token|ListAttestorsResponse.next_page_token} returned + * from the previous call to the `ListAttestors` method. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Object} + * An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). + * When you iterate the returned iterable, each element will be an object representing + * [Attestor]{@link google.cloud.binaryauthorization.v1.Attestor}. The API will be called under the hood as needed, once per the page, + * so you can stop the iteration when you don't need more results. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) + * for more details and examples. + * @example + * const iterable = client.listAttestorsAsync(request); + * for await (const response of iterable) { + * // process response + * } + */ + listAttestorsAsync( + request?: protos.google.cloud.binaryauthorization.v1.IListAttestorsRequest, + options?: CallOptions + ): AsyncIterable { + request = request || {}; + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + parent: request.parent || '', + }); + options = options || {}; + const defaultCallSettings = this._defaults['listAttestors']; + const callSettings = defaultCallSettings.merge(options); + this.initialize(); + return this.descriptors.page.listAttestors.asyncIterate( + this.innerApiCalls['listAttestors'] as GaxCall, + request as unknown as RequestType, + callSettings + ) as AsyncIterable; + } + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified attestor resource name string. + * + * @param {string} project + * @param {string} attestor + * @returns {string} Resource name string. + */ + attestorPath(project: string, attestor: string) { + return this.pathTemplates.attestorPathTemplate.render({ + project: project, + attestor: attestor, + }); + } + + /** + * Parse the project from Attestor resource. + * + * @param {string} attestorName + * A fully-qualified path representing Attestor resource. + * @returns {string} A string representing the project. + */ + matchProjectFromAttestorName(attestorName: string) { + return this.pathTemplates.attestorPathTemplate.match(attestorName).project; + } + + /** + * Parse the attestor from Attestor resource. + * + * @param {string} attestorName + * A fully-qualified path representing Attestor resource. + * @returns {string} A string representing the attestor. + */ + matchAttestorFromAttestorName(attestorName: string) { + return this.pathTemplates.attestorPathTemplate.match(attestorName).attestor; + } + + /** + * Return a fully-qualified locationPolicy resource name string. + * + * @param {string} location + * @returns {string} Resource name string. + */ + locationPolicyPath(location: string) { + return this.pathTemplates.locationPolicyPathTemplate.render({ + location: location, + }); + } + + /** + * Parse the location from LocationPolicy resource. + * + * @param {string} locationPolicyName + * A fully-qualified path representing location_policy resource. + * @returns {string} A string representing the location. + */ + matchLocationFromLocationPolicyName(locationPolicyName: string) { + return this.pathTemplates.locationPolicyPathTemplate.match( + locationPolicyName + ).location; + } + + /** + * Return a fully-qualified project resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPath(project: string) { + return this.pathTemplates.projectPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from Project resource. + * + * @param {string} projectName + * A fully-qualified path representing Project resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectName(projectName: string) { + return this.pathTemplates.projectPathTemplate.match(projectName).project; + } + + /** + * Return a fully-qualified projectPolicy resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPolicyPath(project: string) { + return this.pathTemplates.projectPolicyPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from ProjectPolicy resource. + * + * @param {string} projectPolicyName + * A fully-qualified path representing project_policy resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectPolicyName(projectPolicyName: string) { + return this.pathTemplates.projectPolicyPathTemplate.match(projectPolicyName) + .project; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.binauthzManagementServiceV1Stub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/src/v1/binauthz_management_service_v1_client_config.json b/src/v1/binauthz_management_service_v1_client_config.json new file mode 100644 index 0000000..d8357fd --- /dev/null +++ b/src/v1/binauthz_management_service_v1_client_config.json @@ -0,0 +1,61 @@ +{ + "interfaces": { + "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetPolicy": { + "timeout_millis": 600000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "UpdatePolicy": { + "timeout_millis": 600000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "CreateAttestor": { + "timeout_millis": 600000, + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + }, + "GetAttestor": { + "timeout_millis": 600000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "UpdateAttestor": { + "timeout_millis": 600000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "ListAttestors": { + "timeout_millis": 600000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + }, + "DeleteAttestor": { + "timeout_millis": 600000, + "retry_codes_name": "idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/src/v1/binauthz_management_service_v1_proto_list.json b/src/v1/binauthz_management_service_v1_proto_list.json new file mode 100644 index 0000000..2e7010a --- /dev/null +++ b/src/v1/binauthz_management_service_v1_proto_list.json @@ -0,0 +1,6 @@ +[ + "../../protos/google/cloud/binaryauthorization/v1/resources.proto", + "../../protos/google/cloud/binaryauthorization/v1/service.proto", + "../../protos/grafeas/v1/attestation.proto", + "../../protos/grafeas/v1/common.proto" +] diff --git a/src/v1/gapic_metadata.json b/src/v1/gapic_metadata.json new file mode 100644 index 0000000..b28d368 --- /dev/null +++ b/src/v1/gapic_metadata.json @@ -0,0 +1,145 @@ +{ + "schema": "1.0", + "comment": "This file maps proto services/RPCs to the corresponding library clients/methods", + "language": "typescript", + "protoPackage": "google.cloud.binaryauthorization.v1", + "libraryPackage": "@google-cloud/binary-authorization", + "services": { + "BinauthzManagementServiceV1": { + "clients": { + "grpc": { + "libraryClient": "BinauthzManagementServiceV1Client", + "rpcs": { + "GetPolicy": { + "methods": [ + "getPolicy" + ] + }, + "UpdatePolicy": { + "methods": [ + "updatePolicy" + ] + }, + "CreateAttestor": { + "methods": [ + "createAttestor" + ] + }, + "GetAttestor": { + "methods": [ + "getAttestor" + ] + }, + "UpdateAttestor": { + "methods": [ + "updateAttestor" + ] + }, + "DeleteAttestor": { + "methods": [ + "deleteAttestor" + ] + }, + "ListAttestors": { + "methods": [ + "listAttestors", + "listAttestorsStream", + "listAttestorsAsync" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "BinauthzManagementServiceV1Client", + "rpcs": { + "GetPolicy": { + "methods": [ + "getPolicy" + ] + }, + "UpdatePolicy": { + "methods": [ + "updatePolicy" + ] + }, + "CreateAttestor": { + "methods": [ + "createAttestor" + ] + }, + "GetAttestor": { + "methods": [ + "getAttestor" + ] + }, + "UpdateAttestor": { + "methods": [ + "updateAttestor" + ] + }, + "DeleteAttestor": { + "methods": [ + "deleteAttestor" + ] + }, + "ListAttestors": { + "methods": [ + "listAttestors", + "listAttestorsStream", + "listAttestorsAsync" + ] + } + } + } + } + }, + "SystemPolicyV1": { + "clients": { + "grpc": { + "libraryClient": "SystemPolicyV1Client", + "rpcs": { + "GetSystemPolicy": { + "methods": [ + "getSystemPolicy" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "SystemPolicyV1Client", + "rpcs": { + "GetSystemPolicy": { + "methods": [ + "getSystemPolicy" + ] + } + } + } + } + }, + "ValidationHelperV1": { + "clients": { + "grpc": { + "libraryClient": "ValidationHelperV1Client", + "rpcs": { + "ValidateAttestationOccurrence": { + "methods": [ + "validateAttestationOccurrence" + ] + } + } + }, + "grpc-fallback": { + "libraryClient": "ValidationHelperV1Client", + "rpcs": { + "ValidateAttestationOccurrence": { + "methods": [ + "validateAttestationOccurrence" + ] + } + } + } + } + } + } +} diff --git a/src/v1/index.ts b/src/v1/index.ts new file mode 100644 index 0000000..956991f --- /dev/null +++ b/src/v1/index.ts @@ -0,0 +1,21 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + +export {BinauthzManagementServiceV1Client} from './binauthz_management_service_v1_client'; +export {SystemPolicyV1Client} from './system_policy_v1_client'; +export {ValidationHelperV1Client} from './validation_helper_v1_client'; diff --git a/src/v1/system_policy_v1_client.ts b/src/v1/system_policy_v1_client.ts new file mode 100644 index 0000000..3979edc --- /dev/null +++ b/src/v1/system_policy_v1_client.ts @@ -0,0 +1,531 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + +/* global window */ +import * as gax from 'google-gax'; +import {Callback, CallOptions, Descriptors, ClientOptions} from 'google-gax'; + +import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); +/** + * Client JSON configuration object, loaded from + * `src/v1/system_policy_v1_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './system_policy_v1_client_config.json'; + +const version = require('../../../package.json').version; + +/** + * API for working with the system policy. + * @class + * @memberof v1 + */ +export class SystemPolicyV1Client { + private _terminated = false; + private _opts: ClientOptions; + private _providedCustomServicePath: boolean; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + warn: (code: string, message: string, warnType?: string) => void; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + systemPolicyV1Stub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of SystemPolicyV1Client. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this.constructor as typeof SystemPolicyV1Client; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + attestorPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/attestors/{attestor}' + ), + locationPolicyPathTemplate: new this._gaxModule.PathTemplate( + 'locations/{location}/policy' + ), + projectPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}' + ), + projectPolicyPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/policy' + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.binaryauthorization.v1.SystemPolicyV1', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.systemPolicyV1Stub) { + return this.systemPolicyV1Stub; + } + + // Put together the "service stub" for + // google.cloud.binaryauthorization.v1.SystemPolicyV1. + this.systemPolicyV1Stub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.binaryauthorization.v1.SystemPolicyV1' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.binaryauthorization.v1 + .SystemPolicyV1, + this._opts, + this._providedCustomServicePath + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const systemPolicyV1StubMethods = ['getSystemPolicy']; + for (const methodName of systemPolicyV1StubMethods) { + const callPromise = this.systemPolicyV1Stub.then( + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.systemPolicyV1Stub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'binaryauthorization.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'binaryauthorization.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + getSystemPolicy( + request?: protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IPolicy, + ( + | protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest + | undefined + ), + {} | undefined + ] + >; + getSystemPolicy( + request: protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest + | null + | undefined, + {} | null | undefined + > + ): void; + getSystemPolicy( + request: protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Gets the current system policy in the specified location. + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.name + * Required. The resource name, in the format `locations/* /policy`. + * Note that the system policy is not associated with a project. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [Policy]{@link google.cloud.binaryauthorization.v1.Policy}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.getSystemPolicy(request); + */ + getSystemPolicy( + request?: protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.binaryauthorization.v1.IPolicy, + | protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IPolicy, + ( + | protos.google.cloud.binaryauthorization.v1.IGetSystemPolicyRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + name: request.name || '', + }); + this.initialize(); + return this.innerApiCalls.getSystemPolicy(request, options, callback); + } + + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified attestor resource name string. + * + * @param {string} project + * @param {string} attestor + * @returns {string} Resource name string. + */ + attestorPath(project: string, attestor: string) { + return this.pathTemplates.attestorPathTemplate.render({ + project: project, + attestor: attestor, + }); + } + + /** + * Parse the project from Attestor resource. + * + * @param {string} attestorName + * A fully-qualified path representing Attestor resource. + * @returns {string} A string representing the project. + */ + matchProjectFromAttestorName(attestorName: string) { + return this.pathTemplates.attestorPathTemplate.match(attestorName).project; + } + + /** + * Parse the attestor from Attestor resource. + * + * @param {string} attestorName + * A fully-qualified path representing Attestor resource. + * @returns {string} A string representing the attestor. + */ + matchAttestorFromAttestorName(attestorName: string) { + return this.pathTemplates.attestorPathTemplate.match(attestorName).attestor; + } + + /** + * Return a fully-qualified locationPolicy resource name string. + * + * @param {string} location + * @returns {string} Resource name string. + */ + locationPolicyPath(location: string) { + return this.pathTemplates.locationPolicyPathTemplate.render({ + location: location, + }); + } + + /** + * Parse the location from LocationPolicy resource. + * + * @param {string} locationPolicyName + * A fully-qualified path representing location_policy resource. + * @returns {string} A string representing the location. + */ + matchLocationFromLocationPolicyName(locationPolicyName: string) { + return this.pathTemplates.locationPolicyPathTemplate.match( + locationPolicyName + ).location; + } + + /** + * Return a fully-qualified project resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPath(project: string) { + return this.pathTemplates.projectPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from Project resource. + * + * @param {string} projectName + * A fully-qualified path representing Project resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectName(projectName: string) { + return this.pathTemplates.projectPathTemplate.match(projectName).project; + } + + /** + * Return a fully-qualified projectPolicy resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPolicyPath(project: string) { + return this.pathTemplates.projectPolicyPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from ProjectPolicy resource. + * + * @param {string} projectPolicyName + * A fully-qualified path representing project_policy resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectPolicyName(projectPolicyName: string) { + return this.pathTemplates.projectPolicyPathTemplate.match(projectPolicyName) + .project; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.systemPolicyV1Stub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/src/v1/system_policy_v1_client_config.json b/src/v1/system_policy_v1_client_config.json new file mode 100644 index 0000000..1d25944 --- /dev/null +++ b/src/v1/system_policy_v1_client_config.json @@ -0,0 +1,30 @@ +{ + "interfaces": { + "google.cloud.binaryauthorization.v1.SystemPolicyV1": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "GetSystemPolicy": { + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/src/v1/system_policy_v1_proto_list.json b/src/v1/system_policy_v1_proto_list.json new file mode 100644 index 0000000..2e7010a --- /dev/null +++ b/src/v1/system_policy_v1_proto_list.json @@ -0,0 +1,6 @@ +[ + "../../protos/google/cloud/binaryauthorization/v1/resources.proto", + "../../protos/google/cloud/binaryauthorization/v1/service.proto", + "../../protos/grafeas/v1/attestation.proto", + "../../protos/grafeas/v1/common.proto" +] diff --git a/src/v1/validation_helper_v1_client.ts b/src/v1/validation_helper_v1_client.ts new file mode 100644 index 0000000..15990f6 --- /dev/null +++ b/src/v1/validation_helper_v1_client.ts @@ -0,0 +1,548 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + +/* global window */ +import * as gax from 'google-gax'; +import {Callback, CallOptions, Descriptors, ClientOptions} from 'google-gax'; + +import * as protos from '../../protos/protos'; +import jsonProtos = require('../../protos/protos.json'); +/** + * Client JSON configuration object, loaded from + * `src/v1/validation_helper_v1_client_config.json`. + * This file defines retry strategy and timeouts for all API methods in this library. + */ +import * as gapicConfig from './validation_helper_v1_client_config.json'; + +const version = require('../../../package.json').version; + +/** + * BinAuthz Attestor verification + * @class + * @memberof v1 + */ +export class ValidationHelperV1Client { + private _terminated = false; + private _opts: ClientOptions; + private _providedCustomServicePath: boolean; + private _gaxModule: typeof gax | typeof gax.fallback; + private _gaxGrpc: gax.GrpcClient | gax.fallback.GrpcClient; + private _protos: {}; + private _defaults: {[method: string]: gax.CallSettings}; + auth: gax.GoogleAuth; + descriptors: Descriptors = { + page: {}, + stream: {}, + longrunning: {}, + batching: {}, + }; + warn: (code: string, message: string, warnType?: string) => void; + innerApiCalls: {[name: string]: Function}; + pathTemplates: {[name: string]: gax.PathTemplate}; + validationHelperV1Stub?: Promise<{[name: string]: Function}>; + + /** + * Construct an instance of ValidationHelperV1Client. + * + * @param {object} [options] - The configuration object. + * The options accepted by the constructor are described in detail + * in [this document](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#creating-the-client-instance). + * The common options are: + * @param {object} [options.credentials] - Credentials object. + * @param {string} [options.credentials.client_email] + * @param {string} [options.credentials.private_key] + * @param {string} [options.email] - Account email address. Required when + * using a .pem or .p12 keyFilename. + * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or + * .p12 key downloaded from the Google Developers Console. If you provide + * a path to a JSON file, the projectId option below is not necessary. + * NOTE: .pem and .p12 require you to specify options.email as well. + * @param {number} [options.port] - The port on which to connect to + * the remote host. + * @param {string} [options.projectId] - The project ID from the Google + * Developer's Console, e.g. 'grape-spaceship-123'. We will also check + * the environment variable GCLOUD_PROJECT for your project ID. If your + * app is running in an environment which supports + * {@link https://developers.google.com/identity/protocols/application-default-credentials Application Default Credentials}, + * your project ID will be detected automatically. + * @param {string} [options.apiEndpoint] - The domain name of the + * API remote host. + * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. + * Follows the structure of {@link gapicConfig}. + * @param {boolean} [options.fallback] - Use HTTP fallback mode. + * In fallback mode, a special browser-compatible transport implementation is used + * instead of gRPC transport. In browser context (if the `window` object is defined) + * the fallback mode is enabled automatically; set `options.fallback` to `false` + * if you need to override this behavior. + */ + constructor(opts?: ClientOptions) { + // Ensure that options include all the required fields. + const staticMembers = this.constructor as typeof ValidationHelperV1Client; + const servicePath = + opts?.servicePath || opts?.apiEndpoint || staticMembers.servicePath; + this._providedCustomServicePath = !!( + opts?.servicePath || opts?.apiEndpoint + ); + const port = opts?.port || staticMembers.port; + const clientConfig = opts?.clientConfig ?? {}; + const fallback = + opts?.fallback ?? + (typeof window !== 'undefined' && typeof window?.fetch === 'function'); + opts = Object.assign({servicePath, port, clientConfig, fallback}, opts); + + // If scopes are unset in options and we're connecting to a non-default endpoint, set scopes just in case. + if (servicePath !== staticMembers.servicePath && !('scopes' in opts)) { + opts['scopes'] = staticMembers.scopes; + } + + // Choose either gRPC or proto-over-HTTP implementation of google-gax. + this._gaxModule = opts.fallback ? gax.fallback : gax; + + // Create a `gaxGrpc` object, with any grpc-specific options sent to the client. + this._gaxGrpc = new this._gaxModule.GrpcClient(opts); + + // Save options to use in initialize() method. + this._opts = opts; + + // Save the auth object to the client, for use by other methods. + this.auth = this._gaxGrpc.auth as gax.GoogleAuth; + + // Set useJWTAccessWithScope on the auth object. + this.auth.useJWTAccessWithScope = true; + + // Set defaultServicePath on the auth object. + this.auth.defaultServicePath = staticMembers.servicePath; + + // Set the default scopes in auth client if needed. + if (servicePath === staticMembers.servicePath) { + this.auth.defaultScopes = staticMembers.scopes; + } + + // Determine the client header string. + const clientHeader = [`gax/${this._gaxModule.version}`, `gapic/${version}`]; + if (typeof process !== 'undefined' && 'versions' in process) { + clientHeader.push(`gl-node/${process.versions.node}`); + } else { + clientHeader.push(`gl-web/${this._gaxModule.version}`); + } + if (!opts.fallback) { + clientHeader.push(`grpc/${this._gaxGrpc.grpcVersion}`); + } else if (opts.fallback === 'rest') { + clientHeader.push(`rest/${this._gaxGrpc.grpcVersion}`); + } + if (opts.libName && opts.libVersion) { + clientHeader.push(`${opts.libName}/${opts.libVersion}`); + } + // Load the applicable protos. + this._protos = this._gaxGrpc.loadProtoJSON(jsonProtos); + + // This API contains "path templates"; forward-slash-separated + // identifiers to uniquely identify resources within the API. + // Create useful helper objects for these. + this.pathTemplates = { + attestorPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/attestors/{attestor}' + ), + locationPolicyPathTemplate: new this._gaxModule.PathTemplate( + 'locations/{location}/policy' + ), + projectPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}' + ), + projectPolicyPathTemplate: new this._gaxModule.PathTemplate( + 'projects/{project}/policy' + ), + }; + + // Put together the default options sent with requests. + this._defaults = this._gaxGrpc.constructSettings( + 'google.cloud.binaryauthorization.v1.ValidationHelperV1', + gapicConfig as gax.ClientConfig, + opts.clientConfig || {}, + {'x-goog-api-client': clientHeader.join(' ')} + ); + + // Set up a dictionary of "inner API calls"; the core implementation + // of calling the API is handled in `google-gax`, with this code + // merely providing the destination and request information. + this.innerApiCalls = {}; + + // Add a warn function to the client constructor so it can be easily tested. + this.warn = gax.warn; + } + + /** + * Initialize the client. + * Performs asynchronous operations (such as authentication) and prepares the client. + * This function will be called automatically when any class method is called for the + * first time, but if you need to initialize it before calling an actual method, + * feel free to call initialize() directly. + * + * You can await on this method if you want to make sure the client is initialized. + * + * @returns {Promise} A promise that resolves to an authenticated service stub. + */ + initialize() { + // If the client stub promise is already initialized, return immediately. + if (this.validationHelperV1Stub) { + return this.validationHelperV1Stub; + } + + // Put together the "service stub" for + // google.cloud.binaryauthorization.v1.ValidationHelperV1. + this.validationHelperV1Stub = this._gaxGrpc.createStub( + this._opts.fallback + ? (this._protos as protobuf.Root).lookupService( + 'google.cloud.binaryauthorization.v1.ValidationHelperV1' + ) + : // eslint-disable-next-line @typescript-eslint/no-explicit-any + (this._protos as any).google.cloud.binaryauthorization.v1 + .ValidationHelperV1, + this._opts, + this._providedCustomServicePath + ) as Promise<{[method: string]: Function}>; + + // Iterate over each of the methods that the service provides + // and create an API call method for each. + const validationHelperV1StubMethods = ['validateAttestationOccurrence']; + for (const methodName of validationHelperV1StubMethods) { + const callPromise = this.validationHelperV1Stub.then( + stub => + (...args: Array<{}>) => { + if (this._terminated) { + return Promise.reject('The client has already been closed.'); + } + const func = stub[methodName]; + return func.apply(stub, args); + }, + (err: Error | null | undefined) => () => { + throw err; + } + ); + + const descriptor = undefined; + const apiCall = this._gaxModule.createApiCall( + callPromise, + this._defaults[methodName], + descriptor + ); + + this.innerApiCalls[methodName] = apiCall; + } + + return this.validationHelperV1Stub; + } + + /** + * The DNS address for this API service. + * @returns {string} The DNS address for this service. + */ + static get servicePath() { + return 'binaryauthorization.googleapis.com'; + } + + /** + * The DNS address for this API service - same as servicePath(), + * exists for compatibility reasons. + * @returns {string} The DNS address for this service. + */ + static get apiEndpoint() { + return 'binaryauthorization.googleapis.com'; + } + + /** + * The port for this API service. + * @returns {number} The default port for this service. + */ + static get port() { + return 443; + } + + /** + * The scopes needed to make gRPC calls for every method defined + * in this service. + * @returns {string[]} List of default scopes. + */ + static get scopes() { + return ['https://www.googleapis.com/auth/cloud-platform']; + } + + getProjectId(): Promise; + getProjectId(callback: Callback): void; + /** + * Return the project ID used by this class. + * @returns {Promise} A promise that resolves to string containing the project ID. + */ + getProjectId( + callback?: Callback + ): Promise | void { + if (callback) { + this.auth.getProjectId(callback); + return; + } + return this.auth.getProjectId(); + } + + // ------------------- + // -- Service calls -- + // ------------------- + validateAttestationOccurrence( + request?: protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest, + options?: CallOptions + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, + ( + | protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest + | undefined + ), + {} | undefined + ] + >; + validateAttestationOccurrence( + request: protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest, + options: CallOptions, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, + | protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest + | null + | undefined, + {} | null | undefined + > + ): void; + validateAttestationOccurrence( + request: protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest, + callback: Callback< + protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, + | protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest + | null + | undefined, + {} | null | undefined + > + ): void; + /** + * Returns whether the given Attestation for the given image URI + * was signed by the given Attestor + * + * @param {Object} request + * The request object that will be sent. + * @param {string} request.attestor + * Required. The resource name of the {@link google.cloud.binaryauthorization.v1.Attestor|Attestor} of the + * {@link grafeas.v1.Occurrence|occurrence}, in the format + * `projects/* /attestors/*`. + * @param {grafeas.v1.AttestationOccurrence} request.attestation + * Required. An {@link grafeas.v1.AttestationOccurrence|AttestationOccurrence} to + * be checked that it can be verified by the Attestor. It does not have to be + * an existing entity in Container Analysis. It must otherwise be a valid + * AttestationOccurrence. + * @param {string} request.occurrenceNote + * Required. The resource name of the {@link grafeas.v1.Note|Note} to which the + * containing {@link grafeas.v1.Occurrence|Occurrence} is associated. + * @param {string} request.occurrenceResourceUri + * Required. The URI of the artifact (e.g. container image) that is the + * subject of the containing {@link grafeas.v1.Occurrence|Occurrence}. + * @param {object} [options] + * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. + * @returns {Promise} - The promise which resolves to an array. + * The first element of the array is an object representing [ValidateAttestationOccurrenceResponse]{@link google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse}. + * Please see the + * [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) + * for more details and examples. + * @example + * const [response] = await client.validateAttestationOccurrence(request); + */ + validateAttestationOccurrence( + request?: protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest, + optionsOrCallback?: + | CallOptions + | Callback< + protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, + | protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest + | null + | undefined, + {} | null | undefined + >, + callback?: Callback< + protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, + | protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest + | null + | undefined, + {} | null | undefined + > + ): Promise< + [ + protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse, + ( + | protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceRequest + | undefined + ), + {} | undefined + ] + > | void { + request = request || {}; + let options: CallOptions; + if (typeof optionsOrCallback === 'function' && callback === undefined) { + callback = optionsOrCallback; + options = {}; + } else { + options = optionsOrCallback as CallOptions; + } + options = options || {}; + options.otherArgs = options.otherArgs || {}; + options.otherArgs.headers = options.otherArgs.headers || {}; + options.otherArgs.headers['x-goog-request-params'] = + gax.routingHeader.fromParams({ + attestor: request.attestor || '', + }); + this.initialize(); + return this.innerApiCalls.validateAttestationOccurrence( + request, + options, + callback + ); + } + + // -------------------- + // -- Path templates -- + // -------------------- + + /** + * Return a fully-qualified attestor resource name string. + * + * @param {string} project + * @param {string} attestor + * @returns {string} Resource name string. + */ + attestorPath(project: string, attestor: string) { + return this.pathTemplates.attestorPathTemplate.render({ + project: project, + attestor: attestor, + }); + } + + /** + * Parse the project from Attestor resource. + * + * @param {string} attestorName + * A fully-qualified path representing Attestor resource. + * @returns {string} A string representing the project. + */ + matchProjectFromAttestorName(attestorName: string) { + return this.pathTemplates.attestorPathTemplate.match(attestorName).project; + } + + /** + * Parse the attestor from Attestor resource. + * + * @param {string} attestorName + * A fully-qualified path representing Attestor resource. + * @returns {string} A string representing the attestor. + */ + matchAttestorFromAttestorName(attestorName: string) { + return this.pathTemplates.attestorPathTemplate.match(attestorName).attestor; + } + + /** + * Return a fully-qualified locationPolicy resource name string. + * + * @param {string} location + * @returns {string} Resource name string. + */ + locationPolicyPath(location: string) { + return this.pathTemplates.locationPolicyPathTemplate.render({ + location: location, + }); + } + + /** + * Parse the location from LocationPolicy resource. + * + * @param {string} locationPolicyName + * A fully-qualified path representing location_policy resource. + * @returns {string} A string representing the location. + */ + matchLocationFromLocationPolicyName(locationPolicyName: string) { + return this.pathTemplates.locationPolicyPathTemplate.match( + locationPolicyName + ).location; + } + + /** + * Return a fully-qualified project resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPath(project: string) { + return this.pathTemplates.projectPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from Project resource. + * + * @param {string} projectName + * A fully-qualified path representing Project resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectName(projectName: string) { + return this.pathTemplates.projectPathTemplate.match(projectName).project; + } + + /** + * Return a fully-qualified projectPolicy resource name string. + * + * @param {string} project + * @returns {string} Resource name string. + */ + projectPolicyPath(project: string) { + return this.pathTemplates.projectPolicyPathTemplate.render({ + project: project, + }); + } + + /** + * Parse the project from ProjectPolicy resource. + * + * @param {string} projectPolicyName + * A fully-qualified path representing project_policy resource. + * @returns {string} A string representing the project. + */ + matchProjectFromProjectPolicyName(projectPolicyName: string) { + return this.pathTemplates.projectPolicyPathTemplate.match(projectPolicyName) + .project; + } + + /** + * Terminate the gRPC channel and close the client. + * + * The client will no longer be usable and all future behavior is undefined. + * @returns {Promise} A promise that resolves when the client is closed. + */ + close(): Promise { + this.initialize(); + if (!this._terminated) { + return this.validationHelperV1Stub!.then(stub => { + this._terminated = true; + stub.close(); + }); + } + return Promise.resolve(); + } +} diff --git a/src/v1/validation_helper_v1_client_config.json b/src/v1/validation_helper_v1_client_config.json new file mode 100644 index 0000000..7c2d8e6 --- /dev/null +++ b/src/v1/validation_helper_v1_client_config.json @@ -0,0 +1,30 @@ +{ + "interfaces": { + "google.cloud.binaryauthorization.v1.ValidationHelperV1": { + "retry_codes": { + "non_idempotent": [], + "idempotent": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ] + }, + "retry_params": { + "default": { + "initial_retry_delay_millis": 100, + "retry_delay_multiplier": 1.3, + "max_retry_delay_millis": 60000, + "initial_rpc_timeout_millis": 60000, + "rpc_timeout_multiplier": 1, + "max_rpc_timeout_millis": 60000, + "total_timeout_millis": 600000 + } + }, + "methods": { + "ValidateAttestationOccurrence": { + "retry_codes_name": "non_idempotent", + "retry_params_name": "default" + } + } + } + } +} diff --git a/src/v1/validation_helper_v1_proto_list.json b/src/v1/validation_helper_v1_proto_list.json new file mode 100644 index 0000000..2e7010a --- /dev/null +++ b/src/v1/validation_helper_v1_proto_list.json @@ -0,0 +1,6 @@ +[ + "../../protos/google/cloud/binaryauthorization/v1/resources.proto", + "../../protos/google/cloud/binaryauthorization/v1/service.proto", + "../../protos/grafeas/v1/attestation.proto", + "../../protos/grafeas/v1/common.proto" +] diff --git a/src/v1beta1/binauthz_management_service_v1_beta1_client.ts b/src/v1beta1/binauthz_management_service_v1_beta1_client.ts index 154f13b..9603971 100644 --- a/src/v1beta1/binauthz_management_service_v1_beta1_client.ts +++ b/src/v1beta1/binauthz_management_service_v1_beta1_client.ts @@ -1117,7 +1117,8 @@ export class BinauthzManagementServiceV1Beta1Client { gax.routingHeader.fromParams({ parent: request.parent || '', }); - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listAttestors']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listAttestors.createStream( this.innerApiCalls.listAttestors as gax.GaxCall, @@ -1173,7 +1174,8 @@ export class BinauthzManagementServiceV1Beta1Client { parent: request.parent || '', }); options = options || {}; - const callSettings = new gax.CallSettings(options); + const defaultCallSettings = this._defaults['listAttestors']; + const callSettings = defaultCallSettings.merge(options); this.initialize(); return this.descriptors.page.listAttestors.asyncIterate( this.innerApiCalls['listAttestors'] as GaxCall, diff --git a/test/gapic_binauthz_management_service_v1_v1.ts b/test/gapic_binauthz_management_service_v1_v1.ts new file mode 100644 index 0000000..5e0d770 --- /dev/null +++ b/test/gapic_binauthz_management_service_v1_v1.ts @@ -0,0 +1,1449 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as binauthzmanagementservicev1Module from '../src'; + +import {PassThrough} from 'stream'; + +import {protobuf} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +function stubPageStreamingCall( + responses?: ResponseType[], + error?: Error +) { + const pagingStub = sinon.stub(); + if (responses) { + for (let i = 0; i < responses.length; ++i) { + pagingStub.onCall(i).callsArgWith(2, null, responses[i]); + } + } + const transformStub = error + ? sinon.stub().callsArgWith(2, error) + : pagingStub; + const mockStream = new PassThrough({ + objectMode: true, + transform: transformStub, + }); + // trigger as many responses as needed + if (responses) { + for (let i = 0; i < responses.length; ++i) { + setImmediate(() => { + mockStream.write({}); + }); + } + setImmediate(() => { + mockStream.end(); + }); + } else { + setImmediate(() => { + mockStream.write({}); + }); + setImmediate(() => { + mockStream.end(); + }); + } + return sinon.stub().returns(mockStream); +} + +function stubAsyncIterationCall( + responses?: ResponseType[], + error?: Error +) { + let counter = 0; + const asyncIterable = { + [Symbol.asyncIterator]() { + return { + async next() { + if (error) { + return Promise.reject(error); + } + if (counter >= responses!.length) { + return Promise.resolve({done: true, value: undefined}); + } + return Promise.resolve({done: false, value: responses![counter++]}); + }, + }; + }, + }; + return sinon.stub().returns(asyncIterable); +} + +describe('v1.BinauthzManagementServiceV1Client', () => { + it('has servicePath', () => { + const servicePath = + binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client + .servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = + binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client + .apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = + binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client + .port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + fallback: true, + } + ); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + assert.strictEqual(client.binauthzManagementServiceV1Stub, undefined); + await client.initialize(); + assert(client.binauthzManagementServiceV1Stub); + }); + + it('has close method', () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('getPolicy', () => { + it('invokes getPolicy without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetPolicyRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Policy() + ); + client.innerApiCalls.getPolicy = stubSimpleCall(expectedResponse); + const [response] = await client.getPolicy(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getPolicy without error using callback', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetPolicyRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Policy() + ); + client.innerApiCalls.getPolicy = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getPolicy( + request, + ( + err?: Error | null, + result?: protos.google.cloud.binaryauthorization.v1.IPolicy | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getPolicy with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetPolicyRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getPolicy = stubSimpleCall(undefined, expectedError); + await assert.rejects(client.getPolicy(request), expectedError); + assert( + (client.innerApiCalls.getPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('updatePolicy', () => { + it('invokes updatePolicy without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.UpdatePolicyRequest() + ); + request.policy = {}; + request.policy.name = ''; + const expectedHeaderRequestParams = 'policy.name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Policy() + ); + client.innerApiCalls.updatePolicy = stubSimpleCall(expectedResponse); + const [response] = await client.updatePolicy(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updatePolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updatePolicy without error using callback', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.UpdatePolicyRequest() + ); + request.policy = {}; + request.policy.name = ''; + const expectedHeaderRequestParams = 'policy.name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Policy() + ); + client.innerApiCalls.updatePolicy = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updatePolicy( + request, + ( + err?: Error | null, + result?: protos.google.cloud.binaryauthorization.v1.IPolicy | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updatePolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updatePolicy with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.UpdatePolicyRequest() + ); + request.policy = {}; + request.policy.name = ''; + const expectedHeaderRequestParams = 'policy.name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updatePolicy = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.updatePolicy(request), expectedError); + assert( + (client.innerApiCalls.updatePolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('createAttestor', () => { + it('invokes createAttestor without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.CreateAttestorRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ); + client.innerApiCalls.createAttestor = stubSimpleCall(expectedResponse); + const [response] = await client.createAttestor(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes createAttestor without error using callback', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.CreateAttestorRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ); + client.innerApiCalls.createAttestor = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.createAttestor( + request, + ( + err?: Error | null, + result?: protos.google.cloud.binaryauthorization.v1.IAttestor | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.createAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes createAttestor with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.CreateAttestorRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.createAttestor = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.createAttestor(request), expectedError); + assert( + (client.innerApiCalls.createAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('getAttestor', () => { + it('invokes getAttestor without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetAttestorRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ); + client.innerApiCalls.getAttestor = stubSimpleCall(expectedResponse); + const [response] = await client.getAttestor(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getAttestor without error using callback', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetAttestorRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ); + client.innerApiCalls.getAttestor = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getAttestor( + request, + ( + err?: Error | null, + result?: protos.google.cloud.binaryauthorization.v1.IAttestor | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getAttestor with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetAttestorRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getAttestor = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getAttestor(request), expectedError); + assert( + (client.innerApiCalls.getAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('updateAttestor', () => { + it('invokes updateAttestor without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.UpdateAttestorRequest() + ); + request.attestor = {}; + request.attestor.name = ''; + const expectedHeaderRequestParams = 'attestor.name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ); + client.innerApiCalls.updateAttestor = stubSimpleCall(expectedResponse); + const [response] = await client.updateAttestor(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes updateAttestor without error using callback', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.UpdateAttestorRequest() + ); + request.attestor = {}; + request.attestor.name = ''; + const expectedHeaderRequestParams = 'attestor.name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ); + client.innerApiCalls.updateAttestor = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.updateAttestor( + request, + ( + err?: Error | null, + result?: protos.google.cloud.binaryauthorization.v1.IAttestor | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.updateAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes updateAttestor with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.UpdateAttestorRequest() + ); + request.attestor = {}; + request.attestor.name = ''; + const expectedHeaderRequestParams = 'attestor.name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.updateAttestor = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.updateAttestor(request), expectedError); + assert( + (client.innerApiCalls.updateAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('deleteAttestor', () => { + it('invokes deleteAttestor without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.DeleteAttestorRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty() + ); + client.innerApiCalls.deleteAttestor = stubSimpleCall(expectedResponse); + const [response] = await client.deleteAttestor(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes deleteAttestor without error using callback', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.DeleteAttestorRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.protobuf.Empty() + ); + client.innerApiCalls.deleteAttestor = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.deleteAttestor( + request, + ( + err?: Error | null, + result?: protos.google.protobuf.IEmpty | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.deleteAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes deleteAttestor with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.DeleteAttestorRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.deleteAttestor = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.deleteAttestor(request), expectedError); + assert( + (client.innerApiCalls.deleteAttestor as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('listAttestors', () => { + it('invokes listAttestors without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ListAttestorsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + ]; + client.innerApiCalls.listAttestors = stubSimpleCall(expectedResponse); + const [response] = await client.listAttestors(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listAttestors as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listAttestors without error using callback', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ListAttestorsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + ]; + client.innerApiCalls.listAttestors = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.listAttestors( + request, + ( + err?: Error | null, + result?: + | protos.google.cloud.binaryauthorization.v1.IAttestor[] + | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.listAttestors as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes listAttestors with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ListAttestorsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.listAttestors = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.listAttestors(request), expectedError); + assert( + (client.innerApiCalls.listAttestors as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes listAttestorsStream without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ListAttestorsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + ]; + client.descriptors.page.listAttestors.createStream = + stubPageStreamingCall(expectedResponse); + const stream = client.listAttestorsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.binaryauthorization.v1.Attestor[] = + []; + stream.on( + 'data', + (response: protos.google.cloud.binaryauthorization.v1.Attestor) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + const responses = await promise; + assert.deepStrictEqual(responses, expectedResponse); + assert( + (client.descriptors.page.listAttestors.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listAttestors, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listAttestors.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('invokes listAttestorsStream with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ListAttestorsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listAttestors.createStream = + stubPageStreamingCall(undefined, expectedError); + const stream = client.listAttestorsStream(request); + const promise = new Promise((resolve, reject) => { + const responses: protos.google.cloud.binaryauthorization.v1.Attestor[] = + []; + stream.on( + 'data', + (response: protos.google.cloud.binaryauthorization.v1.Attestor) => { + responses.push(response); + } + ); + stream.on('end', () => { + resolve(responses); + }); + stream.on('error', (err: Error) => { + reject(err); + }); + }); + await assert.rejects(promise, expectedError); + assert( + (client.descriptors.page.listAttestors.createStream as SinonStub) + .getCall(0) + .calledWith(client.innerApiCalls.listAttestors, request) + ); + assert.strictEqual( + ( + client.descriptors.page.listAttestors.createStream as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listAttestors without error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ListAttestorsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedResponse = [ + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Attestor() + ), + ]; + client.descriptors.page.listAttestors.asyncIterate = + stubAsyncIterationCall(expectedResponse); + const responses: protos.google.cloud.binaryauthorization.v1.IAttestor[] = + []; + const iterable = client.listAttestorsAsync(request); + for await (const resource of iterable) { + responses.push(resource!); + } + assert.deepStrictEqual(responses, expectedResponse); + assert.deepStrictEqual( + ( + client.descriptors.page.listAttestors.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listAttestors.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + + it('uses async iteration with listAttestors with error', async () => { + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ListAttestorsRequest() + ); + request.parent = ''; + const expectedHeaderRequestParams = 'parent='; + const expectedError = new Error('expected'); + client.descriptors.page.listAttestors.asyncIterate = + stubAsyncIterationCall(undefined, expectedError); + const iterable = client.listAttestorsAsync(request); + await assert.rejects(async () => { + const responses: protos.google.cloud.binaryauthorization.v1.IAttestor[] = + []; + for await (const resource of iterable) { + responses.push(resource!); + } + }); + assert.deepStrictEqual( + ( + client.descriptors.page.listAttestors.asyncIterate as SinonStub + ).getCall(0).args[1], + request + ); + assert.strictEqual( + ( + client.descriptors.page.listAttestors.asyncIterate as SinonStub + ).getCall(0).args[2].otherArgs.headers['x-goog-request-params'], + expectedHeaderRequestParams + ); + }); + }); + + describe('Path templates', () => { + describe('attestor', () => { + const fakePath = '/rendered/path/attestor'; + const expectedParameters = { + project: 'projectValue', + attestor: 'attestorValue', + }; + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + client.pathTemplates.attestorPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.attestorPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('attestorPath', () => { + const result = client.attestorPath('projectValue', 'attestorValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.attestorPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromAttestorName', () => { + const result = client.matchProjectFromAttestorName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.attestorPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchAttestorFromAttestorName', () => { + const result = client.matchAttestorFromAttestorName(fakePath); + assert.strictEqual(result, 'attestorValue'); + assert( + (client.pathTemplates.attestorPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('locationPolicy', () => { + const fakePath = '/rendered/path/locationPolicy'; + const expectedParameters = { + location: 'locationValue', + }; + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + client.pathTemplates.locationPolicyPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPolicyPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPolicyPath', () => { + const result = client.locationPolicyPath('locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPolicyPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchLocationFromLocationPolicyName', () => { + const result = client.matchLocationFromLocationPolicyName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPolicyPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('project', () => { + const fakePath = '/rendered/path/project'; + const expectedParameters = { + project: 'projectValue', + }; + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + client.pathTemplates.projectPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPath', () => { + const result = client.projectPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectName', () => { + const result = client.matchProjectFromProjectName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('projectPolicy', () => { + const fakePath = '/rendered/path/projectPolicy'; + const expectedParameters = { + project: 'projectValue', + }; + const client = + new binauthzmanagementservicev1Module.v1.BinauthzManagementServiceV1Client( + { + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + } + ); + client.initialize(); + client.pathTemplates.projectPolicyPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPolicyPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPolicyPath', () => { + const result = client.projectPolicyPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPolicyPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectPolicyName', () => { + const result = client.matchProjectFromProjectPolicyName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPolicyPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +}); diff --git a/test/gapic_system_policy_v1_v1.ts b/test/gapic_system_policy_v1_v1.ts new file mode 100644 index 0000000..608d2e8 --- /dev/null +++ b/test/gapic_system_policy_v1_v1.ts @@ -0,0 +1,410 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as systempolicyv1Module from '../src'; + +import {protobuf} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +describe('v1.SystemPolicyV1Client', () => { + it('has servicePath', () => { + const servicePath = + systempolicyv1Module.v1.SystemPolicyV1Client.servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = + systempolicyv1Module.v1.SystemPolicyV1Client.apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = systempolicyv1Module.v1.SystemPolicyV1Client.port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = new systempolicyv1Module.v1.SystemPolicyV1Client(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + fallback: true, + }); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.systemPolicyV1Stub, undefined); + await client.initialize(); + assert(client.systemPolicyV1Stub); + }); + + it('has close method', () => { + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('getSystemPolicy', () => { + it('invokes getSystemPolicy without error', async () => { + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetSystemPolicyRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Policy() + ); + client.innerApiCalls.getSystemPolicy = stubSimpleCall(expectedResponse); + const [response] = await client.getSystemPolicy(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getSystemPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes getSystemPolicy without error using callback', async () => { + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetSystemPolicyRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.Policy() + ); + client.innerApiCalls.getSystemPolicy = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.getSystemPolicy( + request, + ( + err?: Error | null, + result?: protos.google.cloud.binaryauthorization.v1.IPolicy | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.getSystemPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes getSystemPolicy with error', async () => { + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.GetSystemPolicyRequest() + ); + request.name = ''; + const expectedHeaderRequestParams = 'name='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.getSystemPolicy = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects(client.getSystemPolicy(request), expectedError); + assert( + (client.innerApiCalls.getSystemPolicy as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('Path templates', () => { + describe('attestor', () => { + const fakePath = '/rendered/path/attestor'; + const expectedParameters = { + project: 'projectValue', + attestor: 'attestorValue', + }; + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.attestorPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.attestorPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('attestorPath', () => { + const result = client.attestorPath('projectValue', 'attestorValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.attestorPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromAttestorName', () => { + const result = client.matchProjectFromAttestorName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.attestorPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchAttestorFromAttestorName', () => { + const result = client.matchAttestorFromAttestorName(fakePath); + assert.strictEqual(result, 'attestorValue'); + assert( + (client.pathTemplates.attestorPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('locationPolicy', () => { + const fakePath = '/rendered/path/locationPolicy'; + const expectedParameters = { + location: 'locationValue', + }; + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.locationPolicyPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPolicyPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPolicyPath', () => { + const result = client.locationPolicyPath('locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPolicyPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchLocationFromLocationPolicyName', () => { + const result = client.matchLocationFromLocationPolicyName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPolicyPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('project', () => { + const fakePath = '/rendered/path/project'; + const expectedParameters = { + project: 'projectValue', + }; + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.projectPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPath', () => { + const result = client.projectPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectName', () => { + const result = client.matchProjectFromProjectName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('projectPolicy', () => { + const fakePath = '/rendered/path/projectPolicy'; + const expectedParameters = { + project: 'projectValue', + }; + const client = new systempolicyv1Module.v1.SystemPolicyV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.projectPolicyPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPolicyPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPolicyPath', () => { + const result = client.projectPolicyPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPolicyPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectPolicyName', () => { + const result = client.matchProjectFromProjectPolicyName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPolicyPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +}); diff --git a/test/gapic_validation_helper_v1_v1.ts b/test/gapic_validation_helper_v1_v1.ts new file mode 100644 index 0000000..6d5b12e --- /dev/null +++ b/test/gapic_validation_helper_v1_v1.ts @@ -0,0 +1,414 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// ** This file is automatically generated by gapic-generator-typescript. ** +// ** https://github.com/googleapis/gapic-generator-typescript ** +// ** All changes to this file may be overwritten. ** + +import * as protos from '../protos/protos'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import {SinonStub} from 'sinon'; +import {describe, it} from 'mocha'; +import * as validationhelperv1Module from '../src'; + +import {protobuf} from 'google-gax'; + +function generateSampleMessage(instance: T) { + const filledObject = ( + instance.constructor as typeof protobuf.Message + ).toObject(instance as protobuf.Message, {defaults: true}); + return (instance.constructor as typeof protobuf.Message).fromObject( + filledObject + ) as T; +} + +function stubSimpleCall(response?: ResponseType, error?: Error) { + return error + ? sinon.stub().rejects(error) + : sinon.stub().resolves([response]); +} + +function stubSimpleCallWithCallback( + response?: ResponseType, + error?: Error +) { + return error + ? sinon.stub().callsArgWith(2, error) + : sinon.stub().callsArgWith(2, null, response); +} + +describe('v1.ValidationHelperV1Client', () => { + it('has servicePath', () => { + const servicePath = + validationhelperv1Module.v1.ValidationHelperV1Client.servicePath; + assert(servicePath); + }); + + it('has apiEndpoint', () => { + const apiEndpoint = + validationhelperv1Module.v1.ValidationHelperV1Client.apiEndpoint; + assert(apiEndpoint); + }); + + it('has port', () => { + const port = validationhelperv1Module.v1.ValidationHelperV1Client.port; + assert(port); + assert(typeof port === 'number'); + }); + + it('should create a client with no option', () => { + const client = new validationhelperv1Module.v1.ValidationHelperV1Client(); + assert(client); + }); + + it('should create a client with gRPC fallback', () => { + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + fallback: true, + }); + assert(client); + }); + + it('has initialize method and supports deferred initialization', async () => { + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + assert.strictEqual(client.validationHelperV1Stub, undefined); + await client.initialize(); + assert(client.validationHelperV1Stub); + }); + + it('has close method', () => { + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.close(); + }); + + it('has getProjectId method', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon.stub().resolves(fakeProjectId); + const result = await client.getProjectId(); + assert.strictEqual(result, fakeProjectId); + assert((client.auth.getProjectId as SinonStub).calledWithExactly()); + }); + + it('has getProjectId method with callback', async () => { + const fakeProjectId = 'fake-project-id'; + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.auth.getProjectId = sinon + .stub() + .callsArgWith(0, null, fakeProjectId); + const promise = new Promise((resolve, reject) => { + client.getProjectId((err?: Error | null, projectId?: string | null) => { + if (err) { + reject(err); + } else { + resolve(projectId); + } + }); + }); + const result = await promise; + assert.strictEqual(result, fakeProjectId); + }); + + describe('validateAttestationOccurrence', () => { + it('invokes validateAttestationOccurrence without error', async () => { + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest() + ); + request.attestor = ''; + const expectedHeaderRequestParams = 'attestor='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse() + ); + client.innerApiCalls.validateAttestationOccurrence = + stubSimpleCall(expectedResponse); + const [response] = await client.validateAttestationOccurrence(request); + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.validateAttestationOccurrence as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + + it('invokes validateAttestationOccurrence without error using callback', async () => { + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest() + ); + request.attestor = ''; + const expectedHeaderRequestParams = 'attestor='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedResponse = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceResponse() + ); + client.innerApiCalls.validateAttestationOccurrence = + stubSimpleCallWithCallback(expectedResponse); + const promise = new Promise((resolve, reject) => { + client.validateAttestationOccurrence( + request, + ( + err?: Error | null, + result?: protos.google.cloud.binaryauthorization.v1.IValidateAttestationOccurrenceResponse | null + ) => { + if (err) { + reject(err); + } else { + resolve(result); + } + } + ); + }); + const response = await promise; + assert.deepStrictEqual(response, expectedResponse); + assert( + (client.innerApiCalls.validateAttestationOccurrence as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions /*, callback defined above */) + ); + }); + + it('invokes validateAttestationOccurrence with error', async () => { + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + const request = generateSampleMessage( + new protos.google.cloud.binaryauthorization.v1.ValidateAttestationOccurrenceRequest() + ); + request.attestor = ''; + const expectedHeaderRequestParams = 'attestor='; + const expectedOptions = { + otherArgs: { + headers: { + 'x-goog-request-params': expectedHeaderRequestParams, + }, + }, + }; + const expectedError = new Error('expected'); + client.innerApiCalls.validateAttestationOccurrence = stubSimpleCall( + undefined, + expectedError + ); + await assert.rejects( + client.validateAttestationOccurrence(request), + expectedError + ); + assert( + (client.innerApiCalls.validateAttestationOccurrence as SinonStub) + .getCall(0) + .calledWith(request, expectedOptions, undefined) + ); + }); + }); + + describe('Path templates', () => { + describe('attestor', () => { + const fakePath = '/rendered/path/attestor'; + const expectedParameters = { + project: 'projectValue', + attestor: 'attestorValue', + }; + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.attestorPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.attestorPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('attestorPath', () => { + const result = client.attestorPath('projectValue', 'attestorValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.attestorPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromAttestorName', () => { + const result = client.matchProjectFromAttestorName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.attestorPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + + it('matchAttestorFromAttestorName', () => { + const result = client.matchAttestorFromAttestorName(fakePath); + assert.strictEqual(result, 'attestorValue'); + assert( + (client.pathTemplates.attestorPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('locationPolicy', () => { + const fakePath = '/rendered/path/locationPolicy'; + const expectedParameters = { + location: 'locationValue', + }; + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.locationPolicyPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.locationPolicyPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('locationPolicyPath', () => { + const result = client.locationPolicyPath('locationValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.locationPolicyPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchLocationFromLocationPolicyName', () => { + const result = client.matchLocationFromLocationPolicyName(fakePath); + assert.strictEqual(result, 'locationValue'); + assert( + (client.pathTemplates.locationPolicyPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('project', () => { + const fakePath = '/rendered/path/project'; + const expectedParameters = { + project: 'projectValue', + }; + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.projectPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPath', () => { + const result = client.projectPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectName', () => { + const result = client.matchProjectFromProjectName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + + describe('projectPolicy', () => { + const fakePath = '/rendered/path/projectPolicy'; + const expectedParameters = { + project: 'projectValue', + }; + const client = new validationhelperv1Module.v1.ValidationHelperV1Client({ + credentials: {client_email: 'bogus', private_key: 'bogus'}, + projectId: 'bogus', + }); + client.initialize(); + client.pathTemplates.projectPolicyPathTemplate.render = sinon + .stub() + .returns(fakePath); + client.pathTemplates.projectPolicyPathTemplate.match = sinon + .stub() + .returns(expectedParameters); + + it('projectPolicyPath', () => { + const result = client.projectPolicyPath('projectValue'); + assert.strictEqual(result, fakePath); + assert( + (client.pathTemplates.projectPolicyPathTemplate.render as SinonStub) + .getCall(-1) + .calledWith(expectedParameters) + ); + }); + + it('matchProjectFromProjectPolicyName', () => { + const result = client.matchProjectFromProjectPolicyName(fakePath); + assert.strictEqual(result, 'projectValue'); + assert( + (client.pathTemplates.projectPolicyPathTemplate.match as SinonStub) + .getCall(-1) + .calledWith(fakePath) + ); + }); + }); + }); +});