Skip to content

Commit b50ff6b

Browse files
committed
(typescript) fix types
1 parent 60548c9 commit b50ff6b

File tree

1 file changed

+34
-33
lines changed

1 file changed

+34
-33
lines changed

types/index.d.ts

Lines changed: 34 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,27 @@ import Vue, { VNode, Component, PluginFunction } from 'vue'
22

33
export type StringNumber = string | number
44

5-
export type Rooms = Room[]
5+
export interface UserStatus {
6+
state: 'online' | 'offline'
7+
lastChanged: string
8+
}
69

7-
export interface Room {
8-
roomId: StringNumber
9-
roomName: string
10-
users: RoomUsers
11-
unreadCount?: StringNumber
12-
index?: StringNumber | Date
13-
lastMessage?: LastMessage
14-
typingUsers?: StringNumber[]
10+
export interface RoomUser {
11+
_id: StringNumber
12+
username: string
13+
avatar: string
14+
status: UserStatus
15+
}
16+
17+
export type RoomUsers = RoomUser[]
18+
19+
export interface MessageFile {
20+
name: string
21+
type: string
22+
url: string
23+
size?: number
24+
audio?: boolean
25+
duration?: number
1526
}
1627

1728
export interface LastMessage {
@@ -26,21 +37,22 @@ export interface LastMessage {
2637
files?: MessageFile[]
2738
}
2839

29-
export type RoomUsers = RoomUser[]
30-
31-
export interface RoomUser {
32-
_id: StringNumber
33-
username: string
34-
avatar: string
35-
status: UserStatus
40+
export interface Room {
41+
roomId: StringNumber
42+
roomName: string
43+
avatar: String
44+
users: RoomUsers
45+
unreadCount?: StringNumber
46+
index?: StringNumber | Date
47+
lastMessage?: LastMessage
48+
typingUsers?: StringNumber[]
3649
}
3750

38-
export interface UserStatus {
39-
state: 'online' | 'offline'
40-
lastChanged: string
41-
}
51+
export type Rooms = Room[]
4252

43-
export type Messages = Message[]
53+
export interface MessageReactions {
54+
[key: string]: StringNumber[]
55+
}
4456

4557
export interface Message {
4658
_id: StringNumber
@@ -59,18 +71,7 @@ export interface Message {
5971
reactions: MessageReactions
6072
}
6173

62-
export interface MessageFile {
63-
name: string
64-
type: string
65-
url: string
66-
size?: number
67-
audio?: boolean
68-
duration?: number
69-
}
70-
71-
export interface MessageReactions {
72-
[key: string]: StringNumber[]
73-
}
74+
export type Messages = Message[]
7475

7576
export interface CustomAction {
7677
name: string

0 commit comments

Comments
 (0)