Where to find introduction info about HLSL in UE

I know a little of HLSL, but HLSL in UE is different than Pixel or Vertex shader, I saw this article

There’s a line that says
image

in this example Tex is a color, but Colors are suppose to be RGBA but it has an ID parameter!!!

If i’m writing my own HLSL on my own, how am i suppose to know that color has ID or the parameters types have in general??

where does epic expect people to find such info??

I believe there should be some api or reference that i can’t find, so can anyone point me to the startup guide for Epic’s HLSL code that explain the basics of UE HLSL API and the type definitions.

I’m using microsoft visual studio and I dont get recommendation in my USF file
image

I’m looked at the source code but it’s pain to find the info i’m looking for, the information is scattered everywhere, a little in the FMaterialCompiler header, but it doesnt have all the functions, and I still need to know how to know the definition of types in the usf file