forked from BasedHardware/omi
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtypes.ts
More file actions
90 lines (83 loc) · 2.03 KB
/
Copy pathtypes.ts
File metadata and controls
90 lines (83 loc) · 2.03 KB
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
// App Status Types
export type AppStatus = "public" | "private" | "in-review" | "rejected";
export type AppCategory =
| "Productivity And Organization"
| "Communication Improvement"
| "Education And Learning"
| "Utilities And Tools"
| "Entertainment And Fun"
| "Emotional And Mental Support"
| "Personality Emulation"
| "Conversation Analysis";
// App Capabilities with descriptions
export type AppCapability =
| "memory" // Ability to remember and recall past interactions
| "chat" // Real-time conversation capabilities
| "proactive" // Can initiate actions or suggestions without prompting
| "integration" // Can connect with external services and APIs
| "persona"; // Can adopt different personalities or roles
// Review Status
export type ReviewStatus = "pending" | "approved" | "rejected";
// Review Data
export interface Review {
id: string;
appId: string;
reviewerId: string;
status: ReviewStatus;
comments: string;
createdAt: string;
updatedAt: string;
}
// App Data Type
export interface App {
id: string;
name: string;
description?: string;
author: string;
category: AppCategory;
status: AppStatus;
capabilities: AppCapability[];
installs: number;
usage: number;
earnings: number;
rating?: number;
created: string;
icon?: string;
review?: Review;
}
// Stats Data Type
export interface DashboardStats {
totalApps: number;
approvedApps: number;
inReviewApps: number;
paidApps: number;
publicApps: number;
privateApps: number;
earnings: number;
usage: number;
installs: number;
categories: {
memory: number;
chat: number;
proactive: number;
integration: number;
persona: number;
};
}
// Popular App Type
export interface PopularApp {
id: string;
name: string;
description?: string;
author: string;
category: AppCategory;
status: AppStatus;
capabilities: AppCapability[];
installs: number;
usage: number;
earnings: number;
rating?: number;
created: string;
image?: string;
icon?: string;
}