init
This commit is contained in:
65
web/src/types.ts
Normal file
65
web/src/types.ts
Normal file
@@ -0,0 +1,65 @@
|
||||
export interface Comment {
|
||||
id: string;
|
||||
platform: 'facebook' | 'threads' | 'instagram' | 'linkedin' | 'xiaohongshu' | 'youtube';
|
||||
contentType?: 'post' | 'reel' | 'video' | 'short';
|
||||
content: string;
|
||||
author: string;
|
||||
authorType: 'user' | 'kol' | 'official';
|
||||
timestamp: string;
|
||||
articleTitle: string;
|
||||
postAuthor: string;
|
||||
postAuthorType: 'official' | 'kol';
|
||||
url: string;
|
||||
status: 'pending' | 'approved' | 'rejected';
|
||||
sentiment: 'positive' | 'negative' | 'neutral' | 'mixed';
|
||||
aiReply?: string;
|
||||
replyStatus?: 'draft' | 'sent' | 'none';
|
||||
language?: 'zh-TW' | 'zh-CN' | 'en';
|
||||
privateMessage?: {
|
||||
content?: string;
|
||||
status?: 'draft' | 'sent' | 'none';
|
||||
timestamp?: string;
|
||||
};
|
||||
}
|
||||
|
||||
export interface AnalyticsData {
|
||||
platform: string;
|
||||
count: number;
|
||||
percentage: number;
|
||||
}
|
||||
|
||||
export interface TimelineData {
|
||||
date: string;
|
||||
count: number;
|
||||
}
|
||||
|
||||
export interface SentimentData {
|
||||
positive: number;
|
||||
neutral: number;
|
||||
negative: number;
|
||||
mixed?: number;
|
||||
}
|
||||
|
||||
export interface ReplyTemplate {
|
||||
id: string;
|
||||
name: string;
|
||||
content: string;
|
||||
language: 'zh-TW' | 'zh-CN' | 'en';
|
||||
category: 'general' | 'support' | 'promotion' | 'inquiry';
|
||||
type: 'reply' | 'private';
|
||||
}
|
||||
|
||||
export interface ReplyPersona {
|
||||
id: string;
|
||||
name: string;
|
||||
description: string;
|
||||
tone: 'professional' | 'friendly' | 'formal' | 'casual';
|
||||
}
|
||||
|
||||
export interface ReplyAccount {
|
||||
id: string;
|
||||
name: string;
|
||||
platform: 'facebook' | 'threads' | 'instagram' | 'linkedin' | 'xiaohongshu' | 'youtube';
|
||||
avatar: string;
|
||||
role: 'admin' | 'moderator' | 'support';
|
||||
}
|
||||
Reference in New Issue
Block a user