This commit is contained in:
2025-03-25 20:54:02 +08:00
parent 92d82b18a0
commit efdfe8bf8e
17 changed files with 1553 additions and 235 deletions

85
app/api/types.ts Normal file
View File

@@ -0,0 +1,85 @@
// Event Types
export interface Event {
id: string;
time: string;
type: string;
linkInfo: {
id: string;
shortUrl: string;
originalUrl: string;
};
visitor: {
id: string;
browser: string;
os: string;
device: string;
};
location: {
country: string;
region: string;
city: string;
};
referrer: string;
conversion?: {
type: string;
value: number;
};
}
// Analytics Types
export interface TimeSeriesData {
timestamp: string;
events: number;
visitors: number;
conversions: number;
}
export interface GeoData {
country: string;
region: string;
city: string;
visits: number;
uniqueVisitors: number;
percentage: number;
}
export interface DeviceAnalytics {
deviceTypes: {
type: string;
count: number;
percentage: number;
}[];
browsers: {
name: string;
count: number;
percentage: number;
}[];
operatingSystems: {
name: string;
count: number;
percentage: number;
}[];
}
export interface EventsSummary {
totalEvents: number;
uniqueVisitors: number;
totalConversions: number;
averageTimeSpent: number;
deviceTypes: {
mobile: number;
desktop: number;
tablet: number;
other: number;
};
browsers: {
name: string;
count: number;
percentage: number;
}[];
operatingSystems: {
name: string;
count: number;
percentage: number;
}[];
}