diff --git a/services/web/test/frontend/components/pdf-preview/pdf-preview-detached-root.spec.tsx b/services/web/test/frontend/components/pdf-preview/pdf-preview-detached-root.spec.tsx
index b20d6a1e43..7034494ed1 100644
--- a/services/web/test/frontend/components/pdf-preview/pdf-preview-detached-root.spec.tsx
+++ b/services/web/test/frontend/components/pdf-preview/pdf-preview-detached-root.spec.tsx
@@ -1,10 +1,11 @@
import { mount } from '@cypress/react'
import sysendTestHelper from '../../helpers/sysend'
import PdfPreviewDetachedRoot from '../../../../frontend/js/features/pdf-preview/components/pdf-preview-detached-root'
+import { User } from '../../../../types/user'
describe('', function () {
beforeEach(function () {
- window.user = { id: 'user1' }
+ window.user = { id: 'user1' } as User
window.metaAttributesCache = new Map([
['ol-user', window.user],
diff --git a/services/web/types/user.ts b/services/web/types/user.ts
index f657355480..137d7a5abd 100644
--- a/services/web/types/user.ts
+++ b/services/web/types/user.ts
@@ -2,7 +2,22 @@ export type User = {
id: string
email: string
allowedFreeTrial?: boolean
- features?: Record
+ features?: {
+ collaborators?: number
+ compileGroup?: 'standard' | 'priority'
+ compileTimeout?: number
+ dropbox?: boolean
+ gitBridge?: boolean
+ github?: boolean
+ mendeley?: boolean
+ references?: boolean
+ referencesSearch?: boolean
+ symbolPalette?: boolean
+ templates?: boolean
+ trackChanges?: boolean
+ versioning?: boolean
+ zotero?: boolean
+ }
}
export type MongoUser = Pick> & { _id: string }
diff --git a/services/web/types/window.ts b/services/web/types/window.ts
index 1904aee98e..5ae57642a3 100644
--- a/services/web/types/window.ts
+++ b/services/web/types/window.ts
@@ -1,14 +1,13 @@
import { ExposedSettings } from './exposed-settings'
import { OAuthProviders } from './oauth-providers'
+import { User } from './user'
declare global {
// eslint-disable-next-line no-unused-vars
interface Window {
csrfToken: string
sl_debugging: boolean
- user: {
- id: string
- }
+ user: User
oauthProviders: OAuthProviders
thirdPartyIds: Record
metaAttributesCache: Map