variable "environment" {
  description = "Available values: dev, qa, prod."
  default     = "qa"
}

variable "lambda_timeout" {
  type    = number
  default = 600
}

variable "queue_name" {
  description = "Name of SQS queue lambda will receive event from"
  default     = "push-notifications"
}

variable "fanout_queue_name" {
  description = "Name of SQS queue where events are fanned out from"
  default     = "fanout-event"
}

variable "event_buffer_dynamo_table_hash_key" {
  type    = string
  default = "buffer_id"
}

variable "store_state_dynamo_table_name" {
  type        = string
  description = "DynamoDB table name to save store states."
  default     = "notification-store-state"
}

variable "store_state_dynamo_table_hash_key" {
  type        = string
  description = "Hash key for store state table."
  default     = "store_id"
}

variable "notification_dispatcher_lambda_name" {
  type        = string
  description = "Name for notification-dispatcher lambda."
  default     = "notification-dispatcher"
}

variable "notification_dispatcher_cloudwatch_event_schedule" {
  description = "The schedule for cloudwatch event-based invocations. Specify a cron() or rate() expression"
  default     = "rate(15 minutes)"
}

variable "application_family" {
  description = "Access rules"
  default     = "osp"
}

variable "service_name" {
  type        = string
  description = "Common prefix for lambda names and shared resources."
  default     = "lambda-notifications"
}
