diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts
index 93f559c1faa79..4fca657a214e1 100644
--- a/src/compiler/checker.ts
+++ b/src/compiler/checker.ts
@@ -37307,7 +37307,9 @@ export function createTypeChecker(host: TypeCheckerHost): TypeChecker {
return nullWideningType;
case SyntaxKind.NoSubstitutionTemplateLiteral:
case SyntaxKind.StringLiteral:
- return getFreshTypeOfLiteralType(getStringLiteralType((node as StringLiteralLike).text));
+ return hasSkipDirectInferenceFlag(node) ?
+ anyType :
+ getFreshTypeOfLiteralType(getStringLiteralType((node as StringLiteralLike).text));
case SyntaxKind.NumericLiteral:
checkGrammarNumericLiteral(node as NumericLiteral);
return getFreshTypeOfLiteralType(getNumberLiteralType(+(node as NumericLiteral).text));
diff --git a/tests/cases/fourslash/completionsForStringDependingOnContexSensitiveSignature.ts b/tests/cases/fourslash/completionsForStringDependingOnContexSensitiveSignature.ts
new file mode 100644
index 0000000000000..e80c014546d73
--- /dev/null
+++ b/tests/cases/fourslash/completionsForStringDependingOnContexSensitiveSignature.ts
@@ -0,0 +1,41 @@
+///
+// @strict: true
+////
+//// type ActorRef = {
+//// send: (ev: TEvent) => void
+//// }
+////
+//// type Action = {
+//// (ctx: TContext): void
+//// }
+////
+//// type Config = {
+//// entry: Action
+//// }
+////
+//// declare function createMachine(config: Config): void
+////
+//// type EventFrom = T extends ActorRef ? TEvent : never
+////
+//// declare function sendTo<
+//// TContext,
+//// TActor extends ActorRef
+//// >(
+//// actor: ((ctx: TContext) => TActor),
+//// event: EventFrom
+//// ): Action
+////
+//// createMachine<{
+//// child: ActorRef<{ type: "EVENT" }>;
+//// }>({
+//// entry: sendTo((ctx) => ctx.child, { type: /*1*/ }),
+//// });
+////
+//// createMachine<{
+//// child: ActorRef<{ type: "EVENT" }>;
+//// }>({
+//// entry: sendTo((ctx) => ctx.child, { type: "/*2*/" }),
+//// });
+
+verify.completions({ marker: "1", includes: [`"EVENT"`] })
+verify.completions({ marker: "2", exact: [`EVENT`] })
\ No newline at end of file