1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
|
=== tests/cases/conformance/types/typeRelationships/typeInference/genericContextualTypes2.ts ===
type LowInfer<T> = T & {};
>LowInfer : Symbol(LowInfer, Decl(genericContextualTypes2.ts, 0, 0))
>T : Symbol(T, Decl(genericContextualTypes2.ts, 0, 14))
>T : Symbol(T, Decl(genericContextualTypes2.ts, 0, 14))
type PartialAssigner<TContext, TKey extends keyof TContext> = (
>PartialAssigner : Symbol(PartialAssigner, Decl(genericContextualTypes2.ts, 0, 26))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 2, 21))
>TKey : Symbol(TKey, Decl(genericContextualTypes2.ts, 2, 30))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 2, 21))
context: TContext
>context : Symbol(context, Decl(genericContextualTypes2.ts, 2, 63))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 2, 21))
) => TContext[TKey];
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 2, 21))
>TKey : Symbol(TKey, Decl(genericContextualTypes2.ts, 2, 30))
type PropertyAssigner<TContext> = {
>PropertyAssigner : Symbol(PropertyAssigner, Decl(genericContextualTypes2.ts, 4, 20))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 6, 22))
[K in keyof TContext]?: PartialAssigner<TContext, K> | TContext[K];
>K : Symbol(K, Decl(genericContextualTypes2.ts, 7, 3))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 6, 22))
>PartialAssigner : Symbol(PartialAssigner, Decl(genericContextualTypes2.ts, 0, 26))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 6, 22))
>K : Symbol(K, Decl(genericContextualTypes2.ts, 7, 3))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 6, 22))
>K : Symbol(K, Decl(genericContextualTypes2.ts, 7, 3))
};
type Meta<TContext> = {
>Meta : Symbol(Meta, Decl(genericContextualTypes2.ts, 8, 2))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 10, 10))
action: (ctx: TContext) => void
>action : Symbol(action, Decl(genericContextualTypes2.ts, 10, 23))
>ctx : Symbol(ctx, Decl(genericContextualTypes2.ts, 11, 11))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 10, 10))
}
interface AssignAction<TContext> {
>AssignAction : Symbol(AssignAction, Decl(genericContextualTypes2.ts, 12, 1))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 14, 23))
type: "xstate.assign";
>type : Symbol(AssignAction.type, Decl(genericContextualTypes2.ts, 14, 34))
exec: (arg: TContext, meta: Meta<TContext>) => void;
>exec : Symbol(AssignAction.exec, Decl(genericContextualTypes2.ts, 15, 24))
>arg : Symbol(arg, Decl(genericContextualTypes2.ts, 16, 9))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 14, 23))
>meta : Symbol(meta, Decl(genericContextualTypes2.ts, 16, 23))
>Meta : Symbol(Meta, Decl(genericContextualTypes2.ts, 8, 2))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 14, 23))
}
declare function assign<TContext>(
>assign : Symbol(assign, Decl(genericContextualTypes2.ts, 17, 1))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 19, 24))
assignment: PropertyAssigner<LowInfer<TContext>>
>assignment : Symbol(assignment, Decl(genericContextualTypes2.ts, 19, 34))
>PropertyAssigner : Symbol(PropertyAssigner, Decl(genericContextualTypes2.ts, 4, 20))
>LowInfer : Symbol(LowInfer, Decl(genericContextualTypes2.ts, 0, 0))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 19, 24))
): AssignAction<TContext>;
>AssignAction : Symbol(AssignAction, Decl(genericContextualTypes2.ts, 12, 1))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 19, 24))
type Config<TContext> = {
>Config : Symbol(Config, Decl(genericContextualTypes2.ts, 21, 26))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 23, 12))
context: TContext;
>context : Symbol(context, Decl(genericContextualTypes2.ts, 23, 25))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 23, 12))
entry?: AssignAction<TContext>;
>entry : Symbol(entry, Decl(genericContextualTypes2.ts, 24, 20))
>AssignAction : Symbol(AssignAction, Decl(genericContextualTypes2.ts, 12, 1))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 23, 12))
};
declare function createMachine<TContext>(config: Config<TContext>): void;
>createMachine : Symbol(createMachine, Decl(genericContextualTypes2.ts, 26, 2))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 28, 31))
>config : Symbol(config, Decl(genericContextualTypes2.ts, 28, 41))
>Config : Symbol(Config, Decl(genericContextualTypes2.ts, 21, 26))
>TContext : Symbol(TContext, Decl(genericContextualTypes2.ts, 28, 31))
createMachine<{ count: number }>({
>createMachine : Symbol(createMachine, Decl(genericContextualTypes2.ts, 26, 2))
>count : Symbol(count, Decl(genericContextualTypes2.ts, 30, 15))
context: {
>context : Symbol(context, Decl(genericContextualTypes2.ts, 30, 34))
count: 0,
>count : Symbol(count, Decl(genericContextualTypes2.ts, 31, 12))
},
entry: assign({
>entry : Symbol(entry, Decl(genericContextualTypes2.ts, 33, 4))
>assign : Symbol(assign, Decl(genericContextualTypes2.ts, 17, 1))
count: (ctx: { count: number }) => ++ctx.count,
>count : Symbol(count, Decl(genericContextualTypes2.ts, 34, 17))
>ctx : Symbol(ctx, Decl(genericContextualTypes2.ts, 35, 12))
>count : Symbol(count, Decl(genericContextualTypes2.ts, 35, 18))
>ctx.count : Symbol(count, Decl(genericContextualTypes2.ts, 35, 18))
>ctx : Symbol(ctx, Decl(genericContextualTypes2.ts, 35, 12))
>count : Symbol(count, Decl(genericContextualTypes2.ts, 35, 18))
}),
});
|