analytica-frontend-lib 1.1.92 → 1.1.93
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.
- package/dist/index.d.mts +181 -3
- package/dist/index.d.ts +181 -3
- package/dist/index.js +320 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +315 -6
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -42,7 +42,7 @@ export { default as NotFound } from './NotFound/index.mjs';
|
|
|
42
42
|
export { default as VideoPlayer } from './VideoPlayer/index.mjs';
|
|
43
43
|
export { default as Whiteboard } from './Whiteboard/index.mjs';
|
|
44
44
|
export { default as DownloadButton, DownloadButtonProps, DownloadContent } from './DownloadButton/index.mjs';
|
|
45
|
-
export { AuthProvider, ProtectedRoute, PublicRoute, getRootDomain, useAuth, useAuthGuard, useRouteAuth, withAuth } from './Auth/index.mjs';
|
|
45
|
+
export { AuthContextType, AuthProvider, ProtectedRoute, PublicRoute, getRootDomain, useAuth, useAuthGuard, useRouteAuth, withAuth } from './Auth/index.mjs';
|
|
46
46
|
export { CardAccordation } from './Accordation/index.mjs';
|
|
47
47
|
export { AlternativesList } from './Alternative/index.mjs';
|
|
48
48
|
export { createZustandAuthAdapter } from './Auth/zustandAuthAdapter/index.mjs';
|
|
@@ -56,8 +56,8 @@ export { MultipleChoiceList } from './MultipleChoice/index.mjs';
|
|
|
56
56
|
export { default as IconRender } from './IconRender/index.mjs';
|
|
57
57
|
export { DeviceType, getDeviceType, useMobile } from './hooks/useMobile/index.mjs';
|
|
58
58
|
export { useTheme } from './hooks/useTheme/index.mjs';
|
|
59
|
+
import * as zustand_middleware from 'zustand/middleware';
|
|
59
60
|
export { cn, getSubjectColorWithOpacity, syncDropdownState } from './utils/index.mjs';
|
|
60
|
-
import 'zustand/middleware';
|
|
61
61
|
import 'clsx';
|
|
62
62
|
|
|
63
63
|
/**
|
|
@@ -431,4 +431,182 @@ declare const QuizListResultByMateria: ({ subject, onQuestionClick, subjectName,
|
|
|
431
431
|
subjectName?: string;
|
|
432
432
|
}) => react_jsx_runtime.JSX.Element;
|
|
433
433
|
|
|
434
|
-
|
|
434
|
+
/**
|
|
435
|
+
* Interface representing user authentication tokens.
|
|
436
|
+
*/
|
|
437
|
+
interface AuthTokens {
|
|
438
|
+
token: string;
|
|
439
|
+
refreshToken: string;
|
|
440
|
+
[key: string]: unknown;
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Interface representing a user profile.
|
|
444
|
+
*/
|
|
445
|
+
interface UserProfile {
|
|
446
|
+
id: string;
|
|
447
|
+
name?: string;
|
|
448
|
+
email?: string;
|
|
449
|
+
[key: string]: unknown;
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Interface representing a user.
|
|
453
|
+
*/
|
|
454
|
+
interface User {
|
|
455
|
+
id: string;
|
|
456
|
+
name?: string;
|
|
457
|
+
email?: string;
|
|
458
|
+
[key: string]: unknown;
|
|
459
|
+
}
|
|
460
|
+
/**
|
|
461
|
+
* Interface representing session information from the API.
|
|
462
|
+
*/
|
|
463
|
+
interface SessionInfo {
|
|
464
|
+
sessionId: string;
|
|
465
|
+
userId: string;
|
|
466
|
+
profileId: string;
|
|
467
|
+
institutionId: string;
|
|
468
|
+
schoolId: string;
|
|
469
|
+
schoolYearId: string;
|
|
470
|
+
classId: string;
|
|
471
|
+
subjects: string[];
|
|
472
|
+
schools: string[];
|
|
473
|
+
[key: string]: unknown;
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Interface defining the authentication state.
|
|
477
|
+
*/
|
|
478
|
+
interface AuthState {
|
|
479
|
+
user: User | null;
|
|
480
|
+
tokens: AuthTokens | null;
|
|
481
|
+
isAuthenticated: boolean;
|
|
482
|
+
profiles: UserProfile[];
|
|
483
|
+
selectedProfile: UserProfile | null;
|
|
484
|
+
sessionInfo: SessionInfo | null;
|
|
485
|
+
setUser: (user: User | null) => void;
|
|
486
|
+
setTokens: (tokens: AuthTokens | null) => void;
|
|
487
|
+
setProfiles: (profiles: UserProfile[]) => void;
|
|
488
|
+
setSelectedProfile: (profile: UserProfile | null) => void;
|
|
489
|
+
setSessionInfo: (sessionInfo: SessionInfo | null) => void;
|
|
490
|
+
signIn: (user: User, tokens: AuthTokens, profiles: UserProfile[]) => void;
|
|
491
|
+
signOut: () => void;
|
|
492
|
+
updateUserSession: (sessionData: Partial<User>) => void;
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* Zustand store for managing authentication state with persistence.
|
|
496
|
+
*/
|
|
497
|
+
declare const useAuthStore: zustand.UseBoundStore<Omit<zustand.StoreApi<AuthState>, "persist"> & {
|
|
498
|
+
persist: {
|
|
499
|
+
setOptions: (options: Partial<zustand_middleware.PersistOptions<AuthState, unknown>>) => void;
|
|
500
|
+
clearStorage: () => void;
|
|
501
|
+
rehydrate: () => Promise<void> | void;
|
|
502
|
+
hasHydrated: () => boolean;
|
|
503
|
+
onHydrate: (fn: (state: AuthState) => void) => () => void;
|
|
504
|
+
onFinishHydration: (fn: (state: AuthState) => void) => () => void;
|
|
505
|
+
getOptions: () => Partial<zustand_middleware.PersistOptions<AuthState, unknown>>;
|
|
506
|
+
};
|
|
507
|
+
}>;
|
|
508
|
+
|
|
509
|
+
/**
|
|
510
|
+
* Hook que gerencia a inicialização da aplicação e funções de autenticação
|
|
511
|
+
* Combina a lógica de obtenção do institutionId, inicialização do app store e funções de auth
|
|
512
|
+
*
|
|
513
|
+
* @param {UseAppInitializationProps} props - Propriedades do hook
|
|
514
|
+
* @returns {object} Estado da inicialização, funções relacionadas e funções de autenticação
|
|
515
|
+
*/
|
|
516
|
+
declare function useAppInitialization(): {
|
|
517
|
+
getInstitutionId: string | null;
|
|
518
|
+
initialize: (id: string | null) => void;
|
|
519
|
+
initialized: boolean;
|
|
520
|
+
institutionId: string | null;
|
|
521
|
+
authFunctions: {
|
|
522
|
+
checkAuth: () => Promise<boolean>;
|
|
523
|
+
signOut: () => void;
|
|
524
|
+
getUser: () => User | null;
|
|
525
|
+
getSessionInfo: () => SessionInfo | null;
|
|
526
|
+
getTokens: () => AuthTokens | null;
|
|
527
|
+
};
|
|
528
|
+
};
|
|
529
|
+
|
|
530
|
+
/**
|
|
531
|
+
* Interface para as configurações do hook useAppContent
|
|
532
|
+
*/
|
|
533
|
+
interface UseAppContentConfig {
|
|
534
|
+
/** API instance para configuração */
|
|
535
|
+
api: {
|
|
536
|
+
get: (endpoint: string, config: unknown) => Promise<unknown>;
|
|
537
|
+
};
|
|
538
|
+
/** ID da instituição obtido externamente */
|
|
539
|
+
getInstitutionId: string | null | undefined;
|
|
540
|
+
/** Função de inicialização obtida externamente */
|
|
541
|
+
initialize: (institutionId: string) => void;
|
|
542
|
+
/** Estado de inicialização obtido externamente */
|
|
543
|
+
initialized: boolean;
|
|
544
|
+
/** Endpoint para autenticação via URL */
|
|
545
|
+
endpoint?: string;
|
|
546
|
+
/** Número máximo de tentativas em caso de erro */
|
|
547
|
+
maxRetries?: number;
|
|
548
|
+
/** Delay entre tentativas em ms */
|
|
549
|
+
retryDelay?: number;
|
|
550
|
+
/** Callback para limpeza de parâmetros da URL */
|
|
551
|
+
onClearParamsFromURL?: () => void;
|
|
552
|
+
/** Callback para tratamento de erro */
|
|
553
|
+
onError?: (error: unknown) => void;
|
|
554
|
+
/** Callback para navegação quando página não encontrada */
|
|
555
|
+
onNotFoundNavigation?: () => void;
|
|
556
|
+
}
|
|
557
|
+
/**
|
|
558
|
+
* Hook que encapsula toda a lógica do componente AppContent
|
|
559
|
+
* Centraliza a configuração de autenticação, tema, navegação e inicialização
|
|
560
|
+
*
|
|
561
|
+
* @param {UseAppContentConfig} config - Configurações do hook
|
|
562
|
+
* @returns {object} Funções e estado necessários para o AppContent
|
|
563
|
+
*/
|
|
564
|
+
declare function useAppContent(config: UseAppContentConfig): {
|
|
565
|
+
handleNotFoundNavigation: () => void;
|
|
566
|
+
urlAuthConfig: {
|
|
567
|
+
setTokens: (tokens: AuthTokens | null) => void;
|
|
568
|
+
setSessionInfo: (sessionInfo: SessionInfo | null) => void;
|
|
569
|
+
setSelectedProfile: (profile: {
|
|
570
|
+
id: string;
|
|
571
|
+
}) => void;
|
|
572
|
+
api: {
|
|
573
|
+
get: (endpoint: string, config: unknown) => Promise<unknown>;
|
|
574
|
+
};
|
|
575
|
+
endpoint: string;
|
|
576
|
+
clearParamsFromURL: () => void;
|
|
577
|
+
maxRetries: number;
|
|
578
|
+
retryDelay: number;
|
|
579
|
+
onError: (error: unknown) => void;
|
|
580
|
+
};
|
|
581
|
+
institutionIdToUse: string | null | undefined;
|
|
582
|
+
};
|
|
583
|
+
|
|
584
|
+
declare function useInstitutionId(): string | null;
|
|
585
|
+
|
|
586
|
+
/**
|
|
587
|
+
* Interface defining the application state
|
|
588
|
+
*/
|
|
589
|
+
interface AppState {
|
|
590
|
+
institutionId: string | null;
|
|
591
|
+
initialized: boolean;
|
|
592
|
+
setInstitutionId: (institutionId: string | null) => void;
|
|
593
|
+
setInitialized: (initialized: boolean) => void;
|
|
594
|
+
initialize: (id: string | null) => void;
|
|
595
|
+
}
|
|
596
|
+
/**
|
|
597
|
+
* Zustand store for managing application-wide state with persistence
|
|
598
|
+
* @returns {AppState} The application state store
|
|
599
|
+
*/
|
|
600
|
+
declare const useAppStore: zustand.UseBoundStore<Omit<zustand.StoreApi<AppState>, "persist"> & {
|
|
601
|
+
persist: {
|
|
602
|
+
setOptions: (options: Partial<zustand_middleware.PersistOptions<AppState, unknown>>) => void;
|
|
603
|
+
clearStorage: () => void;
|
|
604
|
+
rehydrate: () => Promise<void> | void;
|
|
605
|
+
hasHydrated: () => boolean;
|
|
606
|
+
onHydrate: (fn: (state: AppState) => void) => () => void;
|
|
607
|
+
onFinishHydration: (fn: (state: AppState) => void) => () => void;
|
|
608
|
+
getOptions: () => Partial<zustand_middleware.PersistOptions<AppState, unknown>>;
|
|
609
|
+
};
|
|
610
|
+
}>;
|
|
611
|
+
|
|
612
|
+
export { type AuthState, CheckboxList, CheckboxListItem, FetchNotificationsParams, Notification, type NotificationActions, NotificationApiClient, NotificationEntityType, NotificationGroup, type NotificationState, type NotificationStore, NotificationType, Question, QuizAlternative, QuizConnectDots, QuizDissertative, QuizHeaderResult, QuizImageQuestion, QuizListResult, QuizListResultByMateria, QuizMultipleChoice, QuizResultHeaderTitle, QuizResultPerformance, QuizResultTitle, QuizTrueOrFalse, createNotificationStore, createNotificationsHook, createUseNotificationStore, createUseNotifications, formatTimeAgo, getStatusBadge, useAppContent, useAppInitialization, useAppStore, useAuthStore, useInstitutionId };
|
package/dist/index.d.ts
CHANGED
|
@@ -42,7 +42,7 @@ export { default as NotFound } from './NotFound/index.js';
|
|
|
42
42
|
export { default as VideoPlayer } from './VideoPlayer/index.js';
|
|
43
43
|
export { default as Whiteboard } from './Whiteboard/index.js';
|
|
44
44
|
export { default as DownloadButton, DownloadButtonProps, DownloadContent } from './DownloadButton/index.js';
|
|
45
|
-
export { AuthProvider, ProtectedRoute, PublicRoute, getRootDomain, useAuth, useAuthGuard, useRouteAuth, withAuth } from './Auth/index.js';
|
|
45
|
+
export { AuthContextType, AuthProvider, ProtectedRoute, PublicRoute, getRootDomain, useAuth, useAuthGuard, useRouteAuth, withAuth } from './Auth/index.js';
|
|
46
46
|
export { CardAccordation } from './Accordation/index.js';
|
|
47
47
|
export { AlternativesList } from './Alternative/index.js';
|
|
48
48
|
export { createZustandAuthAdapter } from './Auth/zustandAuthAdapter/index.js';
|
|
@@ -56,8 +56,8 @@ export { MultipleChoiceList } from './MultipleChoice/index.js';
|
|
|
56
56
|
export { default as IconRender } from './IconRender/index.js';
|
|
57
57
|
export { DeviceType, getDeviceType, useMobile } from './hooks/useMobile/index.js';
|
|
58
58
|
export { useTheme } from './hooks/useTheme/index.js';
|
|
59
|
+
import * as zustand_middleware from 'zustand/middleware';
|
|
59
60
|
export { cn, getSubjectColorWithOpacity, syncDropdownState } from './utils/index.js';
|
|
60
|
-
import 'zustand/middleware';
|
|
61
61
|
import 'clsx';
|
|
62
62
|
|
|
63
63
|
/**
|
|
@@ -431,4 +431,182 @@ declare const QuizListResultByMateria: ({ subject, onQuestionClick, subjectName,
|
|
|
431
431
|
subjectName?: string;
|
|
432
432
|
}) => react_jsx_runtime.JSX.Element;
|
|
433
433
|
|
|
434
|
-
|
|
434
|
+
/**
|
|
435
|
+
* Interface representing user authentication tokens.
|
|
436
|
+
*/
|
|
437
|
+
interface AuthTokens {
|
|
438
|
+
token: string;
|
|
439
|
+
refreshToken: string;
|
|
440
|
+
[key: string]: unknown;
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Interface representing a user profile.
|
|
444
|
+
*/
|
|
445
|
+
interface UserProfile {
|
|
446
|
+
id: string;
|
|
447
|
+
name?: string;
|
|
448
|
+
email?: string;
|
|
449
|
+
[key: string]: unknown;
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Interface representing a user.
|
|
453
|
+
*/
|
|
454
|
+
interface User {
|
|
455
|
+
id: string;
|
|
456
|
+
name?: string;
|
|
457
|
+
email?: string;
|
|
458
|
+
[key: string]: unknown;
|
|
459
|
+
}
|
|
460
|
+
/**
|
|
461
|
+
* Interface representing session information from the API.
|
|
462
|
+
*/
|
|
463
|
+
interface SessionInfo {
|
|
464
|
+
sessionId: string;
|
|
465
|
+
userId: string;
|
|
466
|
+
profileId: string;
|
|
467
|
+
institutionId: string;
|
|
468
|
+
schoolId: string;
|
|
469
|
+
schoolYearId: string;
|
|
470
|
+
classId: string;
|
|
471
|
+
subjects: string[];
|
|
472
|
+
schools: string[];
|
|
473
|
+
[key: string]: unknown;
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Interface defining the authentication state.
|
|
477
|
+
*/
|
|
478
|
+
interface AuthState {
|
|
479
|
+
user: User | null;
|
|
480
|
+
tokens: AuthTokens | null;
|
|
481
|
+
isAuthenticated: boolean;
|
|
482
|
+
profiles: UserProfile[];
|
|
483
|
+
selectedProfile: UserProfile | null;
|
|
484
|
+
sessionInfo: SessionInfo | null;
|
|
485
|
+
setUser: (user: User | null) => void;
|
|
486
|
+
setTokens: (tokens: AuthTokens | null) => void;
|
|
487
|
+
setProfiles: (profiles: UserProfile[]) => void;
|
|
488
|
+
setSelectedProfile: (profile: UserProfile | null) => void;
|
|
489
|
+
setSessionInfo: (sessionInfo: SessionInfo | null) => void;
|
|
490
|
+
signIn: (user: User, tokens: AuthTokens, profiles: UserProfile[]) => void;
|
|
491
|
+
signOut: () => void;
|
|
492
|
+
updateUserSession: (sessionData: Partial<User>) => void;
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* Zustand store for managing authentication state with persistence.
|
|
496
|
+
*/
|
|
497
|
+
declare const useAuthStore: zustand.UseBoundStore<Omit<zustand.StoreApi<AuthState>, "persist"> & {
|
|
498
|
+
persist: {
|
|
499
|
+
setOptions: (options: Partial<zustand_middleware.PersistOptions<AuthState, unknown>>) => void;
|
|
500
|
+
clearStorage: () => void;
|
|
501
|
+
rehydrate: () => Promise<void> | void;
|
|
502
|
+
hasHydrated: () => boolean;
|
|
503
|
+
onHydrate: (fn: (state: AuthState) => void) => () => void;
|
|
504
|
+
onFinishHydration: (fn: (state: AuthState) => void) => () => void;
|
|
505
|
+
getOptions: () => Partial<zustand_middleware.PersistOptions<AuthState, unknown>>;
|
|
506
|
+
};
|
|
507
|
+
}>;
|
|
508
|
+
|
|
509
|
+
/**
|
|
510
|
+
* Hook que gerencia a inicialização da aplicação e funções de autenticação
|
|
511
|
+
* Combina a lógica de obtenção do institutionId, inicialização do app store e funções de auth
|
|
512
|
+
*
|
|
513
|
+
* @param {UseAppInitializationProps} props - Propriedades do hook
|
|
514
|
+
* @returns {object} Estado da inicialização, funções relacionadas e funções de autenticação
|
|
515
|
+
*/
|
|
516
|
+
declare function useAppInitialization(): {
|
|
517
|
+
getInstitutionId: string | null;
|
|
518
|
+
initialize: (id: string | null) => void;
|
|
519
|
+
initialized: boolean;
|
|
520
|
+
institutionId: string | null;
|
|
521
|
+
authFunctions: {
|
|
522
|
+
checkAuth: () => Promise<boolean>;
|
|
523
|
+
signOut: () => void;
|
|
524
|
+
getUser: () => User | null;
|
|
525
|
+
getSessionInfo: () => SessionInfo | null;
|
|
526
|
+
getTokens: () => AuthTokens | null;
|
|
527
|
+
};
|
|
528
|
+
};
|
|
529
|
+
|
|
530
|
+
/**
|
|
531
|
+
* Interface para as configurações do hook useAppContent
|
|
532
|
+
*/
|
|
533
|
+
interface UseAppContentConfig {
|
|
534
|
+
/** API instance para configuração */
|
|
535
|
+
api: {
|
|
536
|
+
get: (endpoint: string, config: unknown) => Promise<unknown>;
|
|
537
|
+
};
|
|
538
|
+
/** ID da instituição obtido externamente */
|
|
539
|
+
getInstitutionId: string | null | undefined;
|
|
540
|
+
/** Função de inicialização obtida externamente */
|
|
541
|
+
initialize: (institutionId: string) => void;
|
|
542
|
+
/** Estado de inicialização obtido externamente */
|
|
543
|
+
initialized: boolean;
|
|
544
|
+
/** Endpoint para autenticação via URL */
|
|
545
|
+
endpoint?: string;
|
|
546
|
+
/** Número máximo de tentativas em caso de erro */
|
|
547
|
+
maxRetries?: number;
|
|
548
|
+
/** Delay entre tentativas em ms */
|
|
549
|
+
retryDelay?: number;
|
|
550
|
+
/** Callback para limpeza de parâmetros da URL */
|
|
551
|
+
onClearParamsFromURL?: () => void;
|
|
552
|
+
/** Callback para tratamento de erro */
|
|
553
|
+
onError?: (error: unknown) => void;
|
|
554
|
+
/** Callback para navegação quando página não encontrada */
|
|
555
|
+
onNotFoundNavigation?: () => void;
|
|
556
|
+
}
|
|
557
|
+
/**
|
|
558
|
+
* Hook que encapsula toda a lógica do componente AppContent
|
|
559
|
+
* Centraliza a configuração de autenticação, tema, navegação e inicialização
|
|
560
|
+
*
|
|
561
|
+
* @param {UseAppContentConfig} config - Configurações do hook
|
|
562
|
+
* @returns {object} Funções e estado necessários para o AppContent
|
|
563
|
+
*/
|
|
564
|
+
declare function useAppContent(config: UseAppContentConfig): {
|
|
565
|
+
handleNotFoundNavigation: () => void;
|
|
566
|
+
urlAuthConfig: {
|
|
567
|
+
setTokens: (tokens: AuthTokens | null) => void;
|
|
568
|
+
setSessionInfo: (sessionInfo: SessionInfo | null) => void;
|
|
569
|
+
setSelectedProfile: (profile: {
|
|
570
|
+
id: string;
|
|
571
|
+
}) => void;
|
|
572
|
+
api: {
|
|
573
|
+
get: (endpoint: string, config: unknown) => Promise<unknown>;
|
|
574
|
+
};
|
|
575
|
+
endpoint: string;
|
|
576
|
+
clearParamsFromURL: () => void;
|
|
577
|
+
maxRetries: number;
|
|
578
|
+
retryDelay: number;
|
|
579
|
+
onError: (error: unknown) => void;
|
|
580
|
+
};
|
|
581
|
+
institutionIdToUse: string | null | undefined;
|
|
582
|
+
};
|
|
583
|
+
|
|
584
|
+
declare function useInstitutionId(): string | null;
|
|
585
|
+
|
|
586
|
+
/**
|
|
587
|
+
* Interface defining the application state
|
|
588
|
+
*/
|
|
589
|
+
interface AppState {
|
|
590
|
+
institutionId: string | null;
|
|
591
|
+
initialized: boolean;
|
|
592
|
+
setInstitutionId: (institutionId: string | null) => void;
|
|
593
|
+
setInitialized: (initialized: boolean) => void;
|
|
594
|
+
initialize: (id: string | null) => void;
|
|
595
|
+
}
|
|
596
|
+
/**
|
|
597
|
+
* Zustand store for managing application-wide state with persistence
|
|
598
|
+
* @returns {AppState} The application state store
|
|
599
|
+
*/
|
|
600
|
+
declare const useAppStore: zustand.UseBoundStore<Omit<zustand.StoreApi<AppState>, "persist"> & {
|
|
601
|
+
persist: {
|
|
602
|
+
setOptions: (options: Partial<zustand_middleware.PersistOptions<AppState, unknown>>) => void;
|
|
603
|
+
clearStorage: () => void;
|
|
604
|
+
rehydrate: () => Promise<void> | void;
|
|
605
|
+
hasHydrated: () => boolean;
|
|
606
|
+
onHydrate: (fn: (state: AppState) => void) => () => void;
|
|
607
|
+
onFinishHydration: (fn: (state: AppState) => void) => () => void;
|
|
608
|
+
getOptions: () => Partial<zustand_middleware.PersistOptions<AppState, unknown>>;
|
|
609
|
+
};
|
|
610
|
+
}>;
|
|
611
|
+
|
|
612
|
+
export { type AuthState, CheckboxList, CheckboxListItem, FetchNotificationsParams, Notification, type NotificationActions, NotificationApiClient, NotificationEntityType, NotificationGroup, type NotificationState, type NotificationStore, NotificationType, Question, QuizAlternative, QuizConnectDots, QuizDissertative, QuizHeaderResult, QuizImageQuestion, QuizListResult, QuizListResultByMateria, QuizMultipleChoice, QuizResultHeaderTitle, QuizResultPerformance, QuizResultTitle, QuizTrueOrFalse, createNotificationStore, createNotificationsHook, createUseNotificationStore, createUseNotifications, formatTimeAgo, getStatusBadge, useAppContent, useAppInitialization, useAppStore, useAuthStore, useInstitutionId };
|