11import type { HttpResponseResolver , JsonBodyType } from "msw" ;
22import { HttpResponse } from "msw" ;
3+ import type { MockScenarioName } from "./scenarioNames" ;
34
45type ResponseResolverInfo = Parameters < HttpResponseResolver > [ 0 ] ;
56
@@ -13,8 +14,11 @@ export interface AutoAPIMockInstance<T> {
1314 generatedHandler : HttpResponseResolver ;
1415 override : ( fn : OverrideFn < T > ) => AutoAPIMockInstance < T > ;
1516 overrideHandler : ( fn : OverrideHandlerFn < T > ) => AutoAPIMockInstance < T > ;
16- scenario : ( name : string , fn : ScenarioFn < T > ) => AutoAPIMockInstance < T > ;
17- useScenario : ( name : string ) => AutoAPIMockInstance < T > ;
17+ scenario : (
18+ name : MockScenarioName ,
19+ fn : ScenarioFn < T > ,
20+ ) => AutoAPIMockInstance < T > ;
21+ useScenario : ( name : MockScenarioName ) => AutoAPIMockInstance < T > ;
1822 reset : ( ) => AutoAPIMockInstance < T > ;
1923 defaultValue : T ;
2024}
@@ -24,7 +28,7 @@ const registry: Set<AutoAPIMockInstance<unknown>> = new Set();
2428
2529export function AutoAPIMock < T > ( defaultValue : T ) : AutoAPIMockInstance < T > {
2630 let overrideHandlerFn : OverrideHandlerFn < T > | null = null ;
27- const scenarios = new Map < string , ScenarioFn < T > > ( ) ;
31+ const scenarios = new Map < MockScenarioName , ScenarioFn < T > > ( ) ;
2832
2933 const instance : AutoAPIMockInstance < T > = {
3034 defaultValue,
@@ -47,12 +51,12 @@ export function AutoAPIMock<T>(defaultValue: T): AutoAPIMockInstance<T> {
4751 return instance ;
4852 } ,
4953
50- scenario ( name : string , fn : ScenarioFn < T > ) {
54+ scenario ( name : MockScenarioName , fn : ScenarioFn < T > ) {
5155 scenarios . set ( name , fn ) ;
5256 return instance ;
5357 } ,
5458
55- useScenario ( name : string ) {
59+ useScenario ( name : MockScenarioName ) {
5660 const scenarioFn = scenarios . get ( name ) ;
5761 if ( ! scenarioFn ) {
5862 throw new Error (
0 commit comments