@depup/msw 2.12.13-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (590) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +40 -0
  3. package/browser/package.json +31 -0
  4. package/changes.json +46 -0
  5. package/cli/index.js +35 -0
  6. package/cli/init.js +226 -0
  7. package/cli/invariant.js +9 -0
  8. package/cli/package.json +3 -0
  9. package/config/constants.js +13 -0
  10. package/config/package.json +3 -0
  11. package/config/scripts/postinstall.js +36 -0
  12. package/lib/browser/index.d.mts +102 -0
  13. package/lib/browser/index.d.ts +102 -0
  14. package/lib/browser/index.js +2911 -0
  15. package/lib/browser/index.js.map +1 -0
  16. package/lib/browser/index.mjs +2888 -0
  17. package/lib/browser/index.mjs.map +1 -0
  18. package/lib/core/HttpResponse-Be4eT3x6.d.mts +338 -0
  19. package/lib/core/HttpResponse-Dj6ibgFJ.d.ts +338 -0
  20. package/lib/core/HttpResponse.d.mts +6 -0
  21. package/lib/core/HttpResponse.d.ts +6 -0
  22. package/lib/core/HttpResponse.js +176 -0
  23. package/lib/core/HttpResponse.js.map +1 -0
  24. package/lib/core/HttpResponse.mjs +159 -0
  25. package/lib/core/HttpResponse.mjs.map +1 -0
  26. package/lib/core/SetupApi.d.mts +44 -0
  27. package/lib/core/SetupApi.d.ts +44 -0
  28. package/lib/core/SetupApi.js +112 -0
  29. package/lib/core/SetupApi.js.map +1 -0
  30. package/lib/core/SetupApi.mjs +92 -0
  31. package/lib/core/SetupApi.mjs.map +1 -0
  32. package/lib/core/bypass.d.mts +16 -0
  33. package/lib/core/bypass.d.ts +16 -0
  34. package/lib/core/bypass.js +42 -0
  35. package/lib/core/bypass.js.map +1 -0
  36. package/lib/core/bypass.mjs +22 -0
  37. package/lib/core/bypass.mjs.map +1 -0
  38. package/lib/core/delay.d.mts +18 -0
  39. package/lib/core/delay.d.ts +18 -0
  40. package/lib/core/delay.js +77 -0
  41. package/lib/core/delay.js.map +1 -0
  42. package/lib/core/delay.mjs +57 -0
  43. package/lib/core/delay.mjs.map +1 -0
  44. package/lib/core/getResponse.d.mts +18 -0
  45. package/lib/core/getResponse.d.ts +18 -0
  46. package/lib/core/getResponse.js +35 -0
  47. package/lib/core/getResponse.js.map +1 -0
  48. package/lib/core/getResponse.mjs +17 -0
  49. package/lib/core/getResponse.mjs.map +1 -0
  50. package/lib/core/graphql.d.mts +76 -0
  51. package/lib/core/graphql.d.ts +76 -0
  52. package/lib/core/graphql.js +90 -0
  53. package/lib/core/graphql.js.map +1 -0
  54. package/lib/core/graphql.mjs +72 -0
  55. package/lib/core/graphql.mjs.map +1 -0
  56. package/lib/core/handlers/GraphQLHandler.d.mts +6 -0
  57. package/lib/core/handlers/GraphQLHandler.d.ts +6 -0
  58. package/lib/core/handlers/GraphQLHandler.js +231 -0
  59. package/lib/core/handlers/GraphQLHandler.js.map +1 -0
  60. package/lib/core/handlers/GraphQLHandler.mjs +218 -0
  61. package/lib/core/handlers/GraphQLHandler.mjs.map +1 -0
  62. package/lib/core/handlers/HttpHandler.d.mts +75 -0
  63. package/lib/core/handlers/HttpHandler.d.ts +75 -0
  64. package/lib/core/handlers/HttpHandler.js +128 -0
  65. package/lib/core/handlers/HttpHandler.js.map +1 -0
  66. package/lib/core/handlers/HttpHandler.mjs +112 -0
  67. package/lib/core/handlers/HttpHandler.mjs.map +1 -0
  68. package/lib/core/handlers/RequestHandler.d.mts +6 -0
  69. package/lib/core/handlers/RequestHandler.d.ts +6 -0
  70. package/lib/core/handlers/RequestHandler.js +173 -0
  71. package/lib/core/handlers/RequestHandler.js.map +1 -0
  72. package/lib/core/handlers/RequestHandler.mjs +155 -0
  73. package/lib/core/handlers/RequestHandler.mjs.map +1 -0
  74. package/lib/core/handlers/WebSocketHandler.d.mts +42 -0
  75. package/lib/core/handlers/WebSocketHandler.d.ts +42 -0
  76. package/lib/core/handlers/WebSocketHandler.js +147 -0
  77. package/lib/core/handlers/WebSocketHandler.js.map +1 -0
  78. package/lib/core/handlers/WebSocketHandler.mjs +129 -0
  79. package/lib/core/handlers/WebSocketHandler.mjs.map +1 -0
  80. package/lib/core/handlers/common.d.mts +3 -0
  81. package/lib/core/handlers/common.d.ts +3 -0
  82. package/lib/core/handlers/common.js +17 -0
  83. package/lib/core/handlers/common.js.map +1 -0
  84. package/lib/core/handlers/common.mjs +1 -0
  85. package/lib/core/handlers/common.mjs.map +1 -0
  86. package/lib/core/http.d.mts +31 -0
  87. package/lib/core/http.d.ts +31 -0
  88. package/lib/core/http.js +40 -0
  89. package/lib/core/http.js.map +1 -0
  90. package/lib/core/http.mjs +23 -0
  91. package/lib/core/http.mjs.map +1 -0
  92. package/lib/core/index.d.mts +32 -0
  93. package/lib/core/index.d.ts +32 -0
  94. package/lib/core/index.js +64 -0
  95. package/lib/core/index.js.map +1 -0
  96. package/lib/core/index.mjs +52 -0
  97. package/lib/core/index.mjs.map +1 -0
  98. package/lib/core/isCommonAssetRequest.d.mts +20 -0
  99. package/lib/core/isCommonAssetRequest.d.ts +20 -0
  100. package/lib/core/isCommonAssetRequest.js +42 -0
  101. package/lib/core/isCommonAssetRequest.js.map +1 -0
  102. package/lib/core/isCommonAssetRequest.mjs +22 -0
  103. package/lib/core/isCommonAssetRequest.mjs.map +1 -0
  104. package/lib/core/passthrough.d.mts +24 -0
  105. package/lib/core/passthrough.d.ts +24 -0
  106. package/lib/core/passthrough.js +33 -0
  107. package/lib/core/passthrough.js.map +1 -0
  108. package/lib/core/passthrough.mjs +13 -0
  109. package/lib/core/passthrough.mjs.map +1 -0
  110. package/lib/core/sharedOptions.d.mts +64 -0
  111. package/lib/core/sharedOptions.d.ts +64 -0
  112. package/lib/core/sharedOptions.js +17 -0
  113. package/lib/core/sharedOptions.js.map +1 -0
  114. package/lib/core/sharedOptions.mjs +1 -0
  115. package/lib/core/sharedOptions.mjs.map +1 -0
  116. package/lib/core/sse.d.mts +116 -0
  117. package/lib/core/sse.d.ts +116 -0
  118. package/lib/core/sse.js +607 -0
  119. package/lib/core/sse.js.map +1 -0
  120. package/lib/core/sse.mjs +589 -0
  121. package/lib/core/sse.mjs.map +1 -0
  122. package/lib/core/typeUtils.d.mts +12 -0
  123. package/lib/core/typeUtils.d.ts +12 -0
  124. package/lib/core/typeUtils.js +17 -0
  125. package/lib/core/typeUtils.js.map +1 -0
  126. package/lib/core/typeUtils.mjs +1 -0
  127. package/lib/core/typeUtils.mjs.map +1 -0
  128. package/lib/core/utils/HttpResponse/decorators.d.mts +17 -0
  129. package/lib/core/utils/HttpResponse/decorators.d.ts +17 -0
  130. package/lib/core/utils/HttpResponse/decorators.js +77 -0
  131. package/lib/core/utils/HttpResponse/decorators.js.map +1 -0
  132. package/lib/core/utils/HttpResponse/decorators.mjs +47 -0
  133. package/lib/core/utils/HttpResponse/decorators.mjs.map +1 -0
  134. package/lib/core/utils/cookieStore.d.mts +13 -0
  135. package/lib/core/utils/cookieStore.d.ts +13 -0
  136. package/lib/core/utils/cookieStore.js +90 -0
  137. package/lib/core/utils/cookieStore.js.map +1 -0
  138. package/lib/core/utils/cookieStore.mjs +74 -0
  139. package/lib/core/utils/cookieStore.mjs.map +1 -0
  140. package/lib/core/utils/executeHandlers.d.mts +6 -0
  141. package/lib/core/utils/executeHandlers.d.ts +6 -0
  142. package/lib/core/utils/executeHandlers.js +50 -0
  143. package/lib/core/utils/executeHandlers.js.map +1 -0
  144. package/lib/core/utils/executeHandlers.mjs +30 -0
  145. package/lib/core/utils/executeHandlers.mjs.map +1 -0
  146. package/lib/core/utils/handleRequest.d.mts +29 -0
  147. package/lib/core/utils/handleRequest.d.ts +29 -0
  148. package/lib/core/utils/handleRequest.js +76 -0
  149. package/lib/core/utils/handleRequest.js.map +1 -0
  150. package/lib/core/utils/handleRequest.mjs +58 -0
  151. package/lib/core/utils/handleRequest.mjs.map +1 -0
  152. package/lib/core/utils/internal/Disposable.d.mts +7 -0
  153. package/lib/core/utils/internal/Disposable.d.ts +7 -0
  154. package/lib/core/utils/internal/Disposable.js +33 -0
  155. package/lib/core/utils/internal/Disposable.js.map +1 -0
  156. package/lib/core/utils/internal/Disposable.mjs +13 -0
  157. package/lib/core/utils/internal/Disposable.mjs.map +1 -0
  158. package/lib/core/utils/internal/checkGlobals.d.mts +3 -0
  159. package/lib/core/utils/internal/checkGlobals.d.ts +3 -0
  160. package/lib/core/utils/internal/checkGlobals.js +34 -0
  161. package/lib/core/utils/internal/checkGlobals.js.map +1 -0
  162. package/lib/core/utils/internal/checkGlobals.mjs +14 -0
  163. package/lib/core/utils/internal/checkGlobals.mjs.map +1 -0
  164. package/lib/core/utils/internal/devUtils.d.mts +28 -0
  165. package/lib/core/utils/internal/devUtils.d.ts +28 -0
  166. package/lib/core/utils/internal/devUtils.js +48 -0
  167. package/lib/core/utils/internal/devUtils.js.map +1 -0
  168. package/lib/core/utils/internal/devUtils.mjs +28 -0
  169. package/lib/core/utils/internal/devUtils.mjs.map +1 -0
  170. package/lib/core/utils/internal/getCallFrame.d.mts +6 -0
  171. package/lib/core/utils/internal/getCallFrame.d.ts +6 -0
  172. package/lib/core/utils/internal/getCallFrame.js +41 -0
  173. package/lib/core/utils/internal/getCallFrame.js.map +1 -0
  174. package/lib/core/utils/internal/getCallFrame.mjs +21 -0
  175. package/lib/core/utils/internal/getCallFrame.mjs.map +1 -0
  176. package/lib/core/utils/internal/hasRefCounted.d.mts +3 -0
  177. package/lib/core/utils/internal/hasRefCounted.d.ts +3 -0
  178. package/lib/core/utils/internal/hasRefCounted.js +27 -0
  179. package/lib/core/utils/internal/hasRefCounted.js.map +1 -0
  180. package/lib/core/utils/internal/hasRefCounted.mjs +7 -0
  181. package/lib/core/utils/internal/hasRefCounted.mjs.map +1 -0
  182. package/lib/core/utils/internal/isHandlerKind.d.mts +19 -0
  183. package/lib/core/utils/internal/isHandlerKind.d.ts +19 -0
  184. package/lib/core/utils/internal/isHandlerKind.js +29 -0
  185. package/lib/core/utils/internal/isHandlerKind.js.map +1 -0
  186. package/lib/core/utils/internal/isHandlerKind.mjs +9 -0
  187. package/lib/core/utils/internal/isHandlerKind.mjs.map +1 -0
  188. package/lib/core/utils/internal/isIterable.d.mts +20 -0
  189. package/lib/core/utils/internal/isIterable.d.ts +20 -0
  190. package/lib/core/utils/internal/isIterable.js +30 -0
  191. package/lib/core/utils/internal/isIterable.js.map +1 -0
  192. package/lib/core/utils/internal/isIterable.mjs +10 -0
  193. package/lib/core/utils/internal/isIterable.mjs.map +1 -0
  194. package/lib/core/utils/internal/isObject.d.mts +6 -0
  195. package/lib/core/utils/internal/isObject.d.ts +6 -0
  196. package/lib/core/utils/internal/isObject.js +27 -0
  197. package/lib/core/utils/internal/isObject.js.map +1 -0
  198. package/lib/core/utils/internal/isObject.mjs +7 -0
  199. package/lib/core/utils/internal/isObject.mjs.map +1 -0
  200. package/lib/core/utils/internal/isStringEqual.d.mts +6 -0
  201. package/lib/core/utils/internal/isStringEqual.d.ts +6 -0
  202. package/lib/core/utils/internal/isStringEqual.js +27 -0
  203. package/lib/core/utils/internal/isStringEqual.js.map +1 -0
  204. package/lib/core/utils/internal/isStringEqual.mjs +7 -0
  205. package/lib/core/utils/internal/isStringEqual.mjs.map +1 -0
  206. package/lib/core/utils/internal/jsonParse.d.mts +7 -0
  207. package/lib/core/utils/internal/jsonParse.d.ts +7 -0
  208. package/lib/core/utils/internal/jsonParse.js +31 -0
  209. package/lib/core/utils/internal/jsonParse.js.map +1 -0
  210. package/lib/core/utils/internal/jsonParse.mjs +11 -0
  211. package/lib/core/utils/internal/jsonParse.mjs.map +1 -0
  212. package/lib/core/utils/internal/mergeRight.d.mts +7 -0
  213. package/lib/core/utils/internal/mergeRight.d.ts +7 -0
  214. package/lib/core/utils/internal/mergeRight.js +43 -0
  215. package/lib/core/utils/internal/mergeRight.js.map +1 -0
  216. package/lib/core/utils/internal/mergeRight.mjs +23 -0
  217. package/lib/core/utils/internal/mergeRight.mjs.map +1 -0
  218. package/lib/core/utils/internal/parseGraphQLRequest.d.mts +6 -0
  219. package/lib/core/utils/internal/parseGraphQLRequest.d.ts +6 -0
  220. package/lib/core/utils/internal/parseGraphQLRequest.js +146 -0
  221. package/lib/core/utils/internal/parseGraphQLRequest.js.map +1 -0
  222. package/lib/core/utils/internal/parseGraphQLRequest.mjs +129 -0
  223. package/lib/core/utils/internal/parseGraphQLRequest.mjs.map +1 -0
  224. package/lib/core/utils/internal/parseMultipartData.d.mts +14 -0
  225. package/lib/core/utils/internal/parseMultipartData.d.ts +14 -0
  226. package/lib/core/utils/internal/parseMultipartData.js +83 -0
  227. package/lib/core/utils/internal/parseMultipartData.js.map +1 -0
  228. package/lib/core/utils/internal/parseMultipartData.mjs +63 -0
  229. package/lib/core/utils/internal/parseMultipartData.mjs.map +1 -0
  230. package/lib/core/utils/internal/pipeEvents.d.mts +8 -0
  231. package/lib/core/utils/internal/pipeEvents.d.ts +8 -0
  232. package/lib/core/utils/internal/pipeEvents.js +36 -0
  233. package/lib/core/utils/internal/pipeEvents.js.map +1 -0
  234. package/lib/core/utils/internal/pipeEvents.mjs +16 -0
  235. package/lib/core/utils/internal/pipeEvents.mjs.map +1 -0
  236. package/lib/core/utils/internal/requestHandlerUtils.d.mts +12 -0
  237. package/lib/core/utils/internal/requestHandlerUtils.d.ts +12 -0
  238. package/lib/core/utils/internal/requestHandlerUtils.js +37 -0
  239. package/lib/core/utils/internal/requestHandlerUtils.js.map +1 -0
  240. package/lib/core/utils/internal/requestHandlerUtils.mjs +17 -0
  241. package/lib/core/utils/internal/requestHandlerUtils.mjs.map +1 -0
  242. package/lib/core/utils/internal/toReadonlyArray.d.mts +6 -0
  243. package/lib/core/utils/internal/toReadonlyArray.d.ts +6 -0
  244. package/lib/core/utils/internal/toReadonlyArray.js +29 -0
  245. package/lib/core/utils/internal/toReadonlyArray.js.map +1 -0
  246. package/lib/core/utils/internal/toReadonlyArray.mjs +9 -0
  247. package/lib/core/utils/internal/toReadonlyArray.mjs.map +1 -0
  248. package/lib/core/utils/internal/tryCatch.d.mts +3 -0
  249. package/lib/core/utils/internal/tryCatch.d.ts +3 -0
  250. package/lib/core/utils/internal/tryCatch.js +32 -0
  251. package/lib/core/utils/internal/tryCatch.js.map +1 -0
  252. package/lib/core/utils/internal/tryCatch.mjs +12 -0
  253. package/lib/core/utils/internal/tryCatch.mjs.map +1 -0
  254. package/lib/core/utils/logging/getStatusCodeColor.d.mts +11 -0
  255. package/lib/core/utils/logging/getStatusCodeColor.d.ts +11 -0
  256. package/lib/core/utils/logging/getStatusCodeColor.js +40 -0
  257. package/lib/core/utils/logging/getStatusCodeColor.js.map +1 -0
  258. package/lib/core/utils/logging/getStatusCodeColor.mjs +20 -0
  259. package/lib/core/utils/logging/getStatusCodeColor.mjs.map +1 -0
  260. package/lib/core/utils/logging/getTimestamp.d.mts +9 -0
  261. package/lib/core/utils/logging/getTimestamp.d.ts +9 -0
  262. package/lib/core/utils/logging/getTimestamp.js +32 -0
  263. package/lib/core/utils/logging/getTimestamp.js.map +1 -0
  264. package/lib/core/utils/logging/getTimestamp.mjs +12 -0
  265. package/lib/core/utils/logging/getTimestamp.mjs.map +1 -0
  266. package/lib/core/utils/logging/serializeRequest.d.mts +12 -0
  267. package/lib/core/utils/logging/serializeRequest.d.ts +12 -0
  268. package/lib/core/utils/logging/serializeRequest.js +34 -0
  269. package/lib/core/utils/logging/serializeRequest.js.map +1 -0
  270. package/lib/core/utils/logging/serializeRequest.mjs +14 -0
  271. package/lib/core/utils/logging/serializeRequest.mjs.map +1 -0
  272. package/lib/core/utils/logging/serializeResponse.d.mts +9 -0
  273. package/lib/core/utils/logging/serializeResponse.d.ts +9 -0
  274. package/lib/core/utils/logging/serializeResponse.js +48 -0
  275. package/lib/core/utils/logging/serializeResponse.js.map +1 -0
  276. package/lib/core/utils/logging/serializeResponse.mjs +18 -0
  277. package/lib/core/utils/logging/serializeResponse.mjs.map +1 -0
  278. package/lib/core/utils/matching/matchRequestUrl.d.mts +20 -0
  279. package/lib/core/utils/matching/matchRequestUrl.d.ts +20 -0
  280. package/lib/core/utils/matching/matchRequestUrl.js +55 -0
  281. package/lib/core/utils/matching/matchRequestUrl.js.map +1 -0
  282. package/lib/core/utils/matching/matchRequestUrl.mjs +35 -0
  283. package/lib/core/utils/matching/matchRequestUrl.mjs.map +1 -0
  284. package/lib/core/utils/matching/normalizePath.d.mts +13 -0
  285. package/lib/core/utils/matching/normalizePath.d.ts +13 -0
  286. package/lib/core/utils/matching/normalizePath.js +33 -0
  287. package/lib/core/utils/matching/normalizePath.js.map +1 -0
  288. package/lib/core/utils/matching/normalizePath.mjs +13 -0
  289. package/lib/core/utils/matching/normalizePath.mjs.map +1 -0
  290. package/lib/core/utils/request/getAllAcceptedMimeTypes.d.mts +14 -0
  291. package/lib/core/utils/request/getAllAcceptedMimeTypes.d.ts +14 -0
  292. package/lib/core/utils/request/getAllAcceptedMimeTypes.js +61 -0
  293. package/lib/core/utils/request/getAllAcceptedMimeTypes.js.map +1 -0
  294. package/lib/core/utils/request/getAllAcceptedMimeTypes.mjs +41 -0
  295. package/lib/core/utils/request/getAllAcceptedMimeTypes.mjs.map +1 -0
  296. package/lib/core/utils/request/getRequestCookies.d.mts +3 -0
  297. package/lib/core/utils/request/getRequestCookies.d.ts +3 -0
  298. package/lib/core/utils/request/getRequestCookies.js +79 -0
  299. package/lib/core/utils/request/getRequestCookies.js.map +1 -0
  300. package/lib/core/utils/request/getRequestCookies.mjs +62 -0
  301. package/lib/core/utils/request/getRequestCookies.mjs.map +1 -0
  302. package/lib/core/utils/request/onUnhandledRequest.d.mts +9 -0
  303. package/lib/core/utils/request/onUnhandledRequest.d.ts +9 -0
  304. package/lib/core/utils/request/onUnhandledRequest.js +76 -0
  305. package/lib/core/utils/request/onUnhandledRequest.js.map +1 -0
  306. package/lib/core/utils/request/onUnhandledRequest.mjs +56 -0
  307. package/lib/core/utils/request/onUnhandledRequest.mjs.map +1 -0
  308. package/lib/core/utils/request/storeResponseCookies.d.mts +3 -0
  309. package/lib/core/utils/request/storeResponseCookies.d.ts +3 -0
  310. package/lib/core/utils/request/storeResponseCookies.js +32 -0
  311. package/lib/core/utils/request/storeResponseCookies.js.map +1 -0
  312. package/lib/core/utils/request/storeResponseCookies.mjs +12 -0
  313. package/lib/core/utils/request/storeResponseCookies.mjs.map +1 -0
  314. package/lib/core/utils/request/toPublicUrl.d.mts +7 -0
  315. package/lib/core/utils/request/toPublicUrl.d.ts +7 -0
  316. package/lib/core/utils/request/toPublicUrl.js +31 -0
  317. package/lib/core/utils/request/toPublicUrl.js.map +1 -0
  318. package/lib/core/utils/request/toPublicUrl.mjs +11 -0
  319. package/lib/core/utils/request/toPublicUrl.mjs.map +1 -0
  320. package/lib/core/utils/toResponseInit.d.mts +3 -0
  321. package/lib/core/utils/toResponseInit.d.ts +3 -0
  322. package/lib/core/utils/toResponseInit.js +31 -0
  323. package/lib/core/utils/toResponseInit.js.map +1 -0
  324. package/lib/core/utils/toResponseInit.mjs +11 -0
  325. package/lib/core/utils/toResponseInit.mjs.map +1 -0
  326. package/lib/core/utils/url/cleanUrl.d.mts +7 -0
  327. package/lib/core/utils/url/cleanUrl.d.ts +7 -0
  328. package/lib/core/utils/url/cleanUrl.js +31 -0
  329. package/lib/core/utils/url/cleanUrl.js.map +1 -0
  330. package/lib/core/utils/url/cleanUrl.mjs +11 -0
  331. package/lib/core/utils/url/cleanUrl.mjs.map +1 -0
  332. package/lib/core/utils/url/getAbsoluteUrl.d.mts +6 -0
  333. package/lib/core/utils/url/getAbsoluteUrl.d.ts +6 -0
  334. package/lib/core/utils/url/getAbsoluteUrl.js +38 -0
  335. package/lib/core/utils/url/getAbsoluteUrl.js.map +1 -0
  336. package/lib/core/utils/url/getAbsoluteUrl.mjs +18 -0
  337. package/lib/core/utils/url/getAbsoluteUrl.mjs.map +1 -0
  338. package/lib/core/utils/url/isAbsoluteUrl.d.mts +6 -0
  339. package/lib/core/utils/url/isAbsoluteUrl.d.ts +6 -0
  340. package/lib/core/utils/url/isAbsoluteUrl.js +27 -0
  341. package/lib/core/utils/url/isAbsoluteUrl.js.map +1 -0
  342. package/lib/core/utils/url/isAbsoluteUrl.mjs +7 -0
  343. package/lib/core/utils/url/isAbsoluteUrl.mjs.map +1 -0
  344. package/lib/core/ws/WebSocketClientManager.d.mts +65 -0
  345. package/lib/core/ws/WebSocketClientManager.d.ts +65 -0
  346. package/lib/core/ws/WebSocketClientManager.js +159 -0
  347. package/lib/core/ws/WebSocketClientManager.js.map +1 -0
  348. package/lib/core/ws/WebSocketClientManager.mjs +139 -0
  349. package/lib/core/ws/WebSocketClientManager.mjs.map +1 -0
  350. package/lib/core/ws/WebSocketClientStore.d.mts +13 -0
  351. package/lib/core/ws/WebSocketClientStore.d.ts +13 -0
  352. package/lib/core/ws/WebSocketClientStore.js +26 -0
  353. package/lib/core/ws/WebSocketClientStore.js.map +1 -0
  354. package/lib/core/ws/WebSocketClientStore.mjs +6 -0
  355. package/lib/core/ws/WebSocketClientStore.mjs.map +1 -0
  356. package/lib/core/ws/WebSocketIndexedDBClientStore.d.mts +14 -0
  357. package/lib/core/ws/WebSocketIndexedDBClientStore.d.ts +14 -0
  358. package/lib/core/ws/WebSocketIndexedDBClientStore.js +130 -0
  359. package/lib/core/ws/WebSocketIndexedDBClientStore.js.map +1 -0
  360. package/lib/core/ws/WebSocketIndexedDBClientStore.mjs +110 -0
  361. package/lib/core/ws/WebSocketIndexedDBClientStore.mjs.map +1 -0
  362. package/lib/core/ws/WebSocketMemoryClientStore.d.mts +12 -0
  363. package/lib/core/ws/WebSocketMemoryClientStore.d.ts +12 -0
  364. package/lib/core/ws/WebSocketMemoryClientStore.js +41 -0
  365. package/lib/core/ws/WebSocketMemoryClientStore.js.map +1 -0
  366. package/lib/core/ws/WebSocketMemoryClientStore.mjs +21 -0
  367. package/lib/core/ws/WebSocketMemoryClientStore.mjs.map +1 -0
  368. package/lib/core/ws/handleWebSocketEvent.d.mts +20 -0
  369. package/lib/core/ws/handleWebSocketEvent.d.ts +20 -0
  370. package/lib/core/ws/handleWebSocketEvent.js +61 -0
  371. package/lib/core/ws/handleWebSocketEvent.js.map +1 -0
  372. package/lib/core/ws/handleWebSocketEvent.mjs +43 -0
  373. package/lib/core/ws/handleWebSocketEvent.mjs.map +1 -0
  374. package/lib/core/ws/utils/attachWebSocketLogger.d.mts +18 -0
  375. package/lib/core/ws/utils/attachWebSocketLogger.d.ts +18 -0
  376. package/lib/core/ws/utils/attachWebSocketLogger.js +199 -0
  377. package/lib/core/ws/utils/attachWebSocketLogger.js.map +1 -0
  378. package/lib/core/ws/utils/attachWebSocketLogger.mjs +179 -0
  379. package/lib/core/ws/utils/attachWebSocketLogger.mjs.map +1 -0
  380. package/lib/core/ws/utils/getMessageLength.d.mts +11 -0
  381. package/lib/core/ws/utils/getMessageLength.d.ts +11 -0
  382. package/lib/core/ws/utils/getMessageLength.js +34 -0
  383. package/lib/core/ws/utils/getMessageLength.js.map +1 -0
  384. package/lib/core/ws/utils/getMessageLength.mjs +14 -0
  385. package/lib/core/ws/utils/getMessageLength.mjs.map +1 -0
  386. package/lib/core/ws/utils/getPublicData.d.mts +5 -0
  387. package/lib/core/ws/utils/getPublicData.d.ts +5 -0
  388. package/lib/core/ws/utils/getPublicData.js +37 -0
  389. package/lib/core/ws/utils/getPublicData.js.map +1 -0
  390. package/lib/core/ws/utils/getPublicData.mjs +17 -0
  391. package/lib/core/ws/utils/getPublicData.mjs.map +1 -0
  392. package/lib/core/ws/utils/truncateMessage.d.mts +3 -0
  393. package/lib/core/ws/utils/truncateMessage.d.ts +3 -0
  394. package/lib/core/ws/utils/truncateMessage.js +31 -0
  395. package/lib/core/ws/utils/truncateMessage.js.map +1 -0
  396. package/lib/core/ws/utils/truncateMessage.mjs +11 -0
  397. package/lib/core/ws/utils/truncateMessage.mjs.map +1 -0
  398. package/lib/core/ws/webSocketInterceptor.d.mts +5 -0
  399. package/lib/core/ws/webSocketInterceptor.d.ts +5 -0
  400. package/lib/core/ws/webSocketInterceptor.js +26 -0
  401. package/lib/core/ws/webSocketInterceptor.js.map +1 -0
  402. package/lib/core/ws/webSocketInterceptor.mjs +6 -0
  403. package/lib/core/ws/webSocketInterceptor.mjs.map +1 -0
  404. package/lib/core/ws.d.mts +75 -0
  405. package/lib/core/ws.d.ts +75 -0
  406. package/lib/core/ws.js +69 -0
  407. package/lib/core/ws.js.map +1 -0
  408. package/lib/core/ws.mjs +52 -0
  409. package/lib/core/ws.mjs.map +1 -0
  410. package/lib/iife/index.js +23752 -0
  411. package/lib/iife/index.js.map +1 -0
  412. package/lib/mockServiceWorker.js +349 -0
  413. package/lib/native/index.d.mts +74 -0
  414. package/lib/native/index.d.ts +74 -0
  415. package/lib/native/index.js +156 -0
  416. package/lib/native/index.js.map +1 -0
  417. package/lib/native/index.mjs +134 -0
  418. package/lib/native/index.mjs.map +1 -0
  419. package/lib/node/index.d.mts +91 -0
  420. package/lib/node/index.d.ts +91 -0
  421. package/lib/node/index.js +209 -0
  422. package/lib/node/index.js.map +1 -0
  423. package/lib/node/index.mjs +184 -0
  424. package/lib/node/index.mjs.map +1 -0
  425. package/lib/shims/cookie.d.mts +7 -0
  426. package/lib/shims/cookie.d.ts +7 -0
  427. package/lib/shims/cookie.js +204 -0
  428. package/lib/shims/cookie.mjs +196 -0
  429. package/lib/shims/statuses.d.mts +6 -0
  430. package/lib/shims/statuses.d.ts +6 -0
  431. package/lib/shims/statuses.js +195 -0
  432. package/lib/shims/statuses.mjs +187 -0
  433. package/native/package.json +30 -0
  434. package/node/package.json +33 -0
  435. package/package.json +381 -0
  436. package/src/browser/global.browser.d.ts +1 -0
  437. package/src/browser/index.ts +3 -0
  438. package/src/browser/setupWorker/glossary.ts +138 -0
  439. package/src/browser/setupWorker/setupWorker.node.test.ts +10 -0
  440. package/src/browser/setupWorker/setupWorker.ts +184 -0
  441. package/src/browser/setupWorker/start/createFallbackRequestListener.ts +71 -0
  442. package/src/browser/setupWorker/start/createRequestListener.ts +138 -0
  443. package/src/browser/setupWorker/start/createResponseListener.ts +57 -0
  444. package/src/browser/setupWorker/start/createStartHandler.ts +137 -0
  445. package/src/browser/setupWorker/start/utils/enableMocking.ts +30 -0
  446. package/src/browser/setupWorker/start/utils/getWorkerByRegistration.ts +25 -0
  447. package/src/browser/setupWorker/start/utils/getWorkerInstance.ts +97 -0
  448. package/src/browser/setupWorker/start/utils/prepareStartHandler.test.ts +59 -0
  449. package/src/browser/setupWorker/start/utils/prepareStartHandler.ts +44 -0
  450. package/src/browser/setupWorker/start/utils/printStartMessage.test.ts +84 -0
  451. package/src/browser/setupWorker/start/utils/printStartMessage.ts +51 -0
  452. package/src/browser/setupWorker/start/utils/validateWorkerScope.ts +18 -0
  453. package/src/browser/setupWorker/stop/utils/printStopMessage.test.ts +26 -0
  454. package/src/browser/setupWorker/stop/utils/printStopMessage.ts +13 -0
  455. package/src/browser/tsconfig.browser.build.json +6 -0
  456. package/src/browser/tsconfig.browser.json +9 -0
  457. package/src/browser/utils/checkWorkerIntegrity.ts +42 -0
  458. package/src/browser/utils/deserializeRequest.ts +15 -0
  459. package/src/browser/utils/getAbsoluteWorkerUrl.test.ts +29 -0
  460. package/src/browser/utils/getAbsoluteWorkerUrl.ts +7 -0
  461. package/src/browser/utils/pruneGetRequestBody.test.ts +53 -0
  462. package/src/browser/utils/pruneGetRequestBody.ts +21 -0
  463. package/src/browser/utils/supports.ts +30 -0
  464. package/src/browser/utils/workerChannel.ts +159 -0
  465. package/src/core/HttpResponse.test.ts +378 -0
  466. package/src/core/HttpResponse.ts +248 -0
  467. package/src/core/SetupApi.ts +127 -0
  468. package/src/core/bypass.test.ts +80 -0
  469. package/src/core/bypass.ts +46 -0
  470. package/src/core/delay.ts +82 -0
  471. package/src/core/getResponse.test.ts +74 -0
  472. package/src/core/getResponse.ts +29 -0
  473. package/src/core/graphql.test.ts +11 -0
  474. package/src/core/graphql.ts +136 -0
  475. package/src/core/handlers/GraphQLHandler.test.ts +873 -0
  476. package/src/core/handlers/GraphQLHandler.ts +437 -0
  477. package/src/core/handlers/HttpHandler.test.ts +253 -0
  478. package/src/core/handlers/HttpHandler.ts +214 -0
  479. package/src/core/handlers/RequestHandler.ts +391 -0
  480. package/src/core/handlers/WebSocketHandler.test.ts +127 -0
  481. package/src/core/handlers/WebSocketHandler.ts +209 -0
  482. package/src/core/handlers/common.ts +1 -0
  483. package/src/core/http.test.ts +15 -0
  484. package/src/core/http.ts +64 -0
  485. package/src/core/index.ts +110 -0
  486. package/src/core/isCommonAssetRequest.ts +45 -0
  487. package/src/core/passthrough.test.ts +11 -0
  488. package/src/core/passthrough.ts +25 -0
  489. package/src/core/sharedOptions.ts +66 -0
  490. package/src/core/sse.ts +916 -0
  491. package/src/core/typeUtils.ts +26 -0
  492. package/src/core/utils/HttpResponse/decorators.ts +76 -0
  493. package/src/core/utils/cookieStore.ts +94 -0
  494. package/src/core/utils/executeHandlers.ts +69 -0
  495. package/src/core/utils/handleRequest.test.ts +573 -0
  496. package/src/core/utils/handleRequest.ts +117 -0
  497. package/src/core/utils/internal/Disposable.ts +12 -0
  498. package/src/core/utils/internal/checkGlobals.ts +17 -0
  499. package/src/core/utils/internal/devUtils.test.ts +21 -0
  500. package/src/core/utils/internal/devUtils.ts +44 -0
  501. package/src/core/utils/internal/getCallFrame.test.ts +154 -0
  502. package/src/core/utils/internal/getCallFrame.ts +35 -0
  503. package/src/core/utils/internal/hasRefCounted.test.ts +16 -0
  504. package/src/core/utils/internal/hasRefCounted.ts +8 -0
  505. package/src/core/utils/internal/isHandlerKind.test.ts +64 -0
  506. package/src/core/utils/internal/isHandlerKind.ts +21 -0
  507. package/src/core/utils/internal/isIterable.test.ts +23 -0
  508. package/src/core/utils/internal/isIterable.ts +32 -0
  509. package/src/core/utils/internal/isObject.test.ts +20 -0
  510. package/src/core/utils/internal/isObject.ts +6 -0
  511. package/src/core/utils/internal/isStringEqual.test.ts +45 -0
  512. package/src/core/utils/internal/isStringEqual.ts +6 -0
  513. package/src/core/utils/internal/jsonParse.test.ts +13 -0
  514. package/src/core/utils/internal/jsonParse.ts +13 -0
  515. package/src/core/utils/internal/mergeRight.test.ts +43 -0
  516. package/src/core/utils/internal/mergeRight.ts +30 -0
  517. package/src/core/utils/internal/parseGraphQLRequest.test.ts +99 -0
  518. package/src/core/utils/internal/parseGraphQLRequest.ts +214 -0
  519. package/src/core/utils/internal/parseMultipartData.test.ts +76 -0
  520. package/src/core/utils/internal/parseMultipartData.ts +106 -0
  521. package/src/core/utils/internal/pipeEvents.test.ts +14 -0
  522. package/src/core/utils/internal/pipeEvents.ts +25 -0
  523. package/src/core/utils/internal/requestHandlerUtils.ts +21 -0
  524. package/src/core/utils/internal/toReadonlyArray.test.ts +30 -0
  525. package/src/core/utils/internal/toReadonlyArray.ts +8 -0
  526. package/src/core/utils/internal/tryCatch.test.ts +29 -0
  527. package/src/core/utils/internal/tryCatch.ts +11 -0
  528. package/src/core/utils/logging/getStatusCodeColor.test.ts +22 -0
  529. package/src/core/utils/logging/getStatusCodeColor.ts +20 -0
  530. package/src/core/utils/logging/getTimestamp.test.ts +32 -0
  531. package/src/core/utils/logging/getTimestamp.ts +17 -0
  532. package/src/core/utils/logging/serializeRequest.test.ts +23 -0
  533. package/src/core/utils/logging/serializeRequest.ts +23 -0
  534. package/src/core/utils/logging/serializeResponse.test.ts +77 -0
  535. package/src/core/utils/logging/serializeResponse.ts +31 -0
  536. package/src/core/utils/matching/matchRequestUrl.test.ts +183 -0
  537. package/src/core/utils/matching/matchRequestUrl.ts +77 -0
  538. package/src/core/utils/matching/normalizePath.node.test.ts +44 -0
  539. package/src/core/utils/matching/normalizePath.test.ts +56 -0
  540. package/src/core/utils/matching/normalizePath.ts +22 -0
  541. package/src/core/utils/request/getAllAcceptedMimeTypes.test.ts +86 -0
  542. package/src/core/utils/request/getAllAcceptedMimeTypes.ts +70 -0
  543. package/src/core/utils/request/getRequestCookies.ts +88 -0
  544. package/src/core/utils/request/onUnhandledRequest.node.test.ts +62 -0
  545. package/src/core/utils/request/onUnhandledRequest.test.ts +228 -0
  546. package/src/core/utils/request/onUnhandledRequest.ts +81 -0
  547. package/src/core/utils/request/storeResponseCookies.ts +17 -0
  548. package/src/core/utils/request/toPublicUrl.node.test.ts +17 -0
  549. package/src/core/utils/request/toPublicUrl.test.ts +16 -0
  550. package/src/core/utils/request/toPublicUrl.ts +16 -0
  551. package/src/core/utils/toResponseInit.ts +7 -0
  552. package/src/core/utils/url/cleanUrl.test.ts +22 -0
  553. package/src/core/utils/url/cleanUrl.ts +16 -0
  554. package/src/core/utils/url/getAbsoluteUrl.node.test.ts +19 -0
  555. package/src/core/utils/url/getAbsoluteUrl.test.ts +47 -0
  556. package/src/core/utils/url/getAbsoluteUrl.ts +25 -0
  557. package/src/core/utils/url/isAbsoluteUrl.test.ts +32 -0
  558. package/src/core/utils/url/isAbsoluteUrl.ts +6 -0
  559. package/src/core/ws/WebSocketClientManager.test.ts +164 -0
  560. package/src/core/ws/WebSocketClientManager.ts +241 -0
  561. package/src/core/ws/WebSocketClientStore.ts +14 -0
  562. package/src/core/ws/WebSocketIndexedDBClientStore.ts +140 -0
  563. package/src/core/ws/WebSocketMemoryClientStore.ts +27 -0
  564. package/src/core/ws/handleWebSocketEvent.ts +64 -0
  565. package/src/core/ws/utils/attachWebSocketLogger.ts +245 -0
  566. package/src/core/ws/utils/getMessageLength.test.ts +16 -0
  567. package/src/core/ws/utils/getMessageLength.ts +20 -0
  568. package/src/core/ws/utils/getPublicData.test.ts +38 -0
  569. package/src/core/ws/utils/getPublicData.ts +18 -0
  570. package/src/core/ws/utils/truncateMessage.test.ts +12 -0
  571. package/src/core/ws/utils/truncateMessage.ts +9 -0
  572. package/src/core/ws/webSocketInterceptor.ts +3 -0
  573. package/src/core/ws.test.ts +23 -0
  574. package/src/core/ws.ts +161 -0
  575. package/src/iife/index.ts +2 -0
  576. package/src/mockServiceWorker.js +349 -0
  577. package/src/native/index.ts +21 -0
  578. package/src/node/SetupServerApi.ts +87 -0
  579. package/src/node/SetupServerCommonApi.ts +169 -0
  580. package/src/node/glossary.ts +74 -0
  581. package/src/node/index.ts +3 -0
  582. package/src/node/setupServer.ts +15 -0
  583. package/src/package.json +3 -0
  584. package/src/shims/cookie.ts +7 -0
  585. package/src/shims/statuses.ts +6 -0
  586. package/src/tsconfig.core.build.json +6 -0
  587. package/src/tsconfig.node.build.json +6 -0
  588. package/src/tsconfig.node.json +8 -0
  589. package/src/tsconfig.src.json +10 -0
  590. package/src/tsconfig.worker.json +13 -0
@@ -0,0 +1,338 @@
1
+ import { FetchResponse } from '@mswjs/interceptors';
2
+ import { Iterable, AsyncIterable } from './utils/internal/isIterable.mjs';
3
+ import { MaybePromise, NoInfer } from './typeUtils.mjs';
4
+ import { OperationTypeNode, DocumentNode, GraphQLError } from 'graphql';
5
+ import { Match, Path } from './utils/matching/matchRequestUrl.mjs';
6
+
7
+ interface HandlersExecutionResult {
8
+ handler: RequestHandler;
9
+ parsedResult?: any;
10
+ response?: Response;
11
+ }
12
+ interface ResponseResolutionContext {
13
+ /**
14
+ * A base url to use when resolving relative urls.
15
+ * @note This is primarily used by the `@mswjs/http-middleware`
16
+ * to resolve relative urls in the context of the running server
17
+ */
18
+ baseUrl?: string;
19
+ quiet?: boolean;
20
+ }
21
+ /**
22
+ * Executes the list of request handlers against the given request.
23
+ * Returns the execution result object containing any matching request
24
+ * handler and any mocked response it returned.
25
+ */
26
+ declare const executeHandlers: <Handlers extends Array<RequestHandler>>({ request, requestId, handlers, resolutionContext, }: {
27
+ request: Request;
28
+ requestId: string;
29
+ handlers: Handlers;
30
+ resolutionContext?: ResponseResolutionContext;
31
+ }) => Promise<HandlersExecutionResult | null>;
32
+
33
+ interface ParsedGraphQLQuery {
34
+ operationType: OperationTypeNode;
35
+ operationName?: string;
36
+ }
37
+ type ParsedGraphQLRequest<VariablesType extends GraphQLVariables = GraphQLVariables> = (ParsedGraphQLQuery & {
38
+ query: string;
39
+ variables?: VariablesType;
40
+ }) | undefined;
41
+ declare function parseDocumentNode(node: DocumentNode): ParsedGraphQLQuery;
42
+ type GraphQLParsedOperationsMap = Record<string, string[]>;
43
+ type GraphQLMultipartRequestBody = {
44
+ operations: string;
45
+ map?: string;
46
+ } & {
47
+ [fileName: string]: File;
48
+ };
49
+ /**
50
+ * Determines if a given request can be considered a GraphQL request.
51
+ * Does not parse the query and does not guarantee its validity.
52
+ */
53
+ declare function parseGraphQLRequest(request: Request): Promise<ParsedGraphQLRequest>;
54
+
55
+ interface DocumentTypeDecoration<Result = {
56
+ [key: string]: any;
57
+ }, Variables = {
58
+ [key: string]: any;
59
+ }> {
60
+ __apiType?: (variables: Variables) => Result;
61
+ __resultType?: Result;
62
+ __variablesType?: Variables;
63
+ }
64
+ type GraphQLOperationType = OperationTypeNode | 'all';
65
+ type GraphQLHandlerNameSelector = DocumentNode | RegExp | string;
66
+ type GraphQLQuery = Record<string, any> | null;
67
+ type GraphQLVariables = Record<string, any>;
68
+ interface GraphQLHandlerInfo extends RequestHandlerDefaultInfo {
69
+ operationType: GraphQLOperationType;
70
+ operationName: GraphQLHandlerNameSelector | GraphQLCustomPredicate;
71
+ }
72
+ type GraphQLRequestParsedResult = {
73
+ match: Match;
74
+ cookies: Record<string, string>;
75
+ } & (ParsedGraphQLRequest<GraphQLVariables>
76
+ /**
77
+ * An empty version of the ParsedGraphQLRequest
78
+ * which simplifies the return type of the resolver
79
+ * when the request is to a non-matching endpoint
80
+ */
81
+ | {
82
+ operationType?: undefined;
83
+ operationName?: undefined;
84
+ query?: undefined;
85
+ variables?: undefined;
86
+ });
87
+ type GraphQLResolverExtras<Variables extends GraphQLVariables> = {
88
+ query: string;
89
+ operationName: string;
90
+ variables: Variables;
91
+ cookies: Record<string, string>;
92
+ };
93
+ type GraphQLRequestBody<VariablesType extends GraphQLVariables> = GraphQLJsonRequestBody<VariablesType> | GraphQLMultipartRequestBody | Record<string, any> | undefined;
94
+ interface GraphQLJsonRequestBody<Variables extends GraphQLVariables> {
95
+ query: string;
96
+ variables?: Variables;
97
+ }
98
+ type GraphQLResponseBody<BodyType extends DefaultBodyType> = {
99
+ data?: BodyType | null;
100
+ errors?: readonly Partial<GraphQLError>[] | null;
101
+ extensions?: Record<string, any>;
102
+ } | null | undefined;
103
+ type GraphQLCustomPredicate = (args: {
104
+ request: Request;
105
+ query: string;
106
+ operationType: GraphQLOperationType;
107
+ operationName: string;
108
+ variables: GraphQLVariables;
109
+ cookies: Record<string, string>;
110
+ }) => GraphQLCustomPredicateResult | Promise<GraphQLCustomPredicateResult>;
111
+ type GraphQLCustomPredicateResult = boolean | {
112
+ matches: boolean;
113
+ };
114
+ type GraphQLPredicate<Query = any, Variables = any> = GraphQLHandlerNameSelector | DocumentTypeDecoration<Query, Variables> | GraphQLCustomPredicate;
115
+ declare function isDocumentNode(value: DocumentNode | any): value is DocumentNode;
116
+ declare class GraphQLHandler extends RequestHandler<GraphQLHandlerInfo, GraphQLRequestParsedResult, GraphQLResolverExtras<any>> {
117
+ #private;
118
+ private endpoint;
119
+ static parsedRequestCache: WeakMap<Request, ParsedGraphQLRequest<GraphQLVariables>>;
120
+ constructor(operationType: GraphQLOperationType, predicate: GraphQLPredicate, endpoint: Path, resolver: ResponseResolver<GraphQLResolverExtras<any>, any, any>, options?: RequestHandlerOptions);
121
+ /**
122
+ * Parses the request body, once per request, cached across all
123
+ * GraphQL handlers. This is done to avoid multiple parsing of the
124
+ * request body, which each requires a clone of the request.
125
+ */
126
+ parseGraphQLRequestOrGetFromCache(request: Request): Promise<ParsedGraphQLRequest<GraphQLVariables>>;
127
+ parse(args: {
128
+ request: Request;
129
+ }): Promise<GraphQLRequestParsedResult>;
130
+ predicate(args: {
131
+ request: Request;
132
+ parsedResult: GraphQLRequestParsedResult;
133
+ }): Promise<boolean>;
134
+ run(args: {
135
+ request: StrictRequest<any>;
136
+ requestId: string;
137
+ resolutionContext?: ResponseResolutionContext;
138
+ }): Promise<RequestHandlerExecutionResult<GraphQLRequestParsedResult> | null>;
139
+ private matchOperationName;
140
+ protected extendResolverArgs(args: {
141
+ request: Request;
142
+ parsedResult: GraphQLRequestParsedResult;
143
+ }): {
144
+ query: string;
145
+ operationType: OperationTypeNode;
146
+ operationName: string;
147
+ variables: GraphQLVariables;
148
+ cookies: Record<string, string>;
149
+ };
150
+ log(args: {
151
+ request: Request;
152
+ response: Response;
153
+ parsedResult: GraphQLRequestParsedResult;
154
+ }): Promise<void>;
155
+ }
156
+
157
+ type DefaultRequestMultipartBody = Record<string, string | File | Array<string | File>>;
158
+ type DefaultBodyType = Record<string, any> | DefaultRequestMultipartBody | string | number | boolean | null | undefined;
159
+ type JsonBodyType = Record<string, any> | string | number | boolean | null | undefined;
160
+ interface RequestHandlerDefaultInfo {
161
+ header: string;
162
+ }
163
+ interface RequestHandlerInternalInfo {
164
+ callFrame?: string;
165
+ }
166
+ type ResponseResolverReturnType<ResponseBodyType extends DefaultBodyType = undefined> = ([ResponseBodyType] extends [undefined] ? Response : ResponseBodyType extends GraphQLRequestBody<any> ? HttpResponse<ResponseBodyType> | DefaultUnsafeFetchResponse : HttpResponse<ResponseBodyType>) | undefined | void;
167
+ type MaybeAsyncResponseResolverReturnType<ResponseBodyType extends DefaultBodyType> = MaybePromise<ResponseResolverReturnType<ResponseBodyType>>;
168
+ type AsyncResponseResolverReturnType<ResponseBodyType extends DefaultBodyType> = MaybePromise<ResponseResolverReturnType<ResponseBodyType> | Iterable<MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>> | AsyncIterable<MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>>>;
169
+ type ResponseResolverInfo<ResolverExtraInfo extends Record<string, unknown>, RequestBodyType extends DefaultBodyType = DefaultBodyType> = {
170
+ request: StrictRequest<RequestBodyType>;
171
+ requestId: string;
172
+ } & ResolverExtraInfo;
173
+ type ResponseResolver<ResolverExtraInfo extends Record<string, unknown> = Record<string, unknown>, RequestBodyType extends DefaultBodyType = DefaultBodyType, ResponseBodyType extends DefaultBodyType = undefined> = (info: ResponseResolverInfo<ResolverExtraInfo, RequestBodyType>) => AsyncResponseResolverReturnType<ResponseBodyType>;
174
+ interface RequestHandlerArgs<HandlerInfo, HandlerOptions extends RequestHandlerOptions> {
175
+ info: HandlerInfo;
176
+ resolver: ResponseResolver<any>;
177
+ options?: HandlerOptions;
178
+ }
179
+ interface RequestHandlerOptions {
180
+ once?: boolean;
181
+ }
182
+ interface RequestHandlerExecutionResult<ParsedResult extends object | undefined> {
183
+ handler: RequestHandler;
184
+ parsedResult?: ParsedResult;
185
+ request: Request;
186
+ requestId: string;
187
+ response?: Response;
188
+ }
189
+ declare abstract class RequestHandler<HandlerInfo extends RequestHandlerDefaultInfo = RequestHandlerDefaultInfo, ParsedResult extends Record<string, any> | undefined = any, ResolverExtras extends Record<string, unknown> = any, HandlerOptions extends RequestHandlerOptions = RequestHandlerOptions> {
190
+ static cache: WeakMap<StrictRequest<DefaultBodyType>, StrictRequest<DefaultBodyType>>;
191
+ private readonly __kind;
192
+ info: HandlerInfo & RequestHandlerInternalInfo;
193
+ /**
194
+ * Indicates whether this request handler has been used
195
+ * (its resolver has successfully executed).
196
+ */
197
+ isUsed: boolean;
198
+ protected resolver: ResponseResolver<ResolverExtras, any, any>;
199
+ private resolverIterator?;
200
+ private resolverIteratorResult?;
201
+ private options?;
202
+ constructor(args: RequestHandlerArgs<HandlerInfo, HandlerOptions>);
203
+ /**
204
+ * Determine if the intercepted request should be mocked.
205
+ */
206
+ abstract predicate(args: {
207
+ request: Request;
208
+ parsedResult: ParsedResult;
209
+ resolutionContext?: ResponseResolutionContext;
210
+ }): boolean | Promise<boolean>;
211
+ /**
212
+ * Print out the successfully handled request.
213
+ */
214
+ abstract log(args: {
215
+ request: Request;
216
+ response: Response;
217
+ parsedResult: ParsedResult;
218
+ }): void;
219
+ /**
220
+ * Parse the intercepted request to extract additional information from it.
221
+ * Parsed result is then exposed to other methods of this request handler.
222
+ */
223
+ parse(_args: {
224
+ request: Request;
225
+ resolutionContext?: ResponseResolutionContext;
226
+ }): Promise<ParsedResult>;
227
+ /**
228
+ * Test if this handler matches the given request.
229
+ *
230
+ * This method is not used internally but is exposed
231
+ * as a convenience method for consumers writing custom
232
+ * handlers.
233
+ */
234
+ test(args: {
235
+ request: Request;
236
+ resolutionContext?: ResponseResolutionContext;
237
+ }): Promise<boolean>;
238
+ protected extendResolverArgs(_args: {
239
+ request: Request;
240
+ parsedResult: ParsedResult;
241
+ }): ResolverExtras;
242
+ private cloneRequestOrGetFromCache;
243
+ /**
244
+ * Execute this request handler and produce a mocked response
245
+ * using the given resolver function.
246
+ */
247
+ run(args: {
248
+ request: StrictRequest<any>;
249
+ requestId: string;
250
+ resolutionContext?: ResponseResolutionContext;
251
+ }): Promise<RequestHandlerExecutionResult<ParsedResult> | null>;
252
+ private wrapResolver;
253
+ private createExecutionResult;
254
+ }
255
+
256
+ interface HttpResponseInit extends ResponseInit {
257
+ type?: ResponseType;
258
+ }
259
+ declare const bodyType: unique symbol;
260
+ type DefaultUnsafeFetchResponse = Response & {
261
+ [bodyType]?: never;
262
+ };
263
+ interface StrictRequest<BodyType extends JsonBodyType> extends Request {
264
+ json(): Promise<BodyType>;
265
+ clone(): StrictRequest<BodyType>;
266
+ }
267
+ /**
268
+ * Opaque `Response` type that supports strict body type.
269
+ *
270
+ * @deprecated Please use {@link HttpResponse} instead.
271
+ */
272
+ type StrictResponse<BodyType extends DefaultBodyType> = HttpResponse<BodyType>;
273
+ declare const kDefaultContentType: unique symbol;
274
+ /**
275
+ * A drop-in replacement for the standard `Response` class
276
+ * to allow additional features, like mocking the response `Set-Cookie` header.
277
+ *
278
+ * @example
279
+ * new HttpResponse('Hello world', { status: 201 })
280
+ * HttpResponse.json({ name: 'John' })
281
+ * HttpResponse.formData(form)
282
+ *
283
+ * @see {@link https://mswjs.io/docs/api/http-response `HttpResponse` API reference}
284
+ */
285
+ declare class HttpResponse<BodyType extends DefaultBodyType> extends FetchResponse {
286
+ readonly [bodyType]: BodyType;
287
+ constructor(body?: NoInfer<BodyType> | null, init?: HttpResponseInit);
288
+ static error(): HttpResponse<any>;
289
+ /**
290
+ * Create a `Response` with a `Content-Type: "text/plain"` body.
291
+ * @example
292
+ * HttpResponse.text('hello world')
293
+ * HttpResponse.text('Error', { status: 500 })
294
+ */
295
+ static text<BodyType extends string>(body?: NoInfer<BodyType> | null, init?: HttpResponseInit): HttpResponse<BodyType>;
296
+ /**
297
+ * Create a `Response` with a `Content-Type: "application/json"` body.
298
+ * @example
299
+ * HttpResponse.json({ firstName: 'John' })
300
+ * HttpResponse.json({ error: 'Not Authorized' }, { status: 401 })
301
+ */
302
+ static json<BodyType extends JsonBodyType>(body?: NoInfer<BodyType> | null | undefined, init?: HttpResponseInit): HttpResponse<BodyType>;
303
+ /**
304
+ * Create a `Response` with a `Content-Type: "application/xml"` body.
305
+ * @example
306
+ * HttpResponse.xml(`<user name="John" />`)
307
+ * HttpResponse.xml(`<article id="abc-123" />`, { status: 201 })
308
+ */
309
+ static xml<BodyType extends string>(body?: BodyType | null, init?: HttpResponseInit): HttpResponse<BodyType>;
310
+ /**
311
+ * Create a `Response` with a `Content-Type: "text/html"` body.
312
+ * @example
313
+ * HttpResponse.html(`<p class="author">Jane Doe</p>`)
314
+ * HttpResponse.html(`<main id="abc-123">Main text</main>`, { status: 201 })
315
+ */
316
+ static html<BodyType extends string>(body?: BodyType | null, init?: HttpResponseInit): HttpResponse<BodyType>;
317
+ /**
318
+ * Create a `Response` with an `ArrayBuffer` body.
319
+ * @example
320
+ * const buffer = new ArrayBuffer(3)
321
+ * const view = new Uint8Array(buffer)
322
+ * view.set([1, 2, 3])
323
+ *
324
+ * HttpResponse.arrayBuffer(buffer)
325
+ */
326
+ static arrayBuffer<BodyType extends ArrayBuffer | SharedArrayBuffer>(body?: BodyType, init?: HttpResponseInit): HttpResponse<BodyType>;
327
+ /**
328
+ * Create a `Response` with a `FormData` body.
329
+ * @example
330
+ * const data = new FormData()
331
+ * data.set('name', 'Alice')
332
+ *
333
+ * HttpResponse.formData(data)
334
+ */
335
+ static formData(body?: FormData, init?: HttpResponseInit): HttpResponse<FormData>;
336
+ }
337
+
338
+ export { type AsyncResponseResolverReturnType as A, type GraphQLHandlerNameSelector as B, type GraphQLHandlerInfo as C, type DefaultBodyType as D, type GraphQLRequestParsedResult as E, type GraphQLCustomPredicateResult as F, GraphQLHandler as G, HttpResponse as H, isDocumentNode as I, type JsonBodyType as J, type RequestHandlerInternalInfo as K, type RequestHandlerArgs as L, type MaybeAsyncResponseResolverReturnType as M, type RequestHandlerExecutionResult as N, bodyType as O, type ParsedGraphQLRequest as P, type DefaultUnsafeFetchResponse as Q, RequestHandler as R, type StrictRequest as S, kDefaultContentType as T, type ResponseResolver as a, type ResponseResolverReturnType as b, type RequestHandlerOptions as c, type DefaultRequestMultipartBody as d, type ResponseResolverInfo as e, type GraphQLQuery as f, type GraphQLVariables as g, type GraphQLRequestBody as h, type GraphQLResponseBody as i, type GraphQLJsonRequestBody as j, type GraphQLOperationType as k, type GraphQLCustomPredicate as l, type ResponseResolutionContext as m, type HttpResponseInit as n, type StrictResponse as o, type GraphQLPredicate as p, type GraphQLResolverExtras as q, type RequestHandlerDefaultInfo as r, type HandlersExecutionResult as s, executeHandlers as t, type ParsedGraphQLQuery as u, parseDocumentNode as v, type GraphQLParsedOperationsMap as w, type GraphQLMultipartRequestBody as x, parseGraphQLRequest as y, type DocumentTypeDecoration as z };
@@ -0,0 +1,338 @@
1
+ import { FetchResponse } from '@mswjs/interceptors';
2
+ import { Iterable, AsyncIterable } from './utils/internal/isIterable.js';
3
+ import { MaybePromise, NoInfer } from './typeUtils.js';
4
+ import { OperationTypeNode, DocumentNode, GraphQLError } from 'graphql';
5
+ import { Match, Path } from './utils/matching/matchRequestUrl.js';
6
+
7
+ interface HandlersExecutionResult {
8
+ handler: RequestHandler;
9
+ parsedResult?: any;
10
+ response?: Response;
11
+ }
12
+ interface ResponseResolutionContext {
13
+ /**
14
+ * A base url to use when resolving relative urls.
15
+ * @note This is primarily used by the `@mswjs/http-middleware`
16
+ * to resolve relative urls in the context of the running server
17
+ */
18
+ baseUrl?: string;
19
+ quiet?: boolean;
20
+ }
21
+ /**
22
+ * Executes the list of request handlers against the given request.
23
+ * Returns the execution result object containing any matching request
24
+ * handler and any mocked response it returned.
25
+ */
26
+ declare const executeHandlers: <Handlers extends Array<RequestHandler>>({ request, requestId, handlers, resolutionContext, }: {
27
+ request: Request;
28
+ requestId: string;
29
+ handlers: Handlers;
30
+ resolutionContext?: ResponseResolutionContext;
31
+ }) => Promise<HandlersExecutionResult | null>;
32
+
33
+ interface ParsedGraphQLQuery {
34
+ operationType: OperationTypeNode;
35
+ operationName?: string;
36
+ }
37
+ type ParsedGraphQLRequest<VariablesType extends GraphQLVariables = GraphQLVariables> = (ParsedGraphQLQuery & {
38
+ query: string;
39
+ variables?: VariablesType;
40
+ }) | undefined;
41
+ declare function parseDocumentNode(node: DocumentNode): ParsedGraphQLQuery;
42
+ type GraphQLParsedOperationsMap = Record<string, string[]>;
43
+ type GraphQLMultipartRequestBody = {
44
+ operations: string;
45
+ map?: string;
46
+ } & {
47
+ [fileName: string]: File;
48
+ };
49
+ /**
50
+ * Determines if a given request can be considered a GraphQL request.
51
+ * Does not parse the query and does not guarantee its validity.
52
+ */
53
+ declare function parseGraphQLRequest(request: Request): Promise<ParsedGraphQLRequest>;
54
+
55
+ interface DocumentTypeDecoration<Result = {
56
+ [key: string]: any;
57
+ }, Variables = {
58
+ [key: string]: any;
59
+ }> {
60
+ __apiType?: (variables: Variables) => Result;
61
+ __resultType?: Result;
62
+ __variablesType?: Variables;
63
+ }
64
+ type GraphQLOperationType = OperationTypeNode | 'all';
65
+ type GraphQLHandlerNameSelector = DocumentNode | RegExp | string;
66
+ type GraphQLQuery = Record<string, any> | null;
67
+ type GraphQLVariables = Record<string, any>;
68
+ interface GraphQLHandlerInfo extends RequestHandlerDefaultInfo {
69
+ operationType: GraphQLOperationType;
70
+ operationName: GraphQLHandlerNameSelector | GraphQLCustomPredicate;
71
+ }
72
+ type GraphQLRequestParsedResult = {
73
+ match: Match;
74
+ cookies: Record<string, string>;
75
+ } & (ParsedGraphQLRequest<GraphQLVariables>
76
+ /**
77
+ * An empty version of the ParsedGraphQLRequest
78
+ * which simplifies the return type of the resolver
79
+ * when the request is to a non-matching endpoint
80
+ */
81
+ | {
82
+ operationType?: undefined;
83
+ operationName?: undefined;
84
+ query?: undefined;
85
+ variables?: undefined;
86
+ });
87
+ type GraphQLResolverExtras<Variables extends GraphQLVariables> = {
88
+ query: string;
89
+ operationName: string;
90
+ variables: Variables;
91
+ cookies: Record<string, string>;
92
+ };
93
+ type GraphQLRequestBody<VariablesType extends GraphQLVariables> = GraphQLJsonRequestBody<VariablesType> | GraphQLMultipartRequestBody | Record<string, any> | undefined;
94
+ interface GraphQLJsonRequestBody<Variables extends GraphQLVariables> {
95
+ query: string;
96
+ variables?: Variables;
97
+ }
98
+ type GraphQLResponseBody<BodyType extends DefaultBodyType> = {
99
+ data?: BodyType | null;
100
+ errors?: readonly Partial<GraphQLError>[] | null;
101
+ extensions?: Record<string, any>;
102
+ } | null | undefined;
103
+ type GraphQLCustomPredicate = (args: {
104
+ request: Request;
105
+ query: string;
106
+ operationType: GraphQLOperationType;
107
+ operationName: string;
108
+ variables: GraphQLVariables;
109
+ cookies: Record<string, string>;
110
+ }) => GraphQLCustomPredicateResult | Promise<GraphQLCustomPredicateResult>;
111
+ type GraphQLCustomPredicateResult = boolean | {
112
+ matches: boolean;
113
+ };
114
+ type GraphQLPredicate<Query = any, Variables = any> = GraphQLHandlerNameSelector | DocumentTypeDecoration<Query, Variables> | GraphQLCustomPredicate;
115
+ declare function isDocumentNode(value: DocumentNode | any): value is DocumentNode;
116
+ declare class GraphQLHandler extends RequestHandler<GraphQLHandlerInfo, GraphQLRequestParsedResult, GraphQLResolverExtras<any>> {
117
+ #private;
118
+ private endpoint;
119
+ static parsedRequestCache: WeakMap<Request, ParsedGraphQLRequest<GraphQLVariables>>;
120
+ constructor(operationType: GraphQLOperationType, predicate: GraphQLPredicate, endpoint: Path, resolver: ResponseResolver<GraphQLResolverExtras<any>, any, any>, options?: RequestHandlerOptions);
121
+ /**
122
+ * Parses the request body, once per request, cached across all
123
+ * GraphQL handlers. This is done to avoid multiple parsing of the
124
+ * request body, which each requires a clone of the request.
125
+ */
126
+ parseGraphQLRequestOrGetFromCache(request: Request): Promise<ParsedGraphQLRequest<GraphQLVariables>>;
127
+ parse(args: {
128
+ request: Request;
129
+ }): Promise<GraphQLRequestParsedResult>;
130
+ predicate(args: {
131
+ request: Request;
132
+ parsedResult: GraphQLRequestParsedResult;
133
+ }): Promise<boolean>;
134
+ run(args: {
135
+ request: StrictRequest<any>;
136
+ requestId: string;
137
+ resolutionContext?: ResponseResolutionContext;
138
+ }): Promise<RequestHandlerExecutionResult<GraphQLRequestParsedResult> | null>;
139
+ private matchOperationName;
140
+ protected extendResolverArgs(args: {
141
+ request: Request;
142
+ parsedResult: GraphQLRequestParsedResult;
143
+ }): {
144
+ query: string;
145
+ operationType: OperationTypeNode;
146
+ operationName: string;
147
+ variables: GraphQLVariables;
148
+ cookies: Record<string, string>;
149
+ };
150
+ log(args: {
151
+ request: Request;
152
+ response: Response;
153
+ parsedResult: GraphQLRequestParsedResult;
154
+ }): Promise<void>;
155
+ }
156
+
157
+ type DefaultRequestMultipartBody = Record<string, string | File | Array<string | File>>;
158
+ type DefaultBodyType = Record<string, any> | DefaultRequestMultipartBody | string | number | boolean | null | undefined;
159
+ type JsonBodyType = Record<string, any> | string | number | boolean | null | undefined;
160
+ interface RequestHandlerDefaultInfo {
161
+ header: string;
162
+ }
163
+ interface RequestHandlerInternalInfo {
164
+ callFrame?: string;
165
+ }
166
+ type ResponseResolverReturnType<ResponseBodyType extends DefaultBodyType = undefined> = ([ResponseBodyType] extends [undefined] ? Response : ResponseBodyType extends GraphQLRequestBody<any> ? HttpResponse<ResponseBodyType> | DefaultUnsafeFetchResponse : HttpResponse<ResponseBodyType>) | undefined | void;
167
+ type MaybeAsyncResponseResolverReturnType<ResponseBodyType extends DefaultBodyType> = MaybePromise<ResponseResolverReturnType<ResponseBodyType>>;
168
+ type AsyncResponseResolverReturnType<ResponseBodyType extends DefaultBodyType> = MaybePromise<ResponseResolverReturnType<ResponseBodyType> | Iterable<MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>> | AsyncIterable<MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>, MaybeAsyncResponseResolverReturnType<ResponseBodyType>>>;
169
+ type ResponseResolverInfo<ResolverExtraInfo extends Record<string, unknown>, RequestBodyType extends DefaultBodyType = DefaultBodyType> = {
170
+ request: StrictRequest<RequestBodyType>;
171
+ requestId: string;
172
+ } & ResolverExtraInfo;
173
+ type ResponseResolver<ResolverExtraInfo extends Record<string, unknown> = Record<string, unknown>, RequestBodyType extends DefaultBodyType = DefaultBodyType, ResponseBodyType extends DefaultBodyType = undefined> = (info: ResponseResolverInfo<ResolverExtraInfo, RequestBodyType>) => AsyncResponseResolverReturnType<ResponseBodyType>;
174
+ interface RequestHandlerArgs<HandlerInfo, HandlerOptions extends RequestHandlerOptions> {
175
+ info: HandlerInfo;
176
+ resolver: ResponseResolver<any>;
177
+ options?: HandlerOptions;
178
+ }
179
+ interface RequestHandlerOptions {
180
+ once?: boolean;
181
+ }
182
+ interface RequestHandlerExecutionResult<ParsedResult extends object | undefined> {
183
+ handler: RequestHandler;
184
+ parsedResult?: ParsedResult;
185
+ request: Request;
186
+ requestId: string;
187
+ response?: Response;
188
+ }
189
+ declare abstract class RequestHandler<HandlerInfo extends RequestHandlerDefaultInfo = RequestHandlerDefaultInfo, ParsedResult extends Record<string, any> | undefined = any, ResolverExtras extends Record<string, unknown> = any, HandlerOptions extends RequestHandlerOptions = RequestHandlerOptions> {
190
+ static cache: WeakMap<StrictRequest<DefaultBodyType>, StrictRequest<DefaultBodyType>>;
191
+ private readonly __kind;
192
+ info: HandlerInfo & RequestHandlerInternalInfo;
193
+ /**
194
+ * Indicates whether this request handler has been used
195
+ * (its resolver has successfully executed).
196
+ */
197
+ isUsed: boolean;
198
+ protected resolver: ResponseResolver<ResolverExtras, any, any>;
199
+ private resolverIterator?;
200
+ private resolverIteratorResult?;
201
+ private options?;
202
+ constructor(args: RequestHandlerArgs<HandlerInfo, HandlerOptions>);
203
+ /**
204
+ * Determine if the intercepted request should be mocked.
205
+ */
206
+ abstract predicate(args: {
207
+ request: Request;
208
+ parsedResult: ParsedResult;
209
+ resolutionContext?: ResponseResolutionContext;
210
+ }): boolean | Promise<boolean>;
211
+ /**
212
+ * Print out the successfully handled request.
213
+ */
214
+ abstract log(args: {
215
+ request: Request;
216
+ response: Response;
217
+ parsedResult: ParsedResult;
218
+ }): void;
219
+ /**
220
+ * Parse the intercepted request to extract additional information from it.
221
+ * Parsed result is then exposed to other methods of this request handler.
222
+ */
223
+ parse(_args: {
224
+ request: Request;
225
+ resolutionContext?: ResponseResolutionContext;
226
+ }): Promise<ParsedResult>;
227
+ /**
228
+ * Test if this handler matches the given request.
229
+ *
230
+ * This method is not used internally but is exposed
231
+ * as a convenience method for consumers writing custom
232
+ * handlers.
233
+ */
234
+ test(args: {
235
+ request: Request;
236
+ resolutionContext?: ResponseResolutionContext;
237
+ }): Promise<boolean>;
238
+ protected extendResolverArgs(_args: {
239
+ request: Request;
240
+ parsedResult: ParsedResult;
241
+ }): ResolverExtras;
242
+ private cloneRequestOrGetFromCache;
243
+ /**
244
+ * Execute this request handler and produce a mocked response
245
+ * using the given resolver function.
246
+ */
247
+ run(args: {
248
+ request: StrictRequest<any>;
249
+ requestId: string;
250
+ resolutionContext?: ResponseResolutionContext;
251
+ }): Promise<RequestHandlerExecutionResult<ParsedResult> | null>;
252
+ private wrapResolver;
253
+ private createExecutionResult;
254
+ }
255
+
256
+ interface HttpResponseInit extends ResponseInit {
257
+ type?: ResponseType;
258
+ }
259
+ declare const bodyType: unique symbol;
260
+ type DefaultUnsafeFetchResponse = Response & {
261
+ [bodyType]?: never;
262
+ };
263
+ interface StrictRequest<BodyType extends JsonBodyType> extends Request {
264
+ json(): Promise<BodyType>;
265
+ clone(): StrictRequest<BodyType>;
266
+ }
267
+ /**
268
+ * Opaque `Response` type that supports strict body type.
269
+ *
270
+ * @deprecated Please use {@link HttpResponse} instead.
271
+ */
272
+ type StrictResponse<BodyType extends DefaultBodyType> = HttpResponse<BodyType>;
273
+ declare const kDefaultContentType: unique symbol;
274
+ /**
275
+ * A drop-in replacement for the standard `Response` class
276
+ * to allow additional features, like mocking the response `Set-Cookie` header.
277
+ *
278
+ * @example
279
+ * new HttpResponse('Hello world', { status: 201 })
280
+ * HttpResponse.json({ name: 'John' })
281
+ * HttpResponse.formData(form)
282
+ *
283
+ * @see {@link https://mswjs.io/docs/api/http-response `HttpResponse` API reference}
284
+ */
285
+ declare class HttpResponse<BodyType extends DefaultBodyType> extends FetchResponse {
286
+ readonly [bodyType]: BodyType;
287
+ constructor(body?: NoInfer<BodyType> | null, init?: HttpResponseInit);
288
+ static error(): HttpResponse<any>;
289
+ /**
290
+ * Create a `Response` with a `Content-Type: "text/plain"` body.
291
+ * @example
292
+ * HttpResponse.text('hello world')
293
+ * HttpResponse.text('Error', { status: 500 })
294
+ */
295
+ static text<BodyType extends string>(body?: NoInfer<BodyType> | null, init?: HttpResponseInit): HttpResponse<BodyType>;
296
+ /**
297
+ * Create a `Response` with a `Content-Type: "application/json"` body.
298
+ * @example
299
+ * HttpResponse.json({ firstName: 'John' })
300
+ * HttpResponse.json({ error: 'Not Authorized' }, { status: 401 })
301
+ */
302
+ static json<BodyType extends JsonBodyType>(body?: NoInfer<BodyType> | null | undefined, init?: HttpResponseInit): HttpResponse<BodyType>;
303
+ /**
304
+ * Create a `Response` with a `Content-Type: "application/xml"` body.
305
+ * @example
306
+ * HttpResponse.xml(`<user name="John" />`)
307
+ * HttpResponse.xml(`<article id="abc-123" />`, { status: 201 })
308
+ */
309
+ static xml<BodyType extends string>(body?: BodyType | null, init?: HttpResponseInit): HttpResponse<BodyType>;
310
+ /**
311
+ * Create a `Response` with a `Content-Type: "text/html"` body.
312
+ * @example
313
+ * HttpResponse.html(`<p class="author">Jane Doe</p>`)
314
+ * HttpResponse.html(`<main id="abc-123">Main text</main>`, { status: 201 })
315
+ */
316
+ static html<BodyType extends string>(body?: BodyType | null, init?: HttpResponseInit): HttpResponse<BodyType>;
317
+ /**
318
+ * Create a `Response` with an `ArrayBuffer` body.
319
+ * @example
320
+ * const buffer = new ArrayBuffer(3)
321
+ * const view = new Uint8Array(buffer)
322
+ * view.set([1, 2, 3])
323
+ *
324
+ * HttpResponse.arrayBuffer(buffer)
325
+ */
326
+ static arrayBuffer<BodyType extends ArrayBuffer | SharedArrayBuffer>(body?: BodyType, init?: HttpResponseInit): HttpResponse<BodyType>;
327
+ /**
328
+ * Create a `Response` with a `FormData` body.
329
+ * @example
330
+ * const data = new FormData()
331
+ * data.set('name', 'Alice')
332
+ *
333
+ * HttpResponse.formData(data)
334
+ */
335
+ static formData(body?: FormData, init?: HttpResponseInit): HttpResponse<FormData>;
336
+ }
337
+
338
+ export { type AsyncResponseResolverReturnType as A, type GraphQLHandlerNameSelector as B, type GraphQLHandlerInfo as C, type DefaultBodyType as D, type GraphQLRequestParsedResult as E, type GraphQLCustomPredicateResult as F, GraphQLHandler as G, HttpResponse as H, isDocumentNode as I, type JsonBodyType as J, type RequestHandlerInternalInfo as K, type RequestHandlerArgs as L, type MaybeAsyncResponseResolverReturnType as M, type RequestHandlerExecutionResult as N, bodyType as O, type ParsedGraphQLRequest as P, type DefaultUnsafeFetchResponse as Q, RequestHandler as R, type StrictRequest as S, kDefaultContentType as T, type ResponseResolver as a, type ResponseResolverReturnType as b, type RequestHandlerOptions as c, type DefaultRequestMultipartBody as d, type ResponseResolverInfo as e, type GraphQLQuery as f, type GraphQLVariables as g, type GraphQLRequestBody as h, type GraphQLResponseBody as i, type GraphQLJsonRequestBody as j, type GraphQLOperationType as k, type GraphQLCustomPredicate as l, type ResponseResolutionContext as m, type HttpResponseInit as n, type StrictResponse as o, type GraphQLPredicate as p, type GraphQLResolverExtras as q, type RequestHandlerDefaultInfo as r, type HandlersExecutionResult as s, executeHandlers as t, type ParsedGraphQLQuery as u, parseDocumentNode as v, type GraphQLParsedOperationsMap as w, type GraphQLMultipartRequestBody as x, parseGraphQLRequest as y, type DocumentTypeDecoration as z };
@@ -0,0 +1,6 @@
1
+ import '@mswjs/interceptors';
2
+ export { Q as DefaultUnsafeFetchResponse, H as HttpResponse, n as HttpResponseInit, S as StrictRequest, o as StrictResponse, O as bodyType, T as kDefaultContentType } from './HttpResponse-Be4eT3x6.mjs';
3
+ import './typeUtils.mjs';
4
+ import './utils/internal/isIterable.mjs';
5
+ import 'graphql';
6
+ import './utils/matching/matchRequestUrl.mjs';