Putting any type of 'swear word' before a word like 'no' or 'yes' emphasises it. It's a stronger way of saying 'yes' or 'no', and shows that the speaker is surprised, shocked or angry in some way.
'Heaven' - more commonly 'Heavens' - is a very mild and old-fashioned blasphemy which wouldn't offend anyone. There are a few mistakes in this extract, so I suspect that the original text said 'Heavens, no!' Depending on context, this could either show the speaker's disbelief on hearing something, or emphasise a refusal.
You could also say 'God, no!' which is stronger, or various other vulgarities which neither you nor I would use :)