type_literal_in_constant_pattern    
            
            Don’t use constant patterns with type literals.
This rule is available as of Dart 3.0.0.
This rule has a quick fix available.
Details
If you meant to test if the object has type Foo, instead write Foo _.
BAD:
void f(Object? x) {
  if (x case num) {
    print('int or double');
  }
}
GOOD:
void f(Object? x) {
  if (x case num _) {
    print('int or double');
  }
}
If you do mean to test that the matched value (which you expect to have the
type Type) is equal to the type literal Foo, then this lint can be
silenced using const (Foo).
BAD:
void f(Object? x) {
  if (x case int) {
    print('int');
  }
}
GOOD:
void f(Object? x) {
  if (x case const (int)) {
    print('int');
  }
}
Usage
To enable the type_literal_in_constant_pattern rule,
add type_literal_in_constant_pattern under linter > rules in your
analysis_options.yaml
file:
linter:
  rules:
    - type_literal_in_constant_pattern