Prime minister says she is doing a ‘fantastic job’ but declines to promise she will be in post at the next election