Commit 4a0e2465 authored by nanahira's avatar nanahira

add AppContextState

parent d5504fa3
......@@ -6,6 +6,7 @@ import {
AppProvidedMerged,
AppProvideOptions,
AppContextUsed,
AppContextState,
} from './types';
import {
createAsyncMethod,
......@@ -351,6 +352,8 @@ async function test() {
provide: 'baz',
})
.define();
type Ctx2State = AppContextState<typeof ctx2>;
const ctx2Used = await createAppContext().use(ctx2).define().start();
const final = await createAppContext().use(ctx1).use(ctx2).define().start();
......
......@@ -12,6 +12,9 @@ type CurAndReq<Cur, Req> = {
export type AppContext<Cur = Empty, Req = Empty> = AppContextCore<Cur, Req> &
CurAndReq<Cur, Req>;
export type AppContextState<A extends AppContext> =
A extends AppContext<infer Cur, infer Req> ? CurAndReq<Cur, Req> : never;
export type AppServiceClass<
Cur = Empty,
Req = Empty,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment