variable "name" {
  type = string
}

variable "env" {
  type        = string
  description = "ENV variable passed to the lambda function"
}

variable "sns_kms_key_arn" {
  type        = string
  description = "ARN of the kms key for SNS encryption"
}

variable "tags" {
  type    = map(string)
  default = {}
}

variable "notify_emails" {
  type        = list(string)
  description = "Subscribe given emails to SNS"
  default     = []
}

variable "s3_paths" {
  type        = list(string)
  description = "List of s3 urls with prefixes which should be monitored"
  default     = []
}

variable "check_types" {
  type        = list(string)
  description = "List of checks which will be performed for the specified S3 prefixes"
  default = [
    "last_file_uploaded_today",
    "last_file_name_contains_current_date"
  ]
}

variable "logs_retention_in_days" {
  type    = number
  default = 180
}

variable "log_level" {
  type    = string
  default = "INFO"
}

variable "timeout" {
  type        = number
  description = "Lambda timeout"
  default     = 60
}

variable "subject" {
  type        = string
  description = "Subject which will be used during notifications to recepients"
  default     = "S3 monitor lambda"
}

variable "schedule_expression" {
  description = "Schedule expression"
  type        = string
}

variable "schedule_enabled" {
  description = "Define if schedule trigger is enabled or not."
  type        = bool
  default     = true
}
