diff --git a/crates/oxc_parser/src/ts/types.rs b/crates/oxc_parser/src/ts/types.rs index fded11897..484cfa329 100644 --- a/crates/oxc_parser/src/ts/types.rs +++ b/crates/oxc_parser/src/ts/types.rs @@ -397,7 +397,8 @@ impl<'a> ParserImpl<'a> { Kind::Import => self.parse_ts_import_type(), Kind::Minus if self.peek_kind().is_number() => self.parse_ts_literal_type(), Kind::Question => self.parse_js_doc_unknown_or_nullable_type(), - kind if kind.is_literal() => self.parse_ts_literal_type(), + // null should not be parsed as a literal type + kind if kind.is_literal() && kind != Kind::Null => self.parse_ts_literal_type(), _ => { if !self.peek_at(Kind::Dot) { let keyword = self.parse_ts_keyword_type();