-
Notifications
You must be signed in to change notification settings - Fork 4
/
typings.d.ts
70 lines (61 loc) · 1.35 KB
/
typings.d.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
interface Music {
id: number,
name: string,
src: string,
coverImage: string,
avatar: string,
artist: string,
playedCount: number
}
interface Artist {
id: number,
name: string,
avatar: string,
musics: Music[]
}
interface User extends BaseInfo {
userName: string,
password: string,
email: string,
profileImage?: string,
birthDate: number,
playLists: PlayList[],
recent: Music[],
favorite: Music[],
}
interface PlayList extends BaseInfo {
title: string,
description?: string,
color: string,
avatar?: string,
musics: Music[]
}
interface SidebarLinkInfo {
id: number,
title: string,
links: SidebarLink[],
}
interface SidebarLink {
id: number,
title: string,
href: string,
icon: typeof iconsName[number],
child: boolean,
}
interface AuthLocalStorage {
set_at: number,
token: string,
id: string
}
interface AppLocalStorage {
currentMusic: Music,
isPlaying: boolean,
playList: Music[],
playListId: string,
volume: number,
currentMusicTime: number,
repeatType: RepeatType,
shuffleIndex: number[]
}
type PasswordStrength = "very weak" | "weak" | "moderate" | "strong" | "powerfull"
type ButtonType = "primary" | "primary-outline" | "primary-flat" | "secondary" | "secondary-outline" | "secondary-flat" | "danger"