### Version 2.5.16 ### Reproduction link ```ts Vue.extend({ render (h): VNode { return h('div', { directives: [ { name: 'a', value: 'foo' } ] }) } }) ``` ### Steps to reproduce Paste it into `options-test.ts` and run `yarn test:types` ### What is expected? No errors ### What is actually happening? > Property 'oldValue' is missing in type '{ name: string; value: string; }'. <!-- generated by vue-issues. DO NOT REMOVE -->