window.ts 1009 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import 'recurly__recurly-js'
  2. import { ScopeValueStore } from './ide/scope-value-store'
  3. declare global {
  4. // eslint-disable-next-line no-unused-vars
  5. interface Window {
  6. metaAttributesCache: Map<string, any>
  7. _ide: Record<string, unknown> & {
  8. $scope: Record<string, unknown> & {
  9. pdf?: {
  10. logEntryAnnotations: Record<string, unknown>
  11. }
  12. }
  13. socket: {
  14. on: (event: string, listener: any) => void
  15. removeListener: (event: string, listener: any) => void
  16. }
  17. }
  18. _reportCM6Perf: () => void
  19. MathJax: Record<string, any>
  20. crypto: {
  21. randomUUID: () => string
  22. }
  23. // For react-google-recaptcha
  24. recaptchaOptions?: {
  25. enterprise?: boolean
  26. useRecaptchaNet?: boolean
  27. }
  28. expectingLinkedFileRefreshedSocketFor?: string | null
  29. writefull?: {
  30. type: 'extension' | 'integration'
  31. }
  32. WritefullStub?: any
  33. io?: any
  34. overleaf: {
  35. unstable: {
  36. store: ScopeValueStore
  37. }
  38. }
  39. }
  40. }