## 概要
以下の型定義があったとき。
`types.d.ts`
```ts
export type Mimizou = {
name: string;
};
```
以下のコードはエラーになる。
`index.ts`
```ts
// Cannot find name 'Mimizou'. (tsserver 2304)
function hello(mimizou: Mimizou) {
console.log(mimizou.name);
}
```
以下のようにimportすればもちろん通るが...
`index.ts`
```ts
import { Mimizou } from "./types";
function hello(mimizou: Mimizou) {
console.log(mimizou.name);
}
```
importなしでも使えるようにしたい。
## やり方
プロジェクトルート、または `types` ディレクトリ配下に型定義ファイルを作成し、[[declare]]で定義すればよい。
`types.d.ts`
```ts
declare type Mimizou = {
name: string;
};
```
> [!question] プロジェクトルートや`types`ディレクトリ配下でなくても `.d.ts` ファイルであれば認識する気がする... 🤔
### 上記でうまくいかない場合
`declare global`をつけてやっと認識するケースもあった。違いは謎。。。
`types.d.ts`
```ts
declare global {
namespace tp {
namespace user {
const fryTempura: () => typeof tempura;
}
}
}
```