interface StrMap { [key: string]: true } export type ViewDependencies = { [parentViewTplPath: string]: string[] } export interface ComponentsInfo { paths: StrMap absPaths: StrMap classNames: StrMap vPaths: StrMap } export interface ForeignViewInfo { [className: string]: { relativePath: string absPath: string type: 'react' | 'vue' } } class Store { public viewDependencies: ViewDependencies = {} public foreignViewInfo: ForeignViewInfo = {} public componentsInfo: ComponentsInfo = { paths: {}, absPaths: {}, classNames: {}, vPaths: {} } } export const store = new Store()