@@ -58,7 +58,7 @@ declare namespace winston {
58
58
[ optionName : string ] : any ;
59
59
}
60
60
61
- interface LogMethod {
61
+ interface LogMethod {
62
62
( level : string , message : string , callback : LogCallback ) : Logger ;
63
63
( level : string , message : string , meta : any , callback : LogCallback ) : Logger ;
64
64
( level : string , message : string , ...meta : any [ ] ) : Logger ;
@@ -74,8 +74,8 @@ declare namespace winston {
74
74
( infoObject : object ) : Logger ;
75
75
}
76
76
77
- interface LoggerOptions < T extends Config . AbstractConfigSetLevels = Config . AbstractConfigSetLevels > {
78
- levels ?: T ;
77
+ interface LoggerOptions {
78
+ levels ?: Config . AbstractConfigSetLevels ;
79
79
silent ?: boolean ;
80
80
format ?: logform . Format ;
81
81
level ?: string ;
@@ -86,32 +86,10 @@ declare namespace winston {
86
86
exceptionHandlers ?: any ;
87
87
}
88
88
89
- type DefaultLevels = {
90
- // for cli and npm levels
91
- error : number ;
92
- warn : number ;
93
- help : number ;
94
- data : number ;
95
- info : number ;
96
- debug : number ;
97
- prompt : number ;
98
- http : number ;
99
- verbose : number ;
100
- input : number ;
101
- silly : number ;
102
-
103
- // for syslog levels only
104
- emerg : number ;
105
- alert : number ;
106
- crit : number ;
107
- warning : number ;
108
- notice : number ;
109
- }
110
-
111
- type Logger < T extends Config . AbstractConfigSetLevels = DefaultLevels > = NodeJSStream . Transform & {
89
+ interface Logger extends NodeJSStream . Transform {
112
90
silent : boolean ;
113
91
format : logform . Format ;
114
- levels : T ;
92
+ levels : Config . AbstractConfigSetLevels ;
115
93
level : string ;
116
94
transports : Transport [ ] ;
117
95
exceptions : ExceptionHandler ;
@@ -125,6 +103,26 @@ declare namespace winston {
125
103
clear ( ) : Logger ;
126
104
close ( ) : Logger ;
127
105
106
+ // for cli and npm levels
107
+ error : LeveledLogMethod ;
108
+ warn : LeveledLogMethod ;
109
+ help : LeveledLogMethod ;
110
+ data : LeveledLogMethod ;
111
+ info : LeveledLogMethod ;
112
+ debug : LeveledLogMethod ;
113
+ prompt : LeveledLogMethod ;
114
+ http : LeveledLogMethod ;
115
+ verbose : LeveledLogMethod ;
116
+ input : LeveledLogMethod ;
117
+ silly : LeveledLogMethod ;
118
+
119
+ // for syslog levels only
120
+ emerg : LeveledLogMethod ;
121
+ alert : LeveledLogMethod ;
122
+ crit : LeveledLogMethod ;
123
+ warning : LeveledLogMethod ;
124
+ notice : LeveledLogMethod ;
125
+
128
126
query ( options ?: QueryOptions , callback ?: ( err : Error , results : any ) => void ) : any ;
129
127
stream ( options ?: any ) : NodeJS . ReadableStream ;
130
128
@@ -144,7 +142,7 @@ declare namespace winston {
144
142
isSillyEnabled ( ) : boolean ;
145
143
146
144
new ( options ?: LoggerOptions ) : Logger ;
147
- } & { [ K in keyof T ] : LeveledLogMethod ; }
145
+ }
148
146
149
147
interface Container {
150
148
loggers : Map < string , Logger > ;
@@ -164,7 +162,7 @@ declare namespace winston {
164
162
let loggers : Container ;
165
163
166
164
let addColors : ( target : Config . AbstractConfigSetColors ) => any ;
167
- let createLogger : < T extends Config . AbstractConfigSetLevels = DefaultLevels > ( options ?: LoggerOptions < T > ) => Logger < T > ;
165
+ let createLogger : ( options ?: LoggerOptions ) => Logger ;
168
166
169
167
// Pass-through npm level methods routed to the default logger.
170
168
let error : LeveledLogMethod ;
0 commit comments