# Interface ComponentWithVariants

All Superinterfaces:
  `Named, SoftwareComponent`

public interface ComponentWithVariants extends SoftwareComponent
Represents a `SoftwareComponent` that provides one or more mutually exclusive children, or variants.

Since:
  4.3

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface Named

  `Named.Namer`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Set<? extends SoftwareComponent>`
  `getVariants()`
  Returns the variants.

  ### Methods inherited from interface Named

  `getName`

- ## Method Details

  - ### getVariants

    Set<? extends SoftwareComponent> getVariants()
    Returns the variants.
    Since:
      4.3