I remember feeling puzzled the first time my TypeScript compiler complained about an imported .module.css
file in my React code. Everything worked at runtime, but VSCode kept throwing red squiggles. To avoid confusion, I decided to create a quick fix that put an end to these errors.
Thank me by sharing on Twitter 🙏
Cannot find module ‘./MyComponent.module.css’ or its corresponding type declarations.
1. Creating a Declaration File
I started by adding a new file named custom.d.ts
in my src
folder. In that file, I placed this line:
declare module '*.module.css';
Because my application only needed .module.css
files, I stuck with one line. However, if I had .module.scss
files, I would add another line:
declare module '*.module.scss';
2. Updating My tsconfig.json
After creating custom.d.ts
, I made sure my tsconfig.json
included it in the include
array. For instance:
AI Guide for Beginners: How to Use AI Prompts & Master Artificial Intelligence in 4 Practical Days (21 Days To Make Money With AI Book 1)
$4.99 (as of April 24, 2025 14:49 GMT +00:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Brother Genuine Standard Yield Toner Cartridge, TN730, Replacement Black Toner, Page Yield Up To 1,200 Pages, Amazon Dash Replenishment Cartridge,1 Pack
$47.99 (as of April 23, 2025 14:48 GMT +00:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Logitech M185 Wireless Mouse, 2.4GHz with USB Mini Receiver, 12-Month Battery Life, 1000 DPI Optical Tracking, Ambidextrous PC/Mac/Laptop - Swift Grey
$13.97 (as of April 23, 2025 14:48 GMT +00:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.){
"compilerOptions": {
"strict": true,
"jsx": "react",
"moduleResolution": "node",
"skipLibCheck": true
},
"include": ["src", "src/custom.d.ts"]
}
That way, TypeScript knew where to find this new declaration file.
3. Verifying in VSCode
Lastly, I restarted VSCode. The error messages about missing types for .module.css
vanished. My editor’s autocompletion also improved since TypeScript recognized those modules as valid imports.
Conclusion
This approach ended my frustration over mysterious CSS module type errors. Now I feel much more confident when importing .module.css
files in my React and TypeScript projects.