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:
Apple USB-C Woven Charge Cable (2 m) βββββββ
$21.99 (as of August 16, 2025 23:18 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.)iPhone Charger 3 Pack 10 ft Apple MFi Certified Lightning Nylon Braided Cable Fast Charging Cord Compatible with iPhone 13 12 11 Pro Max XR XS X 8 7 6 Plus SE iPad and More
$9.99 (as of August 16, 2025 23:18 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
$45.49 (as of August 16, 2025 23:18 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.