import Vue from 'vue'; import VueRouter from 'vue-router'; import { Http, HttpInterceptor } from 'vue-resource'; import { ComponentConfig, FilterConfig, LocaleConfig } from '../types'; import { Currency, Lang } from '../enums'; import { AwaitController } from '../components/Await'; import { ModalController } from '../components/Modal'; declare module 'vue/types/options' { interface ComponentOptions { apiURL?: string; httpInterceptor?: HttpInterceptor | (() => HttpInterceptor); defaultLang?: Lang; defaultCurrency?: Currency; component?: ComponentConfig; filter?: FilterConfig; locale?: LocaleConfig; router?: VueRouter; } } declare module 'vue/types/vue' { interface Vue { $apiURL: string; $bus: Vue; $await: AwaitController; $modal: ModalController; } interface VueConstructor { http: Http; } }