What is the difference between AddComponent<>() and AddComponent()?

What I mean is what do I fill in the parameters between <> and ()?

I understand this might be a pretty basic question, but it’s not in the scripting reference and I am quite confused.

The generic version AddComponent<>() justs returns the type you give it. Same as saying AddComponent(“T”) as T; Where T is any child of Component.

I think AddComponent<>() for C# and AddComponent() for JS, and between these two you don´t have to fill anything