Skip to content

Commit fd54641

Browse files
committed
(typescript) add typings
1 parent 31ff577 commit fd54641

File tree

4 files changed

+80
-6
lines changed

4 files changed

+80
-6
lines changed

types/index.d.ts

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
import Vue, { VNode, Component } from 'vue'
2+
3+
export type StringNumber = string | number
4+
5+
export interface Rooms {
6+
roomId: StringNumber
7+
roomName: string
8+
users: Users[]
9+
unreadCount?: StringNumber
10+
index?: StringNumber | Date
11+
lastMessage?: LastMessage
12+
typingUsers?: StringNumber[]
13+
}
14+
15+
export interface LastMessage {
16+
content: string
17+
sender_id: StringNumber
18+
username?: string
19+
timestamp?: string
20+
saved?: boolean
21+
distributed?: boolean
22+
seen?: boolean
23+
new?: boolean
24+
}
25+
26+
export interface Users {
27+
_id: StringNumber
28+
username: string
29+
avatar: string
30+
status: UserStatus
31+
}
32+
33+
export interface UserStatus {
34+
state: 'online' | 'offline'
35+
last_changed: string
36+
}
37+
38+
export interface Messages {
39+
_id: StringNumber
40+
content: string
41+
sender_id: StringNumber
42+
date: string
43+
timestamp: string
44+
username?: string
45+
system?: boolean
46+
saved?: boolean
47+
distributed?: boolean
48+
seen?: boolean
49+
disable_actions?: boolean
50+
disable_reactions?: boolean
51+
file?: MessageFile
52+
reactions: MessageReactions
53+
}
54+
55+
export interface MessageFile {
56+
name: string
57+
type: string
58+
url: 'https://firebasestorage.googleapis.com/...'
59+
size?: number
60+
audio?: boolean
61+
duration?: number
62+
}
63+
64+
export interface MessageReactions {
65+
[key: string]: StringNumber[]
66+
}
67+
68+
export interface Slots {
69+
spinner: VNode[]
70+
'no-result': VNode[]
71+
'no-more': VNode[]
72+
error: VNode[]
73+
[key: string]: VNode[]
74+
}
75+
76+
export default class VueAdvancedChat extends Vue {
77+
rooms: Rooms
78+
messages: Messages
79+
$slots: Slots
80+
}

types/vue-advanced-chat.common.d.ts

Lines changed: 0 additions & 2 deletions
This file was deleted.

types/vue-advanced-chat.d.ts

Lines changed: 0 additions & 2 deletions
This file was deleted.

types/vue-advanced-chat.umd.d.ts

Lines changed: 0 additions & 2 deletions
This file was deleted.

0 commit comments

Comments
 (0)