1
- type NodemonEventHandler =
1
+ export type NodemonEventHandler =
2
2
| 'start'
3
3
| 'crash'
4
4
| 'exit'
@@ -10,7 +10,7 @@ type NodemonEventHandler =
10
10
| 'stdout'
11
11
| 'stderr' ;
12
12
13
- type NodemonEventListener = {
13
+ export type NodemonEventListener = {
14
14
on ( event : 'start' | 'crash' | 'readable' , listener : ( ) => void ) : Nodemon ;
15
15
on ( event : 'log' , listener : ( e : NodemonEventLog ) => void ) : Nodemon ;
16
16
on ( event : 'stdout' | 'stderr' , listener : ( e : string ) => void ) : Nodemon ;
@@ -23,7 +23,7 @@ type NodemonEventListener = {
23
23
) : Nodemon ;
24
24
} ;
25
25
26
- type Nodemon = {
26
+ export type Nodemon = {
27
27
( options ?: NodemonSettings ) : Nodemon ;
28
28
on ( event : 'start' | 'crash' , listener : ( ) => void ) : Nodemon ;
29
29
on ( event : 'log' , listener : ( e : NodemonEventLog ) => void ) : Nodemon ;
@@ -75,7 +75,7 @@ type Nodemon = {
75
75
config : NodemonSettings ;
76
76
} ;
77
77
78
- type NodemonEventLog = {
78
+ export type NodemonEventLog = {
79
79
/**
80
80
detail*: what you get with nodemon --verbose.
81
81
status: subprocess starting, restarting.
@@ -89,20 +89,20 @@ type NodemonEventLog = {
89
89
colour : String ;
90
90
} ;
91
91
92
- interface NodemonEventRestart {
92
+ export interface NodemonEventRestart {
93
93
matched ?: {
94
94
result : string [ ] ;
95
95
total : number ;
96
96
} ;
97
97
}
98
98
99
- type NodemonEventQuit = 143 | 130 ;
100
- type NodemonEventExit = number ;
99
+ export type NodemonEventQuit = 143 | 130 ;
100
+ export type NodemonEventExit = number ;
101
101
102
102
// TODO: Define the type of NodemonEventConfig
103
- type NodemonEventConfig = any ;
103
+ export type NodemonEventConfig = any ;
104
104
105
- interface NodemonSettings {
105
+ export interface NodemonConfig {
106
106
/* restartable defaults to "rs" as a string the user enters */
107
107
restartable ?: false | String ;
108
108
colours ?: Boolean ;
@@ -117,10 +117,23 @@ interface NodemonSettings {
117
117
watchOptions ?: WatchOptions ;
118
118
}
119
119
120
- interface WatchOptions {
120
+ export interface NodemonSettings extends NodemonConfig {
121
+ script : string ;
122
+ ext ?: string ; // "js,mjs" etc (should really support an array of strings, but I don't think it does right now)
123
+ events ?: { [ key : string ] : string } ;
124
+ env ?: { [ key : string ] : string } ;
125
+ exec ?: string ; // node, python, etc
126
+ execArgs ?: string [ ] ; // args passed to node, etc,
127
+ nodeArgs ?: string [ ] ; // args passed to node, etc,
128
+ delay ?: number ;
129
+ }
130
+
131
+ export interface WatchOptions {
121
132
ignorePermissionErrors : boolean ;
122
133
ignored : string ;
123
134
persistent : boolean ;
124
135
usePolling : boolean ;
125
136
interval : number ;
126
137
}
138
+
139
+ export default function nodemon ( settings : NodemonSettings ) : Nodemon ;
0 commit comments