Use a custom class to define each wave. Store the waves in a list. Here is some psuedo code to start with
[System.Serilizable]
public class Wave {
public int noOfAlienA;
...
public float timeToNextWave;
}
public class Spawner : MonoBehaviour {
public List<Wave> waves;
IEnumerator Spawn(){
foreach (Wave wave in waves){
SpawnNewAliensOfTypeA(wave.noOfAliensA);
yield return new WaitForSeconds(wave.timeToNextWave);
}
}
}