declare interface Window {
  ENV: 'DEV' | 'PROD'
  $loadingBar: import('naive-ui').LoadingBarProviderInst
  $dialog: import('naive-ui').DialogProviderInst
  $message: import('naive-ui').MessageProviderInst & {
    ctWarning: (message: string, title?: string, cancelText?: string, confirmText?: string) => Promise<boolean | Error>
  }
  $notification: import('naive-ui').NotificationProviderInst

  google: any
  tinymce: import('tinymce').TinyMCE
}

declare namespace JSX {
  interface IntrinsicElements {
    div: DivElement
    span: SpanElement
    i: IElement
  }
}

type Recordable<T = any> = Record<string, T>

declare type AnyObject = { [k: string]: any }
