variable "secrets" {
  description = <<-EOT
    Map of secrets to create. secret_string and secret_binary are mutually
    exclusive. Leave both null to create a secret without an initial value.
    EOT
  type = map(object({
    name                    = string
    description             = optional(string, "")
    kms_key_id              = optional(string, null)
    recovery_window_in_days = optional(number, 30)
    secret_string           = optional(string, null)
    resource_policy         = optional(string, null)
    replica_regions         = optional(list(string), [])
    rotation = optional(object({
      lambda_arn         = string
      rotation_days      = optional(number, 30)
      rotate_immediately = optional(bool, true)
    }), null)
  }))
  default = {}
}

variable "tags" {
  description = "Resource tags to apply to all resources"
  type        = map(string)
  default     = {}
}
