When defining methods where the types have a < or a > (Array<...> or any Flow utility type) and that method implicitly returns a value the syntax highlighting breaks down. Take the following simple example:
// @flow
const someMethod = (params: Array<string>): Array<string> => params
console.log('some console')
The syntax highlighting breaks down after the implicit return of `params. However, if the above was defined as:
// @flow
const someMethod = (param: string): string => params
console.log('some console')
The syntax highlighting remains intact.
The first example can be fixed by using the long-form with an explicit return:
// @flow
const someMethod = (params: Array<string>): Array<string> => { return params }
console.log('some console')