
    W                       d Z ddlmZ ddlmZ ddlmZ ddlmZ dZ	 G d dej                        Z G d	 d
ej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d d ej                        Z G d! d"ej                        Z G d# d$ej                        Z G d% d&ej                        Z G d' d(ej                        Z G d) d*ej                        Z G d+ d,ej                        Z G d- d.ej                        Z G d/ d0ej                        Z G d1 d2ej                        Z  G d3 d4ej                        Z! G d5 d6ej                        Z" G d7 d8ej                        Z# G d9 d:ej                        Z$ G d; d<ej                        Z% G d= d>ej                        Z& G d? d@ej                        Z' G dA dBej                        Z( G dC dDej                        Z) G dE dFej                        Z* G dG dHej                        Z+ G dI dJej                        Z, G dK dLej                        Z- G dM dNej                        Z. G dO dPej                        Z/ G dQ dRej                        Z0 G dS dTej                        Z1 G dU dVej                        Z2 G dW dXej                        Z3 G dY dZej                        Z4 G d[ d\ej                        Z5 G d] d^ej                        Z6 G d_ d`ej                        Z7 G da dbej                        Z8 G dc ddej                        Z9 G de dfej                        Z: G dg dhej                        Z; G di djej                        Z< G dk dlej                        Z= G dm dnej                        Z> G do dpej                        Z? G dq drej                        Z@ G ds dtej                        ZA G du dvej                        ZB G dw dxej                        ZC G dy dzej                        ZD G d{ d|ej                        ZE G d} d~ej                        ZF G d dej                        ZG G d dej                        ZH G d dej                        ZI G d dej                        ZJ G d dej                        ZK G d dej                        ZL G d dej                        ZM G d dej                        ZN G d dej                        ZO G d dej                        ZP G d dej                        ZQ G d dej                        ZR G d dej                        ZS G d dej                        ZT G d dej                        ZU G d dej                        ZV G d dej                        ZW G d dej                        ZX G d dej                        ZY G d dej                        ZZ G d dej                        Z[ G d dej                        Z\ G d dej                        Z] G d dej                        Z^ G d dej                        Z_ G d dej                        Z` G d dej                        Za G d dej                        Zb G d dej                        Zc G d dej                        Zd G d dej                        Ze G d dej                        Zf G d dej                        Zg G d dej                        Zh G dÄ dej                        Zi G dń dej                        Zj G dǄ dej                        Zk G dɄ dej                        Zl G d˄ dej                        Zm G d̈́ dej                        Zn G dτ dej                        Zo G dф dej                        Zp G dӄ dej                        Zq G dՄ dej                        Zr G dׄ dej                        Zs ej                  enddګ        ej                  enj                  ddܫ        ej                  enj                  ddޫ       y)a  Generated message classes for privilegedaccessmanager version v1.

 Privileged Access Manager (PAM) helps you to follow least privilege best
practice to mitigate risks tied to privileged access misuse and abuse. You can
shift from always-on standing privileges to on-demand access using time-bound
and approval-based access elevations. IAM administrators specifically can use
PAM to create entitlements that can grant temporary access to a specific
resource scope. Requesters can explore eligible entitlements and request the
access needed for their task, and approvers are notified when approvals
require their attention. Streamlined workflows facilitated using PAM support
several use cases, including the following: - Emergency access for incident
responders - Time-boxed access for developers for critical deployment or
maintenance - Temporary access for operators for data ingestion and audits -
Temporary access to service accounts for automated tasks
    )absolute_import)messages)encoding)extra_typesprivilegedaccessmanagerc                   8    e Zd ZdZ ej
                  dd      Zy)AccessControlEntryaB  `AccessControlEntry` is used to control who can do some operation.

  Fields:
    principals: Optional. Users who are allowed for the operation. Each entry
      should be a valid v1 IAM principal identifier. The format for these is
      documented at: https://cloud.google.com/iam/docs/principal-
      identifiers#v1
     TrepeatedN)__name__
__module____qualname____doc__	_messagesStringField
principals     klib/googlecloudsdk/generated_clients/apis/privilegedaccessmanager/v1/privilegedaccessmanager_v1_messages.pyr	   r	      s     %y$$Q6*r   r	   c                       e Zd ZdZy)	Activatedz@An event representing that the grant was successfully activated.Nr   r   r   r   r   r   r   r   r   )   s    Ir   r   c                   6    e Zd ZdZ ej
                  dd      Zy)ActivationFailedzAn event representing that the grant activation failed.

  Fields:
    error: Output only. The error that occurred while activating the grant.
  Statusr
   N)r   r   r   r   r   MessageFielderrorr   r   r   r   r   -   s     !)
 
 1
-%r   r   c                   `    e Zd ZdZ ej
                  dd      Z ej
                  dd      Zy)AdditionalNotificationTargetsaO  `AdditionalNotificationTargets` includes email addresses to be notified.

  Fields:
    adminEmailRecipients: Optional. Additional email addresses to be notified
      when a principal (requester) is granted access.
    requesterEmailRecipients: Optional. Additional email address to be
      notified about an eligible entitlement.
  r
   Tr      N)r   r   r   r   r   r   adminEmailRecipientsrequesterEmailRecipientsr   r   r   r    r    7   s3     /..q4@2Y221tDr   r    c                   6    e Zd ZdZ ej
                  dd      Zy)ApprovalWorkflowzDifferent types of approval workflows that can be used to gate
  privileged access granting.

  Fields:
    manualApprovals: An approval workflow where users designated as approvers
      review and act on the grants.
  ManualApprovalsr
   N)r   r   r   r   r   r   manualApprovalsr   r   r   r%   r%   E        +I**+<a@/r   r%   c                   4    e Zd ZdZ ej
                  d      Zy)ApproveGrantRequestzRequest message for `ApproveGrant` method.

  Fields:
    reason: Optional. The reason for approving this grant. This is required if
      the `require_approver_justification` field of the `ManualApprovals`
      workflow used in this grant is true.
  r
   Nr   r   r   r   r   r   reasonr   r   r   r*   r*   Q        !9  #&r   r*   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)ApprovedzAn event representing that the grant was approved.

  Fields:
    actor: Output only. Username of the user who approved the grant.
    reason: Output only. The reason provided by the approver for approving the
      grant.
  r
   r!   Nr   r   r   r   r   r   actorr,   r   r   r   r/   r/   ]   -      )


"% 9  #&r   r/   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)
AuditTraila`  Audit trail for the access provided by this grant.

  Fields:
    accessGrantTime: Output only. The time at which access was given.
    accessRemoveTime: Output only. The time at which the system removed
      access. This could be because of an automatic expiry or because of a
      revocation. If unspecified, then access hasn't been removed yet.
  r
   r!   N)r   r   r   r   r   r   accessGrantTimeaccessRemoveTimer   r   r   r4   r4   j   s.     *I))!,/*Y**1-r   r4   c                       e Zd ZdZy)CancelOperationRequestz3The request message for Operations.CancelOperation.Nr   r   r   r   r8   r8   x       <r   r8   c                   ^    e Zd ZdZ ej
                  ddd      Z ej                  d      Zy)CheckOnboardingStatusResponseaQ  Response message for `CheckOnboardingStatus` method.

  Fields:
    findings: List of issues that are preventing PAM from functioning for this
      resource and need to be fixed to complete onboarding. Some issues might
      not be detected or reported.
    serviceAccount: The service account that PAM uses to act on this resource.
  Findingr
   Tr   r!   N)	r   r   r   r   r   r   findingsr   serviceAccountr   r   r   r;   r;   |   s1     $Y##Iq4@((9((+.r   r;   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)DeniedzAn event representing that the grant was denied.

  Fields:
    actor: Output only. Username of the user who denied the grant.
    reason: Output only. The reason provided by the approver for denying the
      grant.
  r
   r!   Nr0   r   r   r   r@   r@      r2   r   r@   c                   4    e Zd ZdZ ej
                  d      Zy)DenyGrantRequestzRequest message for `DenyGrant` method.

  Fields:
    reason: Optional. The reason for denying this grant. This is required if
      `require_approver_justification` field of the `ManualApprovals` workflow
      used in this grant is true.
  r
   Nr+   r   r   r   rB   rB      r-   r   rB   c                       e Zd ZdZy)Endedz/An event representing that the grant has ended.Nr   r   r   r   rD   rD      s    8r   rD   c                      e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  dd      Z	 ej                  d      Z ej                  d	d
d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  dd      Z ej                  dd      Z ej$                  dd      Z ej                  d      Zy)Entitlementa  An entitlement defines the eligibility of a set of users to obtain
  predefined access for some time possibly after going through an approval
  workflow.

  Enums:
    StateValueValuesEnum: Output only. Current state of this entitlement.

  Fields:
    additionalNotificationTargets: Optional. Additional email addresses to be
      notified based on actions taken.
    approvalWorkflow: Optional. The approvals needed before access are granted
      to a requester. No approvals are needed if this field is null.
    createTime: Output only. Create time stamp.
    eligibleUsers: Optional. Who can create grants using this entitlement.
      This list should contain at most one entry.
    etag: An `etag` is used for optimistic concurrency control as a way to
      prevent simultaneous updates to the same entitlement. An `etag` is
      returned in the response to `GetEntitlement` and the caller should put
      the `etag` in the request to `UpdateEntitlement` so that their change is
      applied on the same version. If this field is omitted or if there is a
      mismatch while updating an entitlement, then the server rejects the
      request.
    maxRequestDuration: Required. The maximum amount of time that access is
      granted for a request. A requester can ask for a duration less than
      this, but never more.
    name: Identifier. Name of the entitlement. Possible formats: *
      `organizations/{organization-
      number}/locations/{region}/entitlements/{entitlement-id}` *
      `folders/{folder-number}/locations/{region}/entitlements/{entitlement-
      id}` * `projects/{project-id|project-
      number}/locations/{region}/entitlements/{entitlement-id}`
    privilegedAccess: The access granted to a requester on successful
      approval.
    requesterJustificationConfig: Required. The manner in which the requester
      should provide a justification for requesting access.
    state: Output only. Current state of this entitlement.
    updateTime: Output only. Update time stamp.
  c                   (    e Zd ZdZdZdZdZdZdZdZ	y)	 Entitlement.StateValueValuesEnuma  Output only. Current state of this entitlement.

    Values:
      STATE_UNSPECIFIED: Unspecified state. This value is never returned by
        the server.
      CREATING: The entitlement is being created.
      AVAILABLE: The entitlement is available for requesting access.
      DELETING: The entitlement is being deleted.
      DELETED: The entitlement has been deleted.
      UPDATING: The entitlement is being updated.
    r   r
   r!            N)
r   r   r   r   STATE_UNSPECIFIEDCREATING	AVAILABLEDELETINGDELETEDUPDATINGr   r   r   StateValueValuesEnumrH      s(    
 HIHGHr   rR   r    r
   r%   r!   rI   r	   rJ   Tr   rK         PrivilegedAccess   RequesterJustificationConfig	   
      N)r   r   r   r   r   EnumrR   r   additionalNotificationTargetsapprovalWorkflowr   
createTimeeligibleUsersetagmaxRequestDurationnameprivilegedAccessrequesterJustificationConfig	EnumFieldstate
updateTimer   r   r   rF   rF      s    %NY^^ & #9)"8"89XZ["\+Y++,>B$y$$Q'*()(()=q4P-			q	!$,y,,Q/			q	!$+Y++,>B!7!7!78VXY!Z
)

4b
9%$y$$R(*r   rF   c                      e Zd ZdZ ej
                  dd      Z ej
                  dd      Z ej
                  dd      Z ej
                  dd	      Z	 ej
                  d
d      Z
 ej                  d      Z ej
                  dd      Z ej
                  dd      Z ej
                  dd      Z ej
                  dd      Z ej
                  dd      Z ej
                  dd      Zy)EventaW  A single operation on the grant.

  Fields:
    activated: The grant was successfully activated to give access.
    activationFailed: There was a non-retriable error while trying to give
      access.
    approved: The grant was approved.
    denied: The grant was denied.
    ended: Access given by the grant ended automatically as the approved
      duration was over.
    eventTime: Output only. The time (as recorded at server) when this event
      occurred.
    expired: The approval workflow did not complete in the necessary duration,
      and so the grant is expired.
    externallyModified: The policy bindings made by grant have been modified
      outside of PAM.
    requested: The grant was requested.
    revoked: The grant was revoked.
    scheduled: The grant has been scheduled to give access.
    withdrawn: The grant was withdrawn.
  r   r
   r   r!   r/   rI   r@   rJ   rD   rK   rS   ExpiredrT   ExternallyModifiedrV   	RequestedrX   RevokedrY   	ScheduledrZ   	Withdrawn   N)r   r   r   r   r   r   	activatedactivationFailedapproveddeniedendedr   	eventTimeexpiredexternallyModified	requestedrevoked	scheduled	withdrawnr   r   r   ri   ri      s    , %i$$[!4)+Y++,>B#Y##J2(!9!!(A.&
 )
 
 !
,%#i##A&)"I""9a0'-y--.BAF$i$$[!4)"I""9b1'$i$$["5)$i$$["5)r   ri   c                       e Zd ZdZy)rj   z1An event representing that the grant was expired.Nr   r   r   r   rj   rj     s    :r   rj   c                       e Zd ZdZy)rk   z`An event representing that the policy bindings made by this grant were
  modified externally.
  Nr   r   r   r   rk   rk         r   rk   c                   6    e Zd ZdZ ej
                  dd      Zy)r<   zFinding represents an issue which prevents PAM from functioning properly
  for this resource.

  Fields:
    iamAccessDenied: PAM's service account is being denied access by Cloud
      IAM.
  IAMAccessDeniedr
   N)r   r   r   r   r   r   iamAccessDeniedr   r   r   r<   r<     r(   r   r<   c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  ddd      Z	y)	GcpIamAccessad  `GcpIamAccess` represents IAM based access control on a Google Cloud
  resource. Refer to https://cloud.google.com/iam/docs to understand more
  about IAM.

  Fields:
    resource: Required. Name of the resource.
    resourceType: Required. The type of this resource.
    roleBindings: Required. Role bindings that are created on successful
      grant.
  r
   r!   RoleBindingrI   Tr   N)
r   r   r   r   r   r   resourceresourceTyper   roleBindingsr   r   r   r   r   +  sC    	 #Y""1%(&&&q),'''q4H,r   r   c                       e Zd ZdZy)GoogleProtobufEmptya!  A generic empty message that you can re-use to avoid defining duplicated
  empty messages in your APIs. A typical example is to use it as the request
  or the response type of an API method. For instance: service Foo { rpc
  Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
  Nr   r   r   r   r   r   <  s    r   r   c                      e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  dd      Z
 ej                  d	      Z ej                  d
      Z ej                  dd      Z ej                  d      Z ej                  dd      Z ej                  d      Z ej                  d      Z ej&                  dd      Z ej                  dd      Z ej                  d      Zy)Granta  A grant represents a request from a user for obtaining the access
  specified in an entitlement they are eligible for.

  Enums:
    StateValueValuesEnum: Output only. Current state of this grant.

  Fields:
    additionalEmailRecipients: Optional. Additional email addresses to notify
      for all the actions performed on the grant.
    auditTrail: Output only. Audit trail of access provided by this grant. If
      unspecified then access was never granted.
    createTime: Output only. Create time stamp.
    externallyModified: Output only. Flag set by the PAM system to indicate
      that policy bindings made by this grant have been modified from outside
      PAM. After it is set, this flag remains set forever irrespective of the
      grant state. A `true` value here indicates that PAM no longer has any
      certainty on the access a user has because of this grant.
    justification: Optional. Justification of why this access is needed.
    name: Identifier. Name of this grant. Possible formats: *
      `organizations/{organization-
      number}/locations/{region}/entitlements/{entitlement-id}/grants/{grant-
      id}` * `folders/{folder-
      number}/locations/{region}/entitlements/{entitlement-id}/grants/{grant-
      id}` * `projects/{project-id|project-
      number}/locations/{region}/entitlements/{entitlement-id}/grants/{grant-
      id}` The last segment of this name (`{grant-id}`) is autogenerated.
    privilegedAccess: Output only. The access that would be granted by this
      grant.
    requestedDuration: Required. The amount of time access is needed for. This
      value should be less than the `max_request_duration` value of the
      entitlement.
    requester: Output only. Username of the user who created this grant.
    state: Output only. Current state of this grant.
    timeline: Output only. Timeline of this grant.
    updateTime: Output only. Update time stamp.
  c                   D    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZy)Grant.StateValueValuesEnuma  Output only. Current state of this grant.

    Values:
      STATE_UNSPECIFIED: Unspecified state. This value is never returned by
        the server.
      APPROVAL_AWAITED: The entitlement had an approval workflow configured
        and this grant is waiting for the workflow to complete.
      DENIED: The approval workflow completed with a denied result. No access
        is granted for this grant. This is a terminal state.
      SCHEDULED: The approval workflow completed successfully with an approved
        result or none was configured. Access is provided at an appropriate
        time.
      ACTIVATING: Access is being given.
      ACTIVE: Access was successfully given and is currently active.
      ACTIVATION_FAILED: The system could not give access due to a non-
        retriable error. This is a terminal state.
      EXPIRED: Expired after waiting for the approval workflow to complete.
        This is a terminal state.
      REVOKING: Access is being revoked.
      REVOKED: Access was revoked by a user. This is a terminal state.
      ENDED: System took back access as the requested duration was over. This
        is a terminal state.
      WITHDRAWING: Access is being withdrawn.
      WITHDRAWN: Grant was withdrawn by the grant owner. This is a terminal
        state.
    r   r
   r!   rI   rJ   rK   rS   rT   rV   rX   rY   rZ   rp   N)r   r   r   r   rL   APPROVAL_AWAITEDDENIED	SCHEDULED
ACTIVATINGACTIVEACTIVATION_FAILEDEXPIREDREVOKINGREVOKEDENDEDWITHDRAWING	WITHDRAWNr   r   r   rR   r   k  sM    4 FIJFGHGEKIr   rR   r
   Tr   r4   r!   rI   rJ   JustificationrK   rS   rU   rT   rV   rX   rY   TimelinerZ   rp   N)r   r   r   r   r   r[   rR   r   additionalEmailRecipientsr   
auditTrailr^   BooleanFieldrx   justificationrb   rc   requestedDuration	requesterre   rf   timelinerg   r   r   r   r   r   E  s   #J'Y^^ 'R 4i33AE%y%%lA6*$y$$Q'*-y--a0()((!<-			q	!$+Y++,>B+i++A.#i##A&)
)

4b
9%#Y##J3($y$$R(*r   r   c                   8    e Zd ZdZ ej
                  dd      Zy)r   a7  PAM's service account is being denied access by Cloud IAM. This can be
  fixed by granting a role that contains the missing permissions to the
  service account or exempting it from deny policies if they are blocking the
  access.

  Fields:
    missingPermissions: List of permissions that are being denied.
  r
   Tr   N)r   r   r   r   r   r   missingPermissionsr   r   r   r   r     s     -y,,Q>r   r   c                   4    e Zd ZdZ ej
                  d      Zy)r   a  Justification represents a justification for requesting access.

  Fields:
    unstructuredJustification: A free form textual justification. The system
      only ensures that this is not empty. No other kind of validation is
      performed on the string.
  r
   N)r   r   r   r   r   r   unstructuredJustificationr   r   r   r   r     s     4i33A6r   r   c                       e Zd ZdZ ej
                  ddd      Z ej                  d      Z ej                  dd      Z	y)	ListEntitlementsResponsezMessage for response to listing entitlements.

  Fields:
    entitlements: The list of entitlements.
    nextPageToken: A token identifying a page of results the server should
      return.
    unreachable: Locations that could not be reached.
  rF   r
   Tr   r!   rI   N)
r   r   r   r   r   r   entitlementsr   nextPageTokenunreachabler   r   r   r   r     sE     (''q4H,')''*-%	%%a$7+r   r   c                       e Zd ZdZ ej
                  ddd      Z ej                  d      Z ej                  dd      Z	y)	ListGrantsResponsezMessage for response to listing grants.

  Fields:
    grants: The list of grants.
    nextPageToken: A token identifying a page of results the server should
      return.
    unreachable: Locations that could not be reached.
  r   r
   Tr   r!   rI   N)
r   r   r   r   r   r   grantsr   r   r   r   r   r   r   r     sE     "9!!'1t<&')''*-%	%%a$7+r   r   c                   ^    e Zd ZdZ ej
                  ddd      Z ej                  d      Zy)ListLocationsResponsezThe response message for Locations.ListLocations.

  Fields:
    locations: A list of locations that matches the specified filter in the
      request.
    nextPageToken: The standard List next-page token.
  Locationr
   Tr   r!   N)	r   r   r   r   r   r   	locationsr   r   r   r   r   r   r     s1     %i$$ZTB)')''*-r   r   c                   ^    e Zd ZdZ ej
                  d      Z ej                  ddd      Zy)ListOperationsResponsezThe response message for Operations.ListOperations.

  Fields:
    nextPageToken: The standard List next-page token.
    operations: A list of operations that matches the specified filter in the
      request.
  r
   	Operationr!   Tr   N)	r   r   r   r   r   r   r   r   
operationsr   r   r   r   r     s1     ()''*-%y%%k1tD*r   r   c                   p   e Zd ZdZ ej
                  d       G d dej                               Z ej
                  d       G d dej                               Z	 ej                  d      Z ej                  dd      Z ej                  d	      Z ej                  dd
      Z ej                  d      Zy)r   ao  A resource that represents a Google Cloud location.

  Messages:
    LabelsValue: Cross-service attributes for the location. For example
      {"cloud.googleapis.com/region": "us-east1"}
    MetadataValue: Service-specific metadata. For example the available
      capacity at the given location.

  Fields:
    displayName: The friendly name for this location, typically a nearby city
      name. For example, "Tokyo".
    labels: Cross-service attributes for the location. For example
      {"cloud.googleapis.com/region": "us-east1"}
    locationId: The canonical id for this location. For example: `"us-east1"`.
    metadata: Service-specific metadata. For example the available capacity at
      the given location.
    name: Resource name for the location, which may vary between
      implementations. For example: `"projects/example-project/locations/us-
      east1"`
  additionalPropertiesc                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Location.LabelsValuea  Cross-service attributes for the location. For example
    {"cloud.googleapis.com/region": "us-east1"}

    Messages:
      AdditionalProperty: An additional property for a LabelsValue object.

    Fields:
      additionalProperties: Additional properties of type LabelsValue
    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)'Location.LabelsValue.AdditionalPropertyzAn additional property for a LabelsValue object.

      Fields:
        key: Name of the additional property.
        value: A string attribute.
      r
   r!   N)r   r   r   r   r   r   keyvaluer   r   r   AdditionalPropertyr     s-    
 "I!!!$c#i##A&er   r   r
   Tr   N	r   r   r   r   r   Messager   r   r   r   r   r   LabelsValuer   	  s4    	'Y.. 	' 29112FTXYr   r   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Location.MetadataValuea(  Service-specific metadata. For example the available capacity at the
    given location.

    Messages:
      AdditionalProperty: An additional property for a MetadataValue object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy))Location.MetadataValue.AdditionalPropertyAn additional property for a MetadataValue object.

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r
   extra_types.JsonValuer!   N	r   r   r   r   r   r   r   r   r   r   r   r   r   r   /  0    
 "I!!!$c$i$$%<a@er   r   r
   Tr   Nr   r   r   r   MetadataValuer   "  6    		AY.. 	A 29112FTXYr   r   r
   r!   rI   rJ   rK   N)r   r   r   r   r   MapUnrecognizedFieldsr   r   r   r   r   displayNamer   labels
locationIdmetadatarb   r   r   r   r   r     s    * "8!!"89ZI%% Z :Z0 "8!!"89Zi'' Z :Z2 &	%%a(+!9!!-3&$y$$Q'*#Y##OQ7(			q	!$r   r   c                   ^    e Zd ZdZ ej
                  d      Z ej                  ddd      Zy)r&   aC  A manual approval workflow where users who are designated as approvers
  need to call the `ApproveGrant`/`DenyGrant` APIs for a grant. The workflow
  can consist of multiple serial steps where each step defines who can act as
  approver in that step and how many of those users should approve before the
  workflow moves to the next step. This can be used to create approval
  workflows such as: * Require an approval from any user in a group G. *
  Require an approval from any k number of users from a Group G. * Require an
  approval from any user in a group G and then from a user U. A single user
  might be part of the `approvers` ACL for multiple steps in this workflow,
  but they can only approve once and that approval is only considered to
  satisfy the approval step at which it was granted.

  Fields:
    requireApproverJustification: Optional. Do the approvers need to provide a
      justification for their actions?
    steps: Optional. List of approval steps in this workflow. These steps are
      followed in the specified order sequentially. Only 1 step is supported.
  r
   Stepr!   Tr   N)	r   r   r   r   r   r   requireApproverJustificationr   stepsr   r   r   r&   r&   C  s2    & "8!7!7!:
 )
 
 T
:%r   r&   c                       e Zd ZdZy)NotMandatoryz\The justification is not mandatory but can be provided in any of the
  supported formats.
  Nr   r   r   r   r   r   [  r   r   r   c                   r   e Zd ZdZ ej
                  d       G d dej                               Z ej
                  d       G d dej                               Z	 ej                  d      Z ej                  dd	      Z ej                  dd
      Z ej                  d      Z ej                  dd      Zy)r   a	  This resource represents a long-running operation that is the result of
  a network API call.

  Messages:
    MetadataValue: Service-specific metadata associated with the operation. It
      typically contains progress information and common metadata such as
      create time. Some services might not provide such metadata. Any method
      that returns a long-running operation should document the metadata type,
      if any.
    ResponseValue: The normal, successful response of the operation. If the
      original method returns no data on success, such as `Delete`, the
      response is `google.protobuf.Empty`. If the original method is standard
      `Get`/`Create`/`Update`, the response should be the resource. For other
      methods, the response should have the type `XxxResponse`, where `Xxx` is
      the original method name. For example, if the original method name is
      `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

  Fields:
    done: If the value is `false`, it means the operation is still in
      progress. If `true`, the operation is completed, and either `error` or
      `response` is available.
    error: The error result of the operation in case of failure or
      cancellation.
    metadata: Service-specific metadata associated with the operation. It
      typically contains progress information and common metadata such as
      create time. Some services might not provide such metadata. Any method
      that returns a long-running operation should document the metadata type,
      if any.
    name: The server-assigned name, which is only unique within the same
      service that originally returns it. If you use the default HTTP mapping,
      the `name` should be a resource name ending with
      `operations/{unique_id}`.
    response: The normal, successful response of the operation. If the
      original method returns no data on success, such as `Delete`, the
      response is `google.protobuf.Empty`. If the original method is standard
      `Get`/`Create`/`Update`, the response should be the resource. For other
      methods, the response should have the type `XxxResponse`, where `Xxx` is
      the original method name. For example, if the original method name is
      `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
  r   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Operation.MetadataValuea  Service-specific metadata associated with the operation. It typically
    contains progress information and common metadata such as create time.
    Some services might not provide such metadata. Any method that returns a
    long-running operation should document the metadata type, if any.

    Messages:
      AdditionalProperty: An additional property for a MetadataValue object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)*Operation.MetadataValue.AdditionalPropertyr   r
   r   r!   Nr   r   r   r   r   r     r   r   r   r
   Tr   Nr   r   r   r   r   r     s6    	AY.. 	A 29112FTXYr   r   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Operation.ResponseValuea  The normal, successful response of the operation. If the original
    method returns no data on success, such as `Delete`, the response is
    `google.protobuf.Empty`. If the original method is standard
    `Get`/`Create`/`Update`, the response should be the resource. For other
    methods, the response should have the type `XxxResponse`, where `Xxx` is
    the original method name. For example, if the original method name is
    `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

    Messages:
      AdditionalProperty: An additional property for a ResponseValue object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)*Operation.ResponseValue.AdditionalPropertyzAn additional property for a ResponseValue object.

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r
   r   r!   Nr   r   r   r   r   r     r   r   r   r
   Tr   Nr   r   r   r   ResponseValuer     s6     	AY.. 	A 29112FTXYr   r   r
   r   r!   rI   rJ   rK   N)r   r   r   r   r   r   r   r   r   r   r   doner   r   r   r   rb   responser   r   r   r   r   b  s    'R "8!!"89Zi'' Z :Z6 "8!!"89Zi'' Z :Z< 
 			"$
 )
 
 1
-%#Y##OQ7(			q	!$#Y##OQ7(r   r   c                      e Zd ZdZ ej
                  d      Z ej
                  d      Z ej
                  d      Z ej                  d      Z
 ej
                  d      Z ej
                  d      Z ej
                  d      Zy	)
OperationMetadataa  Represents the metadata of the long-running operation.

  Fields:
    apiVersion: Output only. API version used to start the operation.
    createTime: Output only. The time the operation was created.
    endTime: Output only. The time the operation finished running.
    requestedCancellation: Output only. Identifies whether the user has
      requested cancellation of the operation. Operations that have been
      cancelled successfully have Operation.error value with a
      google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.
    statusMessage: Output only. Human-readable status of the operation, if
      any.
    target: Output only. Server-defined resource path for the target of the
      operation.
    verb: Output only. Name of the verb executed by the operation.
  r
   r!   rI   rJ   rK   rS   rT   N)r   r   r   r   r   r   
apiVersionr^   endTimer   requestedCancellationstatusMessagetargetverbr   r   r   r   r     s    " %y$$Q'*$y$$Q'*!I!!!$'0)003')''*- 9  #&			q	!$r   r   c                   6    e Zd ZdZ ej
                  dd      Zy)rU   zPrivileged access that this service can be used to gate.

  Fields:
    gcpIamAccess: Access to a Google Cloud resource through IAM.
  r   r
   N)r   r   r   r   r   r   gcpIamAccessr   r   r   rU   rU     s     ('':,r   rU   c                   8    e Zd ZdZ ej
                  dd      Zy)CPrivilegedaccessmanagerFoldersLocationsCheckOnboardingStatusRequesta  A PrivilegedaccessmanagerFoldersLocationsCheckOnboardingStatusRequest
  object.

  Fields:
    parent: Required. The resource for which the onboarding status should be
      checked. Should be in one of the following formats: *
      `projects/{project-number|project-id}/locations/{region}` *
      `folders/{folder-number}/locations/{region}` *
      `organizations/{organization-number}/locations/{region}`
  r
   TrequiredNr   r   r   r   r   r   parentr   r   r   r   r         	 !9  T2&r   r   c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	 ej                  d      Z
y	)
@PrivilegedaccessmanagerFoldersLocationsEntitlementsCreateRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsCreateRequest
  object.

  Fields:
    entitlement: A Entitlement resource to be passed as the request body.
    entitlementId: Required. The ID to use for this entitlement. This becomes
      the last part of the resource name. This value should be 4-63 characters
      in length, and valid characters are "[a-z]", "[0-9]", and "-". The first
      character should be from [a-z]. This value should be unique among all
      other entitlements under the specified `parent`.
    parent: Required. Name of the parent resource for the entitlement.
      Possible formats: * `organizations/{organization-
      number}/locations/{region}` * `folders/{folder-
      number}/locations/{region}` * `projects/{project-id|project-
      number}/locations/{region}`
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request and returns the
      previous operation's response. This prevents clients from accidentally
      creating duplicate entitlements. The request ID must be a valid UUID
      with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  rF   r
   r!   rI   Tr   rJ   Nr   r   r   r   r   r   entitlementr   entitlementIdr   	requestIdr   r   r   r   r     U    : '	&&}a8+')''*- 9  T2&#i##A&)r   r   c                       e Zd ZdZ ej
                  d      Z ej                  dd      Z ej                  d      Z	y)@PrivilegedaccessmanagerFoldersLocationsEntitlementsDeleteRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsDeleteRequest
  object.

  Fields:
    force: Optional. If set to true, any child grant under this entitlement is
      also deleted. (Otherwise, the request only works if the entitlement has
      no child grant.)
    name: Required. Name of the resource.
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request. The request ID must
      be a valid UUID with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  r
   r!   Tr   rI   N
r   r   r   r   r   r   forcer   rb   r   r   r   r   r   r   &  A    ( !)
 
 
#%			q4	0$#i##A&)r   r   c                   8    e Zd ZdZ ej
                  dd      Zy)=PrivilegedaccessmanagerFoldersLocationsEntitlementsGetRequestzA PrivilegedaccessmanagerFoldersLocationsEntitlementsGetRequest object.

  Fields:
    name: Required. Name of the resource.
  r
   Tr   Nr   r   r   r   r   r   rb   r   r   r   r  r  @       
		q4	0$r   r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)GPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsApproveRequesta  A
  PrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsApproveRequest
  object.

  Fields:
    approveGrantRequest: A ApproveGrantRequest resource to be passed as the
      request body.
    name: Required. Name of the grant resource which is being approved.
  r*   r
   r!   Tr   N	r   r   r   r   r   r   approveGrantRequestr   rb   r   r   r   r  r  J  3     /	../DaH			q4	0$r   r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	FPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsCreateRequesta/  A PrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsCreateRequest
  object.

  Fields:
    grant: A Grant resource to be passed as the request body.
    parent: Required. Name of the parent entitlement for which this grant is
      being requested.
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request. This prevents
      clients from accidentally creating duplicate grants. The request ID must
      be a valid UUID with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  r   r
   r!   Tr   rI   N
r   r   r   r   r   r   grantr   r   r   r   r   r   r  r  Y  sC    ( !)
 
 !
,% 9  T2&#i##A&)r   r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)DPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsDenyRequestzA PrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsDenyRequest
  object.

  Fields:
    denyGrantRequest: A DenyGrantRequest resource to be passed as the request
      body.
    name: Required. Name of the grant resource which is being denied.
  rB   r
   r!   Tr   N	r   r   r   r   r   r   denyGrantRequestr   rb   r   r   r   r  r  s  3     ,Y++,>B			q4	0$r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)CPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsGetRequestzA PrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsGetRequest
  object.

  Fields:
    name: Required. Name of the resource.
  r
   Tr   Nr  r   r   r   r  r         
		q4	0$r   r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)DPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsListRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsListRequest
  object.

  Fields:
    filter: Optional. Filtering results.
    orderBy: Optional. Hint for how to order the results
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent resource which owns the grants.
  r
   r!   rI   variantrJ   rK   Tr   Nr   r   r   r   r   r   filterorderByIntegerFieldVariantINT32pageSize	pageTokenr   r   r   r   r  r    s     !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r   r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)FPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsRevokeRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsRevokeRequest
  object.

  Fields:
    name: Required. Name of the grant resource which is being revoked.
    revokeGrantRequest: A RevokeGrantRequest resource to be passed as the
      request body.
  r
   Tr   RevokeGrantRequestr!   N	r   r   r   r   r   r   rb   r   revokeGrantRequestr   r   r   r%  r%    s3     
		q4	0$-y--.BAFr   r%  c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z
 ej                  dej                  j                        Z ej                  d      Z ej                  d	d
      Zy)FPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsSearchRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsSearchRequest
  object.

  Enums:
    CallerRelationshipValueValuesEnum: Required. Only grants which the caller
      is related to by this relationship are returned in the response.

  Fields:
    callerRelationship: Required. Only grants which the caller is related to
      by this relationship are returned in the response.
    filter: Optional. Only grants matching this filter are returned in the
      response.
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the grant resources.
  c                        e Zd ZdZdZdZdZdZy)hPrivilegedaccessmanagerFoldersLocationsEntitlementsGrantsSearchRequest.CallerRelationshipValueValuesEnum  Required. Only grants which the caller is related to by this
    relationship are returned in the response.

    Values:
      CALLER_RELATIONSHIP_TYPE_UNSPECIFIED: Unspecified caller relationship
        type.
      HAD_CREATED: The user created this grant by calling `CreateGrant`
        earlier.
      CAN_APPROVE: The user is an approver for the entitlement that this grant
        is parented under and can currently approve/deny it.
      HAD_APPROVED: The caller had successfully approved/denied this grant
        earlier.
    r   r
   r!   rI   Nr   r   r   r   $CALLER_RELATIONSHIP_TYPE_UNSPECIFIEDHAD_CREATEDCAN_APPROVEHAD_APPROVEDr   r   r   !CallerRelationshipValueValuesEnumr,         ,-(KKLr   r3  r
   r!   rI   r  rJ   rK   Tr   Nr   r   r   r   r   r[   r3  re   callerRelationshipr   r  r  r  r   r!  r"  r   r   r   r   r*  r*    s    &).. & +y**+NPQR 9  #&#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r   r*  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)>PrivilegedaccessmanagerFoldersLocationsEntitlementsListRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsListRequest object.

  Fields:
    filter: Optional. Filtering results.
    orderBy: Optional. Hint for how to order the results.
    pageSize: Optional. Requested page size. Server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the entitlement resources.
  r
   r!   rI   r  rJ   rK   Tr   Nr  r   r   r   r8  r8    ss    
 !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r   r8  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	?PrivilegedaccessmanagerFoldersLocationsEntitlementsPatchRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsPatchRequest
  object.

  Fields:
    entitlement: A Entitlement resource to be passed as the request body.
    name: Identifier. Name of the entitlement. Possible formats: *
      `organizations/{organization-
      number}/locations/{region}/entitlements/{entitlement-id}` *
      `folders/{folder-number}/locations/{region}/entitlements/{entitlement-
      id}` * `projects/{project-id|project-
      number}/locations/{region}/entitlements/{entitlement-id}`
    updateMask: Required. The list of fields to update. A field is overwritten
      if, and only if, it is in the mask. Any immutable fields set in the mask
      are ignored by the server. Repeated fields and map fields are only
      allowed in the last position of a `paths` string and overwrite the
      existing values. Hence an update to a repeated field or a map should
      contain the entire list of values. The fields specified in the
      update_mask are relative to the resource and not to the request. (e.g.
      `MaxRequestDuration`; *not* `entitlement.MaxRequestDuration`) A value of
      '*' for this field refers to full replacement of the resource.
  rF   r
   r!   Tr   rI   N
r   r   r   r   r   r   r   r   rb   
updateMaskr   r   r   r:  r:    C    , '	&&}a8+			q4	0$$y$$Q'*r   r:  c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z
 ej                  dej                  j                        Z ej                  d      Z ej                  d	d
      Zy)@PrivilegedaccessmanagerFoldersLocationsEntitlementsSearchRequesta  A PrivilegedaccessmanagerFoldersLocationsEntitlementsSearchRequest
  object.

  Enums:
    CallerAccessTypeValueValuesEnum: Required. Only entitlements where the
      calling user has this access are returned.

  Fields:
    callerAccessType: Required. Only entitlements where the calling user has
      this access are returned.
    filter: Optional. Only entitlements matching this filter are returned in
      the response.
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the entitlement resources.
  c                       e Zd ZdZdZdZdZy)`PrivilegedaccessmanagerFoldersLocationsEntitlementsSearchRequest.CallerAccessTypeValueValuesEnumj  Required. Only entitlements where the calling user has this access are
    returned.

    Values:
      CALLER_ACCESS_TYPE_UNSPECIFIED: Unspecified access type.
      GRANT_REQUESTER: The user has access to create grants using this
        entitlement.
      GRANT_APPROVER: The user has access to approve/deny grants created under
        this entitlement.
    r   r
   r!   Nr   r   r   r   CALLER_ACCESS_TYPE_UNSPECIFIEDGRANT_REQUESTERGRANT_APPROVERr   r   r   CallerAccessTypeValueValuesEnumrA  !      	 &'"ONr   rG  r
   r!   rI   r  rJ   rK   Tr   Nr   r   r   r   r   r[   rG  re   callerAccessTyper   r  r  r  r   r!  r"  r   r   r   r   r?  r?        &	  )Y(()JAN 9  #&#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r   r?  c                   8    e Zd ZdZ ej
                  dd      Zy)1PrivilegedaccessmanagerFoldersLocationsGetRequestzsA PrivilegedaccessmanagerFoldersLocationsGetRequest object.

  Fields:
    name: Resource name for the location.
  r
   Tr   Nr  r   r   r   rM  rM  7  r  r   rM  c                       e Zd ZdZ ej
                  dd      Z ej
                  d      Z ej
                  dd      Z ej                  dej                  j                  	      Z ej
                  d
      Zy)2PrivilegedaccessmanagerFoldersLocationsListRequesta  A PrivilegedaccessmanagerFoldersLocationsListRequest object.

  Fields:
    extraLocationTypes: Optional. Do not use this field. It is unsupported and
      is ignored unless explicitly documented otherwise. This is primarily for
      internal usage.
    filter: A filter to narrow down results to a preferred subset. The
      filtering language accepts strings like `"displayName=tokyo"`, and is
      documented in more detail in [AIP-160](https://google.aip.dev/160).
    name: The resource that owns the locations collection, if applicable.
    pageSize: The maximum number of results to return. If not set, the service
      selects a default.
    pageToken: A page token received from the `next_page_token` field in the
      response. Send that page token to receive the subsequent page.
  r
   Tr   r!   rI   r   rJ   r  rK   Nr   r   r   r   r   r   extraLocationTypesr  rb   r  r  r   r!  r"  r   r   r   rO  rO  A  v      -y,,Q> 9  #&			q4	0$#Y##Ay/@/@/F/FG(#i##A&)r   rO  c                   8    e Zd ZdZ ej
                  dd      Zy)>PrivilegedaccessmanagerFoldersLocationsOperationsDeleteRequestzA PrivilegedaccessmanagerFoldersLocationsOperationsDeleteRequest object.

  Fields:
    name: The name of the operation resource to be deleted.
  r
   Tr   Nr  r   r   r   rT  rT  Y  r  r   rT  c                   8    e Zd ZdZ ej
                  dd      Zy);PrivilegedaccessmanagerFoldersLocationsOperationsGetRequestzA PrivilegedaccessmanagerFoldersLocationsOperationsGetRequest object.

  Fields:
    name: The name of the operation resource.
  r
   Tr   Nr  r   r   r   rV  rV  c  r  r   rV  c                       e Zd ZdZ ej
                  d      Z ej
                  dd      Z ej                  dej                  j                        Z ej
                  d      Zy	)
<PrivilegedaccessmanagerFoldersLocationsOperationsListRequesta	  A PrivilegedaccessmanagerFoldersLocationsOperationsListRequest object.

  Fields:
    filter: The standard list filter.
    name: The name of the operation's parent resource.
    pageSize: The standard list page size.
    pageToken: The standard list page token.
  r
   r!   Tr   rI   r  rJ   Nr   r   r   r   r   r   r  rb   r  r  r   r!  r"  r   r   r   rX  rX  m  a     !9  #&			q4	0$#Y##Ay/@/@/F/FG(#i##A&)r   rX  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy).PrivilegedaccessmanagerOperationsCancelRequestzA PrivilegedaccessmanagerOperationsCancelRequest object.

  Fields:
    cancelOperationRequest: A CancelOperationRequest resource to be passed as
      the request body.
    name: The name of the operation resource to be cancelled.
  r8   r
   r!   Tr   N)	r   r   r   r   r   r   cancelOperationRequestr   rb   r   r   r   r\  r\  }  s3     29112JAN			q4	0$r   r\  c                   8    e Zd ZdZ ej
                  dd      Zy)IPrivilegedaccessmanagerOrganizationsLocationsCheckOnboardingStatusRequesta  A
  PrivilegedaccessmanagerOrganizationsLocationsCheckOnboardingStatusRequest
  object.

  Fields:
    parent: Required. The resource for which the onboarding status should be
      checked. Should be in one of the following formats: *
      `projects/{project-number|project-id}/locations/{region}` *
      `folders/{folder-number}/locations/{region}` *
      `organizations/{organization-number}/locations/{region}`
  r
   Tr   Nr   r   r   r   r_  r_    s    
 !9  T2&r   r_  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	 ej                  d      Z
y	)
FPrivilegedaccessmanagerOrganizationsLocationsEntitlementsCreateRequesta  A PrivilegedaccessmanagerOrganizationsLocationsEntitlementsCreateRequest
  object.

  Fields:
    entitlement: A Entitlement resource to be passed as the request body.
    entitlementId: Required. The ID to use for this entitlement. This becomes
      the last part of the resource name. This value should be 4-63 characters
      in length, and valid characters are "[a-z]", "[0-9]", and "-". The first
      character should be from [a-z]. This value should be unique among all
      other entitlements under the specified `parent`.
    parent: Required. Name of the parent resource for the entitlement.
      Possible formats: * `organizations/{organization-
      number}/locations/{region}` * `folders/{folder-
      number}/locations/{region}` * `projects/{project-id|project-
      number}/locations/{region}`
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request and returns the
      previous operation's response. This prevents clients from accidentally
      creating duplicate entitlements. The request ID must be a valid UUID
      with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  rF   r
   r!   rI   Tr   rJ   Nr   r   r   r   ra  ra    r   r   ra  c                       e Zd ZdZ ej
                  d      Z ej                  dd      Z ej                  d      Z	y)FPrivilegedaccessmanagerOrganizationsLocationsEntitlementsDeleteRequesta"  A PrivilegedaccessmanagerOrganizationsLocationsEntitlementsDeleteRequest
  object.

  Fields:
    force: Optional. If set to true, any child grant under this entitlement is
      also deleted. (Otherwise, the request only works if the entitlement has
      no child grant.)
    name: Required. Name of the resource.
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request. The request ID must
      be a valid UUID with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  r
   r!   Tr   rI   Nr   r   r   r   rc  rc    r  r   rc  c                   8    e Zd ZdZ ej
                  dd      Zy)CPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGetRequestzA PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGetRequest
  object.

  Fields:
    name: Required. Name of the resource.
  r
   Tr   Nr  r   r   r   re  re    r  r   re  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)MPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsApproveRequesta  A PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsApprove
  Request object.

  Fields:
    approveGrantRequest: A ApproveGrantRequest resource to be passed as the
      request body.
    name: Required. Name of the grant resource which is being approved.
  r*   r
   r!   Tr   Nr  r   r   r   rg  rg    s3     /	../DaH			q4	0$r   rg  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	LPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsCreateRequesta7  A
  PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsCreateRequest
  object.

  Fields:
    grant: A Grant resource to be passed as the request body.
    parent: Required. Name of the parent entitlement for which this grant is
      being requested.
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request. This prevents
      clients from accidentally creating duplicate grants. The request ID must
      be a valid UUID with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  r   r
   r!   Tr   rI   Nr  r   r   r   ri  ri    C    * !)
 
 !
,% 9  T2&#i##A&)r   ri  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)JPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsDenyRequesta  A
  PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsDenyRequest
  object.

  Fields:
    denyGrantRequest: A DenyGrantRequest resource to be passed as the request
      body.
    name: Required. Name of the grant resource which is being denied.
  rB   r
   r!   Tr   Nr  r   r   r   rl  rl    s3     ,Y++,>B			q4	0$r   rl  c                   8    e Zd ZdZ ej
                  dd      Zy)IPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsGetRequestzA
  PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsGetRequest
  object.

  Fields:
    name: Required. Name of the resource.
  r
   Tr   Nr  r   r   r   rn  rn    s     
		q4	0$r   rn  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)JPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsListRequesta  A
  PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsListRequest
  object.

  Fields:
    filter: Optional. Filtering results.
    orderBy: Optional. Hint for how to order the results
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent resource which owns the grants.
  r
   r!   rI   r  rJ   rK   Tr   Nr  r   r   r   rp  rp  '  ss     !9  #&!I!!!$'#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r   rp  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)LPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsRevokeRequesta  A
  PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsRevokeRequest
  object.

  Fields:
    name: Required. Name of the grant resource which is being revoked.
    revokeGrantRequest: A RevokeGrantRequest resource to be passed as the
      request body.
  r
   Tr   r&  r!   Nr'  r   r   r   rr  rr  =  3     
		q4	0$-y--.BAFr   rr  c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z
 ej                  dej                  j                        Z ej                  d      Z ej                  d	d
      Zy)LPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsSearchRequesta"  A
  PrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsSearchRequest
  object.

  Enums:
    CallerRelationshipValueValuesEnum: Required. Only grants which the caller
      is related to by this relationship are returned in the response.

  Fields:
    callerRelationship: Required. Only grants which the caller is related to
      by this relationship are returned in the response.
    filter: Optional. Only grants matching this filter are returned in the
      response.
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the grant resources.
  c                        e Zd ZdZdZdZdZdZy)nPrivilegedaccessmanagerOrganizationsLocationsEntitlementsGrantsSearchRequest.CallerRelationshipValueValuesEnumr-  r   r
   r!   rI   Nr.  r   r   r   r3  rw  a  r4  r   r3  r
   r!   rI   r  rJ   rK   Tr   Nr5  r   r   r   ru  ru  L      ().. & +y**+NPQR 9  #&#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r   ru  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)DPrivilegedaccessmanagerOrganizationsLocationsEntitlementsListRequesta  A PrivilegedaccessmanagerOrganizationsLocationsEntitlementsListRequest
  object.

  Fields:
    filter: Optional. Filtering results.
    orderBy: Optional. Hint for how to order the results.
    pageSize: Optional. Requested page size. Server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the entitlement resources.
  r
   r!   rI   r  rJ   rK   Tr   Nr  r   r   r   rz  rz  {  r#  r   rz  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	EPrivilegedaccessmanagerOrganizationsLocationsEntitlementsPatchRequesta  A PrivilegedaccessmanagerOrganizationsLocationsEntitlementsPatchRequest
  object.

  Fields:
    entitlement: A Entitlement resource to be passed as the request body.
    name: Identifier. Name of the entitlement. Possible formats: *
      `organizations/{organization-
      number}/locations/{region}/entitlements/{entitlement-id}` *
      `folders/{folder-number}/locations/{region}/entitlements/{entitlement-
      id}` * `projects/{project-id|project-
      number}/locations/{region}/entitlements/{entitlement-id}`
    updateMask: Required. The list of fields to update. A field is overwritten
      if, and only if, it is in the mask. Any immutable fields set in the mask
      are ignored by the server. Repeated fields and map fields are only
      allowed in the last position of a `paths` string and overwrite the
      existing values. Hence an update to a repeated field or a map should
      contain the entire list of values. The fields specified in the
      update_mask are relative to the resource and not to the request. (e.g.
      `MaxRequestDuration`; *not* `entitlement.MaxRequestDuration`) A value of
      '*' for this field refers to full replacement of the resource.
  rF   r
   r!   Tr   rI   Nr;  r   r   r   r|  r|    r=  r   r|  c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z
 ej                  dej                  j                        Z ej                  d      Z ej                  d	d
      Zy)FPrivilegedaccessmanagerOrganizationsLocationsEntitlementsSearchRequesta  A PrivilegedaccessmanagerOrganizationsLocationsEntitlementsSearchRequest
  object.

  Enums:
    CallerAccessTypeValueValuesEnum: Required. Only entitlements where the
      calling user has this access are returned.

  Fields:
    callerAccessType: Required. Only entitlements where the calling user has
      this access are returned.
    filter: Optional. Only entitlements matching this filter are returned in
      the response.
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the entitlement resources.
  c                       e Zd ZdZdZdZdZy)fPrivilegedaccessmanagerOrganizationsLocationsEntitlementsSearchRequest.CallerAccessTypeValueValuesEnumrB  r   r
   r!   NrC  r   r   r   rG  r    rH  r   rG  r
   r!   rI   r  rJ   rK   Tr   NrI  r   r   r   r~  r~    rK  r   r~  c                   8    e Zd ZdZ ej
                  dd      Zy)7PrivilegedaccessmanagerOrganizationsLocationsGetRequestzyA PrivilegedaccessmanagerOrganizationsLocationsGetRequest object.

  Fields:
    name: Resource name for the location.
  r
   Tr   Nr  r   r   r   r  r    r  r   r  c                       e Zd ZdZ ej
                  dd      Z ej
                  d      Z ej
                  dd      Z ej                  dej                  j                  	      Z ej
                  d
      Zy)8PrivilegedaccessmanagerOrganizationsLocationsListRequesta%  A PrivilegedaccessmanagerOrganizationsLocationsListRequest object.

  Fields:
    extraLocationTypes: Optional. Do not use this field. It is unsupported and
      is ignored unless explicitly documented otherwise. This is primarily for
      internal usage.
    filter: A filter to narrow down results to a preferred subset. The
      filtering language accepts strings like `"displayName=tokyo"`, and is
      documented in more detail in [AIP-160](https://google.aip.dev/160).
    name: The resource that owns the locations collection, if applicable.
    pageSize: The maximum number of results to return. If not set, the service
      selects a default.
    pageToken: A page token received from the `next_page_token` field in the
      response. Send that page token to receive the subsequent page.
  r
   Tr   r!   rI   r   rJ   r  rK   NrP  r   r   r   r  r    rR  r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)DPrivilegedaccessmanagerOrganizationsLocationsOperationsDeleteRequestzA PrivilegedaccessmanagerOrganizationsLocationsOperationsDeleteRequest
  object.

  Fields:
    name: The name of the operation resource to be deleted.
  r
   Tr   Nr  r   r   r   r  r    r  r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)APrivilegedaccessmanagerOrganizationsLocationsOperationsGetRequestzA PrivilegedaccessmanagerOrganizationsLocationsOperationsGetRequest
  object.

  Fields:
    name: The name of the operation resource.
  r
   Tr   Nr  r   r   r   r  r    r  r   r  c                       e Zd ZdZ ej
                  d      Z ej
                  dd      Z ej                  dej                  j                        Z ej
                  d      Zy	)
BPrivilegedaccessmanagerOrganizationsLocationsOperationsListRequesta  A PrivilegedaccessmanagerOrganizationsLocationsOperationsListRequest
  object.

  Fields:
    filter: The standard list filter.
    name: The name of the operation's parent resource.
    pageSize: The standard list page size.
    pageToken: The standard list page token.
  r
   r!   Tr   rI   r  rJ   NrY  r   r   r   r  r    sa     !9  #&			q4	0$#Y##Ay/@/@/F/FG(#i##A&)r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)DPrivilegedaccessmanagerProjectsLocationsCheckOnboardingStatusRequesta  A PrivilegedaccessmanagerProjectsLocationsCheckOnboardingStatusRequest
  object.

  Fields:
    parent: Required. The resource for which the onboarding status should be
      checked. Should be in one of the following formats: *
      `projects/{project-number|project-id}/locations/{region}` *
      `folders/{folder-number}/locations/{region}` *
      `organizations/{organization-number}/locations/{region}`
  r
   Tr   Nr   r   r   r   r  r    r   r   r  c                       e Zd ZdZ ej
                  dd      Z ej                  d      Z ej                  dd      Z	 ej                  d      Z
y	)
APrivilegedaccessmanagerProjectsLocationsEntitlementsCreateRequesta  A PrivilegedaccessmanagerProjectsLocationsEntitlementsCreateRequest
  object.

  Fields:
    entitlement: A Entitlement resource to be passed as the request body.
    entitlementId: Required. The ID to use for this entitlement. This becomes
      the last part of the resource name. This value should be 4-63 characters
      in length, and valid characters are "[a-z]", "[0-9]", and "-". The first
      character should be from [a-z]. This value should be unique among all
      other entitlements under the specified `parent`.
    parent: Required. Name of the parent resource for the entitlement.
      Possible formats: * `organizations/{organization-
      number}/locations/{region}` * `folders/{folder-
      number}/locations/{region}` * `projects/{project-id|project-
      number}/locations/{region}`
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request and returns the
      previous operation's response. This prevents clients from accidentally
      creating duplicate entitlements. The request ID must be a valid UUID
      with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  rF   r
   r!   rI   Tr   rJ   Nr   r   r   r   r  r  .  r   r   r  c                       e Zd ZdZ ej
                  d      Z ej                  dd      Z ej                  d      Z	y)APrivilegedaccessmanagerProjectsLocationsEntitlementsDeleteRequesta  A PrivilegedaccessmanagerProjectsLocationsEntitlementsDeleteRequest
  object.

  Fields:
    force: Optional. If set to true, any child grant under this entitlement is
      also deleted. (Otherwise, the request only works if the entitlement has
      no child grant.)
    name: Required. Name of the resource.
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request. The request ID must
      be a valid UUID with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  r
   r!   Tr   rI   Nr   r   r   r   r  r  R  r  r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)>PrivilegedaccessmanagerProjectsLocationsEntitlementsGetRequestzA PrivilegedaccessmanagerProjectsLocationsEntitlementsGetRequest object.

  Fields:
    name: Required. Name of the resource.
  r
   Tr   Nr  r   r   r   r  r  l  r  r   r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)HPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsApproveRequesta  A
  PrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsApproveRequest
  object.

  Fields:
    approveGrantRequest: A ApproveGrantRequest resource to be passed as the
      request body.
    name: Required. Name of the grant resource which is being approved.
  r*   r
   r!   Tr   Nr  r   r   r   r  r  v  r
  r   r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	GPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsCreateRequesta2  A
  PrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsCreateRequest
  object.

  Fields:
    grant: A Grant resource to be passed as the request body.
    parent: Required. Name of the parent entitlement for which this grant is
      being requested.
    requestId: Optional. An optional request ID to identify requests. Specify
      a unique request ID so that if you must retry your request, the server
      knows to ignore the request if it has already been completed. The server
      guarantees this for at least 60 minutes after the first request. For
      example, consider a situation where you make an initial request and the
      request times out. If you make the request again with the same request
      ID, the server can check if original operation with the same request ID
      was received, and if so, ignores the second request. This prevents
      clients from accidentally creating duplicate grants. The request ID must
      be a valid UUID with the exception that zero UUID is not supported
      (00000000-0000-0000-0000-000000000000).
  r   r
   r!   Tr   rI   Nr  r   r   r   r  r    rj  r   r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)EPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsDenyRequestzA PrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsDenyRequest
  object.

  Fields:
    denyGrantRequest: A DenyGrantRequest resource to be passed as the request
      body.
    name: Required. Name of the grant resource which is being denied.
  rB   r
   r!   Tr   Nr  r   r   r   r  r    r  r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)DPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsGetRequestzA PrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsGetRequest
  object.

  Fields:
    name: Required. Name of the resource.
  r
   Tr   Nr  r   r   r   r  r    r  r   r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)EPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsListRequesta  A PrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsListRequest
  object.

  Fields:
    filter: Optional. Filtering results.
    orderBy: Optional. Hint for how to order the results
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent resource which owns the grants.
  r
   r!   rI   r  rJ   rK   Tr   Nr  r   r   r   r  r    r#  r   r  c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)GPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsRevokeRequesta  A
  PrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsRevokeRequest
  object.

  Fields:
    name: Required. Name of the grant resource which is being revoked.
    revokeGrantRequest: A RevokeGrantRequest resource to be passed as the
      request body.
  r
   Tr   r&  r!   Nr'  r   r   r   r  r    rs  r   r  c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z
 ej                  dej                  j                        Z ej                  d      Z ej                  d	d
      Zy)GPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsSearchRequesta  A
  PrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsSearchRequest
  object.

  Enums:
    CallerRelationshipValueValuesEnum: Required. Only grants which the caller
      is related to by this relationship are returned in the response.

  Fields:
    callerRelationship: Required. Only grants which the caller is related to
      by this relationship are returned in the response.
    filter: Optional. Only grants matching this filter are returned in the
      response.
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the grant resources.
  c                        e Zd ZdZdZdZdZdZy)iPrivilegedaccessmanagerProjectsLocationsEntitlementsGrantsSearchRequest.CallerRelationshipValueValuesEnumr-  r   r
   r!   rI   Nr.  r   r   r   r3  r    r4  r   r3  r
   r!   rI   r  rJ   rK   Tr   Nr5  r   r   r   r  r    rx  r   r  c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej                  dej                  j                        Z ej
                  d      Z ej
                  dd	      Zy
)?PrivilegedaccessmanagerProjectsLocationsEntitlementsListRequesta  A PrivilegedaccessmanagerProjectsLocationsEntitlementsListRequest
  object.

  Fields:
    filter: Optional. Filtering results.
    orderBy: Optional. Hint for how to order the results.
    pageSize: Optional. Requested page size. Server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the entitlement resources.
  r
   r!   rI   r  rJ   rK   Tr   Nr  r   r   r   r  r    r#  r   r  c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej                  d      Z	y)	@PrivilegedaccessmanagerProjectsLocationsEntitlementsPatchRequesta  A PrivilegedaccessmanagerProjectsLocationsEntitlementsPatchRequest
  object.

  Fields:
    entitlement: A Entitlement resource to be passed as the request body.
    name: Identifier. Name of the entitlement. Possible formats: *
      `organizations/{organization-
      number}/locations/{region}/entitlements/{entitlement-id}` *
      `folders/{folder-number}/locations/{region}/entitlements/{entitlement-
      id}` * `projects/{project-id|project-
      number}/locations/{region}/entitlements/{entitlement-id}`
    updateMask: Required. The list of fields to update. A field is overwritten
      if, and only if, it is in the mask. Any immutable fields set in the mask
      are ignored by the server. Repeated fields and map fields are only
      allowed in the last position of a `paths` string and overwrite the
      existing values. Hence an update to a repeated field or a map should
      contain the entire list of values. The fields specified in the
      update_mask are relative to the resource and not to the request. (e.g.
      `MaxRequestDuration`; *not* `entitlement.MaxRequestDuration`) A value of
      '*' for this field refers to full replacement of the resource.
  rF   r
   r!   Tr   rI   Nr;  r   r   r   r  r  !  r=  r   r  c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z
 ej                  dej                  j                        Z ej                  d      Z ej                  d	d
      Zy)APrivilegedaccessmanagerProjectsLocationsEntitlementsSearchRequesta  A PrivilegedaccessmanagerProjectsLocationsEntitlementsSearchRequest
  object.

  Enums:
    CallerAccessTypeValueValuesEnum: Required. Only entitlements where the
      calling user has this access are returned.

  Fields:
    callerAccessType: Required. Only entitlements where the calling user has
      this access are returned.
    filter: Optional. Only entitlements matching this filter are returned in
      the response.
    pageSize: Optional. Requested page size. The server may return fewer items
      than requested. If unspecified, the server picks an appropriate default.
    pageToken: Optional. A token identifying a page of results the server
      should return.
    parent: Required. The parent which owns the entitlement resources.
  c                       e Zd ZdZdZdZdZy)aPrivilegedaccessmanagerProjectsLocationsEntitlementsSearchRequest.CallerAccessTypeValueValuesEnumrB  r   r
   r!   NrC  r   r   r   rG  r  Q  rH  r   rG  r
   r!   rI   r  rJ   rK   Tr   NrI  r   r   r   r  r  =  rK  r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)2PrivilegedaccessmanagerProjectsLocationsGetRequestztA PrivilegedaccessmanagerProjectsLocationsGetRequest object.

  Fields:
    name: Resource name for the location.
  r
   Tr   Nr  r   r   r   r  r  g  r  r   r  c                       e Zd ZdZ ej
                  dd      Z ej
                  d      Z ej
                  dd      Z ej                  dej                  j                  	      Z ej
                  d
      Zy)3PrivilegedaccessmanagerProjectsLocationsListRequesta   A PrivilegedaccessmanagerProjectsLocationsListRequest object.

  Fields:
    extraLocationTypes: Optional. Do not use this field. It is unsupported and
      is ignored unless explicitly documented otherwise. This is primarily for
      internal usage.
    filter: A filter to narrow down results to a preferred subset. The
      filtering language accepts strings like `"displayName=tokyo"`, and is
      documented in more detail in [AIP-160](https://google.aip.dev/160).
    name: The resource that owns the locations collection, if applicable.
    pageSize: The maximum number of results to return. If not set, the service
      selects a default.
    pageToken: A page token received from the `next_page_token` field in the
      response. Send that page token to receive the subsequent page.
  r
   Tr   r!   rI   r   rJ   r  rK   NrP  r   r   r   r  r  q  rR  r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)?PrivilegedaccessmanagerProjectsLocationsOperationsDeleteRequestzA PrivilegedaccessmanagerProjectsLocationsOperationsDeleteRequest
  object.

  Fields:
    name: The name of the operation resource to be deleted.
  r
   Tr   Nr  r   r   r   r  r    r  r   r  c                   8    e Zd ZdZ ej
                  dd      Zy)<PrivilegedaccessmanagerProjectsLocationsOperationsGetRequestzA PrivilegedaccessmanagerProjectsLocationsOperationsGetRequest object.

  Fields:
    name: The name of the operation resource.
  r
   Tr   Nr  r   r   r   r  r    r  r   r  c                       e Zd ZdZ ej
                  d      Z ej
                  dd      Z ej                  dej                  j                        Z ej
                  d      Zy	)
=PrivilegedaccessmanagerProjectsLocationsOperationsListRequesta
  A PrivilegedaccessmanagerProjectsLocationsOperationsListRequest object.

  Fields:
    filter: The standard list filter.
    name: The name of the operation's parent resource.
    pageSize: The standard list page size.
    pageToken: The standard list page token.
  r
   r!   Tr   rI   r  rJ   NrY  r   r   r   r  r    rZ  r   r  c                   4    e Zd ZdZ ej
                  d      Zy)rl   zAn event representing that a grant was requested.

  Fields:
    expireTime: Output only. The time at which this grant expires unless the
      approval workflow completes. If omitted, then the request never expires.
  r
   N)r   r   r   r   r   r   
expireTimer   r   r   rl   rl     s     %y$$Q'*r   rl   c                   \    e Zd ZdZ ej
                  dd      Z ej
                  dd      Zy)rW   a  Defines how a requester must provide a justification when requesting
  access.

  Fields:
    notMandatory: This option means the requester isn't required to provide a
      justification.
    unstructured: This option means the requester must provide a string as
      justification. If this is selected, the server allows the requester to
      provide a justification but doesn't validate it.
  r   r
   Unstructuredr!   N)r   r   r   r   r   r   notMandatoryunstructuredr   r   r   rW   rW     s1    	 ('':,''':,r   rW   c                   4    e Zd ZdZ ej
                  d      Zy)r&  zqRequest message for `RevokeGrant` method.

  Fields:
    reason: Optional. The reason for revoking this grant.
  r
   Nr+   r   r   r   r&  r&    s     !9  #&r   r&  c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)rm   zAn event representing that the grant was revoked.

  Fields:
    actor: Output only. Username of the user who revoked the grant.
    reason: Output only. The reason provided by the user for revoking the
      grant.
  r
   r!   Nr0   r   r   r   rm   rm     r2   r   rm   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)r   a|  IAM role bindings that are created after a successful grant.

  Fields:
    conditionExpression: Optional. The expression field of the IAM condition
      to be associated with the role. If specified, a user with an active
      grant for this entitlement is able to access the resource only if this
      condition evaluates to true for their request. This field uses the same
      CEL format as IAM and supports all attributes that IAM supports, except
      tags. https://cloud.google.com/iam/docs/conditions-overview#attributes.
    role: Required. IAM role to be granted.
      https://cloud.google.com/iam/docs/roles-overview.
  r
   r!   N)r   r   r   r   r   r   conditionExpressionroler   r   r   r   r     s.     .	--a0			q	!$r   r   c                   4    e Zd ZdZ ej
                  d      Zy)rn   zAn event representing that the grant has been scheduled to be activated
  later.

  Fields:
    scheduledActivationTime: Output only. The time at which the access is
      granted.
  r
   N)r   r   r   r   r   r   scheduledActivationTimer   r   r   rn   rn     s     2I11!4r   rn   c                   ^    e Zd ZdZ ej
                  ddd      Z ej                  d      Zy)SearchEntitlementsResponsezResponse message for `SearchEntitlements` method.

  Fields:
    entitlements: The list of entitlements.
    nextPageToken: A token identifying a page of results the server should
      return.
  rF   r
   Tr   r!   N)	r   r   r   r   r   r   r   r   r   r   r   r   r  r    s1     (''q4H,')''*-r   r  c                   ^    e Zd ZdZ ej
                  ddd      Z ej                  d      Zy)SearchGrantsResponsezResponse message for `SearchGrants` method.

  Fields:
    grants: The list of grants.
    nextPageToken: A token identifying a page of results the server should
      return.
  r   r
   Tr   r!   N)	r   r   r   r   r   r   r   r   r   r   r   r   r  r    s1     "9!!'1t<&')''*-r   r  c                       e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  dd      Z	 ej                  d      Z ej                  ddd	
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej"                  dd
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Zy)StandardQueryParametersa4  Query parameters accepted by all methods.

  Enums:
    FXgafvValueValuesEnum: V1 error format.
    AltValueValuesEnum: Data format for response.

  Fields:
    f__xgafv: V1 error format.
    access_token: OAuth access token.
    alt: Data format for response.
    callback: JSONP
    fields: Selector specifying which fields to include in a partial response.
    key: API key. Your API key identifies your project and provides you with
      API access, quota, and reports. Required unless you provide an OAuth 2.0
      token.
    oauth_token: OAuth 2.0 token for the current user.
    prettyPrint: Returns response with indentations and line breaks.
    quotaUser: Available to use for quota purposes for server-side
      applications. Can be any arbitrary string assigned to a user, but should
      not exceed 40 characters.
    trace: A tracing token of the form "token:<tokenid>" to include in api
      requests.
    uploadType: Legacy upload protocol for media (e.g. "media", "multipart").
    upload_protocol: Upload protocol for media (e.g. "raw", "multipart").
  c                       e Zd ZdZdZdZdZy)*StandardQueryParameters.AltValueValuesEnumzData format for response.

    Values:
      json: Responses with Content-Type of application/json
      media: Media download with context-dependent Content-Type
      proto: Responses with Content-Type of application/x-protobuf
    r   r
   r!   N)r   r   r   r   jsonmediaprotor   r   r   AltValueValuesEnumr  3  s     DEEr   r  c                       e Zd ZdZdZdZy)-StandardQueryParameters.FXgafvValueValuesEnumzVV1 error format.

    Values:
      _1: v1 error format
      _2: v2 error format
    r   r
   N)r   r   r   r   _1_2r   r   r   FXgafvValueValuesEnumr  ?  s     
B	
Br   r  r
   r!   rI   r  )defaultrJ   rK   rS   rT   rV   TrX   rY   rZ   rp   N)r   r   r   r   r   r[   r  r  re   f__xgafvr   access_tokenaltcallbackfieldsr   oauth_tokenr   prettyPrint	quotaUsertrace
uploadTypeupload_protocolr   r   r   r  r    s   4
9>> 
inn  !Y  !8!<(&&&q),	0!VD#"Y""1%( 9  #&	a #%	%%a(+&	&&q$7+#i##A&)
)


#%$y$$R(*)I))"-/r   r  c                      e Zd ZdZ ej
                  d       G d dej                               Z ej                  dej                  j                        Z ej                  ddd	      Z ej                  d
      Zy)r   a  The `Status` type defines a logical error model that is suitable for
  different programming environments, including REST APIs and RPC APIs. It is
  used by [gRPC](https://github.com/grpc). Each `Status` message contains
  three pieces of data: error code, error message, and error details. You can
  find out more about this error model and how to work with it in the [API
  Design Guide](https://cloud.google.com/apis/design/errors).

  Messages:
    DetailsValueListEntry: A DetailsValueListEntry object.

  Fields:
    code: The status code, which should be an enum value of google.rpc.Code.
    details: A list of messages that carry the error details. There is a
      common set of message types for APIs to use.
    message: A developer-facing error message, which should be in English. Any
      user-facing error message should be localized and sent in the
      google.rpc.Status.details field, or localized by the client.
  r   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Status.DetailsValueListEntryzA DetailsValueListEntry object.

    Messages:
      AdditionalProperty: An additional property for a DetailsValueListEntry
        object.

    Fields:
      additionalProperties: Properties of the object. Contains field @type
        with type URL.
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)/Status.DetailsValueListEntry.AdditionalPropertyzAn additional property for a DetailsValueListEntry object.

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r
   r   r!   Nr   r   r   r   r   r  x  r   r   r   r
   Tr   Nr   r   r   r   DetailsValueListEntryr  k  r   r   r  r
   r  r!   Tr   rI   N)r   r   r   r   r   r   r   r   r  r  r  r   coder   detailsr   messager   r   r   r   r   W  s    & "8!!"89Zi// Z :Z2 
 		9+<+<+B+B	C$"I""#:AM'!I!!!$'r   r   c                       e Zd ZdZ ej
                  dej                  j                        Z ej                  dd      Z
 ej                  ddd      Zy	)
r   a9  Step represents a logical step in a manual approval workflow.

  Fields:
    approvalsNeeded: Required. How many users from the above list need to
      approve. If there aren't enough distinct users in the list, then the
      workflow indefinitely blocks. Should always be greater than 0. 1 is the
      only supported value.
    approverEmailRecipients: Optional. Additional email addresses to be
      notified when a grant is pending approval.
    approvers: Optional. The potential set of approvers in this step. This
      list must contain at most one entry.
  r
   r  r!   Tr   r	   rI   N)r   r   r   r   r   r  r  r   approvalsNeededr   approverEmailRecipientsr   	approversr   r   r   r   r     sU     +I**1i6G6G6M6MN/1I11!dC$i$$%91tL)r   r   c                   :    e Zd ZdZ ej
                  ddd      Zy)r   aH  Timeline of a grant describing what happened to it and when.

  Fields:
    events: Output only. The events that have occurred on this grant. This
      list contains entries in the same order as they occurred. The first
      entry is always be of type `Requested` and there is always at least one
      entry in this array.
  ri   r
   Tr   N)r   r   r   r   r   r   eventsr   r   r   r   r     s     "9!!'1t<&r   r   c                       e Zd ZdZy)r  zEThe requester has to provide a justification in the form of a string.Nr   r   r   r   r  r    s    Nr   r  c                       e Zd ZdZy)ro   z3An event representing that the grant was withdrawn.Nr   r   r   r   ro   ro     r9   r   ro   r  z$.xgafvr  1r  2N)wr   
__future__r   apitools.base.protorpcliter   r   apitools.base.pyr   r   packager   r	   r   r   r    r%   r*   r/   r4   r8   r;   r@   rB   rD   rF   ri   rj   rk   r<   r   r   r   r   r   r   r   r   r   r   r&   r   r   r   rU   r   r   r   r  r  r  r  r  r  r%  r*  r8  r:  r?  rM  rO  rT  rV  rX  r\  r_  ra  rc  re  rg  ri  rl  rn  rp  rr  ru  rz  r|  r~  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  rl   rW   r&  rm   r   rn   r  r  r  r   r   r   r  ro   AddCustomJsonFieldMappingAddCustomJsonEnumMappingr  r   r   r   <module>r     s
  " ' < % ( $
7** 
7J	!! J.y(( .EI$5$5 E	Ay(( 	A	$)++ 	$
$y   
$."" .=Y.. =,I$5$5 ,
$Y 
$	$y(( 	$9I 9E))## E)P"6I "6J;i ;** 	Ai 	AI9$$ I")++ Z)I Z)z
?i'' 
?	7I%% 	78y00 88** 8
+I-- 
+
EY.. 
EM"y   M"`;i'' ;09$$ i8	!! i8X"	)) "6;y(( ;3)J[J[ 3!'yGXGX !'H'yGXGX '41IDUDU 11iN_N_ 1'YM^M^ '419K\K\ 11)J[J[ 139K\K\ 3*GYM^M^ G+3YM^M^ +3\3YEVEV 3((iFWFW (8'3yGXGX '3T1	8I8I 1'9J9J '01YEVEV 11)BSBS 1'9CTCT ' 
1Y5F5F 
13PYPaPa 3 !'YM^M^ !'H'YM^M^ '41)J[J[ 11T]TeTe 1'S\SdSd '61QZQbQb 1	1PYPaPa 	13QZQbQb 3,GS\SdSd G,3S\SdSd ,3^39K\K\ 3*(IL]L] (8'3YM^M^ '3T1i>O>O 1'y?P?P '019K\K\ 11	HYHY 1'IZIZ '"39K\K\ 3!'	HYHY !'H'	HYHY '41YEVEV 11yO`O` 1'iN_N_ '61IL]L] 119K\K\ 13IL]L] 3*GiN_N_ G,3iN_N_ ,3^3iFWFW 3*(yGXGX (8'3	HYHY '3T19J9J 1'):K:K '01iFWFW 119CTCT 1'IDUDU ' (	!! (;9#4#4 ; $** $
$i 
$")## "$	5	!! 	5
+!2!2 
+
+9,, 
+<.i// <.~0%Y 0%fM9 M&
=y   
=O9$$ O=	!! = # " "Z4 ! ! !114> ! ! !114>r   