Skip to content

Triple slash type reference doesn't use baseUrl/typeRoots #35365

@sandersn

Description

@sandersn

In a directory named test:

// @Filename: tsconfig.json
{
    "compilerOptions": {
        "baseUrl": "../",
        "typeRoots": [ "../" ],
        "types": [],
        "moduleResolution": "node",
        "module": "commonjs"
    },
    "files": [
        "welove.ts",
    ]
}
// @Filename: ex.d.ts
interface F {
  (): void
}
// @Filename: welove.ts
/// <reference types="test/ex" />
declare var f: F
f()

Expected: No errors; reference to F is fine in welove.ts.
Actual: "Cannot find type definition file for 'test/ex'.

Related things that work: "../test/ex", "./ex".
Also, import { A } from "test/foo" works -- imports use baseUrl/typeRoots correctly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugA bug in TypeScriptDomain: Module ResolutionHow to turn an import specifier into a .d.ts, .ts, or .js file on disk

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions