component[] not working

I want to make a list of components so i can have a class containing all the information i need, but i cant find a way to add the components in the inspector. Ive looked at similar questions, and they didnt help. ive also been trying List, but thats not working. heres my code

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[CreateAssetMenu(fileName = "newtileclass", menuName = "Tile Class")]
public class tileClass : ScriptableObject
{
    public string tileName;
    public Sprite tileSprite;
    public int toughness;
    public string properties;
    public tileClass gives;
    public int givesAmount;
    public Component[] components;
}

You can do this:

foreach(Component c in components)
{
    gameObject.AddComponent(c.GetType());
}

However I’m not sure if this will help you. I believe you can’t add components from a scene to a Scriptable Object using the editor, so unless you add those components you need to the list via code, this is kind of pointless.