File tree Expand file tree Collapse file tree 1 file changed +9
-5
lines changed Expand file tree Collapse file tree 1 file changed +9
-5
lines changed Original file line number Diff line number Diff line change @@ -209,7 +209,11 @@ export type SSEServer = {
209
209
close : ( ) => Promise < void > ;
210
210
} ;
211
211
212
- export const startSSEServer = async ( {
212
+ type ServerLike = {
213
+ connect : Server [ 'connect' ] ;
214
+ } ;
215
+
216
+ export const startSSEServer = async < T extends ServerLike > ( {
213
217
port,
214
218
createServer,
215
219
endpoint,
@@ -218,9 +222,9 @@ export const startSSEServer = async ({
218
222
} : {
219
223
port : number ;
220
224
endpoint : string ;
221
- createServer : ( transport : SSEServerTransport ) => Promise < Server > ;
222
- onConnect ?: ( server : Server ) => void ;
223
- onClose ?: ( server : Server ) => void ;
225
+ createServer : ( ) => Promise < T > ;
226
+ onConnect ?: ( server : T ) => void ;
227
+ onClose ?: ( server : T ) => void ;
224
228
} ) : Promise < SSEServer > => {
225
229
const activeTransports : Record < string , SSEServerTransport > = { } ;
226
230
@@ -237,7 +241,7 @@ export const startSSEServer = async ({
237
241
if ( req . method === "GET" && req . url === endpoint ) {
238
242
const transport = new SSEServerTransport ( "/messages" , res ) ;
239
243
240
- const server = await createServer ( transport ) ;
244
+ const server = await createServer ( ) ;
241
245
242
246
activeTransports [ transport . sessionId ] = transport ;
243
247
You can’t perform that action at this time.
0 commit comments