
    O                         d Z ddlmZ ddlmZ ddlmZ ddlmZ dZ	 G d dej                        Z G d	 d
ej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d d ej                        Z G d! d"ej                        Z G d# d$ej                        Z G d% d&ej                        Z G d' d(ej                        Z G d) d*ej                        Z G d+ d,ej                        Z G d- d.ej                        Z G d/ d0ej                        Z G d1 d2ej                        Z  G d3 d4ej                        Z! G d5 d6ej                        Z" G d7 d8ej                        Z# G d9 d:ej                        Z$ ejJ                  ed;d<        ejL                  ejN                  d=d>        ejL                  ejN                  d?d@       yA)BzrGenerated message classes for apikeys version v2alpha1.

Manages the API keys associated with developer projects.
    )absolute_import)messages)encoding)extra_typesapikeysc                   4    e Zd ZdZ ej
                  d      Zy)ApikeysGetKeyStringNameRequestzA ApikeysGetKeyStringNameRequest object.

  Fields:
    keyString: Required. Finds the project that owns the key string value.
     N__name__
__module____qualname____doc__	_messagesStringField	keyString     Wlib/googlecloudsdk/generated_clients/apis/apikeys/v2alpha1/apikeys_v2alpha1_messages.pyr	   r	           $i##A&)r   r	   c                   8    e Zd ZdZ ej
                  dd      Zy)ApikeysOperationsGetRequestzaA ApikeysOperationsGetRequest object.

  Fields:
    name: The name of the operation resource.
  r
   TrequiredNr   r   r   r   r   r   namer   r   r   r   r           
		q4	0$r   r   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)ApikeysProjectsKeysCloneRequestae  A ApikeysProjectsKeysCloneRequest object.

  Fields:
    name: Required. The resource name of the Api key to be cloned under same
      parent. `apikeys.keys.get permission` and `apikeys.keys.create
      permission` are required for parent resource.
    v2alpha1CloneKeyRequest: A V2alpha1CloneKeyRequest resource to be passed
      as the request body.
  r
   Tr   V2alpha1CloneKeyRequest   N)	r   r   r   r   r   r   r   MessageFieldv2alpha1CloneKeyRequestr   r   r   r   r   %   s3     
		q4	0$2I223LaPr   r   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy) ApikeysProjectsKeysCreateRequestzA ApikeysProjectsKeysCreateRequest object.

  Fields:
    parent: Required. The project for which this API key will be created.
    v2alpha1ApiKey: A V2alpha1ApiKey resource to be passed as the request
      body.
  r
   Tr   V2alpha1ApiKeyr!   N)	r   r   r   r   r   r   parentr"   v2alpha1ApiKeyr   r   r   r%   r%   4   s2     !9  T2&)9))*:A>.r   r%   c                   8    e Zd ZdZ ej
                  dd      Zy) ApikeysProjectsKeysDeleteRequestz|A ApikeysProjectsKeysDeleteRequest object.

  Fields:
    name: Required. The resource name of the API key to be deleted.
  r
   Tr   Nr   r   r   r   r*   r*   A   r   r   r*   c                   8    e Zd ZdZ ej
                  dd      Zy)&ApikeysProjectsKeysGetKeyStringRequestzA ApikeysProjectsKeysGetKeyStringRequest object.

  Fields:
    name: Required. The resource name of the API key to be retrieved.
  r
   Tr   Nr   r   r   r   r,   r,   K   r   r   r,   c                   8    e Zd ZdZ ej
                  dd      Zy)ApikeysProjectsKeysGetRequestz{A ApikeysProjectsKeysGetRequest object.

  Fields:
    name: Required. The resource name of the API key to be retrieved.
  r
   Tr   Nr   r   r   r   r.   r.   U   r   r   r.   c                       e Zd ZdZ ej
                  d      Z ej                  dej                  j                        Z
 ej
                  d      Z ej
                  dd      Zy	)
ApikeysProjectsKeysListRequesta  A ApikeysProjectsKeysListRequest object.

  Fields:
    filter: Optional. Only list keys that conform to the given filter. The
      allowed filter strings are `state:ACTIVE` and `state:DELETED`. By
      default, ListKeys will return active keys.
    pageSize: Optional. Specifies the maximum number of results to be returned
      at a time.
    pageToken: Optional. Requests a specific page of results.
    parent: Required. Lists all API keys associated with this project.
  r
   r!   variant      Tr   N)r   r   r   r   r   r   filterIntegerFieldVariantINT32pageSize	pageTokenr'   r   r   r   r0   r0   _   sa    
 !9  #&#Y##Ay/@/@/F/FG(#i##A&) 9  T2&r   r0   c                       e Zd ZdZ ej
                  dd      Z ej
                  d      Z ej                  dd      Z	y)	ApikeysProjectsKeysPatchRequesta  A ApikeysProjectsKeysPatchRequest object.

  Fields:
    name: Required. The resource name of the API key to be modified.
    updateMask: Required. The field mask specifies which fields should be
      updated as part of this request. All other fields will be ignored.
      Allowed field mask: `display_name` and `restrictions`
    v2alpha1ApiKey: A V2alpha1ApiKey resource to be passed as the request
      body.
  r
   Tr   r!   r&   r3   N)
r   r   r   r   r   r   r   
updateMaskr"   r(   r   r   r   r<   r<   r   sD    	 
		q4	0$$y$$Q'*)9))*:A>.r   r<   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)"ApikeysProjectsKeysUndeleteRequestzA ApikeysProjectsKeysUndeleteRequest object.

  Fields:
    name: Required. The resource name of the API key to be undeleted.
    v2alpha1UndeleteKeyRequest: A V2alpha1UndeleteKeyRequest resource to be
      passed as the request body.
  r
   Tr   V2alpha1UndeleteKeyRequestr!   N)	r   r   r   r   r   r   r   r"   v2alpha1UndeleteKeyRequestr   r   r   r?   r?      s4     
		q4	0$5y556RTUVr   r?   c                   r   e Zd ZdZ ej
                  d       G d dej                               Z ej
                  d       G d dej                               Z	 ej                  d      Z ej                  dd	      Z ej                  dd
      Z ej                  d      Z ej                  dd      Zy)	Operationa	  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`.
  additionalPropertiesc                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Operation.MetadataValuea  Service-specific metadata associated with the operation. It typically
    contains progress information and common metadata such as create time.
    Some services might not provide such metadata. Any method that returns a
    long-running operation should document the metadata type, if any.

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

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

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r
   extra_types.JsonValuer!   N	r   r   r   r   r   r   keyr"   valuer   r   r   AdditionalPropertyrH      0    
 "I!!!$c$i$$%<a@er   rM   r
   TrepeatedN	r   r   r   r   r   MessagerM   r"   rD   r   r   r   MetadataValuerF      s6    	AY.. 	A 29112FTXYr   rS   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Operation.ResponseValuea  The normal, successful response of the operation. If the original
    method returns no data on success, such as `Delete`, the response is
    `google.protobuf.Empty`. If the original method is standard
    `Get`/`Create`/`Update`, the response should be the resource. For other
    methods, the response should have the type `XxxResponse`, where `Xxx` is
    the original method name. For example, if the original method name is
    `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

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

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

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r
   rI   r!   NrJ   r   r   r   rM   rW      rN   r   rM   r
   TrO   NrQ   r   r   r   ResponseValuerU      s6     	AY.. 	A 29112FTXYr   rX   r
   Statusr!   r3   r4      N)r   r   r   r   r   MapUnrecognizedFieldsr   rR   rS   rX   BooleanFielddoner"   errormetadatar   r   responser   r   r   rC   rC      s    'R "8!!"89Zi'' Z :Z6 "8!!"89Zi'' Z :Z< 
 			"$
 )
 
 1
-%#Y##OQ7(			q	!$#Y##OQ7(r   rC   c                       e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  dd      Z	 ej                  d      Z ej                  ddd	
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej"                  dd
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Zy)StandardQueryParametersa4  Query parameters accepted by all methods.

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

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

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

    Values:
      _1: v1 error format
      _2: v2 error format
    r   r
   N)r   r   r   r   _1_2r   r   r   FXgafvValueValuesEnumrj   #  s     
B	
Br   rm   r
   r!   r3   re   )defaultr4   rZ            T	   
         N)r   r   r   r   r   Enumrh   rm   	EnumFieldf__xgafvr   access_tokenaltcallbackfieldsrK   oauth_tokenr\   prettyPrint	quotaUsertrace
uploadTypeupload_protocolr   r   r   rb   rb      s   4
9>> 
inn  !Y  !8!<(&&&q),	0!VD#"Y""1%( 9  #&	a #%	%%a(+&	&&q$7+#i##A&)
)


#%$y$$R(*)I))"-/r   rb   c                      e Zd ZdZ ej
                  d       G d dej                               Z ej                  dej                  j                        Z ej                  ddd	      Z ej                  d
      Zy)rY   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.
  rD   c                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)Status.DetailsValueListEntryzA DetailsValueListEntry object.

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

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

      Fields:
        key: Name of the additional property.
        value: A extra_types.JsonValue attribute.
      r
   rI   r!   NrJ   r   r   r   rM   r   \  rN   r   rM   r
   TrO   NrQ   r   r   r   DetailsValueListEntryr   O  s6    		AY.. 	A 29112FTXYr   r   r
   r1   r!   TrO   r3   N)r   r   r   r   r   r[   r   rR   r   r6   r7   r8   coder"   detailsr   messager   r   r   rY   rY   ;  s    & "8!!"89Zi// Z :Z2 
 		9+<+<+B+B	C$"I""#:AM'!I!!!$'r   rY   c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy)V2alpha1AndroidApplicationa  Identifier of an Android application for API key use.

  Fields:
    packageName: The package name of the application.
    sha1Fingerprint: The SHA1 fingerprint of the application. For example,
      both sha1 formats are acceptable as input:
      DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09 or
      DA39A3EE5E6B4B0D3255BFEF95601890AFD80709. Output format is the latter.
  r
   r!   N)r   r   r   r   r   r   packageNamesha1Fingerprintr   r   r   r   r   n  s-     &	%%a(+)I))!,/r   r   c                   :    e Zd ZdZ ej
                  ddd      Zy)V2alpha1AndroidKeyRestrictionszKey restrictions that are specific to android keys.

  Fields:
    allowedApplications: A list of Android applications that are allowed to
      make API calls with this key.
  r   r
   TrO   N)r   r   r   r   r   r"   allowedApplicationsr   r   r   r   r   }  s"     /	../KQY]^r   r   c                   ^   e Zd ZdZ G d dej
                        Z ej                  d      Z ej                  d      Z	 ej                  d      Z
 ej                  d      Z ej                  d      Z ej                  d	d
      Z ej                  dd      Z ej                  d      Zy)r&   a  The representation of an API key managed by the `ApiKeys` API. An API
  key is used for programmatic access to a project by a service account.

  Enums:
    StateValueValuesEnum: Whether Key is active or deleted.

  Fields:
    createTime: Output only. A timestamp identifying the time this API key was
      originally created.
    creator: Email address of the user who originally created this API key.
    displayName: Human-readable display name of this API key. Modifiable by
      user.
    keyString: Output only. An encrypted and signed value held by this API
      key. This field will only be accessed through limited methods.
    name: Output only. The resource name of the api key. Api key names have
      the form `projects/123/keys/abcd_123_dx`
    restrictions: Key restrictions.
    state: Whether Key is active or deleted.
    updateTime: Output only. A timestamp identifying the time this API key was
      last updated.
  c                       e Zd ZdZdZdZdZy)#V2alpha1ApiKey.StateValueValuesEnumaZ  Whether Key is active or deleted.

    Values:
      API_KEY_STATE_UNSPECIFIED: Default value indicates that the field is
        unset. It should never be used.
      ACTIVE: The key is in active state and can be used.
      DELETED: The key is marked as deleted. Deleted keys can be listed and
        undeleted within 30 days of deletion.
    r   r
   r!   N)r   r   r   r   API_KEY_STATE_UNSPECIFIEDACTIVEDELETEDr   r   r   StateValueValuesEnumr     s     !"FGr   r   r
   r!   r3   r4   rZ   V2alpha1Restrictionsro   rp   rq   N)r   r   r   r   r   rv   r   r   
createTimecreatordisplayNamer   r   r"   restrictionsrw   state
updateTimer   r   r   r&   r&     s    ,Y^^  %y$$Q'*!I!!!$'%	%%a(+#i##A&)			q	!$'''(>B,
)

4a
8%$y$$Q'*r   r&   c                   \    e Zd ZdZ ej
                  dd      Z ej
                  d      Zy)V2alpha1ApiTargeta  A restriction for a specific service and optionally one or multiple
  specific methods. Both fields are not case sensitive.

  Fields:
    methods: Optional. List of one or more methods that can be called. If
      empty, all methods for the service are allowed. A wildcard (*) can be
      used as the last symbol. Valid examples:
      google.cloud.translate.v2.TranslateService.GetSupportedLanguage
      TranslateText Get* google.cloud.translate.v2.TranslateService.Get*
    service: The service for this restriction. It should be canonical One
      Platform service name, for example:
      google.cloud.translate.v2.TranslateService.
  r
   TrO   r!   N)r   r   r   r   r   r   methodsservicer   r   r   r   r     s/     "I!!!d3'!I!!!$'r   r   c                   8    e Zd ZdZ ej
                  dd      Zy)V2alpha1BrowserKeyRestrictionszKey restrictions that are specific to browser keys.

  Fields:
    allowedReferrers: A list of regular expressions for the referrer URLs that
      are allowed when making an API call with this key.
  r
   TrO   N)r   r   r   r   r   r   allowedReferrersr   r   r   r   r          +Y**1t<r   r   c                       e Zd ZdZy)r    z&Request message for `CloneKey` method.Nr   r   r   r   r   r   r   r    r      s    /r   r    c                   X    e Zd ZdZ ej
                  d      Z ej
                  d      Zy) V2alpha1GetKeyStringNameResponsezResponse message for `GetKeyStringName` method.

  Fields:
    name: The resource name
    parent: The parent that owns the key with the value specified in the
      request.
  r
   r!   N)r   r   r   r   r   r   r   r'   r   r   r   r   r     s-     
		q	!$ 9  #&r   r   c                   4    e Zd ZdZ ej
                  d      Zy)V2alpha1GetKeyStringResponsezrResponse message for `GetKeyString` method.

  Fields:
    keyString: An encrypted and signed value of the key.
  r
   Nr   r   r   r   r   r     r   r   r   c                   8    e Zd ZdZ ej
                  dd      Zy)V2alpha1IosKeyRestrictionszKey restrictions that are specific to iOS keys.

  Fields:
    allowedBundleIds: A list of bundle IDs that are allowed when making API
      calls with this key.
  r
   TrO   N)r   r   r   r   r   r   allowedBundleIdsr   r   r   r   r     r   r   r   c                   ^    e Zd ZdZ ej
                  ddd      Z ej                  d      Zy)V2alpha1ListKeysResponsezResponse message for `ListKeys` method.

  Fields:
    keys: A list of API keys.
    nextPageToken: The pagination token for the next page of results.
  r&   r
   TrO   r!   N)	r   r   r   r   r   r"   keysr   nextPageTokenr   r   r   r   r     s2     
 		 0!d	C$')''*-r   r   c                       e Zd ZdZ ej
                  dd      Z ej
                  ddd      Z ej
                  dd	      Z ej
                  d
d      Z	 ej
                  dd      Z
y)r   a  Restrictions for all types of API Keys.

  Fields:
    androidKeyRestrictions: Key restriction that are specific to android keys.
      Android apps
    apiTargets: A restriction for a specific service and optionally one or
      multiple specific methods. Requests will be allowed if they match any of
      these restrictions. If no restrictions are specified, all targets are
      allowed.
    browserKeyRestrictions: Key restrictions that are specific to browser
      keys. Referer
    iosKeyRestrictions: Key restriction that are specific to iOS keys. IOS app
      id
    serverKeyRestrictions: Key restrictions that are specific to server keys.
      Allowed ips
  r   r
   r   r!   TrO   r   r3   r   r4   V2alpha1ServerKeyRestrictionsrZ   N)r   r   r   r   r   r"   androidKeyRestrictions
apiTargetsbrowserKeyRestrictionsiosKeyRestrictionsserverKeyRestrictionsr   r   r   r   r     s{    " 29112RTUV%y%%&91tL*19112RTUV-y--.JAN0)001PRSTr   r   c                   8    e Zd ZdZ ej
                  dd      Zy)r   zKey restrictions that are specific to server keys.

  Fields:
    allowedIps: A list of the caller IP addresses that are allowed when making
      an API call with this key.
  r
   TrO   N)r   r   r   r   r   r   
allowedIpsr   r   r   r   r      s     %y$$Q6*r   r   c                       e Zd ZdZy)r@   z)Request message for `UndeleteKey` method.Nr   r   r   r   r@   r@   +  s    2r   r@   rx   z$.xgafvrk   1rl   2N)(r   
__future__r   apitools.base.protorpcliter   r   apitools.base.pyr   r   packagerR   r	   r   r   r%   r*   r,   r.   r0   r<   r?   rC   rb   rY   r   r   r&   r   r   r    r   r   r   r   r   r   r@   AddCustomJsonFieldMappingAddCustomJsonEnumMappingrm   r   r   r   <module>r      sT   ' < % ( 'Y%6%6 '1)"3"3 1Qi&7&7 Q
?y'8'8 
?1y'8'8 11Y->-> 11I$5$5 13Y%6%6 3&?i&7&7 ?"
W):): 
Wi8	!! i8X<.i// <.~0%Y 0%f-!2!2 -_Y%6%6 _,(Y&& ,(^%	)) %&=Y%6%6 =0i// 0
$y'8'8 
$'9#4#4 '=!2!2 =	+y00 	+U9,, U27I$5$5 73!2!2 3 # " "Z4 ! ! !114> ! ! !114>r   