Ask your dentist
most veneers are made of porcelain and would cover stains and dark spots.
your dentist can recommend an opaque layer to hide the stain
You need to get an exam and x-ray to see what is the best option for you. you can also send me your x-rays for a second opinion http://my.setmore.com/bookingpage/72b8c781-a64f-45c9-9314-934abdd25118