Using for_each loop

I am trying to use for_each loop and to iterate over variable:

variable "frame_platform_eks_node_groups" {
  type = map
  default = {
    eks_kube_system = {
      desired_capacity = 1,
      max_capacity     = 5,
      min_capacity     = 1,
      instance_type    = ["m5.large"],
      k8s_label        = "eks_kube_system",
      additional_tags  = "eks_kube_system_node"
    },
    eks_jenkins_build = {
      desired_capacity = 1,
      max_capacity     = 10,
      min_capacity     = 1,
      instance_type    = ["m5.large"],
      k8s_label        = "eks_jenkins_build",
      additional_tags  = "eks_jenkins_build_node"
    }
  }
}

for_each loop is this:

node_groups = {
    for_each = var.frame_platform_eks_node_groups
    each.key = {
      desired_capacity = each.value.desired_capacity
      max_capacity     = each.value.max_capacity
      min_capacity     = each.value.min_capacity

      instance_types = each.value.instance_type
      k8s_labels = {
        Name = each.value.k8s_label
      }
      additional_tags = {
        ExtraTag = each.value.additional_tags
      }
    }

Terrafom plan is failing with following error:

on eks-cluster.tf line 15, in module “eks”:
15: each.key = {

If this expression is intended to be a reference, wrap it in parentheses. If
it’s instead intended as a literal name containing periods, wrap it in quotes
to create a string literal.

My intention obviously is to get eks_kube_system and eks_jenkins_build values from the map variable with each.key reference. But something is wrong. Do you have advice what I am doing wrong?

Thank you!