
    g                       S r SSKJr  SSKJr  SSKJr  SSKJr  Sr	 " S S\R                  5      r " S	 S
\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S \R                  5      r " S! S"\R                  5      r " S# S$\R                  5      r " S% S&\R                  5      r " S' S(\R                  5      r " S) S*\R                  5      r " S+ S,\R                  5      r " S- S.\R                  5      r " S/ S0\R                  5      r " S1 S2\R                  5      r  " S3 S4\R                  5      r! " S5 S6\R                  5      r" " S7 S8\R                  5      r# " S9 S:\R                  5      r$ " S; S<\R                  5      r% " S= S>\R                  5      r& " S? S@\R                  5      r' " SA SB\R                  5      r( " SC SD\R                  5      r) " SE SF\R                  5      r* " SG SH\R                  5      r+ " SI SJ\R                  5      r, " SK SL\R                  5      r- " SM SN\R                  5      r. " SO SP\R                  5      r/ " SQ SR\R                  5      r0 " SS ST\R                  5      r1 " SU SV\R                  5      r2 " SW SX\R                  5      r3 " SY SZ\R                  5      r4 " S[ S\\R                  5      r5 " S] S^\R                  5      r6 " S_ S`\R                  5      r7 " Sa Sb\R                  5      r8 " Sc Sd\R                  5      r9 " Se Sf\R                  5      r: " Sg Sh\R                  5      r; " Si Sj\R                  5      r< " Sk Sl\R                  5      r= " Sm Sn\R                  5      r> " So Sp\R                  5      r? " Sq Sr\R                  5      r@ " Ss St\R                  5      rA " Su Sv\R                  5      rB " Sw Sx\R                  5      rC " Sy Sz\R                  5      rD " S{ S|\R                  5      rE " S} S~\R                  5      rF " S S\R                  5      rG " S S\R                  5      rH " S S\R                  5      rI " S S\R                  5      rJ " S S\R                  5      rK " S S\R                  5      rL " S S\R                  5      rM\R                  " \MSS5        \R                  " \MR                  SS5        \R                  " \MR                  SS5        g)a  Generated message classes for iam version v3beta.

Manages identity and access control for Google Cloud resources, including the
creation of service accounts, which you can use to authenticate to Google and
make API calls. Enabling this API also enables the IAM Service Account
Credentials API (iamcredentials.googleapis.com). However, disabling this API
doesn't disable the IAM Service Account Credentials API.
    )absolute_import)messages)encoding)extra_typesiamc                   >    \ rS rSrSr\R                  " SS5      rSrg)GoogleIamAdminV1AuditData   zAudit log information specific to Cloud IAM admin APIs. This message is
serialized as an `Any` type in the `ServiceData` message of an `AuditLog`
message.

Fields:
  permissionDelta: The permission_delta when when creating or updating a
    Role.
(GoogleIamAdminV1AuditDataPermissionDelta    N)	__name__
__module____qualname____firstlineno____doc__	_messagesMessageFieldpermissionDelta__static_attributes__r       Klib/googlecloudsdk/generated_clients/apis/iam/v3beta/iam_v3beta_messages.pyr	   r	      s     **+UWXY/r   r	   c                   \    \ rS rSrSr\R                  " SSS9r\R                  " SSS9rSr	g)	r   "   zA PermissionDelta message to record the added_permissions and
removed_permissions inside a role.

Fields:
  addedPermissions: Added permissions.
  removedPermissions: Removed permissions.
r   Trepeated   r   N)
r   r   r   r   r   r   StringFieldaddedPermissionsremovedPermissionsr   r   r   r   r   r   "   s/     **1t< ,,Q>r   r   c                      \ rS rSrSr\R                  " S5       " S S\R                  5      5       r	\R                  " SS5      r\R                  " S5      r\R                  " SS	5      r\R                  " S
5      r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R                  " S5      rSrg)GoogleIamV3betaAccessPolicy/   a  An IAM access policy resource.

Messages:
  AnnotationsValue: Optional. User defined annotations. See
    https://google.aip.dev/148#annotations for more details such as format
    and size limitations

Fields:
  annotations: Optional. User defined annotations. See
    https://google.aip.dev/148#annotations for more details such as format
    and size limitations
  createTime: Output only. The time when the access policy was created.
  details: Optional. The details for the access policy.
  displayName: Optional. The description of the access policy. Must be less
    than or equal to 63 characters.
  etag: Optional. The etag for the access policy. If this is provided on
    update, it must match the server's etag.
  name: Identifier. The resource name of the access policy. The following
    formats are supported:
    `projects/{project_id}/locations/{location}/accessPolicies/{policy_id}`
    `projects/{project_number}/locations/{location}/accessPolicies/{policy_i
    d}`
    `folders/{folder_id}/locations/{location}/accessPolicies/{policy_id}` `o
    rganizations/{organization_id}/locations/{location}/accessPolicies/{poli
    cy_id}`
  uid: Output only. The globally unique ID of the access policy.
  updateTime: Output only. The time when the access policy was most recently
    updated.
additionalPropertiesc                   f    \ rS rSrSr " S S\R                  5      r\R                  " SSSS9r	Sr
g	)
,GoogleIamV3betaAccessPolicy.AnnotationsValueN   /  Optional. User defined annotations. See
https://google.aip.dev/148#annotations for more details such as format and
size limitations

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

Fields:
  additionalProperties: Additional properties of type AnnotationsValue
c                   `    \ rS rSrSr\R                  " S5      r\R                  " S5      rSr	g)?GoogleIamV3betaAccessPolicy.AnnotationsValue.AdditionalProperty\   An additional property for a AnnotationsValue object.

Fields:
  key: Name of the additional property.
  value: A string attribute.
r   r   r   N
r   r   r   r   r   r   r   keyvaluer   r   r   r   AdditionalPropertyr*   \   )    
 !!!$c##A&er   r0   r   Tr   r   Nr   r   r   r   r   r   Messager0   r   r$   r   r   r   r   AnnotationsValuer&   N   2    
	'Y.. 	' %112FTXYr   r4   r   r   "GoogleIamV3betaAccessPolicyDetails                  r   Nr   r   r   r   r   r   MapUnrecognizedFieldsr   r3   r4   r   annotationsr   
createTimedetailsdisplayNameetagnameuid
updateTimer   r   r   r   r"   r"   /   s    < !!"89Z** Z :Z4 &&'91=+$$Q'*""#GK'%%a(+			q	!$			q	!$a #$$Q'*r   r"   c                   <    \ rS rSrSr\R                  " SSSS9rSrg)	r6   s   zRAccess policy details.

Fields:
  rules: Required. A list of access policy rules.
GoogleIamV3betaAccessPolicyRuler   Tr   r   N)	r   r   r   r   r   r   r   rulesr   r   r   r   r6   r6   s   s     
 
 !BAPT
U%r   r6   c                   p   \ rS rSrSr " S S\R                  5      r\R                  " S5       " S S\R                  5      5       r\R                  " SS5      r\R                  " S	5      r\R                   " SS
5      r\R                  " SSS9r\R                  " SS5      r\R                  " SSS9rSrg)rI   }   a  Access Policy Rule that determines the behavior of the policy.

Enums:
  EffectValueValuesEnum: Required. The effect of the rule.

Messages:
  ConditionsValue: Optional. The conditions that determine whether this rule
    applies to a request. Conditions are identified by their key, which is
    the FQDN of the service that they are relevant to, e.g.: "conditions": {
    "iam.googleapis.com": } Each rule is evaluated independently. If this
    rule does not apply to a request, other rules might still apply.
    Currently supported keys are: * `eventarc.googleapis.com`: Can use `CEL`
    functions that evaluate resource fields. * `iam.googleapis.com`: Can use
    `CEL` functions that evaluate [resource
    tags](https://cloud.google.com/iam/help/conditions/resource-tags) and
    combine them using boolean and logical operators. Other functions and
    operators are not supported.

Fields:
  conditions: Optional. The conditions that determine whether this rule
    applies to a request. Conditions are identified by their key, which is
    the FQDN of the service that they are relevant to, e.g.: "conditions": {
    "iam.googleapis.com": } Each rule is evaluated independently. If this
    rule does not apply to a request, other rules might still apply.
    Currently supported keys are: * `eventarc.googleapis.com`: Can use `CEL`
    functions that evaluate resource fields. * `iam.googleapis.com`: Can use
    `CEL` functions that evaluate [resource
    tags](https://cloud.google.com/iam/help/conditions/resource-tags) and
    combine them using boolean and logical operators. Other functions and
    operators are not supported.
  description: Optional. Customer specified description of the rule. Must be
    less than or equal to 256 characters.
  effect: Required. The effect of the rule.
  excludedPrincipals: Optional. The identities that are excluded from the
    access policy rule, even if they are listed in the `principals`. For
    example, you could add a Google group to the `principals`, then exclude
    specific users who belong to that group.
  operation: Required. Attributes that are used to determine whether this
    rule applies to a request.
  principals: Required. The identities for which this rule's effect governs
    using one or more permissions on Google Cloud resources. This field can
    contain the following values: * `principal://goog/subject/{email_id}`: A
    specific Google Account. Includes Gmail, Cloud Identity, and Google
    Workspace user accounts. For example,
    `principal://goog/subject/alice@example.com`. * `principal://iam.googlea
    pis.com/projects/-/serviceAccounts/{service_account_id}`: A Google Cloud
    service account. For example,
    `principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-
    account@iam.gserviceaccount.com`. *
    `principalSet://goog/group/{group_id}`: A Google group. For example,
    `principalSet://goog/group/admins@example.com`. *
    `principalSet://goog/cloudIdentityCustomerId/{customer_id}`: All of the
    principals associated with the specified Google Workspace or Cloud
    Identity customer ID. For example,
    `principalSet://goog/cloudIdentityCustomerId/C01Abc35`. If an identifier
    that was previously set on a policy is soft deleted, then calls to read
    that policy will return the identifier with a deleted prefix. Users
    cannot set identifiers with this syntax. *
    `deleted:principal://goog/subject/{email_id}?uid={uid}`: A specific
    Google Account that was deleted recently. For example,
    `deleted:principal://goog/subject/alice@example.com?uid=1234567890`. If
    the Google Account is recovered, this identifier reverts to the standard
    identifier for a Google Account. *
    `deleted:principalSet://goog/group/{group_id}?uid={uid}`: A Google group
    that was deleted recently. For example,
    `deleted:principalSet://goog/group/admins@example.com?uid=1234567890`.
    If the Google group is restored, this identifier reverts to the standard
    identifier for a Google group. * `deleted:principal://iam.googleapis.com
    /projects/-/serviceAccounts/{service_account_id}?uid={uid}`: A Google
    Cloud service account that was deleted recently. For example,
    `deleted:principal://iam.googleapis.com/projects/-/serviceAccounts/my-
    service-account@iam.gserviceaccount.com?uid=1234567890`. If the service
    account is undeleted, this identifier reverts to the standard identifier
    for a service account.
c                   $    \ rS rSrSrSrSrSrSrg)5GoogleIamV3betaAccessPolicyRule.EffectValueValuesEnum   zRequired. The effect of the rule.

Values:
  EFFECT_UNSPECIFIED: The effect is unspecified.
  DENY: The policy will deny access if it evaluates to true.
  ALLOW: The policy will grant access if it evaluates to true.
r   r   r   r   N)	r   r   r   r   r   EFFECT_UNSPECIFIEDDENYALLOWr   r   r   r   EffectValueValuesEnumrN      s     DEr   rS   r$   c                   f    \ rS rSrSr " S S\R                  5      r\R                  " SSSS9r	Sr
g	)
/GoogleIamV3betaAccessPolicyRule.ConditionsValue   aY  Optional. The conditions that determine whether this rule applies to a
request. Conditions are identified by their key, which is the FQDN of the
service that they are relevant to, e.g.: "conditions": {
"iam.googleapis.com": } Each rule is evaluated independently. If this rule
does not apply to a request, other rules might still apply. Currently
supported keys are: * `eventarc.googleapis.com`: Can use `CEL` functions
that evaluate resource fields. * `iam.googleapis.com`: Can use `CEL`
functions that evaluate [resource
tags](https://cloud.google.com/iam/help/conditions/resource-tags) and
combine them using boolean and logical operators. Other functions and
operators are not supported.

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

Fields:
  additionalProperties: Additional properties of type ConditionsValue
c                   b    \ rS rSrSr\R                  " S5      r\R                  " SS5      r	Sr
g)BGoogleIamV3betaAccessPolicyRule.ConditionsValue.AdditionalProperty   zAn additional property for a ConditionsValue object.

Fields:
  key: Name of the additional property.
  value: A GoogleTypeExpr attribute.
r   GoogleTypeExprr   r   Nr   r   r   r   r   r   r   r.   r   r/   r   r   r   r   r0   rX      s,    
 !!!$c$$%5q9er   r0   r   Tr   r   Nr2   r   r   r   ConditionsValuerU      s2    &	:Y.. 	: %112FTXYr   r\   r   r   r7   r8   Tr   (GoogleIamV3betaAccessPolicyRuleOperationr9   r:   r   N)r   r   r   r   r   r   EnumrS   r   r>   r3   r\   r   
conditionsr   description	EnumFieldeffectexcludedPrincipals	operation
principalsr   r   r   r   rI   rI   }   s    JX
inn 
 !!"89Z	)) Z :ZB %%&7;*%%a(+6:& ,,Q>$$%OQRS)$$Q6*r   rI   c                   \    \ rS rSrSr\R                  " SSS9r\R                  " SSS9rSr	g)	r]      a  Attributes that are used to determine whether this rule applies to a
request.

Fields:
  excludedPermissions: Optional. Specifies the permissions that this rule
    excludes from the set of affected permissions given by `permissions`. If
    a permission appears in `permissions` _and_ in `excluded_permissions`
    then it will _not_ be subject to the policy effect. The excluded
    permissions can be specified using the same syntax as `permissions`.
  permissions: Optional. The permissions that are explicitly affected by
    this rule. Each permission uses the format
    `{service_fqdn}/{resource}.{verb}`, where `{service_fqdn}` is the fully
    qualified domain name for the service. Currently supported permissions
    are: * `eventarc.googleapis.com/messageBuses.publish`.
r   Tr   r   r   N)
r   r   r   r   r   r   r   excludedPermissionspermissionsr   r   r   r   r]   r]      s.      "--a$?%%a$7+r   r]   c                   `    \ rS rSrSr\R                  " SSSS9r\R                  " S5      r	Sr
g	)
)GoogleIamV3betaListAccessPoliciesResponsei  a  Response message for ListAccessPolicies method.

Fields:
  accessPolicies: The access policies from the specified parent.
  nextPageToken: Optional. A token, which can be sent as `page_token` to
    retrieve the next page. If this field is omitted, there are no
    subsequent pages.
r"   r   Tr   r   r   N)r   r   r   r   r   r   r   accessPoliciesr   nextPageTokenr   r   r   r   rk   rk     s/     ))*GUYZ.''*-r   rk   c                   `    \ rS rSrSr\R                  " S5      r\R                  " SSSS9r	Sr
g	)
)GoogleIamV3betaListPolicyBindingsResponsei#  a  Response message for ListPolicyBindings method.

Fields:
  nextPageToken: Optional. A token, which can be sent as `page_token` to
    retrieve the next page. If this field is omitted, there are no
    subsequent pages.
  policyBindings: The policy bindings from the specified parent.
r   GoogleIamV3betaPolicyBindingr   Tr   r   Nr   r   r   r   r   r   r   rm   r   policyBindingsr   r   r   r   ro   ro   #  /     ''*-))*H!VZ[.r   ro   c                   `    \ rS rSrSr\R                  " S5      r\R                  " SSSS9r	Sr
g	)
:GoogleIamV3betaListPrincipalAccessBoundaryPoliciesResponsei1  aU  Response message for ListPrincipalAccessBoundaryPolicies method.

Fields:
  nextPageToken: Optional. A token, which can be sent as `page_token` to
    retrieve the next page. If this field is omitted, there are no
    subsequent pages.
  principalAccessBoundaryPolicies: The principal access boundary policies
    from the specified parent.
r   ,GoogleIamV3betaPrincipalAccessBoundaryPolicyr   Tr   r   N)r   r   r   r   r   r   r   rm   r   principalAccessBoundaryPoliciesr   r   r   r   ru   ru   1  s1     ''*-$-$:$:;iklw{$|!r   ru   c                      \ rS rSrSr\R                  " S5      r\R                  " S5      r\R                  " S5      r	\R                  " S5      r\R                  " S5      r\R                  " S5      r\R                  " S	5      rS
rg) GoogleIamV3betaOperationMetadatai@  a  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
    successfully been cancelled 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
  verb: Output only. Name of the verb executed by the operation.
r   r   r7   r8   r9   r:   r;   r   N)r   r   r   r   r   r   r   
apiVersionr@   endTimeBooleanFieldrequestedCancellationstatusMessagetargetverbr   r   r   r   ry   ry   @  sz      $$Q'*$$Q'*!!!$'#003''*-  #&			q	!$r   ry   c                   N   \ rS rSrSr " S S\R                  5      r\R                  " S5       " S S\R                  5      5       r\R                  " SS5      r\R                  " S	S
5      r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R*                  " SS5      r\R                  " S5      r\R                  " SS5      r\R                  " S5      r\R                  " S5      rSrg)rp   iZ  a;  IAM policy binding resource.

Enums:
  PolicyKindValueValuesEnum: Immutable. The kind of the policy to attach in
    this binding. This field must be one of the following: - Left empty
    (will be automatically set to the policy kind) - The input policy kind

Messages:
  AnnotationsValue: Optional. User-defined annotations. See
    https://google.aip.dev/148#annotations for more details such as format
    and size limitations

Fields:
  annotations: Optional. User-defined annotations. See
    https://google.aip.dev/148#annotations for more details such as format
    and size limitations
  condition: Optional. The condition to apply to the policy binding. When
    set, the `expression` field in the `Expr` must include from 1 to 10
    subexpressions, joined by the "||"(Logical OR), "&&"(Logical AND) or
    "!"(Logical NOT) operators and cannot contain more than 250 characters.
    The condition is currently only supported when bound to policies of kind
    principal access boundary. When the bound policy is a principal access
    boundary policy, the only supported attributes in any subexpression are
    `principal.type` and `principal.subject`. An example expression is:
    "principal.type == 'iam.googleapis.com/ServiceAccount'" or
    "principal.subject == 'bob@example.com'". Allowed operations for
    `principal.subject`: - `principal.subject == ` - `principal.subject != `
    - `principal.subject in []` - `principal.subject.startsWith()` -
    `principal.subject.endsWith()` Allowed operations for `principal.type`:
    - `principal.type == ` - `principal.type != ` - `principal.type in []`
    Supported principal types are Workspace, Workforce Pool, Workload Pool
    and Service Account. Allowed string must be one of: -
    iam.googleapis.com/WorkspaceIdentity -
    iam.googleapis.com/WorkforcePoolIdentity -
    iam.googleapis.com/WorkloadPoolIdentity -
    iam.googleapis.com/ServiceAccount
  createTime: Output only. The time when the policy binding was created.
  displayName: Optional. The description of the policy binding. Must be less
    than or equal to 63 characters.
  etag: Optional. The etag for the policy binding. If this is provided on
    update, it must match the server's etag.
  name: Identifier. The name of the policy binding, in the format
    `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}
    `. The binding parent is the closest Resource Manager resource (project,
    folder, or organization) to the binding target. Format: * `projects/{pro
    ject_id}/locations/{location}/policyBindings/{policy_binding_id}` * `pro
    jects/{project_number}/locations/{location}/policyBindings/{policy_bindi
    ng_id}` * `folders/{folder_id}/locations/{location}/policyBindings/{poli
    cy_binding_id}` * `organizations/{organization_id}/locations/{location}/
    policyBindings/{policy_binding_id}`
  policy: Required. Immutable. The resource name of the policy to be bound.
    The binding parent and policy must belong to the same organization.
  policyKind: Immutable. The kind of the policy to attach in this binding.
    This field must be one of the following: - Left empty (will be
    automatically set to the policy kind) - The input policy kind
  policyUid: Output only. The globally unique ID of the policy to be bound.
  target: Required. Immutable. The full resource name of the resource to
    which the policy will be bound. Immutable once set.
  uid: Output only. The globally unique ID of the policy binding. Assigned
    when the policy binding is created.
  updateTime: Output only. The time when the policy binding was most
    recently updated.
c                   $    \ rS rSrSrSrSrSrSrg)6GoogleIamV3betaPolicyBinding.PolicyKindValueValuesEnumi  a  Immutable. The kind of the policy to attach in this binding. This
field must be one of the following: - Left empty (will be automatically
set to the policy kind) - The input policy kind

Values:
  POLICY_KIND_UNSPECIFIED: Unspecified policy kind; Not a valid state
  PRINCIPAL_ACCESS_BOUNDARY: Principal access boundary policy kind
  ACCESS: Access policy kind. Keep behind visibility label until Access
    Policy launch.
r   r   r   r   N)	r   r   r   r   r   POLICY_KIND_UNSPECIFIEDPRINCIPAL_ACCESS_BOUNDARYACCESSr   r   r   r   PolicyKindValueValuesEnumr     s    	   !Fr   r   r$   c                   f    \ rS rSrSr " S S\R                  5      r\R                  " SSSS9r	Sr
g	)
-GoogleIamV3betaPolicyBinding.AnnotationsValuei  a/  Optional. User-defined annotations. See
https://google.aip.dev/148#annotations for more details such as format and
size limitations

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

Fields:
  additionalProperties: Additional properties of type AnnotationsValue
c                   `    \ rS rSrSr\R                  " S5      r\R                  " S5      rSr	g)@GoogleIamV3betaPolicyBinding.AnnotationsValue.AdditionalPropertyi  r,   r   r   r   Nr-   r   r   r   r0   r     r1   r   r0   r   Tr   r   Nr2   r   r   r   r4   r     r5   r   r4   r   rZ   r   r7   r8   r9   r:   r;   r<   	   "GoogleIamV3betaPolicyBindingTarget
         r   N)r   r   r   r   r   r   r^   r   r   r>   r3   r4   r   r?   	conditionr   r@   rB   rC   rD   policyra   
policyKind	policyUidr   rE   rF   r   r   r   r   rp   rp   Z  s   >@)..  !!"89Z** Z :Z4 &&'91=+$$%5q9)$$Q'*%%a(+			q	!$			q	!$  #&""#>B*##A&)!!"FK&b!#$$R(*r   rp   c                   `    \ rS rSrSr\R                  " S5      r\R                  " S5      rSr	g)r   i  a$  The full resource name of the resource to which the policy will be
bound. Immutable once set.

Fields:
  principalSet: Immutable. The full resource name that's used for principal
    access boundary policy bindings. The principal set must be directly
    parented by the policy binding's parent or same as the parent if the
    target is a project, folder, or organization. Examples: * For bindings
    parented by an organization: * Organization:
    `//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID` *
    Workforce Identity:
    `//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID`
    * Workspace Identity:
    `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID` * For
    bindings parented by a folder: * Folder:
    `//cloudresourcemanager.googleapis.com/folders/FOLDER_ID` * For bindings
    parented by a project: * Project: *
    `//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER` *
    `//cloudresourcemanager.googleapis.com/projects/PROJECT_ID` * Workload
    Identity Pool: `//iam.googleapis.com/projects/PROJECT_NUMBER/locations/L
    OCATION/workloadIdentityPools/WORKLOAD_POOL_ID`
  resource: Immutable. The full resource name that's used for access policy
    bindings Examples: * Organization:
    `//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID` *
    Folder: `//cloudresourcemanager.googleapis.com/folders/FOLDER_ID` *
    Project: *
    `//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER` *
    `//cloudresourcemanager.googleapis.com/projects/PROJECT_ID`
r   r   r   N)
r   r   r   r   r   r   r   principalSetresourcer   r   r   r   r   r     s)    < &&q),""1%(r   r   c                      \ rS rSrSr\R                  " S5       " S S\R                  5      5       r	\R                  " SS5      r\R                  " S5      r\R                  " SS	5      r\R                  " S
5      r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R                  " S5      rSrg)rv   i  a  An IAM principal access boundary policy resource.

Messages:
  AnnotationsValue: Optional. User defined annotations. See
    https://google.aip.dev/148#annotations for more details such as format
    and size limitations

Fields:
  annotations: Optional. User defined annotations. See
    https://google.aip.dev/148#annotations for more details such as format
    and size limitations
  createTime: Output only. The time when the principal access boundary
    policy was created.
  details: Optional. The details for the principal access boundary policy.
  displayName: Optional. The description of the principal access boundary
    policy. Must be less than or equal to 63 characters.
  etag: Optional. The etag for the principal access boundary. If this is
    provided on update, it must match the server's etag.
  name: Identifier. The resource name of the principal access boundary
    policy. The following format is supported: `organizations/{organization_
    id}/locations/{location}/principalAccessBoundaryPolicies/{policy_id}`
  uid: Output only. The globally unique ID of the principal access boundary
    policy.
  updateTime: Output only. The time when the principal access boundary
    policy was most recently updated.
r$   c                   f    \ rS rSrSr " S S\R                  5      r\R                  " SSSS9r	Sr
g	)
=GoogleIamV3betaPrincipalAccessBoundaryPolicy.AnnotationsValuei  r(   c                   `    \ rS rSrSr\R                  " S5      r\R                  " S5      rSr	g)PGoogleIamV3betaPrincipalAccessBoundaryPolicy.AnnotationsValue.AdditionalPropertyi   r,   r   r   r   Nr-   r   r   r   r0   r      r1   r   r0   r   Tr   r   Nr2   r   r   r   r4   r     r5   r   r4   r   r   3GoogleIamV3betaPrincipalAccessBoundaryPolicyDetailsr7   r8   r9   r:   r;   r<   r   Nr=   r   r   r   rv   rv     s    6 !!"89Z** Z :Z4 &&'91=+$$Q'*""#XZ[\'%%a(+			q	!$			q	!$a #$$Q'*r   rv   c                   `    \ rS rSrSr\R                  " S5      r\R                  " SSSS9r	Sr
g	)
r   i7  a  Principal access boundary policy details

Fields:
  enforcementVersion: Optional. The version number (for example, `1` or
    `latest`) that indicates which permissions are able to be blocked by the
    policy. If empty, the PAB policy version will be set to the most recent
    version number at the time of the policy's creation.
  rules: Required. A list of principal access boundary policy rules. The
    number of rules in a policy is limited to 500.
r   0GoogleIamV3betaPrincipalAccessBoundaryPolicyRuler   Tr   r   N)r   r   r   r   r   r   r   enforcementVersionr   rJ   r   r   r   r   r   r   7  s1    	 !,,Q/

 
 !SUVae
f%r   r   c                       \ rS rSrSr " S S\R                  5      r\R                  " S5      r	\R                  " SS5      r\R                  " SSS	9rS
rg)r   iG  a  Principal access boundary policy rule that defines the resource
boundary.

Enums:
  EffectValueValuesEnum: Required. The access relationship of principals to
    the resources in this rule.

Fields:
  description: Optional. The description of the principal access boundary
    policy rule. Must be less than or equal to 256 characters.
  effect: Required. The access relationship of principals to the resources
    in this rule.
  resources: Required. A list of Resource Manager resources. If a resource
    is listed in the rule, then the rule applies for that resource and its
    descendants. The number of resources in a policy is limited to 500
    across all rules in the policy. The following resource types are
    supported: * Organizations, such as
    `//cloudresourcemanager.googleapis.com/organizations/123`. * Folders,
    such as `//cloudresourcemanager.googleapis.com/folders/123`. * Projects,
    such as `//cloudresourcemanager.googleapis.com/projects/123` or
    `//cloudresourcemanager.googleapis.com/projects/my-project-id`.
c                        \ rS rSrSrSrSrSrg)FGoogleIamV3betaPrincipalAccessBoundaryPolicyRule.EffectValueValuesEnumi_  zRequired. The access relationship of principals to the resources in
this rule.

Values:
  EFFECT_UNSPECIFIED: Effect unspecified.
  ALLOW: Allows access to the resources in this rule.
r   r   r   N)r   r   r   r   r   rP   rR   r   r   r   r   rS   r   _  s     Er   rS   r   r   r7   Tr   r   N)r   r   r   r   r   r   r^   rS   r   r`   ra   rb   	resourcesr   r   r   r   r   r   G  sN    .	inn 	 %%a(+6:&##A5)r   r   c                   `    \ rS rSrSr\R                  " S5      r\R                  " SSSS9r	Sr
g	)
1GoogleIamV3betaSearchAccessPolicyBindingsResponseio  a+  Response message for SearchAccessPolicyBindings rpc.

Fields:
  nextPageToken: Optional. A token, which can be sent as `page_token` to
    retrieve the next page. If this field is omitted, there are no
    subsequent pages.
  policyBindings: The policy bindings that reference the specified policy.
r   rp   r   Tr   r   Nrq   r   r   r   r   r   o  rs   r   r   c                   `    \ rS rSrSr\R                  " S5      r\R                  " SSSS9r	Sr
g	)
BGoogleIamV3betaSearchPrincipalAccessBoundaryPolicyBindingsResponsei}  a<  Response message for SearchPrincipalAccessBoundaryPolicyBindings rpc.

Fields:
  nextPageToken: Optional. A token, which can be sent as `page_token` to
    retrieve the next page. If this field is omitted, there are no
    subsequent pages.
  policyBindings: The policy bindings that reference the specified policy.
r   rp   r   Tr   r   Nrq   r   r   r   r   r   }  rs   r   r   c                   `    \ rS rSrSr\R                  " S5      r\R                  " SSSS9r	Sr
g	)
1GoogleIamV3betaSearchTargetPolicyBindingsResponsei  a(  Response message for SearchTargetPolicyBindings method.

Fields:
  nextPageToken: Optional. A token, which can be sent as `page_token` to
    retrieve the next page. If this field is omitted, there are no
    subsequent pages.
  policyBindings: The policy bindings bound to the specified target.
r   rp   r   Tr   r   Nrq   r   r   r   r   r     rs   r   r   c                   z   \ rS rSrSr\R                  " S5       " S S\R                  5      5       r	\R                  " S5       " S S\R                  5      5       r
\R                  " S5      r\R                  " S	S
5      r\R                  " SS5      r\R                   " S5      r\R                  " SS5      rSrg)GoogleLongrunningOperationi  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                   f    \ rS rSrSr " S S\R                  5      r\R                  " SSSS9r	Sr
g	)
(GoogleLongrunningOperation.MetadataValuei  a  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                   b    \ rS rSrSr\R                  " S5      r\R                  " SS5      r	Sr
g);GoogleLongrunningOperation.MetadataValue.AdditionalPropertyi  zAn additional property for a MetadataValue object.

Fields:
  key: Name of the additional property.
  value: A extra_types.JsonValue attribute.
r   extra_types.JsonValuer   r   Nr[   r   r   r   r0   r     ,    
 !!!$c$$%<a@er   r0   r   Tr   r   Nr2   r   r   r   MetadataValuer     s4    	AY.. 	A %112FTXYr   r   c                   f    \ rS rSrSr " S S\R                  5      r\R                  " SSSS9r	Sr
g	)
(GoogleLongrunningOperation.ResponseValuei  a  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                   b    \ rS rSrSr\R                  " S5      r\R                  " SS5      r	Sr
g);GoogleLongrunningOperation.ResponseValue.AdditionalPropertyi  zAn additional property for a ResponseValue object.

Fields:
  key: Name of the additional property.
  value: A extra_types.JsonValue attribute.
r   r   r   r   Nr[   r   r   r   r0   r     r   r   r0   r   Tr   r   Nr2   r   r   r   ResponseValuer     s4     	AY.. 	A %112FTXYr   r   r   GoogleRpcStatusr   r7   r8   r9   r   N)r   r   r   r   r   r   r>   r   r3   r   r   r|   doner   errormetadatar   rD   responser   r   r   r   r   r     s    'R !!"89Zi'' Z :Z6 !!"89Zi'' Z :Z< 
			"$

 
 !2A
6%##OQ7(			q	!$##OQ7(r   r   c                       \ rS rSrSr\R                  " S5       " S S\R                  5      5       r	\R                  " S\R                  R                  S9r\R                  " SSS	S
9r\R                   " S5      rSrg)r   i  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                   f    \ rS rSrSr " S S\R                  5      r\R                  " SSSS9r	Sr
g	)
%GoogleRpcStatus.DetailsValueListEntryi  zA DetailsValueListEntry object.

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

Fields:
  additionalProperties: Properties of the object. Contains field @type
    with type URL.
c                   b    \ rS rSrSr\R                  " S5      r\R                  " SS5      r	Sr
g)8GoogleRpcStatus.DetailsValueListEntry.AdditionalPropertyi&  zAn additional property for a DetailsValueListEntry object.

Fields:
  key: Name of the additional property.
  value: A extra_types.JsonValue attribute.
r   r   r   r   Nr[   r   r   r   r0   r   &  r   r   r0   r   Tr   r   Nr2   r   r   r   DetailsValueListEntryr     s4    		AY.. 	A %112FTXYr   r   r   variantr   Tr   r7   r   N)r   r   r   r   r   r   r>   r   r3   r   IntegerFieldVariantINT32coder   rA   r   messager   r   r   r   r   r     s|    & !!"89Zi// Z :Z2 
		9+<+<+B+B	C$""#:AM'!!!$'r   r   c                       \ rS rSrSr\R                  " S5      r\R                  " S5      r\R                  " S5      r	\R                  " S5      r
Srg)	rZ   i8  aq  Represents a textual expression in the Common Expression Language (CEL)
syntax. CEL is a C-like expression language. The syntax and semantics of CEL
are documented at https://github.com/google/cel-spec. Example (Comparison):
title: "Summary size limit" description: "Determines if a summary is less
than 100 chars" expression: "document.summary.size() < 100" Example
(Equality): title: "Requestor is owner" description: "Determines if
requestor is the document owner" expression: "document.owner ==
request.auth.claims.email" Example (Logic): title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"
Example (Data Manipulation): title: "Notification string" description:
"Create a notification string with a timestamp." expression: "'New message
received at ' + string(document.create_time)" The exact variables and
functions that may be referenced within an expression are determined by the
service that evaluates it. See the service documentation for additional
information.

Fields:
  description: Optional. Description of the expression. This is a longer
    text which describes the expression, e.g. when hovered over it in a UI.
  expression: Textual representation of an expression in Common Expression
    Language syntax.
  location: Optional. String indicating the location of the expression for
    error reporting, e.g. a file name and a position in the file.
  title: Optional. Title for the expression, i.e. a short string describing
    its purpose. This can be used e.g. in UIs which allow to enter the
    expression.
r   r   r7   r8   r   N)r   r   r   r   r   r   r   r`   
expressionlocationtitler   r   r   r   rZ   rZ   8  sI    : %%a(+$$Q'*""1%(



"%r   rZ   c                       \ rS rSrSr\R                  " S5      r\R                  " SS5      r	\R                  " SSS9r
\R                  " S	5      rS
rg).IamFoldersLocationsAccessPoliciesCreateRequesti\  a  A IamFoldersLocationsAccessPoliciesCreateRequest object.

Fields:
  accessPolicyId: Required. The ID to use for the access policy, which will
    become the final component of the access policy's resource name. This
    value must start with a lowercase letter followed by up to 62 lowercase
    letters, numbers, hyphens, or dots. Pattern, /a-z{2,62}/. This value
    must be unique among all access policies with the same parent.
  googleIamV3betaAccessPolicy: A GoogleIamV3betaAccessPolicy resource to be
    passed as the request body.
  parent: Required. The parent resource where this access policy will be
    created. Format: `projects/{project_id}/locations/{location}`
    `projects/{project_number}/locations/{location}`
    `folders/{folder_id}/locations/{location}`
    `organizations/{organization_id}/locations/{location}`
  validateOnly: Optional. If set, validate the request and preview the
    creation, but do not actually post it.
r   r"   r   r7   Trequiredr8   r   Nr   r   r   r   r   r   r   accessPolicyIdr   googleIamV3betaAccessPolicyparentr|   validateOnlyr   r   r   r   r   r   \  P    & ((+. ) 6 67TVW X  T2&''*,r   r   c                       \ rS rSrSr\R                  " S5      r\R                  " S5      r	\R                  " SSS9r
\R                  " S5      rS	rg
).IamFoldersLocationsAccessPoliciesDeleteRequestiv  aJ  A IamFoldersLocationsAccessPoliciesDeleteRequest object.

Fields:
  etag: Optional. The etag of the access policy. If this is provided, it
    must match the server's etag.
  force: Optional. If set to true, the request will force the deletion of
    the Policy even if the Policy references PolicyBindings.
  name: Required. The name of the access policy to delete. Format: `projects
    /{project_id}/locations/{location}/accessPolicies/{access_policy_id}` `p
    rojects/{project_number}/locations/{location}/accessPolicies/{access_pol
    icy_id}` `folders/{folder_id}/locations/{location}/accessPolicies/{acces
    s_policy_id}` `organizations/{organization_id}/locations/{location}/acce
    ssPolicies/{access_policy_id}`
  validateOnly: Optional. If set, validate the request and preview the
    deletion, but do not actually post it.
r   r   r7   Tr   r8   r   Nr   r   r   r   r   r   r   rC   r|   forcerD   r   r   r   r   r   r   r   v  K    " 
		q	!$

 
 
#%			q4	0$''*,r   r   c                   :    \ rS rSrSr\R                  " SSS9rSrg)+IamFoldersLocationsAccessPoliciesGetRequesti  a  A IamFoldersLocationsAccessPoliciesGetRequest object.

Fields:
  name: Required. The name of the access policy to retrieve. Format: `projec
    ts/{project_id}/locations/{location}/accessPolicies/{access_policy_id}`
    `projects/{project_number}/locations/{location}/accessPolicies/{access_p
    olicy_id}` `folders/{folder_id}/locations/{location}/accessPolicies/{acc
    ess_policy_id}` `organizations/{organization_id}/locations/{location}/ac
    cessPolicies/{access_policy_id}`
r   Tr   r   N	r   r   r   r   r   r   r   rD   r   r   r   r   r   r         	 
		q4	0$r   r   c                       \ rS rSrSr\R                  " S\R                  R                  S9r	\R                  " S5      r\R                  " SSS9rS	rg
),IamFoldersLocationsAccessPoliciesListRequesti  a  A IamFoldersLocationsAccessPoliciesListRequest object.

Fields:
  pageSize: Optional. The maximum number of access policies to return. The
    service may return fewer than this value. If unspecified, at most 50
    access policies will be returned. Valid value ranges from 1 to 1000;
    values above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `ListAccessPolicies` call. Provide this to retrieve the subsequent page.
    When paginating, all other parameters provided to `ListAccessPolicies`
    must match the call that provided the page token.
  parent: Required. The parent resource, which owns the collection of access
    policy resources. Format: `projects/{project_id}/locations/{location}`
    `projects/{project_number}/locations/{location}`
    `folders/{folder_id}/locations/{location}`
    `organizations/{organization_id}/locations/{location}`
r   r   r   r7   Tr   r   Nr   r   r   r   r   r   r   r   r   pageSizer   	pageTokenr   r   r   r   r   r   r     I    $ ##Ay/@/@/F/FG(##A&)  T2&r   r   c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      rS	rg
)-IamFoldersLocationsAccessPoliciesPatchRequesti  a  A IamFoldersLocationsAccessPoliciesPatchRequest object.

Fields:
  googleIamV3betaAccessPolicy: A GoogleIamV3betaAccessPolicy resource to be
    passed as the request body.
  name: Identifier. The resource name of the access policy. The following
    formats are supported:
    `projects/{project_id}/locations/{location}/accessPolicies/{policy_id}`
    `projects/{project_number}/locations/{location}/accessPolicies/{policy_i
    d}`
    `folders/{folder_id}/locations/{location}/accessPolicies/{policy_id}` `o
    rganizations/{organization_id}/locations/{location}/accessPolicies/{poli
    cy_id}`
  validateOnly: Optional. If set, validate the request and preview the
    update, but do not actually post it.
r"   r   r   Tr   r7   r   Nr   r   r   r   r   r   r   r   r   rD   r|   r   r   r   r   r   r   r     @    " !* 6 67TVW X			q4	0$''*,r   r   c                       \ rS rSrSr\R                  " SSS9r\R                  " S\R                  R                  S9r\R                  " S5      rS	rg
)<IamFoldersLocationsAccessPoliciesSearchPolicyBindingsRequesti  a  A IamFoldersLocationsAccessPoliciesSearchPolicyBindingsRequest object.

Fields:
  name: Required. The name of the access policy. Format: `organizations/{org
    anization_id}/locations/{location}/accessPolicies/{access_policy_id}` `f
    olders/{folder_id}/locations/{location}/accessPolicies/{access_policy_id
    }` `projects/{project_id}/locations/{location}/accessPolicies/{access_po
    licy_id}` `projects/{project_number}/locations/{location}/accessPolicies
    /{access_policy_id}`
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `SearchAccessPolicyBindingsRequest` call. Provide this to retrieve the
    subsequent page. When paginating, all other parameters provided to
    `SearchAccessPolicyBindingsRequest` must match the call that provided
    the page token.
r   Tr   r   r   r7   r   Nr   r   r   r   r   r   r   rD   r   r   r   r   r   r   r   r   r   r   r     I    ( 
		q4	0$##Ay/@/@/F/FG(##A&)r   r   c                   :    \ rS rSrSr\R                  " SSS9rSrg)'IamFoldersLocationsOperationsGetRequesti  zgA IamFoldersLocationsOperationsGetRequest object.

Fields:
  name: The name of the operation resource.
r   Tr   r   Nr   r   r   r   r   r          
		q4	0$r   r   c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg).IamFoldersLocationsPolicyBindingsCreateRequesti  a  A IamFoldersLocationsPolicyBindingsCreateRequest object.

Fields:
  googleIamV3betaPolicyBinding: A GoogleIamV3betaPolicyBinding resource to
    be passed as the request body.
  parent: Required. The parent resource where this policy binding will be
    created. The binding parent is the closest Resource Manager resource
    (project, folder or organization) to the binding target. Format: *
    `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
  policyBindingId: Required. The ID to use for the policy binding, which
    will become the final component of the policy binding's resource name.
    This value must start with a lowercase letter followed by up to 62
    lowercase letters, numbers, hyphens, or dots. Pattern, /a-z{2,62}/.
  validateOnly: Optional. If set, validate the request and preview the
    creation, but do not actually post it.
rp   r   r   Tr   r7   r8   r   Nr   r   r   r   r   r   r   googleIamV3betaPolicyBindingr   r   policyBindingIdr|   r   r   r   r   r   r   r     P    ( "+!7!78VXY!Z  T2&))!,/''*,r   r   c                       \ rS rSrSr\R                  " S5      r\R                  " SSS9r\R                  " S5      r
Srg	)
.IamFoldersLocationsPolicyBindingsDeleteRequesti  a  A IamFoldersLocationsPolicyBindingsDeleteRequest object.

Fields:
  etag: Optional. The etag of the policy binding. If this is provided, it
    must match the server's etag.
  name: Required. The name of the policy binding to delete. Format: * `proje
    cts/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
    ` * `projects/{project_number}/locations/{location}/policyBindings/{poli
    cy_binding_id}` * `folders/{folder_id}/locations/{location}/policyBindin
    gs/{policy_binding_id}` * `organizations/{organization_id}/locations/{lo
    cation}/policyBindings/{policy_binding_id}`
  validateOnly: Optional. If set, validate the request and preview the
    deletion, but do not actually post it.
r   r   Tr   r7   r   Nr   r   r   r   r   r   r   rC   rD   r|   r   r   r   r   r   r   r     ;     
		q	!$			q4	0$''*,r   r   c                   :    \ rS rSrSr\R                  " SSS9rSrg)+IamFoldersLocationsPolicyBindingsGetRequesti   a  A IamFoldersLocationsPolicyBindingsGetRequest object.

Fields:
  name: Required. The name of the policy binding to retrieve. Format: * `pro
    jects/{project_id}/locations/{location}/policyBindings/{policy_binding_i
    d}` * `projects/{project_number}/locations/{location}/policyBindings/{po
    licy_binding_id}` * `folders/{folder_id}/locations/{location}/policyBind
    ings/{policy_binding_id}` * `organizations/{organization_id}/locations/{
    location}/policyBindings/{policy_binding_id}`
r   Tr   r   Nr   r   r   r   r   r      r   r   r   c                       \ rS rSrSr\R                  " S5      r\R                  " S\R                  R                  S9r\R                  " S5      r\R                  " SSS	9rS
rg),IamFoldersLocationsPolicyBindingsListRequesti/  a  A IamFoldersLocationsPolicyBindingsListRequest object.

Fields:
  filter: Optional. An expression for filtering the results of the request.
    Filter rules are case insensitive. Some eligible fields for filtering
    are: + `target` + `policy` Some examples of filter queries: *
    `target:ex*`: The binding target's name starts with "ex". *
    `target:example`: The binding target's name is `example`. *
    `policy:example`: The binding policy's name is `example`.
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `ListPolicyBindings` call. Provide this to retrieve the subsequent page.
    When paginating, all other parameters provided to `ListPolicyBindings`
    must match the call that provided the page token.
  parent: Required. The parent resource, which owns the collection of policy
    bindings. Format: * `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
r   r   r   r7   r8   Tr   r   Nr   r   r   r   r   r   r   filterr   r   r   r   r   r   r   r   r   r   r   r   /  Y    0   #&##Ay/@/@/F/FG(##A&)  T2&r   r   c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg)-IamFoldersLocationsPolicyBindingsPatchRequestiN  a  A IamFoldersLocationsPolicyBindingsPatchRequest object.

Fields:
  googleIamV3betaPolicyBinding: A GoogleIamV3betaPolicyBinding resource to
    be passed as the request body.
  name: Identifier. The name of the policy binding, in the format
    `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}
    `. The binding parent is the closest Resource Manager resource (project,
    folder, or organization) to the binding target. Format: * `projects/{pro
    ject_id}/locations/{location}/policyBindings/{policy_binding_id}` * `pro
    jects/{project_number}/locations/{location}/policyBindings/{policy_bindi
    ng_id}` * `folders/{folder_id}/locations/{location}/policyBindings/{poli
    cy_binding_id}` * `organizations/{organization_id}/locations/{location}/
    policyBindings/{policy_binding_id}`
  updateMask: Optional. The list of fields to update
  validateOnly: Optional. If set, validate the request and preview the
    update, but do not actually post it.
rp   r   r   Tr   r7   r8   r   Nr   r   r   r   r   r   r   r   r   rD   
updateMaskr|   r   r   r   r   r   r  r  N  P    & "+!7!78VXY!Z			q4	0$$$Q'*''*,r   r  c                       \ rS rSrSr\R                  " S5      r\R                  " S\R                  R                  S9r\R                  " S5      r\R                  " SSS	9r\R                  " S
5      rSrg)BIamFoldersLocationsPolicyBindingsSearchTargetPolicyBindingsRequestih  a  A IamFoldersLocationsPolicyBindingsSearchTargetPolicyBindingsRequest
object.

Fields:
  filter: Optional. Filtering currently only supports the kind of policies
    to return, and must be in the format "policy_kind={policy_kind}". If
    String is empty, bindings bound to all kinds of policies would be
    returned. The only supported values are:
    "policy_kind=PRINCIPAL_ACCESS_BOUNDARY", "policy_kind=ACCESS"
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `SearchTargetPolicyBindingsRequest` call. Provide this to retrieve the
    subsequent page. When paginating, all other parameters provided to
    `SearchTargetPolicyBindingsRequest` must match the call that provided
    the page token.
  parent: Required. The parent resource where this search will be performed.
    This should be the nearest Resource Manager resource (project, folder,
    or organization) to the target. Format: *
    `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
  target: Required. The target resource, which is bound to the policy in the
    binding. Format: *
    `//iam.googleapis.com/locations/global/workforcePools/POOL_ID` * `//iam.
    googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentity
    Pools/POOL_ID` *
    `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID` *
    `//cloudresourcemanager.googleapis.com/projects/{project_number}` *
    `//cloudresourcemanager.googleapis.com/folders/{folder_id}` *
    `//cloudresourcemanager.googleapis.com/organizations/{organization_id}`
r   r   r   r7   r8   Tr   r9   r   Nr   r   r   r   r   r   r   r  r   r   r   r   r   r   r   r   r   r   r   r
  r
  h  j    "H   #&##Ay/@/@/F/FG(##A&)  T2&  #&r   r
  c                       \ rS rSrSr\R                  " S5      r\R                  " SS5      r	\R                  " SSS9r
\R                  " S	5      rS
rg)4IamOrganizationsLocationsAccessPoliciesCreateRequesti  a  A IamOrganizationsLocationsAccessPoliciesCreateRequest object.

Fields:
  accessPolicyId: Required. The ID to use for the access policy, which will
    become the final component of the access policy's resource name. This
    value must start with a lowercase letter followed by up to 62 lowercase
    letters, numbers, hyphens, or dots. Pattern, /a-z{2,62}/. This value
    must be unique among all access policies with the same parent.
  googleIamV3betaAccessPolicy: A GoogleIamV3betaAccessPolicy resource to be
    passed as the request body.
  parent: Required. The parent resource where this access policy will be
    created. Format: `projects/{project_id}/locations/{location}`
    `projects/{project_number}/locations/{location}`
    `folders/{folder_id}/locations/{location}`
    `organizations/{organization_id}/locations/{location}`
  validateOnly: Optional. If set, validate the request and preview the
    creation, but do not actually post it.
r   r"   r   r7   Tr   r8   r   Nr   r   r   r   r  r    r   r   r  c                       \ rS rSrSr\R                  " S5      r\R                  " S5      r	\R                  " SSS9r
\R                  " S5      rS	rg
)4IamOrganizationsLocationsAccessPoliciesDeleteRequesti  aP  A IamOrganizationsLocationsAccessPoliciesDeleteRequest object.

Fields:
  etag: Optional. The etag of the access policy. If this is provided, it
    must match the server's etag.
  force: Optional. If set to true, the request will force the deletion of
    the Policy even if the Policy references PolicyBindings.
  name: Required. The name of the access policy to delete. Format: `projects
    /{project_id}/locations/{location}/accessPolicies/{access_policy_id}` `p
    rojects/{project_number}/locations/{location}/accessPolicies/{access_pol
    icy_id}` `folders/{folder_id}/locations/{location}/accessPolicies/{acces
    s_policy_id}` `organizations/{organization_id}/locations/{location}/acce
    ssPolicies/{access_policy_id}`
  validateOnly: Optional. If set, validate the request and preview the
    deletion, but do not actually post it.
r   r   r7   Tr   r8   r   Nr   r   r   r   r  r    r   r   r  c                   :    \ rS rSrSr\R                  " SSS9rSrg)1IamOrganizationsLocationsAccessPoliciesGetRequesti  a  A IamOrganizationsLocationsAccessPoliciesGetRequest object.

Fields:
  name: Required. The name of the access policy to retrieve. Format: `projec
    ts/{project_id}/locations/{location}/accessPolicies/{access_policy_id}`
    `projects/{project_number}/locations/{location}/accessPolicies/{access_p
    olicy_id}` `folders/{folder_id}/locations/{location}/accessPolicies/{acc
    ess_policy_id}` `organizations/{organization_id}/locations/{location}/ac
    cessPolicies/{access_policy_id}`
r   Tr   r   Nr   r   r   r   r  r    r   r   r  c                       \ rS rSrSr\R                  " S\R                  R                  S9r	\R                  " S5      r\R                  " SSS9rS	rg
)2IamOrganizationsLocationsAccessPoliciesListRequesti  a  A IamOrganizationsLocationsAccessPoliciesListRequest object.

Fields:
  pageSize: Optional. The maximum number of access policies to return. The
    service may return fewer than this value. If unspecified, at most 50
    access policies will be returned. Valid value ranges from 1 to 1000;
    values above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `ListAccessPolicies` call. Provide this to retrieve the subsequent page.
    When paginating, all other parameters provided to `ListAccessPolicies`
    must match the call that provided the page token.
  parent: Required. The parent resource, which owns the collection of access
    policy resources. Format: `projects/{project_id}/locations/{location}`
    `projects/{project_number}/locations/{location}`
    `folders/{folder_id}/locations/{location}`
    `organizations/{organization_id}/locations/{location}`
r   r   r   r7   Tr   r   Nr   r   r   r   r  r    r   r   r  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      rS	rg
)3IamOrganizationsLocationsAccessPoliciesPatchRequesti  a  A IamOrganizationsLocationsAccessPoliciesPatchRequest object.

Fields:
  googleIamV3betaAccessPolicy: A GoogleIamV3betaAccessPolicy resource to be
    passed as the request body.
  name: Identifier. The resource name of the access policy. The following
    formats are supported:
    `projects/{project_id}/locations/{location}/accessPolicies/{policy_id}`
    `projects/{project_number}/locations/{location}/accessPolicies/{policy_i
    d}`
    `folders/{folder_id}/locations/{location}/accessPolicies/{policy_id}` `o
    rganizations/{organization_id}/locations/{location}/accessPolicies/{poli
    cy_id}`
  validateOnly: Optional. If set, validate the request and preview the
    update, but do not actually post it.
r"   r   r   Tr   r7   r   Nr   r   r   r   r  r    r   r   r  c                       \ rS rSrSr\R                  " SSS9r\R                  " S\R                  R                  S9r\R                  " S5      rS	rg
)BIamOrganizationsLocationsAccessPoliciesSearchPolicyBindingsRequesti  a"  A IamOrganizationsLocationsAccessPoliciesSearchPolicyBindingsRequest
object.

Fields:
  name: Required. The name of the access policy. Format: `organizations/{org
    anization_id}/locations/{location}/accessPolicies/{access_policy_id}` `f
    olders/{folder_id}/locations/{location}/accessPolicies/{access_policy_id
    }` `projects/{project_id}/locations/{location}/accessPolicies/{access_po
    licy_id}` `projects/{project_number}/locations/{location}/accessPolicies
    /{access_policy_id}`
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `SearchAccessPolicyBindingsRequest` call. Provide this to retrieve the
    subsequent page. When paginating, all other parameters provided to
    `SearchAccessPolicyBindingsRequest` must match the call that provided
    the page token.
r   Tr   r   r   r7   r   Nr   r   r   r   r  r    sI    * 
		q4	0$##Ay/@/@/F/FG(##A&)r   r  c                   :    \ rS rSrSr\R                  " SSS9rSrg)-IamOrganizationsLocationsOperationsGetRequesti  zmA IamOrganizationsLocationsOperationsGetRequest object.

Fields:
  name: The name of the operation resource.
r   Tr   r   Nr   r   r   r   r  r    r   r   r  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg)4IamOrganizationsLocationsPolicyBindingsCreateRequesti)  a  A IamOrganizationsLocationsPolicyBindingsCreateRequest object.

Fields:
  googleIamV3betaPolicyBinding: A GoogleIamV3betaPolicyBinding resource to
    be passed as the request body.
  parent: Required. The parent resource where this policy binding will be
    created. The binding parent is the closest Resource Manager resource
    (project, folder or organization) to the binding target. Format: *
    `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
  policyBindingId: Required. The ID to use for the policy binding, which
    will become the final component of the policy binding's resource name.
    This value must start with a lowercase letter followed by up to 62
    lowercase letters, numbers, hyphens, or dots. Pattern, /a-z{2,62}/.
  validateOnly: Optional. If set, validate the request and preview the
    creation, but do not actually post it.
rp   r   r   Tr   r7   r8   r   Nr   r   r   r   r  r  )  r   r   r  c                       \ rS rSrSr\R                  " S5      r\R                  " SSS9r\R                  " S5      r
Srg	)
4IamOrganizationsLocationsPolicyBindingsDeleteRequestiD  a  A IamOrganizationsLocationsPolicyBindingsDeleteRequest object.

Fields:
  etag: Optional. The etag of the policy binding. If this is provided, it
    must match the server's etag.
  name: Required. The name of the policy binding to delete. Format: * `proje
    cts/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
    ` * `projects/{project_number}/locations/{location}/policyBindings/{poli
    cy_binding_id}` * `folders/{folder_id}/locations/{location}/policyBindin
    gs/{policy_binding_id}` * `organizations/{organization_id}/locations/{lo
    cation}/policyBindings/{policy_binding_id}`
  validateOnly: Optional. If set, validate the request and preview the
    deletion, but do not actually post it.
r   r   Tr   r7   r   Nr   r   r   r   r  r  D  r   r   r  c                   :    \ rS rSrSr\R                  " SSS9rSrg)1IamOrganizationsLocationsPolicyBindingsGetRequestiY  a  A IamOrganizationsLocationsPolicyBindingsGetRequest object.

Fields:
  name: Required. The name of the policy binding to retrieve. Format: * `pro
    jects/{project_id}/locations/{location}/policyBindings/{policy_binding_i
    d}` * `projects/{project_number}/locations/{location}/policyBindings/{po
    licy_binding_id}` * `folders/{folder_id}/locations/{location}/policyBind
    ings/{policy_binding_id}` * `organizations/{organization_id}/locations/{
    location}/policyBindings/{policy_binding_id}`
r   Tr   r   Nr   r   r   r   r   r   Y  r   r   r   c                       \ rS rSrSr\R                  " S5      r\R                  " S\R                  R                  S9r\R                  " S5      r\R                  " SSS	9rS
rg)2IamOrganizationsLocationsPolicyBindingsListRequestih  a#  A IamOrganizationsLocationsPolicyBindingsListRequest object.

Fields:
  filter: Optional. An expression for filtering the results of the request.
    Filter rules are case insensitive. Some eligible fields for filtering
    are: + `target` + `policy` Some examples of filter queries: *
    `target:ex*`: The binding target's name starts with "ex". *
    `target:example`: The binding target's name is `example`. *
    `policy:example`: The binding policy's name is `example`.
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `ListPolicyBindings` call. Provide this to retrieve the subsequent page.
    When paginating, all other parameters provided to `ListPolicyBindings`
    must match the call that provided the page token.
  parent: Required. The parent resource, which owns the collection of policy
    bindings. Format: * `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
r   r   r   r7   r8   Tr   r   Nr  r   r   r   r"  r"  h  r  r   r"  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg)3IamOrganizationsLocationsPolicyBindingsPatchRequesti  a  A IamOrganizationsLocationsPolicyBindingsPatchRequest object.

Fields:
  googleIamV3betaPolicyBinding: A GoogleIamV3betaPolicyBinding resource to
    be passed as the request body.
  name: Identifier. The name of the policy binding, in the format
    `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}
    `. The binding parent is the closest Resource Manager resource (project,
    folder, or organization) to the binding target. Format: * `projects/{pro
    ject_id}/locations/{location}/policyBindings/{policy_binding_id}` * `pro
    jects/{project_number}/locations/{location}/policyBindings/{policy_bindi
    ng_id}` * `folders/{folder_id}/locations/{location}/policyBindings/{poli
    cy_binding_id}` * `organizations/{organization_id}/locations/{location}/
    policyBindings/{policy_binding_id}`
  updateMask: Optional. The list of fields to update
  validateOnly: Optional. If set, validate the request and preview the
    update, but do not actually post it.
rp   r   r   Tr   r7   r8   r   Nr  r   r   r   r$  r$    r  r   r$  c                       \ rS rSrSr\R                  " S5      r\R                  " S\R                  R                  S9r\R                  " S5      r\R                  " SSS	9r\R                  " S
5      rSrg)HIamOrganizationsLocationsPolicyBindingsSearchTargetPolicyBindingsRequesti  a  A
IamOrganizationsLocationsPolicyBindingsSearchTargetPolicyBindingsRequest
object.

Fields:
  filter: Optional. Filtering currently only supports the kind of policies
    to return, and must be in the format "policy_kind={policy_kind}". If
    String is empty, bindings bound to all kinds of policies would be
    returned. The only supported values are:
    "policy_kind=PRINCIPAL_ACCESS_BOUNDARY", "policy_kind=ACCESS"
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `SearchTargetPolicyBindingsRequest` call. Provide this to retrieve the
    subsequent page. When paginating, all other parameters provided to
    `SearchTargetPolicyBindingsRequest` must match the call that provided
    the page token.
  parent: Required. The parent resource where this search will be performed.
    This should be the nearest Resource Manager resource (project, folder,
    or organization) to the target. Format: *
    `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
  target: Required. The target resource, which is bound to the policy in the
    binding. Format: *
    `//iam.googleapis.com/locations/global/workforcePools/POOL_ID` * `//iam.
    googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentity
    Pools/POOL_ID` *
    `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID` *
    `//cloudresourcemanager.googleapis.com/projects/{project_number}` *
    `//cloudresourcemanager.googleapis.com/folders/{folder_id}` *
    `//cloudresourcemanager.googleapis.com/organizations/{organization_id}`
r   r   r   r7   r8   Tr   r9   r   Nr  r   r   r   r&  r&    sj    #J   #&##Ay/@/@/F/FG(##A&)  T2&  #&r   r&  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg)EIamOrganizationsLocationsPrincipalAccessBoundaryPoliciesCreateRequesti  a  A IamOrganizationsLocationsPrincipalAccessBoundaryPoliciesCreateRequest
object.

Fields:
  googleIamV3betaPrincipalAccessBoundaryPolicy: A
    GoogleIamV3betaPrincipalAccessBoundaryPolicy resource to be passed as
    the request body.
  parent: Required. The parent resource where this principal access boundary
    policy will be created. Only organizations are supported. Format:
    `organizations/{organization_id}/locations/{location}`
  principalAccessBoundaryPolicyId: Required. The ID to use for the principal
    access boundary policy, which will become the final component of the
    principal access boundary policy's resource name. This value must start
    with a lowercase letter followed by up to 62 lowercase letters, numbers,
    hyphens, or dots. Pattern, /a-z{2,62}/.
  validateOnly: Optional. If set, validate the request and preview the
    creation, but do not actually post it.
rv   r   r   Tr   r7   r8   r   N)r   r   r   r   r   r   r   ,googleIamV3betaPrincipalAccessBoundaryPolicyr   r   principalAccessBoundaryPolicyIdr|   r   r   r   r   r   r(  r(    sQ    & 2;1G1GHvxy1z.  T2&$-$9$9!$<!''*,r   r(  c                       \ rS rSrSr\R                  " S5      r\R                  " S5      r	\R                  " SSS9r
\R                  " S5      rS	rg
)EIamOrganizationsLocationsPrincipalAccessBoundaryPoliciesDeleteRequesti  a  A IamOrganizationsLocationsPrincipalAccessBoundaryPoliciesDeleteRequest
object.

Fields:
  etag: Optional. The etag of the principal access boundary policy. If this
    is provided, it must match the server's etag.
  force: Optional. If set to true, the request will force the deletion of
    the policy even if the policy is referenced in policy bindings.
  name: Required. The name of the principal access boundary policy to
    delete. Format: `organizations/{organization_id}/locations/{location}/pr
    incipalAccessBoundaryPolicies/{principal_access_boundary_policy_id}`
  validateOnly: Optional. If set, validate the request and preview the
    deletion, but do not actually post it.
r   r   r7   Tr   r8   r   Nr   r   r   r   r,  r,    sK     
		q	!$

 
 
#%			q4	0$''*,r   r,  c                   :    \ rS rSrSr\R                  " SSS9rSrg)BIamOrganizationsLocationsPrincipalAccessBoundaryPoliciesGetRequesti  a4  A IamOrganizationsLocationsPrincipalAccessBoundaryPoliciesGetRequest
object.

Fields:
  name: Required. The name of the principal access boundary policy to
    retrieve. Format: `organizations/{organization_id}/locations/{location}/
    principalAccessBoundaryPolicies/{principal_access_boundary_policy_id}`
r   Tr   r   Nr   r   r   r   r.  r.    s     
		q4	0$r   r.  c                       \ rS rSrSr\R                  " S\R                  R                  S9r	\R                  " S5      r\R                  " SSS9rS	rg
)CIamOrganizationsLocationsPrincipalAccessBoundaryPoliciesListRequesti  ah  A IamOrganizationsLocationsPrincipalAccessBoundaryPoliciesListRequest
object.

Fields:
  pageSize: Optional. The maximum number of principal access boundary
    policies to return. The service may return fewer than this value. If
    unspecified, at most 50 principal access boundary policies will be
    returned. The maximum value is 1000; values above 1000 will be coerced
    to 1000.
  pageToken: Optional. A page token, received from a previous
    `ListPrincipalAccessBoundaryPolicies` call. Provide this to retrieve the
    subsequent page. When paginating, all other parameters provided to
    `ListPrincipalAccessBoundaryPolicies` must match the call that provided
    the page token.
  parent: Required. The parent resource, which owns the collection of
    principal access boundary policies. Format:
    `organizations/{organization_id}/locations/{location}`
r   r   r   r7   Tr   r   Nr   r   r   r   r0  r0    sI    & ##Ay/@/@/F/FG(##A&)  T2&r   r0  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg)DIamOrganizationsLocationsPrincipalAccessBoundaryPoliciesPatchRequesti$  am  A IamOrganizationsLocationsPrincipalAccessBoundaryPoliciesPatchRequest
object.

Fields:
  googleIamV3betaPrincipalAccessBoundaryPolicy: A
    GoogleIamV3betaPrincipalAccessBoundaryPolicy resource to be passed as
    the request body.
  name: Identifier. The resource name of the principal access boundary
    policy. The following format is supported: `organizations/{organization_
    id}/locations/{location}/principalAccessBoundaryPolicies/{policy_id}`
  updateMask: Optional. The list of fields to update
  validateOnly: Optional. If set, validate the request and preview the
    update, but do not actually post it.
rv   r   r   Tr   r7   r8   r   N)r   r   r   r   r   r   r   r)  r   rD   r  r|   r   r   r   r   r   r2  r2  $  sP     2;1G1GHvxy1z.			q4	0$$$Q'*''*,r   r2  c                       \ rS rSrSr\R                  " SSS9r\R                  " S\R                  R                  S9r\R                  " S5      rS	rg
)SIamOrganizationsLocationsPrincipalAccessBoundaryPoliciesSearchPolicyBindingsRequesti:  a  A IamOrganizationsLocationsPrincipalAccessBoundaryPoliciesSearchPolicyBi
ndingsRequest object.

Fields:
  name: Required. The name of the principal access boundary policy. Format:
    `organizations/{organization_id}/locations/{location}/principalAccessBou
    ndaryPolicies/{principal_access_boundary_policy_id}`
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `SearchPrincipalAccessBoundaryPolicyBindingsRequest` call. Provide this
    to retrieve the subsequent page. When paginating, all other parameters
    provided to `SearchPrincipalAccessBoundaryPolicyBindingsRequest` must
    match the call that provided the page token.
r   Tr   r   r   r7   r   Nr   r   r   r   r4  r4  :  sI    $ 
		q4	0$##Ay/@/@/F/FG(##A&)r   r4  c                       \ rS rSrSr\R                  " S5      r\R                  " SS5      r	\R                  " SSS9r
\R                  " S	5      rS
rg)/IamProjectsLocationsAccessPoliciesCreateRequestiR  a  A IamProjectsLocationsAccessPoliciesCreateRequest object.

Fields:
  accessPolicyId: Required. The ID to use for the access policy, which will
    become the final component of the access policy's resource name. This
    value must start with a lowercase letter followed by up to 62 lowercase
    letters, numbers, hyphens, or dots. Pattern, /a-z{2,62}/. This value
    must be unique among all access policies with the same parent.
  googleIamV3betaAccessPolicy: A GoogleIamV3betaAccessPolicy resource to be
    passed as the request body.
  parent: Required. The parent resource where this access policy will be
    created. Format: `projects/{project_id}/locations/{location}`
    `projects/{project_number}/locations/{location}`
    `folders/{folder_id}/locations/{location}`
    `organizations/{organization_id}/locations/{location}`
  validateOnly: Optional. If set, validate the request and preview the
    creation, but do not actually post it.
r   r"   r   r7   Tr   r8   r   Nr   r   r   r   r6  r6  R  r   r   r6  c                       \ rS rSrSr\R                  " S5      r\R                  " S5      r	\R                  " SSS9r
\R                  " S5      rS	rg
)/IamProjectsLocationsAccessPoliciesDeleteRequestil  aK  A IamProjectsLocationsAccessPoliciesDeleteRequest object.

Fields:
  etag: Optional. The etag of the access policy. If this is provided, it
    must match the server's etag.
  force: Optional. If set to true, the request will force the deletion of
    the Policy even if the Policy references PolicyBindings.
  name: Required. The name of the access policy to delete. Format: `projects
    /{project_id}/locations/{location}/accessPolicies/{access_policy_id}` `p
    rojects/{project_number}/locations/{location}/accessPolicies/{access_pol
    icy_id}` `folders/{folder_id}/locations/{location}/accessPolicies/{acces
    s_policy_id}` `organizations/{organization_id}/locations/{location}/acce
    ssPolicies/{access_policy_id}`
  validateOnly: Optional. If set, validate the request and preview the
    deletion, but do not actually post it.
r   r   r7   Tr   r8   r   Nr   r   r   r   r8  r8  l  r   r   r8  c                   :    \ rS rSrSr\R                  " SSS9rSrg),IamProjectsLocationsAccessPoliciesGetRequesti  a  A IamProjectsLocationsAccessPoliciesGetRequest object.

Fields:
  name: Required. The name of the access policy to retrieve. Format: `projec
    ts/{project_id}/locations/{location}/accessPolicies/{access_policy_id}`
    `projects/{project_number}/locations/{location}/accessPolicies/{access_p
    olicy_id}` `folders/{folder_id}/locations/{location}/accessPolicies/{acc
    ess_policy_id}` `organizations/{organization_id}/locations/{location}/ac
    cessPolicies/{access_policy_id}`
r   Tr   r   Nr   r   r   r   r:  r:    r   r   r:  c                       \ rS rSrSr\R                  " S\R                  R                  S9r	\R                  " S5      r\R                  " SSS9rS	rg
)-IamProjectsLocationsAccessPoliciesListRequesti  a  A IamProjectsLocationsAccessPoliciesListRequest object.

Fields:
  pageSize: Optional. The maximum number of access policies to return. The
    service may return fewer than this value. If unspecified, at most 50
    access policies will be returned. Valid value ranges from 1 to 1000;
    values above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `ListAccessPolicies` call. Provide this to retrieve the subsequent page.
    When paginating, all other parameters provided to `ListAccessPolicies`
    must match the call that provided the page token.
  parent: Required. The parent resource, which owns the collection of access
    policy resources. Format: `projects/{project_id}/locations/{location}`
    `projects/{project_number}/locations/{location}`
    `folders/{folder_id}/locations/{location}`
    `organizations/{organization_id}/locations/{location}`
r   r   r   r7   Tr   r   Nr   r   r   r   r<  r<    r   r   r<  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      rS	rg
).IamProjectsLocationsAccessPoliciesPatchRequesti  a  A IamProjectsLocationsAccessPoliciesPatchRequest object.

Fields:
  googleIamV3betaAccessPolicy: A GoogleIamV3betaAccessPolicy resource to be
    passed as the request body.
  name: Identifier. The resource name of the access policy. The following
    formats are supported:
    `projects/{project_id}/locations/{location}/accessPolicies/{policy_id}`
    `projects/{project_number}/locations/{location}/accessPolicies/{policy_i
    d}`
    `folders/{folder_id}/locations/{location}/accessPolicies/{policy_id}` `o
    rganizations/{organization_id}/locations/{location}/accessPolicies/{poli
    cy_id}`
  validateOnly: Optional. If set, validate the request and preview the
    update, but do not actually post it.
r"   r   r   Tr   r7   r   Nr   r   r   r   r>  r>    r   r   r>  c                       \ rS rSrSr\R                  " SSS9r\R                  " S\R                  R                  S9r\R                  " S5      rS	rg
)=IamProjectsLocationsAccessPoliciesSearchPolicyBindingsRequesti  a  A IamProjectsLocationsAccessPoliciesSearchPolicyBindingsRequest object.

Fields:
  name: Required. The name of the access policy. Format: `organizations/{org
    anization_id}/locations/{location}/accessPolicies/{access_policy_id}` `f
    olders/{folder_id}/locations/{location}/accessPolicies/{access_policy_id
    }` `projects/{project_id}/locations/{location}/accessPolicies/{access_po
    licy_id}` `projects/{project_number}/locations/{location}/accessPolicies
    /{access_policy_id}`
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `SearchAccessPolicyBindingsRequest` call. Provide this to retrieve the
    subsequent page. When paginating, all other parameters provided to
    `SearchAccessPolicyBindingsRequest` must match the call that provided
    the page token.
r   Tr   r   r   r7   r   Nr   r   r   r   r@  r@    r   r   r@  c                   :    \ rS rSrSr\R                  " SSS9rSrg)(IamProjectsLocationsOperationsGetRequesti  zhA IamProjectsLocationsOperationsGetRequest object.

Fields:
  name: The name of the operation resource.
r   Tr   r   Nr   r   r   r   rB  rB    r   r   rB  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg)/IamProjectsLocationsPolicyBindingsCreateRequesti  a  A IamProjectsLocationsPolicyBindingsCreateRequest object.

Fields:
  googleIamV3betaPolicyBinding: A GoogleIamV3betaPolicyBinding resource to
    be passed as the request body.
  parent: Required. The parent resource where this policy binding will be
    created. The binding parent is the closest Resource Manager resource
    (project, folder or organization) to the binding target. Format: *
    `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
  policyBindingId: Required. The ID to use for the policy binding, which
    will become the final component of the policy binding's resource name.
    This value must start with a lowercase letter followed by up to 62
    lowercase letters, numbers, hyphens, or dots. Pattern, /a-z{2,62}/.
  validateOnly: Optional. If set, validate the request and preview the
    creation, but do not actually post it.
rp   r   r   Tr   r7   r8   r   Nr   r   r   r   rD  rD    r   r   rD  c                       \ rS rSrSr\R                  " S5      r\R                  " SSS9r\R                  " S5      r
Srg	)
/IamProjectsLocationsPolicyBindingsDeleteRequesti  a  A IamProjectsLocationsPolicyBindingsDeleteRequest object.

Fields:
  etag: Optional. The etag of the policy binding. If this is provided, it
    must match the server's etag.
  name: Required. The name of the policy binding to delete. Format: * `proje
    cts/{project_id}/locations/{location}/policyBindings/{policy_binding_id}
    ` * `projects/{project_number}/locations/{location}/policyBindings/{poli
    cy_binding_id}` * `folders/{folder_id}/locations/{location}/policyBindin
    gs/{policy_binding_id}` * `organizations/{organization_id}/locations/{lo
    cation}/policyBindings/{policy_binding_id}`
  validateOnly: Optional. If set, validate the request and preview the
    deletion, but do not actually post it.
r   r   Tr   r7   r   Nr   r   r   r   rF  rF    r   r   rF  c                   :    \ rS rSrSr\R                  " SSS9rSrg),IamProjectsLocationsPolicyBindingsGetRequesti  a  A IamProjectsLocationsPolicyBindingsGetRequest object.

Fields:
  name: Required. The name of the policy binding to retrieve. Format: * `pro
    jects/{project_id}/locations/{location}/policyBindings/{policy_binding_i
    d}` * `projects/{project_number}/locations/{location}/policyBindings/{po
    licy_binding_id}` * `folders/{folder_id}/locations/{location}/policyBind
    ings/{policy_binding_id}` * `organizations/{organization_id}/locations/{
    location}/policyBindings/{policy_binding_id}`
r   Tr   r   Nr   r   r   r   rH  rH    r   r   rH  c                       \ rS rSrSr\R                  " S5      r\R                  " S\R                  R                  S9r\R                  " S5      r\R                  " SSS	9rS
rg)-IamProjectsLocationsPolicyBindingsListRequesti%  a  A IamProjectsLocationsPolicyBindingsListRequest object.

Fields:
  filter: Optional. An expression for filtering the results of the request.
    Filter rules are case insensitive. Some eligible fields for filtering
    are: + `target` + `policy` Some examples of filter queries: *
    `target:ex*`: The binding target's name starts with "ex". *
    `target:example`: The binding target's name is `example`. *
    `policy:example`: The binding policy's name is `example`.
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `ListPolicyBindings` call. Provide this to retrieve the subsequent page.
    When paginating, all other parameters provided to `ListPolicyBindings`
    must match the call that provided the page token.
  parent: Required. The parent resource, which owns the collection of policy
    bindings. Format: * `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
r   r   r   r7   r8   Tr   r   Nr  r   r   r   rJ  rJ  %  r  r   rJ  c                       \ rS rSrSr\R                  " SS5      r\R                  " SSS9r	\R                  " S5      r
\R                  " S	5      rS
rg).IamProjectsLocationsPolicyBindingsPatchRequestiD  a  A IamProjectsLocationsPolicyBindingsPatchRequest object.

Fields:
  googleIamV3betaPolicyBinding: A GoogleIamV3betaPolicyBinding resource to
    be passed as the request body.
  name: Identifier. The name of the policy binding, in the format
    `{binding_parent/locations/{location}/policyBindings/{policy_binding_id}
    `. The binding parent is the closest Resource Manager resource (project,
    folder, or organization) to the binding target. Format: * `projects/{pro
    ject_id}/locations/{location}/policyBindings/{policy_binding_id}` * `pro
    jects/{project_number}/locations/{location}/policyBindings/{policy_bindi
    ng_id}` * `folders/{folder_id}/locations/{location}/policyBindings/{poli
    cy_binding_id}` * `organizations/{organization_id}/locations/{location}/
    policyBindings/{policy_binding_id}`
  updateMask: Optional. The list of fields to update
  validateOnly: Optional. If set, validate the request and preview the
    update, but do not actually post it.
rp   r   r   Tr   r7   r8   r   Nr  r   r   r   rL  rL  D  r  r   rL  c                       \ rS rSrSr\R                  " S5      r\R                  " S\R                  R                  S9r\R                  " S5      r\R                  " SSS	9r\R                  " S
5      rSrg)CIamProjectsLocationsPolicyBindingsSearchTargetPolicyBindingsRequesti^  a  A IamProjectsLocationsPolicyBindingsSearchTargetPolicyBindingsRequest
object.

Fields:
  filter: Optional. Filtering currently only supports the kind of policies
    to return, and must be in the format "policy_kind={policy_kind}". If
    String is empty, bindings bound to all kinds of policies would be
    returned. The only supported values are:
    "policy_kind=PRINCIPAL_ACCESS_BOUNDARY", "policy_kind=ACCESS"
  pageSize: Optional. The maximum number of policy bindings to return. The
    service may return fewer than this value. If unspecified, at most 50
    policy bindings will be returned. The maximum value is 1000; values
    above 1000 will be coerced to 1000.
  pageToken: Optional. A page token, received from a previous
    `SearchTargetPolicyBindingsRequest` call. Provide this to retrieve the
    subsequent page. When paginating, all other parameters provided to
    `SearchTargetPolicyBindingsRequest` must match the call that provided
    the page token.
  parent: Required. The parent resource where this search will be performed.
    This should be the nearest Resource Manager resource (project, folder,
    or organization) to the target. Format: *
    `projects/{project_id}/locations/{location}` *
    `projects/{project_number}/locations/{location}` *
    `folders/{folder_id}/locations/{location}` *
    `organizations/{organization_id}/locations/{location}`
  target: Required. The target resource, which is bound to the policy in the
    binding. Format: *
    `//iam.googleapis.com/locations/global/workforcePools/POOL_ID` * `//iam.
    googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentity
    Pools/POOL_ID` *
    `//iam.googleapis.com/locations/global/workspace/WORKSPACE_ID` *
    `//cloudresourcemanager.googleapis.com/projects/{project_number}` *
    `//cloudresourcemanager.googleapis.com/folders/{folder_id}` *
    `//cloudresourcemanager.googleapis.com/organizations/{organization_id}`
r   r   r   r7   r8   Tr   r9   r   Nr  r   r   r   rN  rN  ^  r  r   rN  c                      \ rS rSrSr " S S\R                  5      r " S S\R                  5      r\R                  " SS5      r
\R                  " S5      r\R                  " SS	S
S9r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R$                  " SSS9r\R                  " S5      r\R                  " S5      r\R                  " S5      r\R                  " S5      rSrg)StandardQueryParametersi  a  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                   $    \ rS rSrSrSrSrSrSrg)*StandardQueryParameters.AltValueValuesEnumi  zData 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   r   N)	r   r   r   r   r   jsonmediaprotor   r   r   r   AltValueValuesEnumrR    s     DEEr   rV  c                        \ rS rSrSrSrSrSrg)-StandardQueryParameters.FXgafvValueValuesEnumi  zFV1 error format.

Values:
  _1: v1 error format
  _2: v2 error format
r   r   r   N)r   r   r   r   r   _1_2r   r   r   r   FXgafvValueValuesEnumrX    s     
B	
Br   r[  r   r   r7   rS  )defaultr8   r9   r:   r;   r<   Tr   r   r   r   r   N)r   r   r   r   r   r   r^   rV  r[  ra   f__xgafvr   access_tokenaltcallbackfieldsr.   oauth_tokenr|   prettyPrint	quotaUsertrace
uploadTypeupload_protocolr   r   r   r   rP  rP    s    4
9>> 
inn    !8!<(&&q),0!VD#""1%(  #&a #%%a(+&&q$7+##A&)



#%$$R(*))"-/r   rP  r]  z$.xgafvrY  1rZ  2N)Qr   
__future__r   apitools.base.protorpcliter   r   apitools.base.pyr   r   packager3   r	   r   r"   r6   rI   r]   rk   ro   ru   ry   rp   r   rv   r   r   r   r   r   r   r   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&  r(  r,  r.  r0  r2  r4  r6  r8  r:  r<  r>  r@  rB  rD  rF  rH  rJ  rL  rN  rP  AddCustomJsonFieldMappingAddCustomJsonEnumMappingr[  r   r   r   <module>rp     sH   ' < % ( 
Z	 1 1 
Z
?y/@/@ 
?A()"3"3 A(HV):): V@7i&7&7 @7F8y/@/@ 8*+	0A0A +\	0A0A \}ARAR }"y'8'8 "4v)9#4#4 v)r &):):  &F>(93D3D >(Bg):K:K g %6y7H7H %6P\	8I8I \\IZIZ \\	8I8I \i8!2!2 i8X0%i'' 0%f!#Y&& !#H+Y5F5F +4+Y5F5F +01)2C2C 1393D3D 30+I4E4E +.'9CTCT '41i.?.? 1+Y5F5F +6+Y5F5F +*1)2C2C 1393D3D 3>+I4E4E +4)$IZIZ )$X+9;L;L +4+9;L;L +01	8I8I 139J9J 30+):K:K +.'IZIZ '61I4E4E 1+9;L;L +6+9;L;L +*1	8I8I 139J9J 3>+):K:K +4*$yO`O` *$Z+IL]L] +4+IL]L] +,
1IZIZ 
13)J[J[ 32+9K\K\ +,'ZcZkZk '0+i6G6G +4+i6G6G +0193D3D 13I4E4E 30+Y5F5F +.'IDUDU '41y/@/@ 1+i6G6G +6+i6G6G +*193D3D 13I4E4E 3>+Y5F5F +4)$)J[J[ )$X<.i// <.~ 	 " "Z4  ! !114>  ! !114>r   