https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-8.html#exclude-specific-files-from-auto-imports
последнее время был такой кейс, есть враппер над sentry, и есть файл который умеет этот враппер лениво инициализировать как динамический модуль
публичные контракты намеренно одинаковые для облегчения их расширения, примерно вот в таком стиле
export const sentryCaptureLinkedException: typeof import("./SentryWrapper").sentryCaptureLinkedException =
(...args) => sentryWrapper?.sentryCaptureLinkedException(...args);ну и тс при написании назойливо предлагает не тот импорт который надо
частично порешали через eslint, но всё равно неудобно
"no-restricted-imports": [
"error",
{
paths: [
{
name: "./SentryWrapper",
message: "Please use SentryLazy",
},
],
},
],
штука в 4.8 зарешала