/** 抖音评论响应（精简版） */
interface DouyinCommentResponse {
  status_code: number;
  comments: DouyinComment[];
  total: number;
}

/** 单条评论（精简版） */
interface DouyinComment {
  cid: string;
  text: string; // 评论内容
  digg_count: number; // 点赞数
  create_time: number; // 创建时间（时间戳）
  user: DouyinUser; // 评论用户
  sticker?: {
    id: number;
    animate_url: {
      width: number;
      height: number;
      url_list: string[]
    }
  },

  image_list?: {
    origin_url:{
      width: number;
      height: number;
      url_list: string[]
    }
  }[]
}

/** 用户信息（精简版） */
interface DouyinUser {
  nickname: string; // 用户昵称
  avatar_thumb: {
    url_list: string[]; // 头像链接（可取第一个）
  };
}

/** 抖音视频详情响应（精简版） */
interface DouyinVideoDetailResponse {
  status_code: number;
  aweme_detail: DouyinVideoDetail;
}
/** 作者信息（精简版） */
interface DouyinAuthor {
  uid: string;                   // 用户ID
  sec_uid: string;               // 安全UID
  nickname: string;              // 用户昵称
  signature: string;             // 个性签名
  avatar_thumb: {
    url_list: string[];          // 头像URL（可取第一个）
  };
  follower_count: number;        // 粉丝数
  total_favorited: number;       // 获赞总数
  unique_id: string;             // 抖音号
  short_id: string;              // 短ID
}
/** 视频详情 */
interface DouyinVideoDetail {
  aweme_id: string;              // 视频ID
  desc: string;                  // 视频描述
  preview_title?: string;        // 视频标题（有些字段中叫 preview_title）
  duration: number;              // 视频时长（毫秒）
  create_time: number;           // 创建时间（时间戳）
  share_url: string;             // 视频分享链接

  statistics: {
    digg_count: number;          // 点赞数
    comment_count: number;       // 评论数
    share_count: number;         // 分享数
    collect_count: number;       // 收藏数
  };

  author: DouyinAuthor;          // 作者信息
  video: VideoPlayBasic;
  tags: VideoTagBasic[];
}

/** 视频播放信息 */
interface VideoPlayBasic {
  /** 多种清晰度/编码的可播放变体（选其一即可） */
  bit_rate: PlayVariant[];
  /** 大缩略图（如果需要封面） */
  big_thumb_url?: string;
}

/** 单个清晰度变体（来自 bit_rate[*] + play_addr） */
interface PlayVariant {
  format: string;           // mp4 等
  FPS: number;
  bit_rate: number;         // bit_rate.bit_rate

  /** 直连播放地址（最关键） */
  play_addr: {
    uri: string;
    url_list: string[];
    width: number;
    height: number;
    data_size: number;
    FPS: number;
    is_bytevc1: number; // 0 or 1
    is_h265: number;  // 0 or 1
  };
}

/** 视频标签（精简） */
interface VideoTagBasic {
  tag_id: number;
  tag_name: string;
  level?: number;
}

/** 图文作品列表响应（POST_PATH） */
interface DouyinPostListResponse {
  status_code: number;
  aweme_list: DouyinImageAweme[];
}

/** 图文作品（精简必要字段） */
interface DouyinImageAweme {
  aweme_id: string;
  desc: string;
  create_time: number; // 秒
  share_url: string;
  statistics: {
    digg_count: number;
    comment_count: number;
    share_count: number;
    collect_count: number;
  };
  author: DouyinAuthor; // 复用视频作者类型（需包含 sec_uid）
  images: DouyinImageInfo[]; // 图片列表
  music?: DouyinMusicBasic;  // 背景音乐（可选）
  video_tag?: VideoTagBasic[]; // 标签
}

/** 图文作品的单张图片信息（精简） */
interface DouyinImageInfo {
  url_list: string[]; // 多种格式（webp/jpeg）
  download_url_list?: string[]; // 可能带水印
  width: number;
  height: number;
  video: {
    play_addr: { src: string }[]
  } | null; // 如果是动图，会有 video 信息
}

/** 音乐基本信息（精简） */
interface DouyinMusicBasic {
  id?: number | string;
  title?: string;
  author?: string;
  album?: string;
  play_url: {
    uri?: string;
    url_list: string[]; // 真实可下载地址
  };
}