-
Notifications
You must be signed in to change notification settings - Fork 3
/
types.ts
138 lines (123 loc) · 2.67 KB
/
types.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
import { ReactNode } from 'react'
export type TLoginForm = {
dni: string
password: string
}
// This could be used globally if we're passing just the children props.
// Good for providers
export type TChildrenProps = {
children: ReactNode
}
// === UserResponseData ===
export type TUserResponseData = {
userID: string
token: string
studentID: string
}
// === SmallScreenContext ===
export type TSmallScreenContext = {
isMobile: boolean
setIsMobile: React.Dispatch<React.SetStateAction<boolean>>
}
// === studentList ===
export type TStudentList = {
id: string
fullname: string
subtitle: string
photo: string
tags: TTag[]
}
export type TTag = {
id: number
name: string
}
export type TBootcamp = {
id: string
name: string
bootcamp_end_date: string
}
export type TModality = {
modality: string[]
}
export type TProject = {
id: number
name: string
company_name: string
tags: TTag[]
project_url: string
github_url: string
}
export type TAvailableLanguage = {
name: string,
es_name: string
}
export type TLanguageLevel = "Bàsic" | "Intermedi" | "Avançat" | "Natiu";
export type TUpdateStudentLanguageNotification = {
message: string | null,
}
export type TInitialStateLanguageSlice = {
isLoadingLanguages: boolean,
isErrorLanguages: boolean,
languagesData: TLanguage[],
isOpenEditAdditionalInformation: boolean,
isLoadingUpdateLanguages: boolean,
isErrorUpdateLanguages: boolean,
notification: TUpdateStudentLanguageNotification
}
export type TLanguage = {
id: string
name: string
level: string
}
export type TAbout = {
id: number
name: string
surname: string
resume: {
subtitle: string
social_media: {
github: string
linkedin: string
}
about: string
}
photo: string
tags: TTag[]
}
export type TStudentFormData = {
name: string
surname: string
subtitle: string
github_url: string
linkedin_url: string
about: string
tags_ids: number[]
}
export type TAdditionalTraining = {
id: string
course_name: string
study_center: string
course_beginning_year: number
course_ending_year: number
duration_hrs: number
}
export type TCollaboration = {
uuid: string
name: string
collaboration_description: string
quantity: number
}
export type TSkills = {
initialSkills: string[]
onClose: () => void
onSave: (skills: string[]) => void,
isOpen: boolean
}
export type TDragAndDropLanguagesProps = {
dropLanguages: TLanguage[],
}
export type TModal = {
isOpen: boolean,
onClose: () => void,
children: ReactNode
}