@oxyhq/services 5.13.15 → 5.13.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/README.md +10 -0
  2. package/lib/commonjs/core/OxyServices.base.js +271 -0
  3. package/lib/commonjs/core/OxyServices.base.js.map +1 -0
  4. package/lib/commonjs/core/OxyServices.errors.js +26 -0
  5. package/lib/commonjs/core/OxyServices.errors.js.map +1 -0
  6. package/lib/commonjs/core/OxyServices.js +58 -2168
  7. package/lib/commonjs/core/OxyServices.js.map +1 -1
  8. package/lib/commonjs/core/mixins/OxyServices.analytics.js +60 -0
  9. package/lib/commonjs/core/mixins/OxyServices.analytics.js.map +1 -0
  10. package/lib/commonjs/core/mixins/OxyServices.assets.js +424 -0
  11. package/lib/commonjs/core/mixins/OxyServices.assets.js.map +1 -0
  12. package/lib/commonjs/core/mixins/OxyServices.auth.js +303 -0
  13. package/lib/commonjs/core/mixins/OxyServices.auth.js.map +1 -0
  14. package/lib/commonjs/core/mixins/OxyServices.developer.js +115 -0
  15. package/lib/commonjs/core/mixins/OxyServices.developer.js.map +1 -0
  16. package/lib/commonjs/core/mixins/OxyServices.devices.js +119 -0
  17. package/lib/commonjs/core/mixins/OxyServices.devices.js.map +1 -0
  18. package/lib/commonjs/core/mixins/OxyServices.karma.js +117 -0
  19. package/lib/commonjs/core/mixins/OxyServices.karma.js.map +1 -0
  20. package/lib/commonjs/core/mixins/OxyServices.language.js +124 -0
  21. package/lib/commonjs/core/mixins/OxyServices.language.js.map +1 -0
  22. package/lib/commonjs/core/mixins/OxyServices.location.js +55 -0
  23. package/lib/commonjs/core/mixins/OxyServices.location.js.map +1 -0
  24. package/lib/commonjs/core/mixins/OxyServices.payment.js +66 -0
  25. package/lib/commonjs/core/mixins/OxyServices.payment.js.map +1 -0
  26. package/lib/commonjs/core/mixins/OxyServices.privacy.js +174 -0
  27. package/lib/commonjs/core/mixins/OxyServices.privacy.js.map +1 -0
  28. package/lib/commonjs/core/mixins/OxyServices.totp.js +53 -0
  29. package/lib/commonjs/core/mixins/OxyServices.totp.js.map +1 -0
  30. package/lib/commonjs/core/mixins/OxyServices.user.js +388 -0
  31. package/lib/commonjs/core/mixins/OxyServices.user.js.map +1 -0
  32. package/lib/commonjs/core/mixins/OxyServices.utility.js +161 -0
  33. package/lib/commonjs/core/mixins/OxyServices.utility.js.map +1 -0
  34. package/lib/commonjs/core/mixins/index.js +39 -0
  35. package/lib/commonjs/core/mixins/index.js.map +1 -0
  36. package/lib/commonjs/core/mixins/mixinHelpers.js +62 -0
  37. package/lib/commonjs/core/mixins/mixinHelpers.js.map +1 -0
  38. package/lib/commonjs/ui/context/OxyContext.js +27 -2
  39. package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
  40. package/lib/module/core/OxyServices.base.js +265 -0
  41. package/lib/module/core/OxyServices.base.js.map +1 -0
  42. package/lib/module/core/OxyServices.errors.js +20 -0
  43. package/lib/module/core/OxyServices.errors.js.map +1 -0
  44. package/lib/module/core/OxyServices.js +43 -2164
  45. package/lib/module/core/OxyServices.js.map +1 -1
  46. package/lib/module/core/mixins/OxyServices.analytics.js +56 -0
  47. package/lib/module/core/mixins/OxyServices.analytics.js.map +1 -0
  48. package/lib/module/core/mixins/OxyServices.assets.js +420 -0
  49. package/lib/module/core/mixins/OxyServices.assets.js.map +1 -0
  50. package/lib/module/core/mixins/OxyServices.auth.js +299 -0
  51. package/lib/module/core/mixins/OxyServices.auth.js.map +1 -0
  52. package/lib/module/core/mixins/OxyServices.developer.js +111 -0
  53. package/lib/module/core/mixins/OxyServices.developer.js.map +1 -0
  54. package/lib/module/core/mixins/OxyServices.devices.js +115 -0
  55. package/lib/module/core/mixins/OxyServices.devices.js.map +1 -0
  56. package/lib/module/core/mixins/OxyServices.karma.js +113 -0
  57. package/lib/module/core/mixins/OxyServices.karma.js.map +1 -0
  58. package/lib/module/core/mixins/OxyServices.language.js +120 -0
  59. package/lib/module/core/mixins/OxyServices.language.js.map +1 -0
  60. package/lib/module/core/mixins/OxyServices.location.js +51 -0
  61. package/lib/module/core/mixins/OxyServices.location.js.map +1 -0
  62. package/lib/module/core/mixins/OxyServices.payment.js +62 -0
  63. package/lib/module/core/mixins/OxyServices.payment.js.map +1 -0
  64. package/lib/module/core/mixins/OxyServices.privacy.js +170 -0
  65. package/lib/module/core/mixins/OxyServices.privacy.js.map +1 -0
  66. package/lib/module/core/mixins/OxyServices.totp.js +49 -0
  67. package/lib/module/core/mixins/OxyServices.totp.js.map +1 -0
  68. package/lib/module/core/mixins/OxyServices.user.js +384 -0
  69. package/lib/module/core/mixins/OxyServices.user.js.map +1 -0
  70. package/lib/module/core/mixins/OxyServices.utility.js +156 -0
  71. package/lib/module/core/mixins/OxyServices.utility.js.map +1 -0
  72. package/lib/module/core/mixins/index.js +36 -0
  73. package/lib/module/core/mixins/index.js.map +1 -0
  74. package/lib/module/core/mixins/mixinHelpers.js +56 -0
  75. package/lib/module/core/mixins/mixinHelpers.js.map +1 -0
  76. package/lib/module/ui/context/OxyContext.js +27 -2
  77. package/lib/module/ui/context/OxyContext.js.map +1 -1
  78. package/lib/typescript/core/OxyServices.base.d.ts +123 -0
  79. package/lib/typescript/core/OxyServices.base.d.ts.map +1 -0
  80. package/lib/typescript/core/OxyServices.d.ts +970 -746
  81. package/lib/typescript/core/OxyServices.d.ts.map +1 -1
  82. package/lib/typescript/core/OxyServices.errors.d.ts +12 -0
  83. package/lib/typescript/core/OxyServices.errors.d.ts.map +1 -0
  84. package/lib/typescript/core/mixins/OxyServices.analytics.d.ts +70 -0
  85. package/lib/typescript/core/mixins/OxyServices.analytics.d.ts.map +1 -0
  86. package/lib/typescript/core/mixins/OxyServices.assets.d.ts +166 -0
  87. package/lib/typescript/core/mixins/OxyServices.assets.d.ts.map +1 -0
  88. package/lib/typescript/core/mixins/OxyServices.auth.d.ts +168 -0
  89. package/lib/typescript/core/mixins/OxyServices.auth.d.ts.map +1 -0
  90. package/lib/typescript/core/mixins/OxyServices.developer.d.ts +103 -0
  91. package/lib/typescript/core/mixins/OxyServices.developer.d.ts.map +1 -0
  92. package/lib/typescript/core/mixins/OxyServices.devices.d.ts +93 -0
  93. package/lib/typescript/core/mixins/OxyServices.devices.d.ts.map +1 -0
  94. package/lib/typescript/core/mixins/OxyServices.karma.d.ts +89 -0
  95. package/lib/typescript/core/mixins/OxyServices.karma.d.ts.map +1 -0
  96. package/lib/typescript/core/mixins/OxyServices.language.d.ts +85 -0
  97. package/lib/typescript/core/mixins/OxyServices.language.d.ts.map +1 -0
  98. package/lib/typescript/core/mixins/OxyServices.location.d.ts +68 -0
  99. package/lib/typescript/core/mixins/OxyServices.location.d.ts.map +1 -0
  100. package/lib/typescript/core/mixins/OxyServices.payment.d.ts +74 -0
  101. package/lib/typescript/core/mixins/OxyServices.payment.d.ts.map +1 -0
  102. package/lib/typescript/core/mixins/OxyServices.privacy.d.ts +126 -0
  103. package/lib/typescript/core/mixins/OxyServices.privacy.d.ts.map +1 -0
  104. package/lib/typescript/core/mixins/OxyServices.totp.d.ts +69 -0
  105. package/lib/typescript/core/mixins/OxyServices.totp.d.ts.map +1 -0
  106. package/lib/typescript/core/mixins/OxyServices.user.d.ts +189 -0
  107. package/lib/typescript/core/mixins/OxyServices.user.d.ts.map +1 -0
  108. package/lib/typescript/core/mixins/OxyServices.utility.d.ts +97 -0
  109. package/lib/typescript/core/mixins/OxyServices.utility.d.ts.map +1 -0
  110. package/lib/typescript/core/mixins/index.d.ts +899 -0
  111. package/lib/typescript/core/mixins/index.d.ts.map +1 -0
  112. package/lib/typescript/core/mixins/mixinHelpers.d.ts +32 -0
  113. package/lib/typescript/core/mixins/mixinHelpers.d.ts.map +1 -0
  114. package/lib/typescript/models/interfaces.d.ts +10 -0
  115. package/lib/typescript/models/interfaces.d.ts.map +1 -1
  116. package/lib/typescript/ui/context/OxyContext.d.ts +2 -0
  117. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
  118. package/package.json +1 -1
  119. package/src/core/OxyServices.base.ts +311 -0
  120. package/src/core/OxyServices.errors.ts +26 -0
  121. package/src/core/OxyServices.ts +43 -2199
  122. package/src/core/mixins/OxyServices.analytics.ts +53 -0
  123. package/src/core/mixins/OxyServices.assets.ts +410 -0
  124. package/src/core/mixins/OxyServices.auth.ts +275 -0
  125. package/src/core/mixins/OxyServices.developer.ts +114 -0
  126. package/src/core/mixins/OxyServices.devices.ts +103 -0
  127. package/src/core/mixins/OxyServices.karma.ts +111 -0
  128. package/src/core/mixins/OxyServices.language.ts +127 -0
  129. package/src/core/mixins/OxyServices.location.ts +46 -0
  130. package/src/core/mixins/OxyServices.payment.ts +59 -0
  131. package/src/core/mixins/OxyServices.privacy.ts +182 -0
  132. package/src/core/mixins/OxyServices.totp.ts +36 -0
  133. package/src/core/mixins/OxyServices.user.ts +384 -0
  134. package/src/core/mixins/OxyServices.utility.ts +187 -0
  135. package/src/core/mixins/index.ts +58 -0
  136. package/src/core/mixins/mixinHelpers.ts +69 -0
  137. package/src/models/interfaces.ts +12 -0
  138. package/src/ui/context/OxyContext.tsx +36 -0
@@ -0,0 +1,899 @@
1
+ /**
2
+ * Centralized mixin exports and composition helper
3
+ *
4
+ * This module provides a clean way to compose all mixins
5
+ * and ensures consistent ordering for better maintainability
6
+ */
7
+ import { OxyServicesBase } from '../OxyServices.base';
8
+ /**
9
+ * Composes all OxyServices mixins in the correct order
10
+ *
11
+ * Order matters for mixins - dependencies should be applied first.
12
+ * This function ensures consistent composition across the codebase.
13
+ *
14
+ * @returns The fully composed OxyServices class with all mixins applied
15
+ */
16
+ export declare function composeOxyServices(): {
17
+ new (...args: any[]): {
18
+ fetchLinkMetadata(url: string): Promise<{
19
+ url: string;
20
+ title: string;
21
+ description: string;
22
+ image?: string;
23
+ }>;
24
+ auth(options?: {
25
+ debug?: boolean;
26
+ onError?: ((error: import("..").ApiError) => any) | undefined;
27
+ loadUser?: boolean;
28
+ session?: boolean;
29
+ }): (req: any, res: any, next: any) => any;
30
+ httpClient: import("../HttpClient").HttpClient;
31
+ requestManager: import("../RequestManager").RequestManager;
32
+ cloudURL: string;
33
+ config: import("../OxyServices.base").OxyConfig;
34
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
35
+ getBaseURL(): string;
36
+ getClient(): import("../HttpClient").HttpClient;
37
+ getMetrics(): {
38
+ totalRequests: number;
39
+ successfulRequests: number;
40
+ failedRequests: number;
41
+ cacheHits: number;
42
+ cacheMisses: number;
43
+ averageResponseTime: number;
44
+ };
45
+ clearCache(): void;
46
+ clearCacheEntry(key: string): void;
47
+ getCacheStats(): {
48
+ size: number;
49
+ hits: number;
50
+ misses: number;
51
+ hitRate: number;
52
+ };
53
+ getCloudURL(): string;
54
+ setTokens(accessToken: string, refreshToken?: string): void;
55
+ clearTokens(): void;
56
+ getCurrentUserId(): string | null;
57
+ hasValidToken(): boolean;
58
+ getAccessToken(): string | null;
59
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
60
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
61
+ hasAccessToken(): boolean;
62
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
63
+ maxRetries?: number;
64
+ retryDelay?: number;
65
+ authTimeoutMs?: number;
66
+ }): Promise<T>;
67
+ validate(): Promise<boolean>;
68
+ handleError(error: any): Error;
69
+ healthCheck(): Promise<{
70
+ status: string;
71
+ users?: number;
72
+ timestamp?: string;
73
+ [key: string]: any;
74
+ }>;
75
+ };
76
+ __resetTokensForTests(): void;
77
+ } & {
78
+ new (...args: any[]): {
79
+ registerDevice(deviceData: any): Promise<any>;
80
+ getUserDevices(): Promise<any[]>;
81
+ removeDevice(deviceId: string): Promise<void>;
82
+ getDeviceSessions(sessionId: string): Promise<any[]>;
83
+ logoutAllDeviceSessions(sessionId: string, deviceId?: string, excludeCurrent?: boolean): Promise<any>;
84
+ updateDeviceName(sessionId: string, deviceName: string): Promise<any>;
85
+ httpClient: import("../HttpClient").HttpClient;
86
+ requestManager: import("../RequestManager").RequestManager;
87
+ cloudURL: string;
88
+ config: import("../OxyServices.base").OxyConfig;
89
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
90
+ getBaseURL(): string;
91
+ getClient(): import("../HttpClient").HttpClient;
92
+ getMetrics(): {
93
+ totalRequests: number;
94
+ successfulRequests: number;
95
+ failedRequests: number;
96
+ cacheHits: number;
97
+ cacheMisses: number;
98
+ averageResponseTime: number;
99
+ };
100
+ clearCache(): void;
101
+ clearCacheEntry(key: string): void;
102
+ getCacheStats(): {
103
+ size: number;
104
+ hits: number;
105
+ misses: number;
106
+ hitRate: number;
107
+ };
108
+ getCloudURL(): string;
109
+ setTokens(accessToken: string, refreshToken?: string): void;
110
+ clearTokens(): void;
111
+ getCurrentUserId(): string | null;
112
+ hasValidToken(): boolean;
113
+ getAccessToken(): string | null;
114
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
115
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
116
+ hasAccessToken(): boolean;
117
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
118
+ maxRetries?: number;
119
+ retryDelay?: number;
120
+ authTimeoutMs?: number;
121
+ }): Promise<T>;
122
+ validate(): Promise<boolean>;
123
+ handleError(error: any): Error;
124
+ healthCheck(): Promise<{
125
+ status: string;
126
+ users?: number;
127
+ timestamp?: string;
128
+ [key: string]: any;
129
+ }>;
130
+ };
131
+ __resetTokensForTests(): void;
132
+ } & {
133
+ new (...args: any[]): {
134
+ trackEvent(eventName: string, properties?: Record<string, any>): Promise<void>;
135
+ getAnalytics(startDate?: string, endDate?: string): Promise<any>;
136
+ httpClient: import("../HttpClient").HttpClient;
137
+ requestManager: import("../RequestManager").RequestManager;
138
+ cloudURL: string;
139
+ config: import("../OxyServices.base").OxyConfig;
140
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
141
+ getBaseURL(): string;
142
+ getClient(): import("../HttpClient").HttpClient;
143
+ getMetrics(): {
144
+ totalRequests: number;
145
+ successfulRequests: number;
146
+ failedRequests: number;
147
+ cacheHits: number;
148
+ cacheMisses: number;
149
+ averageResponseTime: number;
150
+ };
151
+ clearCache(): void;
152
+ clearCacheEntry(key: string): void;
153
+ getCacheStats(): {
154
+ size: number;
155
+ hits: number;
156
+ misses: number;
157
+ hitRate: number;
158
+ };
159
+ getCloudURL(): string;
160
+ setTokens(accessToken: string, refreshToken?: string): void;
161
+ clearTokens(): void;
162
+ getCurrentUserId(): string | null;
163
+ hasValidToken(): boolean;
164
+ getAccessToken(): string | null;
165
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
166
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
167
+ hasAccessToken(): boolean;
168
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
169
+ maxRetries?: number;
170
+ retryDelay?: number;
171
+ authTimeoutMs?: number;
172
+ }): Promise<T>;
173
+ validate(): Promise<boolean>;
174
+ handleError(error: any): Error;
175
+ healthCheck(): Promise<{
176
+ status: string;
177
+ users?: number;
178
+ timestamp?: string;
179
+ [key: string]: any;
180
+ }>;
181
+ };
182
+ __resetTokensForTests(): void;
183
+ } & {
184
+ new (...args: any[]): {
185
+ updateLocation(latitude: number, longitude: number): Promise<any>;
186
+ getNearbyUsers(radius?: number): Promise<any[]>;
187
+ httpClient: import("../HttpClient").HttpClient;
188
+ requestManager: import("../RequestManager").RequestManager;
189
+ cloudURL: string;
190
+ config: import("../OxyServices.base").OxyConfig;
191
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
192
+ getBaseURL(): string;
193
+ getClient(): import("../HttpClient").HttpClient;
194
+ getMetrics(): {
195
+ totalRequests: number;
196
+ successfulRequests: number;
197
+ failedRequests: number;
198
+ cacheHits: number;
199
+ cacheMisses: number;
200
+ averageResponseTime: number;
201
+ };
202
+ clearCache(): void;
203
+ clearCacheEntry(key: string): void;
204
+ getCacheStats(): {
205
+ size: number;
206
+ hits: number;
207
+ misses: number;
208
+ hitRate: number;
209
+ };
210
+ getCloudURL(): string;
211
+ setTokens(accessToken: string, refreshToken?: string): void;
212
+ clearTokens(): void;
213
+ getCurrentUserId(): string | null;
214
+ hasValidToken(): boolean;
215
+ getAccessToken(): string | null;
216
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
217
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
218
+ hasAccessToken(): boolean;
219
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
220
+ maxRetries?: number;
221
+ retryDelay?: number;
222
+ authTimeoutMs?: number;
223
+ }): Promise<T>;
224
+ validate(): Promise<boolean>;
225
+ handleError(error: any): Error;
226
+ healthCheck(): Promise<{
227
+ status: string;
228
+ users?: number;
229
+ timestamp?: string;
230
+ [key: string]: any;
231
+ }>;
232
+ };
233
+ __resetTokensForTests(): void;
234
+ } & {
235
+ new (...args: any[]): {
236
+ getDeveloperApps(): Promise<any[]>;
237
+ createDeveloperApp(data: {
238
+ name: string;
239
+ description?: string;
240
+ webhookUrl: string;
241
+ devWebhookUrl?: string;
242
+ scopes?: string[];
243
+ }): Promise<any>;
244
+ getDeveloperApp(appId: string): Promise<any>;
245
+ updateDeveloperApp(appId: string, data: {
246
+ name?: string;
247
+ description?: string;
248
+ webhookUrl?: string;
249
+ devWebhookUrl?: string;
250
+ scopes?: string[];
251
+ }): Promise<any>;
252
+ regenerateDeveloperAppSecret(appId: string): Promise<any>;
253
+ deleteDeveloperApp(appId: string): Promise<any>;
254
+ httpClient: import("../HttpClient").HttpClient;
255
+ requestManager: import("../RequestManager").RequestManager;
256
+ cloudURL: string;
257
+ config: import("../OxyServices.base").OxyConfig;
258
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
259
+ getBaseURL(): string;
260
+ getClient(): import("../HttpClient").HttpClient;
261
+ getMetrics(): {
262
+ totalRequests: number;
263
+ successfulRequests: number;
264
+ failedRequests: number;
265
+ cacheHits: number;
266
+ cacheMisses: number;
267
+ averageResponseTime: number;
268
+ };
269
+ clearCache(): void;
270
+ clearCacheEntry(key: string): void;
271
+ getCacheStats(): {
272
+ size: number;
273
+ hits: number;
274
+ misses: number;
275
+ hitRate: number;
276
+ };
277
+ getCloudURL(): string;
278
+ setTokens(accessToken: string, refreshToken?: string): void;
279
+ clearTokens(): void;
280
+ getCurrentUserId(): string | null;
281
+ hasValidToken(): boolean;
282
+ getAccessToken(): string | null;
283
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
284
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
285
+ hasAccessToken(): boolean;
286
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
287
+ maxRetries?: number;
288
+ retryDelay?: number;
289
+ authTimeoutMs?: number;
290
+ }): Promise<T>;
291
+ validate(): Promise<boolean>;
292
+ handleError(error: any): Error;
293
+ healthCheck(): Promise<{
294
+ status: string;
295
+ users?: number;
296
+ timestamp?: string;
297
+ [key: string]: any;
298
+ }>;
299
+ };
300
+ __resetTokensForTests(): void;
301
+ } & {
302
+ new (...args: any[]): {
303
+ deleteFile(fileId: string): Promise<any>;
304
+ getFileDownloadUrl(fileId: string, variant?: string, expiresIn?: number): string;
305
+ getFileDownloadUrlAsync(fileId: string, variant?: string, expiresIn?: number): Promise<string>;
306
+ getFileStreamUrl(fileId: string): string;
307
+ listUserFiles(limit?: number, offset?: number): Promise<{
308
+ files: any[];
309
+ total: number;
310
+ hasMore: boolean;
311
+ }>;
312
+ getFileContentAsText(fileId: string, variant?: string): Promise<string>;
313
+ getFileContentAsBlob(fileId: string, variant?: string): Promise<Blob>;
314
+ uploadRawFile(file: File | Blob, visibility?: "private" | "public" | "unlisted", metadata?: Record<string, any>): Promise<any>;
315
+ calculateSHA256(file: File | Blob): Promise<string>;
316
+ assetInit(sha256: string, size: number, mime: string): Promise<import("..").AssetInitResponse>;
317
+ assetComplete(fileId: string, originalName: string, size: number, mime: string, visibility?: "private" | "public" | "unlisted", metadata?: Record<string, any>): Promise<any>;
318
+ assetUpload(file: File, visibility?: "private" | "public" | "unlisted", metadata?: Record<string, any>, onProgress?: ((progress: number) => void) | undefined): Promise<any>;
319
+ uploadToPresignedUrl(url: string, file: File, onProgress?: ((progress: number) => void) | undefined): Promise<void>;
320
+ assetLink(fileId: string, app: string, entityType: string, entityId: string, visibility?: "private" | "public" | "unlisted", webhookUrl?: string): Promise<any>;
321
+ assetUnlink(fileId: string, app: string, entityType: string, entityId: string): Promise<any>;
322
+ assetGet(fileId: string): Promise<any>;
323
+ assetGetUrl(fileId: string, variant?: string, expiresIn?: number): Promise<import("..").AssetUrlResponse>;
324
+ assetRestore(fileId: string): Promise<any>;
325
+ assetDelete(fileId: string, force?: boolean): Promise<any>;
326
+ assetGetVariants(fileId: string): Promise<import("..").AssetVariant[]>;
327
+ assetUpdateVisibility(fileId: string, visibility: "private" | "public" | "unlisted"): Promise<any>;
328
+ uploadAvatar(file: File, userId: string, app?: string): Promise<any>;
329
+ uploadProfileBanner(file: File, userId: string, app?: string): Promise<any>;
330
+ httpClient: import("../HttpClient").HttpClient;
331
+ requestManager: import("../RequestManager").RequestManager;
332
+ cloudURL: string;
333
+ config: import("../OxyServices.base").OxyConfig;
334
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
335
+ getBaseURL(): string;
336
+ getClient(): import("../HttpClient").HttpClient;
337
+ getMetrics(): {
338
+ totalRequests: number;
339
+ successfulRequests: number;
340
+ failedRequests: number;
341
+ cacheHits: number;
342
+ cacheMisses: number;
343
+ averageResponseTime: number;
344
+ };
345
+ clearCache(): void;
346
+ clearCacheEntry(key: string): void;
347
+ getCacheStats(): {
348
+ size: number;
349
+ hits: number;
350
+ misses: number;
351
+ hitRate: number;
352
+ };
353
+ getCloudURL(): string;
354
+ setTokens(accessToken: string, refreshToken?: string): void;
355
+ clearTokens(): void;
356
+ getCurrentUserId(): string | null;
357
+ hasValidToken(): boolean;
358
+ getAccessToken(): string | null;
359
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
360
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
361
+ hasAccessToken(): boolean;
362
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
363
+ maxRetries?: number;
364
+ retryDelay?: number;
365
+ authTimeoutMs?: number;
366
+ }): Promise<T>;
367
+ validate(): Promise<boolean>;
368
+ handleError(error: any): Error;
369
+ healthCheck(): Promise<{
370
+ status: string;
371
+ users?: number;
372
+ timestamp?: string;
373
+ [key: string]: any;
374
+ }>;
375
+ };
376
+ __resetTokensForTests(): void;
377
+ } & {
378
+ new (...args: any[]): {
379
+ getUserKarma(userId: string): Promise<any>;
380
+ giveKarma(userId: string, amount: number, reason?: string): Promise<any>;
381
+ getUserKarmaTotal(userId: string): Promise<any>;
382
+ getUserKarmaHistory(userId: string, limit?: number, offset?: number): Promise<any>;
383
+ getKarmaLeaderboard(): Promise<any>;
384
+ getKarmaRules(): Promise<any>;
385
+ httpClient: import("../HttpClient").HttpClient;
386
+ requestManager: import("../RequestManager").RequestManager;
387
+ cloudURL: string;
388
+ config: import("../OxyServices.base").OxyConfig;
389
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
390
+ getBaseURL(): string;
391
+ getClient(): import("../HttpClient").HttpClient;
392
+ getMetrics(): {
393
+ totalRequests: number;
394
+ successfulRequests: number;
395
+ failedRequests: number;
396
+ cacheHits: number;
397
+ cacheMisses: number;
398
+ averageResponseTime: number;
399
+ };
400
+ clearCache(): void;
401
+ clearCacheEntry(key: string): void;
402
+ getCacheStats(): {
403
+ size: number;
404
+ hits: number;
405
+ misses: number;
406
+ hitRate: number;
407
+ };
408
+ getCloudURL(): string;
409
+ setTokens(accessToken: string, refreshToken?: string): void;
410
+ clearTokens(): void;
411
+ getCurrentUserId(): string | null;
412
+ hasValidToken(): boolean;
413
+ getAccessToken(): string | null;
414
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
415
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
416
+ hasAccessToken(): boolean;
417
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
418
+ maxRetries?: number;
419
+ retryDelay?: number;
420
+ authTimeoutMs?: number;
421
+ }): Promise<T>;
422
+ validate(): Promise<boolean>;
423
+ handleError(error: any): Error;
424
+ healthCheck(): Promise<{
425
+ status: string;
426
+ users?: number;
427
+ timestamp?: string;
428
+ [key: string]: any;
429
+ }>;
430
+ };
431
+ __resetTokensForTests(): void;
432
+ } & {
433
+ new (...args: any[]): {
434
+ createPayment(data: any): Promise<any>;
435
+ getPayment(paymentId: string): Promise<any>;
436
+ getUserPayments(): Promise<any[]>;
437
+ httpClient: import("../HttpClient").HttpClient;
438
+ requestManager: import("../RequestManager").RequestManager;
439
+ cloudURL: string;
440
+ config: import("../OxyServices.base").OxyConfig;
441
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
442
+ getBaseURL(): string;
443
+ getClient(): import("../HttpClient").HttpClient;
444
+ getMetrics(): {
445
+ totalRequests: number;
446
+ successfulRequests: number;
447
+ failedRequests: number;
448
+ cacheHits: number;
449
+ cacheMisses: number;
450
+ averageResponseTime: number;
451
+ };
452
+ clearCache(): void;
453
+ clearCacheEntry(key: string): void;
454
+ getCacheStats(): {
455
+ size: number;
456
+ hits: number;
457
+ misses: number;
458
+ hitRate: number;
459
+ };
460
+ getCloudURL(): string;
461
+ setTokens(accessToken: string, refreshToken?: string): void;
462
+ clearTokens(): void;
463
+ getCurrentUserId(): string | null;
464
+ hasValidToken(): boolean;
465
+ getAccessToken(): string | null;
466
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
467
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
468
+ hasAccessToken(): boolean;
469
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
470
+ maxRetries?: number;
471
+ retryDelay?: number;
472
+ authTimeoutMs?: number;
473
+ }): Promise<T>;
474
+ validate(): Promise<boolean>;
475
+ handleError(error: any): Error;
476
+ healthCheck(): Promise<{
477
+ status: string;
478
+ users?: number;
479
+ timestamp?: string;
480
+ [key: string]: any;
481
+ }>;
482
+ };
483
+ __resetTokensForTests(): void;
484
+ } & {
485
+ new (...args: any[]): {
486
+ getStorage(): Promise<{
487
+ getItem: (key: string) => Promise<string | null>;
488
+ setItem: (key: string, value: string) => Promise<void>;
489
+ removeItem: (key: string) => Promise<void>;
490
+ }>;
491
+ getCurrentLanguage(storageKeyPrefix?: string): Promise<string | null>;
492
+ getCurrentLanguageMetadata(storageKeyPrefix?: string): Promise<import("..").LanguageMetadata | null>;
493
+ getCurrentLanguageName(storageKeyPrefix?: string): Promise<string | null>;
494
+ getCurrentNativeLanguageName(storageKeyPrefix?: string): Promise<string | null>;
495
+ httpClient: import("../HttpClient").HttpClient;
496
+ requestManager: import("../RequestManager").RequestManager;
497
+ cloudURL: string;
498
+ config: import("../OxyServices.base").OxyConfig;
499
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
500
+ getBaseURL(): string;
501
+ getClient(): import("../HttpClient").HttpClient;
502
+ getMetrics(): {
503
+ totalRequests: number;
504
+ successfulRequests: number;
505
+ failedRequests: number;
506
+ cacheHits: number;
507
+ cacheMisses: number;
508
+ averageResponseTime: number;
509
+ };
510
+ clearCache(): void;
511
+ clearCacheEntry(key: string): void;
512
+ getCacheStats(): {
513
+ size: number;
514
+ hits: number;
515
+ misses: number;
516
+ hitRate: number;
517
+ };
518
+ getCloudURL(): string;
519
+ setTokens(accessToken: string, refreshToken?: string): void;
520
+ clearTokens(): void;
521
+ getCurrentUserId(): string | null;
522
+ hasValidToken(): boolean;
523
+ getAccessToken(): string | null;
524
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
525
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
526
+ hasAccessToken(): boolean;
527
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
528
+ maxRetries?: number;
529
+ retryDelay?: number;
530
+ authTimeoutMs?: number;
531
+ }): Promise<T>;
532
+ validate(): Promise<boolean>;
533
+ handleError(error: any): Error;
534
+ healthCheck(): Promise<{
535
+ status: string;
536
+ users?: number;
537
+ timestamp?: string;
538
+ [key: string]: any;
539
+ }>;
540
+ };
541
+ __resetTokensForTests(): void;
542
+ } & {
543
+ new (...args: any[]): {
544
+ extractUserId(userIdField: string | {
545
+ _id: string;
546
+ username?: string;
547
+ avatar?: string;
548
+ }): string;
549
+ isUserInList<T extends import("..").BlockedUser | import("..").RestrictedUser>(userId: string, getUserList: () => Promise<T[]>, getIdField: (item: T) => string | {
550
+ _id: string;
551
+ username?: string;
552
+ avatar?: string;
553
+ }): Promise<boolean>;
554
+ getBlockedUsers(): Promise<import("..").BlockedUser[]>;
555
+ blockUser(userId: string): Promise<{
556
+ message: string;
557
+ }>;
558
+ unblockUser(userId: string): Promise<{
559
+ message: string;
560
+ }>;
561
+ isUserBlocked(userId: string): Promise<boolean>;
562
+ getRestrictedUsers(): Promise<import("..").RestrictedUser[]>;
563
+ restrictUser(userId: string): Promise<{
564
+ message: string;
565
+ }>;
566
+ unrestrictUser(userId: string): Promise<{
567
+ message: string;
568
+ }>;
569
+ isUserRestricted(userId: string): Promise<boolean>;
570
+ httpClient: import("../HttpClient").HttpClient;
571
+ requestManager: import("../RequestManager").RequestManager;
572
+ cloudURL: string;
573
+ config: import("../OxyServices.base").OxyConfig;
574
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
575
+ getBaseURL(): string;
576
+ getClient(): import("../HttpClient").HttpClient;
577
+ getMetrics(): {
578
+ totalRequests: number;
579
+ successfulRequests: number;
580
+ failedRequests: number;
581
+ cacheHits: number;
582
+ cacheMisses: number;
583
+ averageResponseTime: number;
584
+ };
585
+ clearCache(): void;
586
+ clearCacheEntry(key: string): void;
587
+ getCacheStats(): {
588
+ size: number;
589
+ hits: number;
590
+ misses: number;
591
+ hitRate: number;
592
+ };
593
+ getCloudURL(): string;
594
+ setTokens(accessToken: string, refreshToken?: string): void;
595
+ clearTokens(): void;
596
+ getCurrentUserId(): string | null;
597
+ hasValidToken(): boolean;
598
+ getAccessToken(): string | null;
599
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
600
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
601
+ hasAccessToken(): boolean;
602
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
603
+ maxRetries?: number;
604
+ retryDelay?: number;
605
+ authTimeoutMs?: number;
606
+ }): Promise<T>;
607
+ validate(): Promise<boolean>;
608
+ handleError(error: any): Error;
609
+ healthCheck(): Promise<{
610
+ status: string;
611
+ users?: number;
612
+ timestamp?: string;
613
+ [key: string]: any;
614
+ }>;
615
+ };
616
+ __resetTokensForTests(): void;
617
+ } & {
618
+ new (...args: any[]): {
619
+ startTotpEnrollment(sessionId: string): Promise<{
620
+ secret: string;
621
+ otpauthUrl: string;
622
+ issuer: string;
623
+ label: string;
624
+ }>;
625
+ verifyTotpEnrollment(sessionId: string, code: string): Promise<{
626
+ enabled: boolean;
627
+ backupCodes?: string[];
628
+ recoveryKey?: string;
629
+ }>;
630
+ disableTotp(sessionId: string, code: string): Promise<{
631
+ disabled: boolean;
632
+ }>;
633
+ httpClient: import("../HttpClient").HttpClient;
634
+ requestManager: import("../RequestManager").RequestManager;
635
+ cloudURL: string;
636
+ config: import("../OxyServices.base").OxyConfig;
637
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
638
+ getBaseURL(): string;
639
+ getClient(): import("../HttpClient").HttpClient;
640
+ getMetrics(): {
641
+ totalRequests: number;
642
+ successfulRequests: number;
643
+ failedRequests: number;
644
+ cacheHits: number;
645
+ cacheMisses: number;
646
+ averageResponseTime: number;
647
+ };
648
+ clearCache(): void;
649
+ clearCacheEntry(key: string): void;
650
+ getCacheStats(): {
651
+ size: number;
652
+ hits: number;
653
+ misses: number;
654
+ hitRate: number;
655
+ };
656
+ getCloudURL(): string;
657
+ setTokens(accessToken: string, refreshToken?: string): void;
658
+ clearTokens(): void;
659
+ getCurrentUserId(): string | null;
660
+ hasValidToken(): boolean;
661
+ getAccessToken(): string | null;
662
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
663
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
664
+ hasAccessToken(): boolean;
665
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
666
+ maxRetries?: number;
667
+ retryDelay?: number;
668
+ authTimeoutMs?: number;
669
+ }): Promise<T>;
670
+ validate(): Promise<boolean>;
671
+ handleError(error: any): Error;
672
+ healthCheck(): Promise<{
673
+ status: string;
674
+ users?: number;
675
+ timestamp?: string;
676
+ [key: string]: any;
677
+ }>;
678
+ };
679
+ __resetTokensForTests(): void;
680
+ } & {
681
+ new (...args: any[]): {
682
+ getProfileByUsername(username: string): Promise<import("..").User>;
683
+ searchProfiles(query: string, pagination?: import("../..").PaginationParams): Promise<import("..").SearchProfilesResponse>;
684
+ getProfileRecommendations(): Promise<{
685
+ [key: string]: any;
686
+ id: string;
687
+ username: string;
688
+ name?: {
689
+ first?: string;
690
+ last?: string;
691
+ full?: string;
692
+ } | undefined;
693
+ description?: string;
694
+ _count?: {
695
+ followers: number;
696
+ following: number;
697
+ } | undefined;
698
+ }[]>;
699
+ getUserById(userId: string): Promise<import("..").User>;
700
+ getCurrentUser(): Promise<import("..").User>;
701
+ updateProfile(updates: Record<string, any>): Promise<import("..").User>;
702
+ getPrivacySettings(userId?: string): Promise<any>;
703
+ updatePrivacySettings(settings: Record<string, any>, userId?: string): Promise<any>;
704
+ requestAccountVerification(reason: string, evidence?: string): Promise<{
705
+ message: string;
706
+ requestId: string;
707
+ }>;
708
+ downloadAccountData(format?: "json" | "csv"): Promise<Blob>;
709
+ deleteAccount(password: string, confirmText: string): Promise<{
710
+ message: string;
711
+ }>;
712
+ updateUser(userId: string, updates: Record<string, any>): Promise<import("..").User>;
713
+ followUser(userId: string): Promise<{
714
+ success: boolean;
715
+ message: string;
716
+ }>;
717
+ unfollowUser(userId: string): Promise<{
718
+ success: boolean;
719
+ message: string;
720
+ }>;
721
+ getFollowStatus(userId: string): Promise<{
722
+ isFollowing: boolean;
723
+ }>;
724
+ getUserFollowers(userId: string, pagination?: import("../..").PaginationParams): Promise<{
725
+ followers: import("..").User[];
726
+ total: number;
727
+ hasMore: boolean;
728
+ }>;
729
+ getUserFollowing(userId: string, pagination?: import("../..").PaginationParams): Promise<{
730
+ following: import("..").User[];
731
+ total: number;
732
+ hasMore: boolean;
733
+ }>;
734
+ getNotifications(): Promise<import("..").Notification[]>;
735
+ getUnreadCount(): Promise<number>;
736
+ createNotification(data: Partial<import("..").Notification>): Promise<import("..").Notification>;
737
+ markNotificationAsRead(notificationId: string): Promise<void>;
738
+ markAllNotificationsAsRead(): Promise<void>;
739
+ deleteNotification(notificationId: string): Promise<void>;
740
+ httpClient: import("../HttpClient").HttpClient;
741
+ requestManager: import("../RequestManager").RequestManager;
742
+ cloudURL: string;
743
+ config: import("../OxyServices.base").OxyConfig;
744
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
745
+ getBaseURL(): string;
746
+ getClient(): import("../HttpClient").HttpClient;
747
+ getMetrics(): {
748
+ totalRequests: number;
749
+ successfulRequests: number;
750
+ failedRequests: number;
751
+ cacheHits: number;
752
+ cacheMisses: number;
753
+ averageResponseTime: number;
754
+ };
755
+ clearCache(): void;
756
+ clearCacheEntry(key: string): void;
757
+ getCacheStats(): {
758
+ size: number;
759
+ hits: number;
760
+ misses: number;
761
+ hitRate: number;
762
+ };
763
+ getCloudURL(): string;
764
+ setTokens(accessToken: string, refreshToken?: string): void;
765
+ clearTokens(): void;
766
+ getCurrentUserId(): string | null;
767
+ hasValidToken(): boolean;
768
+ getAccessToken(): string | null;
769
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
770
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
771
+ hasAccessToken(): boolean;
772
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
773
+ maxRetries?: number;
774
+ retryDelay?: number;
775
+ authTimeoutMs?: number;
776
+ }): Promise<T>;
777
+ validate(): Promise<boolean>;
778
+ handleError(error: any): Error;
779
+ healthCheck(): Promise<{
780
+ status: string;
781
+ users?: number;
782
+ timestamp?: string;
783
+ [key: string]: any;
784
+ }>;
785
+ };
786
+ __resetTokensForTests(): void;
787
+ } & {
788
+ new (...args: any[]): {
789
+ signUp(username: string, email: string, password: string): Promise<{
790
+ message: string;
791
+ token: string;
792
+ user: import("..").User;
793
+ }>;
794
+ requestRecovery(identifier: string): Promise<{
795
+ delivery?: string;
796
+ destination?: string;
797
+ }>;
798
+ verifyRecoveryCode(identifier: string, code: string): Promise<{
799
+ verified: boolean;
800
+ }>;
801
+ resetPassword(identifier: string, code: string, newPassword: string): Promise<{
802
+ success: boolean;
803
+ }>;
804
+ resetPasswordWithTotp(identifier: string, code: string, newPassword: string): Promise<{
805
+ success: boolean;
806
+ }>;
807
+ resetPasswordWithBackupCode(identifier: string, backupCode: string, newPassword: string): Promise<{
808
+ success: boolean;
809
+ }>;
810
+ resetPasswordWithRecoveryKey(identifier: string, recoveryKey: string, newPassword: string): Promise<{
811
+ success: boolean;
812
+ nextRecoveryKey?: string;
813
+ }>;
814
+ signIn(username: string, password: string, deviceName?: string, deviceFingerprint?: any): Promise<import("..").SessionLoginResponse | {
815
+ mfaRequired: true;
816
+ mfaToken: string;
817
+ expiresAt: string;
818
+ }>;
819
+ verifyTotpLogin(mfaToken: string, code: string): Promise<import("..").SessionLoginResponse>;
820
+ getUserBySession(sessionId: string): Promise<import("..").User>;
821
+ getUsersBySessions(sessionIds: string[]): Promise<{
822
+ sessionId: string;
823
+ user: import("..").User | null;
824
+ }[]>;
825
+ getTokenBySession(sessionId: string): Promise<{
826
+ accessToken: string;
827
+ expiresAt: string;
828
+ }>;
829
+ getSessionsBySessionId(sessionId: string): Promise<any[]>;
830
+ logoutSession(sessionId: string, targetSessionId?: string): Promise<void>;
831
+ logoutAllSessions(sessionId: string): Promise<void>;
832
+ validateSession(sessionId: string, options?: {
833
+ deviceFingerprint?: string;
834
+ useHeaderValidation?: boolean;
835
+ }): Promise<{
836
+ valid: boolean;
837
+ expiresAt: string;
838
+ lastActivity: string;
839
+ user: import("..").User;
840
+ sessionId?: string;
841
+ source?: string;
842
+ }>;
843
+ checkUsernameAvailability(username: string): Promise<{
844
+ available: boolean;
845
+ message: string;
846
+ }>;
847
+ checkEmailAvailability(email: string): Promise<{
848
+ available: boolean;
849
+ message: string;
850
+ }>;
851
+ httpClient: import("../HttpClient").HttpClient;
852
+ requestManager: import("../RequestManager").RequestManager;
853
+ cloudURL: string;
854
+ config: import("../OxyServices.base").OxyConfig;
855
+ makeRequest<T>(method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", url: string, data?: any, options?: import("../RequestManager").RequestOptions): Promise<T>;
856
+ getBaseURL(): string;
857
+ getClient(): import("../HttpClient").HttpClient;
858
+ getMetrics(): {
859
+ totalRequests: number;
860
+ successfulRequests: number;
861
+ failedRequests: number;
862
+ cacheHits: number;
863
+ cacheMisses: number;
864
+ averageResponseTime: number;
865
+ };
866
+ clearCache(): void;
867
+ clearCacheEntry(key: string): void;
868
+ getCacheStats(): {
869
+ size: number;
870
+ hits: number;
871
+ misses: number;
872
+ hitRate: number;
873
+ };
874
+ getCloudURL(): string;
875
+ setTokens(accessToken: string, refreshToken?: string): void;
876
+ clearTokens(): void;
877
+ getCurrentUserId(): string | null;
878
+ hasValidToken(): boolean;
879
+ getAccessToken(): string | null;
880
+ waitForAuth(timeoutMs?: number): Promise<boolean>;
881
+ waitForAuthentication(timeoutMs?: number): Promise<boolean>;
882
+ hasAccessToken(): boolean;
883
+ withAuthRetry<T>(operation: () => Promise<T>, operationName: string, options?: {
884
+ maxRetries?: number;
885
+ retryDelay?: number;
886
+ authTimeoutMs?: number;
887
+ }): Promise<T>;
888
+ validate(): Promise<boolean>;
889
+ handleError(error: any): Error;
890
+ healthCheck(): Promise<{
891
+ status: string;
892
+ users?: number;
893
+ timestamp?: string;
894
+ [key: string]: any;
895
+ }>;
896
+ };
897
+ __resetTokensForTests(): void;
898
+ } & typeof OxyServicesBase;
899
+ //# sourceMappingURL=index.d.ts.map