SDK - Missing TypeScript "RequestCredentials" and "CloseEvent" types
- Dominant language
- TypeScript
- Stars
- 37.9k
- Forks
- 4.9k
- Avg merge
- 3d 21h
- Merged PRs (30d)
- 36
Description
### Describe the Bug
Using Directus SDK 21.2.0 in an ESM application, I face the following building error:
```
node_modules/@directus/sdk/dist/auth/types.d.ts:41:17 - error TS2304: Cannot find name 'RequestCredentials'.
41 credentials?: RequestCredentials;
node_modules/@directus/sdk/dist/graphql/types.d.ts:6:17 - error TS2304: Cannot find name 'RequestCredentials'.
6 credentials?: RequestCredentials;
node_modules/@directus/sdk/dist/rest/types.d.ts:11:17 - error TS2304: Cannot find name 'RequestCredentials'.
11 credentials?: RequestCredentials;
```
The type `RequestCredentials` is not imported nor declared in files `dist/auth/types.d.ts`, `dist/graphql/types.d.ts` and `dist/rest/types.d.ts`.
The same with:
```
node_modules/@directus/sdk/dist/realtime/types.d.ts:28:69 - error TS2304: Cannot find name 'CloseEvent'.
28 type WebSocketEventHandler = (this: WebSocketInterface, ev: Event | CloseEvent | any) => any;
~~~~~~~~~~
node_modules/@directus/sdk/dist/realtime/types.d.ts:35:72 - error TS2304: Cannot find name 'CloseEvent'.
35 onWebSocket(event: 'close', callback: (this: WebSocketInterface, ev: CloseEvent) => any): RemoveEventHandler;
```
Had to configure `"skipLibCheck": true` to avoid it but it could be nice to have proper TypeScript definitions.
### To Reproduce
Create a ESM module `"type": "module"` in `package.json` file.
Set `"skipLibCheck": false` in `tsconfig.json`.
### Directus Version
v21.2.0
### Hosting Strategy
Self-Hosted (Docker Image)
### Database
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.