# TS1477: An instantiation expression cannot be followed by a property access.

> A generic function with explicit type arguments (an instantiation expression) is followed by `.property`. Wrap it in parentheses or drop the type arguments.

## What it means

`fn<string>` without a call is an instantiation expression: it produces `fn` with its type
parameters fixed. It can't be followed directly by a property access such as `.name`.

## Example

```ts
function id<T>(x: T): T {
  return x;
}

export const n = id<string>.name;
```

## How to fix

- Wrap it: `(id<string>).name`.
- Or access the property on the function itself: `id.name`.

Source: https://ts-r.dev/errors/TS1477/
