index.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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. }
  50. export interface ArticleCreate {
  51. title: string;
  52. link: string;
  53. content: string;
  54. }
  55. export interface Image {
  56. file_name: string;
  57. stored_file_name: string;
  58. content: string;
  59. state: string;
  60. }
  61. export interface ImageDownload {
  62. file_name: string;
  63. stored_file_name: string;
  64. }