export type AppCategory = | "windows" | "android" | "efficiency" | "developer" | "ai" | "media" | "design" | "network"; export interface DownloadSource { id: string; name: string; type: "official" | "pan" | "mirror" | "affiliate"; href: string; hint?: string; } export interface VersionHistoryItem { version: string; size: string; updatedAt: string; notes: string; downloadHref: string; } export interface ChangelogItem { date: string; title: string; description: string; } export interface AppResource { id: string; slug: string; name: string; subtitle: string; description: string; icon: string; category: AppCategory; tags: string[]; version: string; size: string; updatedAt: string; uploadedAt: string; downloads: number; featured?: boolean; safety: ("official" | "verified" | "clean")[]; screenshots: string[]; channels: DownloadSource[]; versionHistory: VersionHistoryItem[]; changelog: ChangelogItem[]; usage: string[]; } export interface InsightTrendPoint { date: string; downloads: number; } export type AccessLevel = "guest" | "unlocked" | "vip"; export interface SessionState { isLoggedIn: boolean; accessLevel: AccessLevel; userName?: string; }