关于Vue源码的提问

before: ?Function;

请问以上在接口前加问号啥意思

 

为什么Vue源码可以在js文件中写ts代码,并且git clone下来后,vscode编辑器一堆红波浪线

 

求大佬解答

vue2的用的flow进行类型管理的,这个是flow的语法,表示before是function类型的

ts里能写js我是知道,js里写ts我就不清楚了