socket.io
socket.io copied to clipboard
After updating: Could not find a declaration file for module 'ws'
Describe the bug
Probably related to #5201 but solution in there did not work in this case.
I just updated from socket.io-client
v4.7.5 to v4.8.0 and I am now getting the following error during typescript compilation:
node_modules/engine.io-client/build/esm/transports/websocket.node.d.ts:12:108 - error TS7016: Could not find a declaration file for module 'ws'. '.../node_modules/engine.io-client/node_modules/ws/wrapper.mjs' implicitly has an 'any' type.
Try `npm i --save-dev @types/ws` if it exists or add a new declaration (.d.ts) file containing `declare module 'ws';`
12 createSocket(uri: string, protocols: string | string[] | undefined, opts: Record<string, any>): import("ws");
~~~~
Installing @types/ws
results in a different error:
node_modules/engine.io-client/build/esm/transports/websocket.node.d.ts:12:101 - error TS1340: Module 'ws' does not refer to a type, but is used as a type here. Did you mean 'typeof import('ws')'?
12 createSocket(uri: string, protocols: string | string[] | undefined, opts: Record<string, any>): import("ws");
Reverting back to 4.7.5 works fine again.
My project is TypeScript with target: es2022
and module: preserve
options. I'm doing
import { io } from "socket.io-client";
Expected behavior Type declarations should be included and compilation should not error.
Platform:
- OS: Ubuntu on Window Subsystem for Linux; Windows 11