use skif_core::{Category, Fixability, RuleMeta, Severity};
use skif_lint::Emitter;
use super::JsRule;
use super::unused_exports::{Scope, report};
use crate::analysis::JsAnalysis;
pub static META: RuleMeta = RuleMeta::new(
"unused-types",
Category::Js,
Some(Severity::Warning),
Fixability::Unsafe,
"An exported type or interface is not imported by any other module.",
);
pub struct UnusedTypes;
impl JsRule for UnusedTypes {
fn meta(&self) -> &'static RuleMeta {
&META
}
fn check(&self, analysis: &JsAnalysis<'_>, out: &mut Emitter<'_>) {
report(&META, Scope::Imports, true, analysis, out);
}
}