# ts_construct_unsupported

> A TypeScript file uses import = require, export =, a reference directive, or module/global augmentation.

A TypeScript file uses import = require, export =, a reference directive, or module/global augmentation.

| | |
| --- | --- |
| Kind | Build or validation problem |
| Reported by | Source validation (disko publish, disko dev, room hosts) |
| `disko` exit code | 1 (problems) |

A TypeScript file uses a construct that does not map onto ES modules:
`import x = require()`, `export =`, a `/// <reference …>` directive, or
`declare module` / `declare global` augmentation. Game declarations come from
disko, so a project never needs to add its own.

## Wrong

```ts title="src/main.ts"
/// <reference path="./types.d.ts" />
import rules = require("./rules.ts");
```

## Right

```ts title="src/main.ts"
import * as rules from "./rules.ts";
```

## See also

- [Project structure & imports](/games/project-structure)
- [`extension_unsupported`](/errors/extension_unsupported)
