let f1 = fx; let f2 = fx; let f3 = fx['test']; const a2 = f.g; // () => number const a5 = f['g']; // () => number const a7 = (f)['g']; const a6 = f['g']; // type Error const b2 = f?.(); const b3 = f?.(); const b4 = f?.(); // Type Error, expected no type arguments const x1 = f (true); const x2 = f true; const x3 = f; true; (f); (f)(); (f)?.(); (a?.f)(); new (a)(); f<() => T>?.(); f?.<() => T>(); f ? g : h; [f]; { f }