@@ -33,6 +33,7 @@ import type { ExternalObject } from '@rspack/binding';
3333import { fs } from ' fs' ;
3434import { default as fs_2 } from ' graceful-fs' ;
3535import { HookMap } from ' @rspack/lite-tapable' ;
36+ import type http from ' http' ;
3637import { IncomingMessage } from ' http' ;
3738import type { JsAddingRuntimeModule } from ' @rspack/binding' ;
3839import type { JsAfterEmitData } from ' @rspack/binding' ;
@@ -59,6 +60,7 @@ import type { JsStatsError } from '@rspack/binding';
5960import * as liteTapable from ' @rspack/lite-tapable' ;
6061import { Module } from ' @rspack/binding' ;
6162import type { ModuleGraphConnection } from ' @rspack/binding' ;
63+ import type net from ' net' ;
6264import { NormalModule } from ' @rspack/binding' ;
6365import { RawCopyPattern } from ' @rspack/binding' ;
6466import { RawCssExtractPluginOption } from ' @rspack/binding' ;
@@ -84,12 +86,14 @@ import { ServerResponse } from 'http';
8486import { SourceMapDevToolPluginOptions } from ' @rspack/binding' ;
8587import sources = require (' ../compiled/webpack-sources' );
8688import { StatSyncFn } from ' fs' ;
89+ import type stream from ' stream' ;
8790import { sync } from ' @rspack/binding' ;
8891import { SyncBailHook } from ' @rspack/lite-tapable' ;
8992import { SyncHook } from ' @rspack/lite-tapable' ;
9093import { SyncWaterfallHook } from ' @rspack/lite-tapable' ;
9194import type { TransformOutput } from ' @rspack/binding' ;
9295import { Url } from ' url' ;
96+ import type url from ' url' ;
9397
9498// @public (undocumented)
9599type Accessibility = " public" | " protected" | " private" ;
@@ -935,7 +939,7 @@ export class Compilation {
935939 // (undocumented)
936940 getErrors(): WebpackError_2 [];
937941 // (undocumented)
938- getLogger(name : string | (() => string )): Logger ;
942+ getLogger(name : string | (() => string )): Logger_2 ;
939943 // (undocumented)
940944 getPath(filename : string , data ? : PathData ): string ;
941945 // (undocumented)
@@ -1124,7 +1128,7 @@ export class Compiler {
11241128 // (undocumented)
11251129 getCache(name : string ): CacheFacade ;
11261130 // (undocumented)
1127- getInfrastructureLogger(name : string | (() => string )): Logger ;
1131+ getInfrastructureLogger(name : string | (() => string )): Logger_2 ;
11281132 // (undocumented)
11291133 hooks: CompilerHooks ;
11301134 // (undocumented)
@@ -1734,7 +1738,7 @@ type DevMiddlewareContext<_RequestInternal extends IncomingMessage_2 = IncomingM
17341738 options: any ;
17351739 compiler: Compiler | MultiCompiler ;
17361740 watching: Watching | MultiWatching_2 | undefined ;
1737- logger: Logger_2 ;
1741+ logger: Logger ;
17381742 outputFileSystem: OutputFileSystem_2 ;
17391743};
17401744
@@ -2854,7 +2858,7 @@ export type GeneratorOptionsByModuleTypeKnown = {
28542858export type GeneratorOptionsByModuleTypeUnknown = Record <string , Record <string , any >>;
28552859
28562860// @public (undocumented)
2857- type GetChildLogger = (name : string | (() => string )) => Logger ;
2861+ type GetChildLogger = (name : string | (() => string )) => Logger_2 ;
28582862
28592863// @public (undocumented)
28602864export const getNormalizedRspackOptions: (config : RspackOptions ) => RspackOptionsNormalized ;
@@ -3087,9 +3091,107 @@ export type HtmlRspackPluginOptions = {
30873091 [key : string ]: any ;
30883092};
30893093
3094+ // @public (undocumented)
3095+ interface HttpProxyMiddlewareOptions extends HttpProxyServerOptions {
3096+ // (undocumented)
3097+ logLevel? : " debug" | " info" | " warn" | " error" | " silent" ;
3098+ // (undocumented)
3099+ logProvider? : LogProviderCallback ;
3100+ // (undocumented)
3101+ onClose? : OnCloseCallback ;
3102+ // (undocumented)
3103+ onError? : OnErrorCallback ;
3104+ // (undocumented)
3105+ onOpen? : OnOpenCallback ;
3106+ // (undocumented)
3107+ onProxyReq? : OnProxyReqCallback ;
3108+ // (undocumented)
3109+ onProxyReqWs? : OnProxyReqWsCallback ;
3110+ // (undocumented)
3111+ onProxyRes? : OnProxyResCallback ;
3112+ // (undocumented)
3113+ pathRewrite? : {
3114+ [regexp : string ]: string ;
3115+ } | ((path : string , req : Request_2 ) => string ) | ((path : string , req : Request_2 ) => Promise <string >);
3116+ // (undocumented)
3117+ router? : {
3118+ [hostOrPath : string ]: HttpProxyServerOptions [" target" ];
3119+ } | ((req : Request_2 ) => HttpProxyServerOptions [" target" ]) | ((req : Request_2 ) => Promise <HttpProxyServerOptions [" target" ]>);
3120+ }
3121+
30903122// @public (undocumented)
30913123type HttpProxyMiddlewareOptionsFilter = any ;
30923124
3125+ // @public (undocumented)
3126+ interface HttpProxyServerOptions {
3127+ agent? : any ;
3128+ auth? : string | undefined ;
3129+ autoRewrite? : boolean | undefined ;
3130+ buffer? : stream .Stream | undefined ;
3131+ changeOrigin? : boolean | undefined ;
3132+ cookieDomainRewrite? : false | string | {
3133+ [oldDomain : string ]: string ;
3134+ } | undefined ;
3135+ cookiePathRewrite? : false | string | {
3136+ [oldPath : string ]: string ;
3137+ } | undefined ;
3138+ followRedirects? : boolean | undefined ;
3139+ forward? : HttpProxyTargetUrl | undefined ;
3140+ headers? : {
3141+ [header : string ]: string ;
3142+ } | undefined ;
3143+ hostRewrite? : string | undefined ;
3144+ ignorePath? : boolean | undefined ;
3145+ localAddress? : string | undefined ;
3146+ method? : string | undefined ;
3147+ prependPath? : boolean | undefined ;
3148+ preserveHeaderKeyCase? : boolean | undefined ;
3149+ protocolRewrite? : string | undefined ;
3150+ proxyTimeout? : number | undefined ;
3151+ secure? : boolean | undefined ;
3152+ selfHandleResponse? : boolean | undefined ;
3153+ ssl? : any ;
3154+ target? : HttpProxyTarget | undefined ;
3155+ timeout? : number | undefined ;
3156+ toProxy? : boolean | undefined ;
3157+ ws? : boolean | undefined ;
3158+ xfwd? : boolean | undefined ;
3159+ }
3160+
3161+ // @public (undocumented)
3162+ type HttpProxyTarget = HttpProxyTargetUrl | HttpProxyTargetDetailed ;
3163+
3164+ // @public (undocumented)
3165+ interface HttpProxyTargetDetailed {
3166+ // (undocumented)
3167+ ca? : string | undefined ;
3168+ // (undocumented)
3169+ cert? : string | undefined ;
3170+ // (undocumented)
3171+ ciphers? : string | undefined ;
3172+ // (undocumented)
3173+ host: string ;
3174+ // (undocumented)
3175+ hostname? : string | undefined ;
3176+ // (undocumented)
3177+ key? : string | undefined ;
3178+ // (undocumented)
3179+ passphrase? : string | undefined ;
3180+ // (undocumented)
3181+ pfx? : Buffer | string | undefined ;
3182+ // (undocumented)
3183+ port: number ;
3184+ // (undocumented)
3185+ protocol? : string | undefined ;
3186+ // (undocumented)
3187+ secureProtocol? : string | undefined ;
3188+ // (undocumented)
3189+ socketPath? : string | undefined ;
3190+ }
3191+
3192+ // @public (undocumented)
3193+ type HttpProxyTargetUrl = string | Partial <url .Url >;
3194+
30933195// @public
30943196export type HttpUriOptions = HttpUriPluginOptions ;
30953197
@@ -4330,7 +4432,7 @@ export interface LoaderContext<OptionsType = {}> {
43304432 getContextDependencies(): string [];
43314433 // (undocumented)
43324434 getDependencies(): string [];
4333- getLogger(name : string ): Logger ;
4435+ getLogger(name : string ): Logger_2 ;
43344436 // (undocumented)
43354437 getMissingDependencies(): string [];
43364438 getOptions(schema ? : any ): OptionsType ;
@@ -4467,7 +4569,10 @@ export interface LogEntry {
44674569type LogFunction = (type : LogTypeEnum , args : any []) => void ;
44684570
44694571// @public (undocumented)
4470- class Logger {
4572+ type Logger = ReturnType <Compiler [" getInfrastructureLogger" ]>;
4573+
4574+ // @public (undocumented)
4575+ class Logger_2 {
44714576 // (undocumented)
44724577 [LOG_SYMBOL ]: any ;
44734578 // (undocumented)
@@ -4518,7 +4623,21 @@ class Logger {
45184623}
45194624
45204625// @public (undocumented)
4521- type Logger_2 = ReturnType <Compiler [" getInfrastructureLogger" ]>;
4626+ interface LogProvider {
4627+ // (undocumented)
4628+ debug? : Logger ;
4629+ // (undocumented)
4630+ error? : Logger ;
4631+ // (undocumented)
4632+ info? : Logger ;
4633+ // (undocumented)
4634+ log: Logger ;
4635+ // (undocumented)
4636+ warn? : Logger ;
4637+ }
4638+
4639+ // @public (undocumented)
4640+ type LogProviderCallback = (provider : LogProvider ) => LogProvider ;
45224641
45234642// @public
45244643const LogType: Readonly <{
@@ -4860,7 +4979,7 @@ export class MultiCompiler {
48604979 // (undocumented)
48614980 dependencies: WeakMap <Compiler , string []>;
48624981 // (undocumented)
4863- getInfrastructureLogger(name : string ): Logger ;
4982+ getInfrastructureLogger(name : string ): Logger_2 ;
48644983 // (undocumented)
48654984 hooks: {
48664985 done: liteTapable .SyncHook <MultiStats >;
@@ -5210,6 +5329,24 @@ interface ObjectPattern extends PatternBase {
52105329// @public (undocumented)
52115330type ObjectPatternProperty = KeyValuePatternProperty | AssignmentPatternProperty | RestElement ;
52125331
5332+ // @public (undocumented)
5333+ type OnCloseCallback = (proxyRes : Response_2 , proxySocket : net .Socket , proxyHead : any ) => void ;
5334+
5335+ // @public (undocumented)
5336+ type OnErrorCallback = (err : Error , req : Request_2 , res : Response_2 , target ? : string | Partial <url .Url >) => void ;
5337+
5338+ // @public (undocumented)
5339+ type OnOpenCallback = (proxySocket : net .Socket ) => void ;
5340+
5341+ // @public (undocumented)
5342+ type OnProxyReqCallback = (proxyReq : http .ClientRequest , req : Request_2 , res : Response_2 , options : HttpProxyServerOptions ) => void ;
5343+
5344+ // @public (undocumented)
5345+ type OnProxyReqWsCallback = (proxyReq : http .ClientRequest , req : Request_2 , socket : net .Socket , options : HttpProxyServerOptions , head : any ) => void ;
5346+
5347+ // @public (undocumented)
5348+ type OnProxyResCallback = (proxyRes : http .IncomingMessage , req : Request_2 , res : Response_2 ) => void ;
5349+
52135350// @public (undocumented)
52145351type Open = (file : PathLike , flags : undefined | string | number , callback : (arg0 : null | NodeJS .ErrnoException , arg1 ? : number ) => void ) => void ;
52155352
@@ -5837,9 +5974,7 @@ type ProxyConfigArrayItem = {
58375974 context? : HttpProxyMiddlewareOptionsFilter ;
58385975} & {
58395976 bypass? : ByPass ;
5840- } & {
5841- [key : string ]: any ;
5842- };
5977+ } & HttpProxyMiddlewareOptions ;
58435978
58445979// @public (undocumented)
58455980interface PseudoClasses {
0 commit comments