I'm trying to shoot a raycast then if there is collision detection shoot a bullet in that direction. I have no Idea where to start

void Firing()
{
RaycastHit hit;
if(Physics.Raycast(fpscam.transform.position, fpscam.transform.forward, out hit))
{
Debug.Log(“good”);
}
}

You seem to have most of the work done already for a hitscan weapon. Hit has a property collider that will return the object hit by the ray cast. If all you want to do is damage the thing the gun is pointing at when the trigger is pulled, take that collider.GetComponent().Damage or equivalent.
If you really want a bullet for some reason, your best bet to start with is Instantiating a prefab Gameobject, then setting its rotation to the direction of the ray cast, and giving it a large forward velocity, assuming the prefab has a forward velocity.

            if(Physics.Raycast(fpscam.transform.position,fpscam.trasform.forwad, out hit))
            {
                GameObject bullet Instantiate(myBullet, fpscam.transform);
                bullet.transform.rotation.SetLookRotation(fpscam.transform.forward);
                bullet.GetComponent<Rigidbody>().AddForce(100, 0, 0);
            }

Hopefully, that’s enough to get you started. good luck!