variable "name_prefix" {
  type        = string
  description = "(Required) The name prefix"
}

variable "name_suffix" {
  type        = string
  description = "(Required) The name suffix"
}

variable "vpc_id" {
  type        = string
  description = "(Required) The VPC ID"
}

variable "vpc_cidr" {
  type        = string
  description = "(Required) The VPC CIDR"
}

variable "subnet_ids" {
  type        = list(string)
  description = "(Required) The subnet IDS"
}

variable "vpn_cidrs" {
  type        = list(string)
  description = "(Optional) The list of VPN CIDRs"
  default     = []
}

variable "host_instance_type" {
  type        = string
  description = "(Optional) Broker's instance type"
  default     = "mq.m5.large"
}

variable "engine_version" {
  type        = string
  description = "(Optional) Version of the broker engine."
  default     = "3.13.7"
}

variable "publicly_accessible" {
  type        = bool
  description = "(Optional) Whether to enable connections from applications outside of the VPC that hosts the broker's subnets."
  default     = false
}

variable "deployment_mode" {
  type        = string
  description = "(Optional) Deployment mode of the broker."
  default     = "SINGLE_INSTANCE"
}

variable "root_domain" {
  type        = string
  description = "(Required) Domain zone of the broker."
}

variable "access_logs_enabled" {
  type        = bool
  default     = false
  description = "Enable or disable logging request to S3."
}

variable "access_logs_bucket_name" {
  type        = string
  default     = ""
  description = "S3 bucket (externally created) for storing load balancer access logs. Required if access_logs_enabled is true."
}

variable "access_logs_bucket_prefix" {
  type        = string
  default     = ""
  description = "S3 prefix within the access_logs_bucket_name under which logs are stored. Will be added to default 'elb/' prefix."
}
