type-alias-indirection
a file that exists only to alias another type
Deterministic checkadvisory by defaultbasecode
The argument
Type Alias Indirection
Don't create a file just to alias another type (export type FilterOptions = TableFilterState) — use the original directly; if the semantic distinction matters, a comment at the usage site beats indirection.
The proof
fail
import type { TableFilterState } from './TableFilterState';
// A whole file to give one type a second name. A reader now has to follow the
// alias to learn nothing new.
export type FilterOptions = TableFilterState;
pass
export interface TableFilterState {
query: string;
page: number;
}
Turn it down
Both lines go in your lightsout.config.json.
"standards-checks": { "type-alias-indirection": "advisory" }"standards-checks": { "type-alias-indirection": "off" }