vue + ts + webstorm. Почему в некоторых классах ошибка "TS2339: Property '$modal' does not exist on type 'MClientVisit'"?
Весь код упрощен. В приложении есть плагин
const ModalContainer = {
install(Vue) {
Vue.prototype.$modal = {
open(name: string): string {
// ...
},
// ...
}
}
}
interface:
export interface IModal {
open(name: string): string;
// ...
}
vue-shim.d.ts:
import { IModal } from '@/plugins/modals-container/types'
declare module 'vue/types/vue' {
interface Vue {
$modal: IModal;
// ...
}
}
В компонентах это используется так:
onSomeAction() {
this.$modal.open('someModalName')
}
Если компонент, в котором вызывается этот метод импортируется через import SomeComponent from ..., то в WebStorm все отображается нормально. Но если он импортируется через () => import('@/${path-to-component}.vue'), то "Error:(80, 17) TS2339: Property '$modal' does not exist on type 'MClientVisit'."

Подскажите, как заставить WebStorm видеть this.$modal в таких компонентах? Компилируется все нормально.