index.ts 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. export interface IUserProfile {
  2. email: string;
  3. is_active: boolean;
  4. is_superuser: boolean;
  5. full_name?: string;
  6. id: number;
  7. available_time: number;
  8. membership_status: string;
  9. }
  10. export interface IUserProfileUpdate {
  11. email?: string;
  12. full_name?: string;
  13. password?: string;
  14. is_active?: boolean;
  15. is_superuser?: boolean;
  16. }
  17. export interface IUserProfileCreate {
  18. email: string;
  19. full_name?: string;
  20. password: string;
  21. is_active?: boolean;
  22. is_superuser?: boolean;
  23. }
  24. export interface AppNotification {
  25. content: string;
  26. color?: string;
  27. showProgress?: boolean;
  28. };
  29. export interface MainState {
  30. token: string;
  31. isLoggedIn: boolean | null;
  32. logInError: boolean;
  33. userProfile: IUserProfile | null;
  34. dashboardMiniDrawer: boolean;
  35. dashboardShowDrawer: boolean;
  36. notifications: AppNotification[];
  37. videos: Video[];
  38. };
  39. export interface Video {
  40. id: number;
  41. title: string;
  42. stored_file_name: string;
  43. progress_state: string;
  44. }
  45. export interface VideoCreate{
  46. title: string;
  47. anchor_id: number;
  48. lang_id: number;
  49. }