@@ -75,29 +75,45 @@ export type LegacyResolverResolve<T = unknown> = (
7575
7676export interface LegacyResolver < T = unknown , U = T > {
7777 interfaceVersion ?: 1 | 2
78- resolve : LegacyResolverResolve < T >
79- resolveImport : LegacyResolverResolveImport < U >
78+ resolve ? : LegacyResolverResolve < T >
79+ resolveImport ? : LegacyResolverResolveImport < U >
8080}
8181
82- export interface LegacyResolverObject {
82+ export interface LegacyResolverObjectBase {
8383 // node, typescript, webpack...
8484 name : LegacyResolverName
8585
8686 // Enabled by default
8787 enable ?: boolean
8888
8989 // Options passed to the resolver
90- options ?:
91- | NodeResolverOptions
92- | TsResolverOptions
93- | WebpackResolverOptions
94- // eslint-disable-next-line @typescript-eslint/no-empty-object-type
95- | { }
90+ options ?: unknown
9691
9792 // Any object satisfied Resolver type
9893 resolver : LegacyResolver
9994}
10095
96+ export interface LegacyNodeResolverObject extends LegacyResolverObjectBase {
97+ name : 'node'
98+ options ?: NodeResolverOptions | boolean
99+ }
100+
101+ export interface LegacyTsResolverObject extends LegacyResolverObjectBase {
102+ name : 'typescript'
103+ options ?: TsResolverOptions | boolean
104+ }
105+
106+ export interface LegacyWebpackResolverObject extends LegacyResolverObjectBase {
107+ name : 'webpack'
108+ options ?: WebpackResolverOptions | boolean
109+ }
110+
111+ export type LegacyResolverObject =
112+ | LegacyNodeResolverObject
113+ | LegacyResolverObjectBase
114+ | LegacyTsResolverObject
115+ | LegacyWebpackResolverObject
116+
101117export interface LegacyResolverRecord {
102118 [ resolve : string ] : unknown
103119 node ?: NodeResolverOptions | boolean
0 commit comments