import type { PlatformType } from './platform.js';

/**
 * 作品状态
 */
export type WorkStatus = 'published' | 'reviewing' | 'rejected' | 'draft' | 'deleted';

/**
 * 作品信息
 */
export interface Work {
  id: number;
  accountId: number;
  platform: PlatformType;
  platformVideoId: string;
  title: string;
  description?: string;
  coverUrl: string;
  videoUrl?: string;
  duration: string;
  status: WorkStatus;
  publishTime: string;
  playCount: number;
  likeCount: number;
  commentCount: number;
  shareCount: number;
  collectCount?: number;
  createdAt: string;
  updatedAt: string;
}

/**
 * 作品列表查询参数
 */
export interface WorksQueryParams {
  accountId?: number;
  platform?: PlatformType;
  status?: WorkStatus;
  keyword?: string;
  page?: number;
  pageSize?: number;
}

/**
 * 作品列表响应
 */
export interface WorksListResponse {
  items: Work[];
  total: number;
  page: number;
  pageSize: number;
}

/**
 * 作品统计
 */
export interface WorkStats {
  totalCount: number;
  publishedCount: number;
  totalPlayCount: number;
  totalLikeCount: number;
  totalCommentCount: number;
}
