variable "aws_region" {
  default     = "us-east-1"
  description = "AWS region"
}

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

variable "service_name" {
  default = "managed-kafka-cdc-destination"
}

variable "application_family" {
  default = "data-platform"
}

variable "team_name" {
  default = "kdh"
}

variable "additional_tags" {
  type = map(string)
  default = {
    project = "kafka-data-highway"
  }
}

variable "topic_types" {
  type = map(object({
    name    = string
    pattern = string
  }))
  default = {
    cdc_analytics = {
      name    = "CDC Analytics"
      pattern = "cdc.analytics.*"
    }
    cdc_musicgraph = {
      name    = "CDC MusicGraph"
      pattern = "cdc.musicgraph*"
    }
    cdc_nrgraph = {
      name    = "CDC NRGraph"
      pattern = "cdc.nrgraph.*"
    }
    cdc_artrelations = {
      name    = "CDC Art Relations"
      pattern = "cdc.artrelations.*"
    }
    cdc_contentreview = {
      name    = "CDC Content Review"
      pattern = "cdc.contentreview.*"
    }
    cdc_owsassets = {
      name    = "CDC OWS Assets"
      pattern = "cdc.owsassets.*"
    }
    cdc_owstrack = {
      name    = "CDC OWS Track"
      pattern = "cdc.owstrack.*"
    }
    cdc_owscollaborator = {
      name    = "CDC OWS Collaborator"
      pattern = "cdc.ows_collaborator.*"
    }
    cdc_royaltyaccounting = {
      name    = "CDC Royalty Accounting"
      pattern = "cdc.royaltyaccounting.*"
    }
    storeapi = {
      name    = "Store API"
      pattern = "*storeapi*"
    }
    etl = {
      name    = "ETLs"
      pattern = "etl.*"
    }
    events = {
      name    = "Event"
      pattern = "event.*"
    }
    graphql = {
      name    = "GraphQL"
      pattern = "graphql.*"
    }
    stream = {
      name    = "Stream"
      pattern = "stream.*"
    }
    dlq = {
      name    = "DLQs"
      pattern = "dlq.*"
    }
    kafka_connect = {
      name    = "Kafka Connect"
      pattern = "_kafka_connect*"
    }
    ksqldb = {
      name    = "ksqlDB"
      pattern = "_confluent-ksql*"
    }
  }
}
