#owlelia
## 経緯
- `undefined`と`null`を意識したくない
- `Promise<AsyncResult<T, E>>`と書くのが面倒
## 型定義
```ts
export type AsyncResult<T, E> = Promise<AsyncResult<T, E>>;
export type Nullable<T> = T | undefined | null;
export type AsyncNullable<T> = Promise<Nullable<T>>;
```