To get a certificate signed, you send to the CA a Certificate Signing Request, which is something like an incomplete certificate. The CA then generates a certificate to sign, using as much or as little information from the CSR as the CA decides to include, based on the CA's policies, the type of certificate you purchased, etc. The generated certificate always includes the public key from the CSR, though, and usually contains the same name from the CSR as well.
Both the certificate and the CSR are defined by the X.509 spec, so saying "x509" doesn't narrow things down beyond that.
But as a rule the only thing you send to the CA is the CSR. They don't need anything else and don't have any use for anything else. You certainly don't send them the private key -- the whole signing process was built around the idea that you don't share the private key with anyone, ever. The private key is created at the same time as the CSR, but is kept private, while the CSR is sent to the CA, who gives you a certificate back in exchange. The public key listed in the certificate will match the private key you created when you created the CSR.