import { App } from 'vue' type OptionalKeys> = { [K in keyof T]: T extends Record ? never : K }[keyof T] type RequiredKeys> = Exclude> type MonoArgEmitter = (evt: K, arg?: T[K]) => void type BiArgEmitter = (evt: K, arg: T[K]) => void export type EventEmitter> = MonoArgEmitter> & BiArgEmitter> export type AnyFunction = (...args: any[]) => T export type PartialReturnType unknown> = Partial> export type SFCWithInstall = T & { install(app: App): void; }