Looking for informations on how to create sound scripts

Many sweps mention special sound names like:

“Weapon_Shotgun.Reload”
“Weapon_M60.Single”

Now from ym understanding it looks like some kind of script that tell the engine how this specific sound is ment to be played, but is there, somewhere an explanation on the full range of things they can do, and if there is a specific naming convention for them?

Like, for example can you create a custom reloading sound for a weapon by piecing together from a small sample list? (and by this reducing the total amount of sounds your gamemode send to the client)