variable "aws_region" {
  description = "The AWS region to create resources in."
  default     = "us-east-1"
}

variable "cluster_name" {
  description = "The name of the EKS cluster."
  default     = "complex-eks-cluster"
}

variable "vpc_cidr" {
  description = "The CIDR block for the VPC."
  default     = "10.0.0.0/16"
}

variable "public_subnet_cidrs" {
  description = "The CIDR blocks for the public subnets."
  type        = list(string)
  default     = ["10.0.1.0/24", "10.0.2.0/24"]
}

variable "private_subnet_cidrs" {
  description = "The CIDR blocks for the private subnets."
  type        = list(string)
  default     = ["10.0.3.0/24", "10.0.4.0/24"]
}

variable "availability_zones" {
  description = "The availability zones to create resources in."
  type        = list(string)
  default     = ["us-east-1a", "us-east-1b"]
}

variable "bastion_instance_type" {
  description = "The instance type for the bastion host."
  default     = "t2.micro"
}

variable "cognito_user_pool_name" {
  description = "The name of the Cognito User Pool."
  default     = "eks-user-pool"
}

variable "ecr_repository_name" {
  description = "The name of the ECR repository."
  default     = "eks-app-repo"
}

variable "efs_creation_token" {
  description = "The creation token for the EFS file system."
  default     = "eks-efs-token"
}

variable "es_domain_name" {
  description = "The name of the Elasticsearch domain."
  default     = "eks-elasticsearch"
}

variable "kms_key_alias" {
  description = "The alias for the KMS key."
  default     = "alias/eks-key"
}

variable "log_group_name" {
  description = "The name of the CloudWatch Log Group."
  default     = "/aws/eks/complex-cluster/logs"
}

variable "rabbitmq_username" {
  description = "The username for RabbitMQ."
  default     = "rabbitmq"
}

variable "rabbitmq_password" {
  description = "The password for RabbitMQ."
  sensitive   = true
}

variable "db_name" {
  description = "The name of the RDS database."
  default     = "eksdb"
}

variable "db_username" {
  description = "The username for the RDS database."
  default     = "dbuser"
}

variable "db_password" {
  description = "The password for the RDS database."
  sensitive   = true
}

variable "route53_zone_name" {
  description = "The name of the Route53 hosted zone."
}

variable "s3_bucket_name" {
  description = "The name of the S3 bucket."
  default     = "complex-eks-tf-state-bucket"
}

variable "ses_domain_name" {
  description = "The domain name for SES."
}

variable "sns_topic_name" {
  description = "The name of the SNS topic."
  default     = "eks-notifications"
}

variable "waf_name" {
  description = "The name of the WAF Web ACL."
  default     = "eks-waf-acl"
}
