Differentiate between two different components of the same type in GetComponent

I have two different TMPro components on my game object and I want the name in the name slot and the description in the description slot. Any help is appreciated, thank you kindly.

public class CardManager : MonoBehaviour
{
    public GameObject GenericCardPrefab;
    public Canvas MyCanvas;

    private GameObject[] CardArray = new GameObject[3];
    private string[] CardNames = new string[3];
    private string[] Descriptions = new string[3];    

    void Start()
    {
        CreateArrays();

        for (int i = 0; i < 3; i++)
        {
            GameObject tempGameObject = Instantiate(GenericCardPrefab);
            tempGameObject.GetComponentInChildren<TextMeshProUGUI>().text = CardNames*;*

tempGameObject.GetComponentInChildren().text = Descriptions*;*

CardArray = tempGameObject;
}
}

void CreateArrays()
{
CardNames[0] = “Swift Block”;
Descriptions[0] = “Attack or Defend”;

CardNames[1] = “Clean Strike”;
Descriptions[1] = “Attack or Defend”;

CardNames[2] = “Jab”;
Descriptions[2] = “Attack or Defend”;

}

}
[192502-help.png|192502]

ok I found a solution. There are two scripts managing the cards. A Card Manager which is holding all the card information and a Generic Card script. I created a public TextMeshProUGUI reference on the Generic Card Script

[TextArea(3, 10)]    
public string cardDescription;
public TextMeshProUGUI descriptionText;

[TextArea(3, 10)]
public string descriptionExtra;
public TextMeshProUGUI extraText;

and attached it in the inspector in Unity. Then in my Card Manager Script I can reference the specific component.

tempGameObject.GetComponentInChildren<GenericCard>().descriptionText.text = Descriptions*;*

tempGameObject.GetComponentInChildren().extraText.text = ExtraEffects*;*