project:
  name: project
  collection: certificatemanager.projects
  attributes:
  - &project
    parameter_name: projectsId
    attribute_name: project
    help: The project id or number.
    property: core/project

location:
  name: location
  collection: certificatemanager.projects.locations
  attributes:
  - *project
  - &location
    parameter_name: locationsId
    attribute_name: location
    help: Certificate Manager location.
    fallthroughs:
    - hook: googlecloudsdk.command_lib.certificate_manager.hooks:GetLocation
      hint: default value of location is [global]

allDefaultLocation:
  name: location
  collection: certificatemanager.projects.locations
  attributes:
  - *project
  - &allDefaultLocation
    parameter_name: locationsId
    attribute_name: location
    help: Certificate Manager location.
    fallthroughs:
    - value: "-"
      hint: |-
        if left empty, will use the wildcard '-' to list all locations

operation:
  name: operation
  collection: certificatemanager.projects.locations.operations
  attributes:
  - *project
  - *location
  - &operation
    parameter_name: operationsId
    attribute_name: operation
    help: Certificate Manager operation.

dnsAuthorization:
  name: dnsAuthorization
  collection: certificatemanager.projects.locations.dnsAuthorizations
  request_id_field: dnsAuthorizationId
  attributes:
  - *project
  - *location
  - &dnsAuthorization
    parameter_name: dnsAuthorizationsId
    attribute_name: dns_authorization
    help: Certificate Manager DNS Authorization

certificate:
  name: certificate
  collection: certificatemanager.projects.locations.certificates
  request_id_field: certificateId
  attributes:
  - *project
  - *location
  - &certificate
    parameter_name: certificatesId
    attribute_name: certificate
    help: Certificate Manager Certificate

trustConfig:
  name: trustConfig
  collection: certificatemanager.projects.locations.trustConfigs
  request_id_field: trustConfigId
  attributes:
  - *project
  - *location
  - &trustConfig
    parameter_name: trustConfigsId
    attribute_name: trust_config
    help: Certificate Manager Trust Config

certificateIssuanceConfig:
  name: certificateIssuanceConfig
  collection: certificatemanager.projects.locations.certificateIssuanceConfigs
  request_id_field: certificateIssuanceConfigId
  attributes:
  - *project
  - *location
  - &certificateIssuanceConfig
    parameter_name: certificateIssuanceConfigsId
    attribute_name: certificate_issuance_config
    help: Certificate Manager Certificate Issuance Config
