// @flow

/** x */
let x: T => string;

/** x2 */
let x2: (a: T) => string;

/** T */
type T = (string[]) => { num: number };

/** T2 */
type T2 = (a: string[]) => { num: number };

/** T3 */
type T3 = (a?: string) => { num: number };
