Amagi API 文档 - v5.6.3
    正在准备搜索索引...

    函数 createAmagiClient

    • 创建Amagi客户端实例

      参数

      • 可选options: Options

        客户端配置选项,包含Cookie和请求配置

      返回 {
          startServer: (port?: number) => Application;
          getDouyinData: <
              T extends
                  | "评论数据"
                  | "用户主页数据"
                  | "Emoji数据"
                  | "指定评论回复数据"
                  | "用户主页视频列表数据"
                  | "直播间信息数据"
                  | "视频作品数据"
                  | "图集作品数据"
                  | "合辑作品数据"
                  | "聚合解析"
                  | "文字作品数据"
                  | "音乐数据"
                  | "申请二维码数据"
                  | "热点词数据"
                  | "搜索数据"
                  | "动态表情数据"
                  | "弹幕数据",
              M extends TypeMode,
          >(
              methodType: T,
              options?: Omit<DouyinDataOptionsMap[T]["opt"], "methodType"> & {
                  typeMode?: TypeMode;
              } & { typeMode?: M },
          ) => Promise<
              ApiResponse<ConditionalReturnType<DouyinDataOptionsMap[T]["data"], M>>,
          >;
          getBilibiliData: <
              T extends
                  | "单个视频作品数据"
                  | "单个视频下载信息数据"
                  | "评论数据"
                  | "用户主页数据"
                  | "用户主页动态列表数据"
                  | "获取UP主总播放量"
                  | "Emoji数据"
                  | "番剧基本信息数据"
                  | "番剧下载信息数据"
                  | "动态详情数据"
                  | "动态卡片数据"
                  | "直播间信息"
                  | "直播间初始化信息"
                  | "登录基本信息"
                  | "申请二维码"
                  | "二维码状态"
                  | "AV转BV"
                  | "BV转AV",
              M extends TypeMode,
          >(
              methodType: T,
              options?: Omit<BilibiliDataOptionsMap[T]["opt"], "methodType"> & {
                  typeMode?: TypeMode;
              } & { typeMode?: M },
          ) => Promise<
              ApiResponse<
                  ConditionalReturnType<BilibiliDataOptionsMap[T]["data"], M>,
              >,
          >;
          getKuaishouData: <
              T extends "单个视频作品数据"
              | "评论数据"
              | "Emoji数据",
              M extends TypeMode,
          >(
              methodType: T,
              options?: Omit<KuaishouDataOptionsMap[T]["opt"], "methodType"> & {
                  typeMode?: TypeMode;
              } & { typeMode?: M },
          ) => Promise<
              ApiResponse<
                  ConditionalReturnType<KuaishouDataOptionsMap[T]["data"], M>,
              >,
          >;
          getXiaohongshuData: <
              T extends
                  "评论数据"
                  | "首页推荐数据"
                  | "单个笔记数据"
                  | "用户数据"
                  | "用户笔记数据"
                  | "表情列表"
                  | "搜索笔记",
              M extends TypeMode,
          >(
              methodType: T,
              options?: Omit<XiaohongshuDataOptionsMap[T]["opt"], "methodType"> & {
                  typeMode?: TypeMode;
              } & { typeMode?: M },
          ) => Promise<
              ApiResponse<
                  ConditionalReturnType<XiaohongshuDataOptionsMap[T]["data"], M>,
              >,
          >;
          douyin: {
              sign: typeof douyinSign;
              douyinApiUrls: DouyinAPI;
              api: {
                  getTextWorkInfo: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "视频作品数据"
                              | "图集作品数据"
                              | "合辑作品数据"
                              | "聚合解析"
                              | "文字作品数据";
                              aweme_id: string;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyTextWork, M>>>;
                  getWorkInfo: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "视频作品数据"
                              | "图集作品数据"
                              | "合辑作品数据"
                              | "聚合解析"
                              | "文字作品数据";
                              aweme_id: string;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<
                      ApiResponse<
                          ConditionalReturnType<
                              DyImageAlbumWork
                              | DySlidesWork
                              | DyVideoWork,
                              M,
                          >,
                      >,
                  >;
                  getVideoWorkInfo: <M extends TypeMode>(
                      options: Omit<
                          { methodType: "视频作品数据"; aweme_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyVideoWork, M>>>;
                  getImageAlbumWorkInfo: <M extends TypeMode>(
                      options: Omit<
                          { methodType: "图集作品数据"; aweme_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyImageAlbumWork, M>>>;
                  getSlidesWorkInfo: <M extends TypeMode>(
                      options: Omit<
                          { methodType: "合辑作品数据"; aweme_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DySlidesWork, M>>>;
                  getComments: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "评论数据";
                              aweme_id: string;
                              number?: number;
                              cursor?: number;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyWorkComments, M>>>;
                  getCommentReplies: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "指定评论回复数据";
                              aweme_id: string;
                              comment_id: string;
                              number?: number;
                              cursor?: number;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<CommentReply, M>>>;
                  getUserProfile: <M extends TypeMode>(
                      options: Omit<
                          { methodType: "用户主页数据"
                          | "用户主页视频列表数据"
                          | "直播间信息数据"; sec_uid: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyUserInfo, M>>>;
                  getEmojiList: <M extends TypeMode>(
                      options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiList, M>>>;
                  getEmojiProList: <M extends TypeMode>(
                      options: Omit<{ methodType: "动态表情数据" }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiProList, M>>>;
                  getUserVideos: <M extends TypeMode>(
                      options: Omit<
                          { methodType: "用户主页数据"
                          | "用户主页视频列表数据"
                          | "直播间信息数据"; sec_uid: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyUserPostVideos, M>>>;
                  getMusicInfo: <M extends TypeMode>(
                      options: Omit<{ methodType: "音乐数据"; music_id: string }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyMusicWork, M>>>;
                  getSuggestWords: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "热点词数据"
                              | "搜索数据";
                              query: string;
                              number?: number;
                              search_id?: string;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DySuggestWords, M>>>;
                  search: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "热点词数据"
                              | "搜索数据";
                              query: string;
                              number?: number;
                              search_id?: string;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DySearchInfo, M>>>;
                  getLiveRoomInfo: <M extends TypeMode>(
                      options: Omit<
                          { methodType: "用户主页数据"
                          | "用户主页视频列表数据"
                          | "直播间信息数据"; sec_uid: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyUserLiveVideos, M>>>;
                  getDanmaku: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "弹幕数据";
                              aweme_id: string;
                              start_time?: number;
                              end_time?: number;
                              duration: number;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<DyDanmakuList, M>>>;
              };
          };
          bilibili: {
              sign: {
                  wbi_sign: (BASEURL: string | URL, cookie: string) => Promise<string>;
                  av2bv: (aid: number) => `BV1${string}`;
                  bv2av: (bvid: string) => number;
              };
              bilibiliApiUrls: BiLiBiLiAPI;
              api: {
                  getVideoInfo: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "单个视频作品数据"; bvid: string }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliOneWork, M>>>;
                  getVideoStream: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "单个视频下载信息数据"; avid: number; cid: number },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<
                      ApiResponse<
                          ConditionalReturnType<
                              BiliVideoPlayurlIsLogin
                              | BiliBiliVideoPlayurlNoLogin,
                              M,
                          >,
                      >,
                  >;
                  getComments: <M extends TypeMode = "loose">(
                      options: Omit<
                          {
                              methodType: "评论数据";
                              type: number;
                              oid: string;
                              number?: number;
                              mode?: 0
                              | 1
                              | 2
                              | 3;
                              pagination_str?: string;
                              plat?: number;
                              seek_rpid?: string;
                              web_location?: string;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliWorkComments, M>>>;
                  getUserProfile: <M extends TypeMode = "loose">(
                      options: Omit<
                          {
                              methodType: "用户主页数据"
                              | "用户主页动态列表数据"
                              | "获取UP主总播放量";
                              host_mid: number;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliUserProfile, M>>>;
                  getUserDynamic: <M extends TypeMode = "loose">(
                      options: Omit<
                          {
                              methodType: "用户主页数据"
                              | "用户主页动态列表数据"
                              | "获取UP主总播放量";
                              host_mid: number;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliUserDynamic, M>>>;
                  getEmojiList: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliEmojiList, M>>>;
                  getBangumiInfo: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "番剧基本信息数据"; season_id?: string; ep_id?: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliBangumiVideoInfo, M>>>;
                  getBangumiStream: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "番剧下载信息数据"; cid: number; ep_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<
                      ApiResponse<
                          ConditionalReturnType<
                              BiliBangumiVideoPlayurlIsLogin
                              | BiliBangumiVideoPlayurlNoLogin,
                              M,
                          >,
                      >,
                  >;
                  getDynamicInfo: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "动态详情数据"
                          | "动态卡片数据"; dynamic_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicInfoUnion, M>>>;
                  getDynamicCard: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "动态详情数据"
                          | "动态卡片数据"; dynamic_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicCard, M>>>;
                  getLiveRoomDetail: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "直播间信息"
                          | "直播间初始化信息"; room_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDetail, M>>>;
                  getLiveRoomInitInfo: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "直播间信息"
                          | "直播间初始化信息"; room_id: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDef, M>>>;
                  getLoginBasicInfo: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "登录基本信息" }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>;
                  getLoginQrcode: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "申请二维码" }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliNewLoginQrcode, M>>>;
                  checkQrcodeStatus: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "二维码状态"; qrcode_key: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliCheckQrcode, M>>>;
                  getUserTotalPlayCount: <M extends TypeMode = "loose">(
                      options: Omit<
                          {
                              methodType: "用户主页数据"
                              | "用户主页动态列表数据"
                              | "获取UP主总播放量";
                              host_mid: number;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliUserFullView, M>>>;
                  convertAvToBv: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "AV转BV"; avid: number }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliAv2Bv, M>>>;
                  convertBvToAv: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "BV转AV"; bvid: string }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<BiliBv2AV, M>>>;
              };
          };
          kuaishou: {
              kuaishouApiUrls: API;
              api: {
                  getWorkInfo: <M extends TypeMode = "loose">(
                      options: Omit<
                          { methodType: "单个视频作品数据"; photoId: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<KsOneWork, M>>>;
                  getComments: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "评论数据"; photoId: string }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<KsWorkComments, M>>>;
                  getEmojiList: <M extends TypeMode = "loose">(
                      options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<KsEmojiList, M>>>;
              };
          };
          xiaohongshu: {
              sign: typeof xiaohongshuSign;
              xiaohongshuApiUrls: {
                  "首页推荐数据"(
                      data?: Omit<
                          {
                              methodType: "首页推荐数据";
                              cursor_score?: string;
                              num?: number;
                              refresh_type?: number;
                              note_index?: number;
                              category?: string;
                              search_key?: string;
                          },
                          "methodType",
                      >,
                  ): {
                      apiPath: string;
                      Url: string;
                      Body: {
                          cursor_score: string;
                          num: number;
                          refresh_type: number;
                          note_index: number;
                          category: string;
                          search_key: string;
                          image_formats: string[];
                      };
                  };
                  "单个笔记数据"(
                      data: Omit<
                          { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                          "methodType",
                      >,
                  ): {
                      apiPath: string;
                      Url: string;
                      Body: {
                          source_note_id: string;
                          image_formats: string[];
                          extra: { need_body_topic: string };
                          xsec_source: string;
                          xsec_token: string;
                      };
                  };
                  "评论数据"(
                      data: Omit<
                          {
                              methodType: "评论数据";
                              note_id: string;
                              cursor?: string;
                              xsec_token: string;
                          },
                          "methodType",
                      >,
                  ): { apiPath: string; Url: string };
                  "用户数据"(
                      data: Omit<{ methodType: "用户数据"; user_id: string }, "methodType">,
                  ): { apiPath: string; Url: string };
                  "用户笔记数据"(
                      data: Omit<
                          {
                              methodType: "用户笔记数据";
                              user_id: string;
                              cursor?: string;
                              num?: number;
                          },
                          "methodType",
                      >,
                  ): { apiPath: string; Url: string };
                  "表情列表"(
                      data: Omit<{ methodType: "表情列表" }, "methodType">,
                  ): { apiPath: string; Url: string };
                  "搜索笔记"(
                      data: Omit<
                          {
                              methodType: "搜索笔记";
                              keyword: string;
                              page?: number;
                              page_size?: number;
                              sort?: SearchSortType;
                              note_type?: SearchNoteType;
                          },
                          "methodType",
                      >,
                  ): {
                      apiPath: string;
                      Body: {
                          keyword: string;
                          page: number;
                          page_size: number;
                          sort: SearchSortType;
                          note_type: SearchNoteType;
                          search_id: string;
                          image_formats: string[];
                      };
                      Url: string;
                  };
              };
              api: {
                  getHomeFeed: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "首页推荐数据";
                              cursor_score?: string;
                              num?: number;
                              refresh_type?: number;
                              note_index?: number;
                              category?: string;
                              search_key?: string;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<HomeFeed, M>>>;
                  getNote: <M extends TypeMode>(
                      options: Omit<
                          { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<OneNote, M>>>;
                  getComments: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "评论数据";
                              note_id: string;
                              cursor?: string;
                              xsec_token: string;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<NoteComments, M>>>;
                  getUser: <M extends TypeMode>(
                      options: Omit<{ methodType: "用户数据"; user_id: string }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<
                      ApiResponse<ConditionalReturnType<XiaohongshuUserProfile, M>>,
                  >;
                  getUserNotes: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "用户笔记数据";
                              user_id: string;
                              cursor?: string;
                              num?: number;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>;
                  getSearchNotes: <M extends TypeMode>(
                      options: Omit<
                          {
                              methodType: "搜索笔记";
                              keyword: string;
                              page?: number;
                              page_size?: number;
                              sort?: SearchSortType;
                              note_type?: SearchNoteType;
                          },
                          "methodType",
                      > & { typeMode?: TypeMode } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<SearchNotes, M>>>;
                  getEmojiList: <M extends TypeMode>(
                      options: Omit<{ methodType: "表情列表" }, "methodType"> & {
                          typeMode?: TypeMode;
                      } & { typeMode?: M },
                  ) => Promise<ApiResponse<ConditionalReturnType<XiaohongshuEmojiList, M>>>;
              };
          };
      }

      包含数据获取方法、服务器启动方法、绑定Cookie的平台工具集和API对象的对象

      • startServer: (port?: number) => Application

        启动本地HTTP服务

      • getDouyinData: <
            T extends
                | "评论数据"
                | "用户主页数据"
                | "Emoji数据"
                | "指定评论回复数据"
                | "用户主页视频列表数据"
                | "直播间信息数据"
                | "视频作品数据"
                | "图集作品数据"
                | "合辑作品数据"
                | "聚合解析"
                | "文字作品数据"
                | "音乐数据"
                | "申请二维码数据"
                | "热点词数据"
                | "搜索数据"
                | "动态表情数据"
                | "弹幕数据",
            M extends TypeMode,
        >(
            methodType: T,
            options?: Omit<DouyinDataOptionsMap[T]["opt"], "methodType"> & {
                typeMode?: TypeMode;
            } & { typeMode?: M },
        ) => Promise<
            ApiResponse<ConditionalReturnType<DouyinDataOptionsMap[T]["data"], M>>,
        >
      • getBilibiliData: <
            T extends
                | "单个视频作品数据"
                | "单个视频下载信息数据"
                | "评论数据"
                | "用户主页数据"
                | "用户主页动态列表数据"
                | "获取UP主总播放量"
                | "Emoji数据"
                | "番剧基本信息数据"
                | "番剧下载信息数据"
                | "动态详情数据"
                | "动态卡片数据"
                | "直播间信息"
                | "直播间初始化信息"
                | "登录基本信息"
                | "申请二维码"
                | "二维码状态"
                | "AV转BV"
                | "BV转AV",
            M extends TypeMode,
        >(
            methodType: T,
            options?: Omit<BilibiliDataOptionsMap[T]["opt"], "methodType"> & {
                typeMode?: TypeMode;
            } & { typeMode?: M },
        ) => Promise<
            ApiResponse<ConditionalReturnType<BilibiliDataOptionsMap[T]["data"], M>>,
        >
      • getKuaishouData: <T extends "单个视频作品数据" | "评论数据" | "Emoji数据", M extends TypeMode>(
            methodType: T,
            options?: Omit<KuaishouDataOptionsMap[T]["opt"], "methodType"> & {
                typeMode?: TypeMode;
            } & { typeMode?: M },
        ) => Promise<
            ApiResponse<ConditionalReturnType<KuaishouDataOptionsMap[T]["data"], M>>,
        >
      • getXiaohongshuData: <
            T extends
                "评论数据"
                | "首页推荐数据"
                | "单个笔记数据"
                | "用户数据"
                | "用户笔记数据"
                | "表情列表"
                | "搜索笔记",
            M extends TypeMode,
        >(
            methodType: T,
            options?: Omit<XiaohongshuDataOptionsMap[T]["opt"], "methodType"> & {
                typeMode?: TypeMode;
            } & { typeMode?: M },
        ) => Promise<
            ApiResponse<
                ConditionalReturnType<XiaohongshuDataOptionsMap[T]["data"], M>,
            >,
        >
      • douyin: {
            sign: typeof douyinSign;
            douyinApiUrls: DouyinAPI;
            api: {
                getTextWorkInfo: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "视频作品数据"
                            | "图集作品数据"
                            | "合辑作品数据"
                            | "聚合解析"
                            | "文字作品数据";
                            aweme_id: string;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyTextWork, M>>>;
                getWorkInfo: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "视频作品数据"
                            | "图集作品数据"
                            | "合辑作品数据"
                            | "聚合解析"
                            | "文字作品数据";
                            aweme_id: string;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<
                    ApiResponse<
                        ConditionalReturnType<
                            DyImageAlbumWork
                            | DySlidesWork
                            | DyVideoWork,
                            M,
                        >,
                    >,
                >;
                getVideoWorkInfo: <M extends TypeMode>(
                    options: Omit<
                        { methodType: "视频作品数据"; aweme_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyVideoWork, M>>>;
                getImageAlbumWorkInfo: <M extends TypeMode>(
                    options: Omit<
                        { methodType: "图集作品数据"; aweme_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyImageAlbumWork, M>>>;
                getSlidesWorkInfo: <M extends TypeMode>(
                    options: Omit<
                        { methodType: "合辑作品数据"; aweme_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DySlidesWork, M>>>;
                getComments: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "评论数据";
                            aweme_id: string;
                            number?: number;
                            cursor?: number;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyWorkComments, M>>>;
                getCommentReplies: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "指定评论回复数据";
                            aweme_id: string;
                            comment_id: string;
                            number?: number;
                            cursor?: number;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<CommentReply, M>>>;
                getUserProfile: <M extends TypeMode>(
                    options: Omit<
                        { methodType: "用户主页数据"
                        | "用户主页视频列表数据"
                        | "直播间信息数据"; sec_uid: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyUserInfo, M>>>;
                getEmojiList: <M extends TypeMode>(
                    options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiList, M>>>;
                getEmojiProList: <M extends TypeMode>(
                    options: Omit<{ methodType: "动态表情数据" }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiProList, M>>>;
                getUserVideos: <M extends TypeMode>(
                    options: Omit<
                        { methodType: "用户主页数据"
                        | "用户主页视频列表数据"
                        | "直播间信息数据"; sec_uid: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyUserPostVideos, M>>>;
                getMusicInfo: <M extends TypeMode>(
                    options: Omit<{ methodType: "音乐数据"; music_id: string }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyMusicWork, M>>>;
                getSuggestWords: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "热点词数据"
                            | "搜索数据";
                            query: string;
                            number?: number;
                            search_id?: string;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DySuggestWords, M>>>;
                search: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "热点词数据"
                            | "搜索数据";
                            query: string;
                            number?: number;
                            search_id?: string;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DySearchInfo, M>>>;
                getLiveRoomInfo: <M extends TypeMode>(
                    options: Omit<
                        { methodType: "用户主页数据"
                        | "用户主页视频列表数据"
                        | "直播间信息数据"; sec_uid: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyUserLiveVideos, M>>>;
                getDanmaku: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "弹幕数据";
                            aweme_id: string;
                            start_time?: number;
                            end_time?: number;
                            duration: number;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<DyDanmakuList, M>>>;
            };
        }
        • sign: typeof douyinSign

          签名算法相关

        • douyinApiUrls: DouyinAPI

          该类下的所有方法只会返回拼接好参数后的 Url 地址,需要手动请求该地址以获取数据

          缺少 a_bougs 参数,请自行生成拼接

        • api: {
              getTextWorkInfo: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "视频作品数据"
                          | "图集作品数据"
                          | "合辑作品数据"
                          | "聚合解析"
                          | "文字作品数据";
                          aweme_id: string;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyTextWork, M>>>;
              getWorkInfo: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "视频作品数据"
                          | "图集作品数据"
                          | "合辑作品数据"
                          | "聚合解析"
                          | "文字作品数据";
                          aweme_id: string;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<
                  ApiResponse<
                      ConditionalReturnType<
                          DyImageAlbumWork
                          | DySlidesWork
                          | DyVideoWork,
                          M,
                      >,
                  >,
              >;
              getVideoWorkInfo: <M extends TypeMode>(
                  options: Omit<{ methodType: "视频作品数据"; aweme_id: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyVideoWork, M>>>;
              getImageAlbumWorkInfo: <M extends TypeMode>(
                  options: Omit<{ methodType: "图集作品数据"; aweme_id: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyImageAlbumWork, M>>>;
              getSlidesWorkInfo: <M extends TypeMode>(
                  options: Omit<{ methodType: "合辑作品数据"; aweme_id: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DySlidesWork, M>>>;
              getComments: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "评论数据";
                          aweme_id: string;
                          number?: number;
                          cursor?: number;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyWorkComments, M>>>;
              getCommentReplies: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "指定评论回复数据";
                          aweme_id: string;
                          comment_id: string;
                          number?: number;
                          cursor?: number;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<CommentReply, M>>>;
              getUserProfile: <M extends TypeMode>(
                  options: Omit<
                      { methodType: "用户主页数据"
                      | "用户主页视频列表数据"
                      | "直播间信息数据"; sec_uid: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyUserInfo, M>>>;
              getEmojiList: <M extends TypeMode>(
                  options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiList, M>>>;
              getEmojiProList: <M extends TypeMode>(
                  options: Omit<{ methodType: "动态表情数据" }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiProList, M>>>;
              getUserVideos: <M extends TypeMode>(
                  options: Omit<
                      { methodType: "用户主页数据"
                      | "用户主页视频列表数据"
                      | "直播间信息数据"; sec_uid: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyUserPostVideos, M>>>;
              getMusicInfo: <M extends TypeMode>(
                  options: Omit<{ methodType: "音乐数据"; music_id: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyMusicWork, M>>>;
              getSuggestWords: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "热点词数据"
                          | "搜索数据";
                          query: string;
                          number?: number;
                          search_id?: string;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DySuggestWords, M>>>;
              search: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "热点词数据"
                          | "搜索数据";
                          query: string;
                          number?: number;
                          search_id?: string;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DySearchInfo, M>>>;
              getLiveRoomInfo: <M extends TypeMode>(
                  options: Omit<
                      { methodType: "用户主页数据"
                      | "用户主页视频列表数据"
                      | "直播间信息数据"; sec_uid: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyUserLiveVideos, M>>>;
              getDanmaku: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "弹幕数据";
                          aweme_id: string;
                          start_time?: number;
                          end_time?: number;
                          duration: number;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<DyDanmakuList, M>>>;
          }

          绑定了cookie和请求配置的抖音API对象,调用时不需要传递cookie

          • getTextWorkInfo: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "视频作品数据"
                        | "图集作品数据"
                        | "合辑作品数据"
                        | "聚合解析"
                        | "文字作品数据";
                        aweme_id: string;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyTextWork, M>>>

            获取文字作品数据

          • getWorkInfo: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "视频作品数据"
                        | "图集作品数据"
                        | "合辑作品数据"
                        | "聚合解析"
                        | "文字作品数据";
                        aweme_id: string;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<
                ApiResponse<
                    ConditionalReturnType<DyImageAlbumWork | DySlidesWork | DyVideoWork, M>,
                >,
            >

            聚合解析 (视频/图集/合辑)

          • getVideoWorkInfo: <M extends TypeMode>(
                options: Omit<{ methodType: "视频作品数据"; aweme_id: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyVideoWork, M>>>

            获取视频作品数据

          • getImageAlbumWorkInfo: <M extends TypeMode>(
                options: Omit<{ methodType: "图集作品数据"; aweme_id: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyImageAlbumWork, M>>>

            获取图集作品数据

          • getSlidesWorkInfo: <M extends TypeMode>(
                options: Omit<{ methodType: "合辑作品数据"; aweme_id: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DySlidesWork, M>>>

            获取合辑作品数据

          • getComments: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "评论数据";
                        aweme_id: string;
                        number?: number;
                        cursor?: number;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyWorkComments, M>>>

            获取评论数据

          • getCommentReplies: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "指定评论回复数据";
                        aweme_id: string;
                        comment_id: string;
                        number?: number;
                        cursor?: number;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<CommentReply, M>>>

            获取指定评论回复数据

          • getUserProfile: <M extends TypeMode>(
                options: Omit<
                    { methodType: "用户主页数据"
                    | "用户主页视频列表数据"
                    | "直播间信息数据"; sec_uid: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyUserInfo, M>>>

            获取用户主页数据

          • getEmojiList: <M extends TypeMode>(
                options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiList, M>>>

            获取 Emoji 数据

          • getEmojiProList: <M extends TypeMode>(
                options: Omit<{ methodType: "动态表情数据" }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyEmojiProList, M>>>

            获取动态表情数据

          • getUserVideos: <M extends TypeMode>(
                options: Omit<
                    { methodType: "用户主页数据"
                    | "用户主页视频列表数据"
                    | "直播间信息数据"; sec_uid: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyUserPostVideos, M>>>

            获取用户主页视频列表数据

          • getMusicInfo: <M extends TypeMode>(
                options: Omit<{ methodType: "音乐数据"; music_id: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyMusicWork, M>>>

            获取音乐数据

          • getSuggestWords: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "热点词数据"
                        | "搜索数据";
                        query: string;
                        number?: number;
                        search_id?: string;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DySuggestWords, M>>>

            获取热点词数据

          • search: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "热点词数据"
                        | "搜索数据";
                        query: string;
                        number?: number;
                        search_id?: string;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DySearchInfo, M>>>

            获取搜索数据

          • getLiveRoomInfo: <M extends TypeMode>(
                options: Omit<
                    { methodType: "用户主页数据"
                    | "用户主页视频列表数据"
                    | "直播间信息数据"; sec_uid: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyUserLiveVideos, M>>>

            获取直播间信息

          • getDanmaku: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "弹幕数据";
                        aweme_id: string;
                        start_time?: number;
                        end_time?: number;
                        duration: number;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<DyDanmakuList, M>>>

            获取弹幕数据

      • bilibili: {
            sign: {
                wbi_sign: (BASEURL: string | URL, cookie: string) => Promise<string>;
                av2bv: (aid: number) => `BV1${string}`;
                bv2av: (bvid: string) => number;
            };
            bilibiliApiUrls: BiLiBiLiAPI;
            api: {
                getVideoInfo: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "单个视频作品数据"; bvid: string }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliOneWork, M>>>;
                getVideoStream: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "单个视频下载信息数据"; avid: number; cid: number },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<
                    ApiResponse<
                        ConditionalReturnType<
                            BiliVideoPlayurlIsLogin
                            | BiliBiliVideoPlayurlNoLogin,
                            M,
                        >,
                    >,
                >;
                getComments: <M extends TypeMode = "loose">(
                    options: Omit<
                        {
                            methodType: "评论数据";
                            type: number;
                            oid: string;
                            number?: number;
                            mode?: 0
                            | 1
                            | 2
                            | 3;
                            pagination_str?: string;
                            plat?: number;
                            seek_rpid?: string;
                            web_location?: string;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliWorkComments, M>>>;
                getUserProfile: <M extends TypeMode = "loose">(
                    options: Omit<
                        {
                            methodType: "用户主页数据"
                            | "用户主页动态列表数据"
                            | "获取UP主总播放量";
                            host_mid: number;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliUserProfile, M>>>;
                getUserDynamic: <M extends TypeMode = "loose">(
                    options: Omit<
                        {
                            methodType: "用户主页数据"
                            | "用户主页动态列表数据"
                            | "获取UP主总播放量";
                            host_mid: number;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliUserDynamic, M>>>;
                getEmojiList: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliEmojiList, M>>>;
                getBangumiInfo: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "番剧基本信息数据"; season_id?: string; ep_id?: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliBangumiVideoInfo, M>>>;
                getBangumiStream: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "番剧下载信息数据"; cid: number; ep_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<
                    ApiResponse<
                        ConditionalReturnType<
                            BiliBangumiVideoPlayurlIsLogin
                            | BiliBangumiVideoPlayurlNoLogin,
                            M,
                        >,
                    >,
                >;
                getDynamicInfo: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "动态详情数据"
                        | "动态卡片数据"; dynamic_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicInfoUnion, M>>>;
                getDynamicCard: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "动态详情数据"
                        | "动态卡片数据"; dynamic_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicCard, M>>>;
                getLiveRoomDetail: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "直播间信息"
                        | "直播间初始化信息"; room_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDetail, M>>>;
                getLiveRoomInitInfo: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "直播间信息"
                        | "直播间初始化信息"; room_id: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDef, M>>>;
                getLoginBasicInfo: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "登录基本信息" }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>;
                getLoginQrcode: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "申请二维码" }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliNewLoginQrcode, M>>>;
                checkQrcodeStatus: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "二维码状态"; qrcode_key: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliCheckQrcode, M>>>;
                getUserTotalPlayCount: <M extends TypeMode = "loose">(
                    options: Omit<
                        {
                            methodType: "用户主页数据"
                            | "用户主页动态列表数据"
                            | "获取UP主总播放量";
                            host_mid: number;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliUserFullView, M>>>;
                convertAvToBv: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "AV转BV"; avid: number }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliAv2Bv, M>>>;
                convertBvToAv: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "BV转AV"; bvid: string }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<BiliBv2AV, M>>>;
            };
        }
        • sign: {
              wbi_sign: (BASEURL: string | URL, cookie: string) => Promise<string>;
              av2bv: (aid: number) => `BV1${string}`;
              bv2av: (bvid: string) => number;
          }

          签名算法相关

          • wbi_sign: (BASEURL: string | URL, cookie: string) => Promise<string>

            WBI签名算法

          • av2bv: (aid: number) => `BV1${string}`

            AV号转BV号

          • bv2av: (bvid: string) => number

            BV号转AV号

        • bilibiliApiUrls: BiLiBiLiAPI

          该类下的所有方法只会返回拼接好参数后的 Url 地址,需要手动请求该地址以获取数据

        • api: {
              getVideoInfo: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "单个视频作品数据"; bvid: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliOneWork, M>>>;
              getVideoStream: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "单个视频下载信息数据"; avid: number; cid: number },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<
                  ApiResponse<
                      ConditionalReturnType<
                          BiliVideoPlayurlIsLogin
                          | BiliBiliVideoPlayurlNoLogin,
                          M,
                      >,
                  >,
              >;
              getComments: <M extends TypeMode = "loose">(
                  options: Omit<
                      {
                          methodType: "评论数据";
                          type: number;
                          oid: string;
                          number?: number;
                          mode?: 0
                          | 1
                          | 2
                          | 3;
                          pagination_str?: string;
                          plat?: number;
                          seek_rpid?: string;
                          web_location?: string;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliWorkComments, M>>>;
              getUserProfile: <M extends TypeMode = "loose">(
                  options: Omit<
                      {
                          methodType: "用户主页数据"
                          | "用户主页动态列表数据"
                          | "获取UP主总播放量";
                          host_mid: number;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliUserProfile, M>>>;
              getUserDynamic: <M extends TypeMode = "loose">(
                  options: Omit<
                      {
                          methodType: "用户主页数据"
                          | "用户主页动态列表数据"
                          | "获取UP主总播放量";
                          host_mid: number;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliUserDynamic, M>>>;
              getEmojiList: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliEmojiList, M>>>;
              getBangumiInfo: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "番剧基本信息数据"; season_id?: string; ep_id?: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliBangumiVideoInfo, M>>>;
              getBangumiStream: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "番剧下载信息数据"; cid: number; ep_id: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<
                  ApiResponse<
                      ConditionalReturnType<
                          BiliBangumiVideoPlayurlIsLogin
                          | BiliBangumiVideoPlayurlNoLogin,
                          M,
                      >,
                  >,
              >;
              getDynamicInfo: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "动态详情数据"
                      | "动态卡片数据"; dynamic_id: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicInfoUnion, M>>>;
              getDynamicCard: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "动态详情数据"
                      | "动态卡片数据"; dynamic_id: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicCard, M>>>;
              getLiveRoomDetail: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "直播间信息"
                      | "直播间初始化信息"; room_id: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDetail, M>>>;
              getLiveRoomInitInfo: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "直播间信息"
                      | "直播间初始化信息"; room_id: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDef, M>>>;
              getLoginBasicInfo: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "登录基本信息" }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>;
              getLoginQrcode: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "申请二维码" }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliNewLoginQrcode, M>>>;
              checkQrcodeStatus: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "二维码状态"; qrcode_key: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliCheckQrcode, M>>>;
              getUserTotalPlayCount: <M extends TypeMode = "loose">(
                  options: Omit<
                      {
                          methodType: "用户主页数据"
                          | "用户主页动态列表数据"
                          | "获取UP主总播放量";
                          host_mid: number;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliUserFullView, M>>>;
              convertAvToBv: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "AV转BV"; avid: number }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliAv2Bv, M>>>;
              convertBvToAv: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "BV转AV"; bvid: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<BiliBv2AV, M>>>;
          }

          绑定了cookie和请求配置的B站API对象,调用时不需要传递cookie

          • getVideoInfo: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "单个视频作品数据"; bvid: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliOneWork, M>>>

            获取单个视频作品数据

          • getVideoStream: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "单个视频下载信息数据"; avid: number; cid: number },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<
                ApiResponse<
                    ConditionalReturnType<
                        BiliVideoPlayurlIsLogin
                        | BiliBiliVideoPlayurlNoLogin,
                        M,
                    >,
                >,
            >

            获取单个视频下载信息数据

          • getComments: <M extends TypeMode = "loose">(
                options: Omit<
                    {
                        methodType: "评论数据";
                        type: number;
                        oid: string;
                        number?: number;
                        mode?: 0
                        | 1
                        | 2
                        | 3;
                        pagination_str?: string;
                        plat?: number;
                        seek_rpid?: string;
                        web_location?: string;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliWorkComments, M>>>

            获取评论数据

          • getUserProfile: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "用户主页数据"
                    | "用户主页动态列表数据"
                    | "获取UP主总播放量"; host_mid: number },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliUserProfile, M>>>

            获取用户主页数据

          • getUserDynamic: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "用户主页数据"
                    | "用户主页动态列表数据"
                    | "获取UP主总播放量"; host_mid: number },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliUserDynamic, M>>>

            获取用户主页动态列表数据

          • getEmojiList: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliEmojiList, M>>>

            获取 Emoji 数据

          • getBangumiInfo: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "番剧基本信息数据"; season_id?: string; ep_id?: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliBangumiVideoInfo, M>>>

            获取番剧基本信息数据

          • getBangumiStream: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "番剧下载信息数据"; cid: number; ep_id: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<
                ApiResponse<
                    ConditionalReturnType<
                        BiliBangumiVideoPlayurlIsLogin
                        | BiliBangumiVideoPlayurlNoLogin,
                        M,
                    >,
                >,
            >

            获取番剧下载信息数据

          • getDynamicInfo: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "动态详情数据"
                    | "动态卡片数据"; dynamic_id: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicInfoUnion, M>>>

            获取动态详情数据

          • getDynamicCard: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "动态详情数据"
                    | "动态卡片数据"; dynamic_id: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliDynamicCard, M>>>

            获取动态卡片数据

          • getLiveRoomDetail: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "直播间信息"
                    | "直播间初始化信息"; room_id: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDetail, M>>>

            获取直播间信息

          • getLiveRoomInitInfo: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "直播间信息"
                    | "直播间初始化信息"; room_id: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliLiveRoomDef, M>>>

            获取直播间初始化信息

          • getLoginBasicInfo: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "登录基本信息" }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>

            获取登录基本信息

          • getLoginQrcode: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "申请二维码" }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliNewLoginQrcode, M>>>

            申请登录二维码

          • checkQrcodeStatus: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "二维码状态"; qrcode_key: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliCheckQrcode, M>>>

            检查二维码状态

          • getUserTotalPlayCount: <M extends TypeMode = "loose">(
                options: Omit<
                    { methodType: "用户主页数据"
                    | "用户主页动态列表数据"
                    | "获取UP主总播放量"; host_mid: number },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliUserFullView, M>>>

            获取 UP 主总播放量

          • convertAvToBv: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "AV转BV"; avid: number }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliAv2Bv, M>>>

            将 AV 号转换为 BV 号

          • convertBvToAv: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "BV转AV"; bvid: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<BiliBv2AV, M>>>

            将 BV 号转换为 AV 号

      • kuaishou: {
            kuaishouApiUrls: API;
            api: {
                getWorkInfo: <M extends TypeMode = "loose">(
                    options: Omit<
                        { methodType: "单个视频作品数据"; photoId: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<KsOneWork, M>>>;
                getComments: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "评论数据"; photoId: string }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<KsWorkComments, M>>>;
                getEmojiList: <M extends TypeMode = "loose">(
                    options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<KsEmojiList, M>>>;
            };
        }
        • kuaishouApiUrls: API

          该类下的所有方法只会返回拼接好参数后的 Url 地址和请求体,需要手动请求该地址以获取数据

        • api: {
              getWorkInfo: <M extends TypeMode = "loose">(
                  options: Omit<
                      { methodType: "单个视频作品数据"; photoId: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<KsOneWork, M>>>;
              getComments: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "评论数据"; photoId: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<KsWorkComments, M>>>;
              getEmojiList: <M extends TypeMode = "loose">(
                  options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<KsEmojiList, M>>>;
          }

          绑定了cookie和请求配置的快手API对象,调用时不需要传递cookie

          • getWorkInfo: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "单个视频作品数据"; photoId: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<KsOneWork, M>>>

            获取单个视频作品数据

          • getComments: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "评论数据"; photoId: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<KsWorkComments, M>>>

            获取评论数据

          • getEmojiList: <M extends TypeMode = "loose">(
                options: Omit<{ methodType: "Emoji数据" }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<KsEmojiList, M>>>

            获取 Emoji 数据

      • xiaohongshu: {
            sign: typeof xiaohongshuSign;
            xiaohongshuApiUrls: {
                "首页推荐数据"(
                    data?: Omit<
                        {
                            methodType: "首页推荐数据";
                            cursor_score?: string;
                            num?: number;
                            refresh_type?: number;
                            note_index?: number;
                            category?: string;
                            search_key?: string;
                        },
                        "methodType",
                    >,
                ): {
                    apiPath: string;
                    Url: string;
                    Body: {
                        cursor_score: string;
                        num: number;
                        refresh_type: number;
                        note_index: number;
                        category: string;
                        search_key: string;
                        image_formats: string[];
                    };
                };
                "单个笔记数据"(
                    data: Omit<
                        { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                        "methodType",
                    >,
                ): {
                    apiPath: string;
                    Url: string;
                    Body: {
                        source_note_id: string;
                        image_formats: string[];
                        extra: { need_body_topic: string };
                        xsec_source: string;
                        xsec_token: string;
                    };
                };
                "评论数据"(
                    data: Omit<
                        {
                            methodType: "评论数据";
                            note_id: string;
                            cursor?: string;
                            xsec_token: string;
                        },
                        "methodType",
                    >,
                ): { apiPath: string; Url: string };
                "用户数据"(
                    data: Omit<{ methodType: "用户数据"; user_id: string }, "methodType">,
                ): { apiPath: string; Url: string };
                "用户笔记数据"(
                    data: Omit<
                        {
                            methodType: "用户笔记数据";
                            user_id: string;
                            cursor?: string;
                            num?: number;
                        },
                        "methodType",
                    >,
                ): { apiPath: string; Url: string };
                "表情列表"(
                    data: Omit<{ methodType: "表情列表" }, "methodType">,
                ): { apiPath: string; Url: string };
                "搜索笔记"(
                    data: Omit<
                        {
                            methodType: "搜索笔记";
                            keyword: string;
                            page?: number;
                            page_size?: number;
                            sort?: SearchSortType;
                            note_type?: SearchNoteType;
                        },
                        "methodType",
                    >,
                ): {
                    apiPath: string;
                    Body: {
                        keyword: string;
                        page: number;
                        page_size: number;
                        sort: SearchSortType;
                        note_type: SearchNoteType;
                        search_id: string;
                        image_formats: string[];
                    };
                    Url: string;
                };
            };
            api: {
                getHomeFeed: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "首页推荐数据";
                            cursor_score?: string;
                            num?: number;
                            refresh_type?: number;
                            note_index?: number;
                            category?: string;
                            search_key?: string;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<HomeFeed, M>>>;
                getNote: <M extends TypeMode>(
                    options: Omit<
                        { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<OneNote, M>>>;
                getComments: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "评论数据";
                            note_id: string;
                            cursor?: string;
                            xsec_token: string;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<NoteComments, M>>>;
                getUser: <M extends TypeMode>(
                    options: Omit<{ methodType: "用户数据"; user_id: string }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<
                    ApiResponse<ConditionalReturnType<XiaohongshuUserProfile, M>>,
                >;
                getUserNotes: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "用户笔记数据";
                            user_id: string;
                            cursor?: string;
                            num?: number;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>;
                getSearchNotes: <M extends TypeMode>(
                    options: Omit<
                        {
                            methodType: "搜索笔记";
                            keyword: string;
                            page?: number;
                            page_size?: number;
                            sort?: SearchSortType;
                            note_type?: SearchNoteType;
                        },
                        "methodType",
                    > & { typeMode?: TypeMode } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<SearchNotes, M>>>;
                getEmojiList: <M extends TypeMode>(
                    options: Omit<{ methodType: "表情列表" }, "methodType"> & {
                        typeMode?: TypeMode;
                    } & { typeMode?: M },
                ) => Promise<ApiResponse<ConditionalReturnType<XiaohongshuEmojiList, M>>>;
            };
        }
        • sign: typeof xiaohongshuSign

          签名算法相关

        • xiaohongshuApiUrls: {
              "首页推荐数据"(
                  data?: Omit<
                      {
                          methodType: "首页推荐数据";
                          cursor_score?: string;
                          num?: number;
                          refresh_type?: number;
                          note_index?: number;
                          category?: string;
                          search_key?: string;
                      },
                      "methodType",
                  >,
              ): {
                  apiPath: string;
                  Url: string;
                  Body: {
                      cursor_score: string;
                      num: number;
                      refresh_type: number;
                      note_index: number;
                      category: string;
                      search_key: string;
                      image_formats: string[];
                  };
              };
              "单个笔记数据"(
                  data: Omit<
                      { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                      "methodType",
                  >,
              ): {
                  apiPath: string;
                  Url: string;
                  Body: {
                      source_note_id: string;
                      image_formats: string[];
                      extra: { need_body_topic: string };
                      xsec_source: string;
                      xsec_token: string;
                  };
              };
              "评论数据"(
                  data: Omit<
                      {
                          methodType: "评论数据";
                          note_id: string;
                          cursor?: string;
                          xsec_token: string;
                      },
                      "methodType",
                  >,
              ): { apiPath: string; Url: string };
              "用户数据"(
                  data: Omit<{ methodType: "用户数据"; user_id: string }, "methodType">,
              ): { apiPath: string; Url: string };
              "用户笔记数据"(
                  data: Omit<
                      {
                          methodType: "用户笔记数据";
                          user_id: string;
                          cursor?: string;
                          num?: number;
                      },
                      "methodType",
                  >,
              ): { apiPath: string; Url: string };
              "表情列表"(
                  data: Omit<{ methodType: "表情列表" }, "methodType">,
              ): { apiPath: string; Url: string };
              "搜索笔记"(
                  data: Omit<
                      {
                          methodType: "搜索笔记";
                          keyword: string;
                          page?: number;
                          page_size?: number;
                          sort?: SearchSortType;
                          note_type?: SearchNoteType;
                      },
                      "methodType",
                  >,
              ): {
                  apiPath: string;
                  Body: {
                      keyword: string;
                      page: number;
                      page_size: number;
                      sort: SearchSortType;
                      note_type: SearchNoteType;
                      search_id: string;
                      image_formats: string[];
                  };
                  Url: string;
              };
          }

          该类下的所有方法只会返回拼接好参数后的 Url 地址,需要手动请求该地址以获取数据

          • 首页推荐数据: function
            • 获取首页推荐数据的接口地址

              参数

              • data: Omit<
                    {
                        methodType: "首页推荐数据";
                        cursor_score?: string;
                        num?: number;
                        refresh_type?: number;
                        note_index?: number;
                        category?: string;
                        search_key?: string;
                    },
                    "methodType",
                > = {}

                请求参数

              返回 {
                  apiPath: string;
                  Url: string;
                  Body: {
                      cursor_score: string;
                      num: number;
                      refresh_type: number;
                      note_index: number;
                      category: string;
                      search_key: string;
                      image_formats: string[];
                  };
              }

              完整的接口URL

          • 单个笔记数据: function
            • 获取单个笔记数据的接口地址

              参数

              • data: Omit<
                    { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                    "methodType",
                >

                请求参数

              返回 {
                  apiPath: string;
                  Url: string;
                  Body: {
                      source_note_id: string;
                      image_formats: string[];
                      extra: { need_body_topic: string };
                      xsec_source: string;
                      xsec_token: string;
                  };
              }

              完整的接口URL

          • 评论数据: function
            • 获取评论数据的接口地址

              参数

              • data: Omit<
                    {
                        methodType: "评论数据";
                        note_id: string;
                        cursor?: string;
                        xsec_token: string;
                    },
                    "methodType",
                >

                请求参数

              返回 { apiPath: string; Url: string }

              完整的接口URL

          • 用户数据: function
            • 获取用户数据的接口地址

              参数

              • data: Omit<{ methodType: "用户数据"; user_id: string }, "methodType">

                请求参数

              返回 { apiPath: string; Url: string }

              完整的接口URL

          • 用户笔记数据: function
            • 获取用户笔记数据的接口地址

              参数

              • data: Omit<
                    { methodType: "用户笔记数据"; user_id: string; cursor?: string; num?: number },
                    "methodType",
                >

                请求参数

              返回 { apiPath: string; Url: string }

              完整的接口URL

          • 表情列表: function
            • 获取笔记表情列表的接口地址

              参数

              • data: Omit<{ methodType: "表情列表" }, "methodType">

                请求参数

              返回 { apiPath: string; Url: string }

              完整的接口URL

          • 搜索笔记: function
            • 搜索笔记的接口地址

              参数

              • data: Omit<
                    {
                        methodType: "搜索笔记";
                        keyword: string;
                        page?: number;
                        page_size?: number;
                        sort?: SearchSortType;
                        note_type?: SearchNoteType;
                    },
                    "methodType",
                >

                请求参数

              返回 {
                  apiPath: string;
                  Body: {
                      keyword: string;
                      page: number;
                      page_size: number;
                      sort: SearchSortType;
                      note_type: SearchNoteType;
                      search_id: string;
                      image_formats: string[];
                  };
                  Url: string;
              }

              完整的接口URL

        • api: {
              getHomeFeed: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "首页推荐数据";
                          cursor_score?: string;
                          num?: number;
                          refresh_type?: number;
                          note_index?: number;
                          category?: string;
                          search_key?: string;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<HomeFeed, M>>>;
              getNote: <M extends TypeMode>(
                  options: Omit<
                      { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<OneNote, M>>>;
              getComments: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "评论数据";
                          note_id: string;
                          cursor?: string;
                          xsec_token: string;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<NoteComments, M>>>;
              getUser: <M extends TypeMode>(
                  options: Omit<{ methodType: "用户数据"; user_id: string }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<XiaohongshuUserProfile, M>>>;
              getUserNotes: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "用户笔记数据";
                          user_id: string;
                          cursor?: string;
                          num?: number;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>;
              getSearchNotes: <M extends TypeMode>(
                  options: Omit<
                      {
                          methodType: "搜索笔记";
                          keyword: string;
                          page?: number;
                          page_size?: number;
                          sort?: SearchSortType;
                          note_type?: SearchNoteType;
                      },
                      "methodType",
                  > & { typeMode?: TypeMode } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<SearchNotes, M>>>;
              getEmojiList: <M extends TypeMode>(
                  options: Omit<{ methodType: "表情列表" }, "methodType"> & {
                      typeMode?: TypeMode;
                  } & { typeMode?: M },
              ) => Promise<ApiResponse<ConditionalReturnType<XiaohongshuEmojiList, M>>>;
          }

          绑定了cookie和请求配置的小红书API对象,调用时不需要传递cookie

          • getHomeFeed: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "首页推荐数据";
                        cursor_score?: string;
                        num?: number;
                        refresh_type?: number;
                        note_index?: number;
                        category?: string;
                        search_key?: string;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<HomeFeed, M>>>

            获取首页推荐数据

          • getNote: <M extends TypeMode>(
                options: Omit<
                    { methodType: "单个笔记数据"; note_id: string; xsec_token: string },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<OneNote, M>>>

            获取单个笔记数据

          • getComments: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "评论数据";
                        note_id: string;
                        cursor?: string;
                        xsec_token: string;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<NoteComments, M>>>

            获取评论数据

          • getUser: <M extends TypeMode>(
                options: Omit<{ methodType: "用户数据"; user_id: string }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<XiaohongshuUserProfile, M>>>

            获取用户数据

          • getUserNotes: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "用户笔记数据";
                        user_id: string;
                        cursor?: string;
                        num?: number;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<any, M>>>

            获取用户笔记数据

          • getSearchNotes: <M extends TypeMode>(
                options: Omit<
                    {
                        methodType: "搜索笔记";
                        keyword: string;
                        page?: number;
                        page_size?: number;
                        sort?: SearchSortType;
                        note_type?: SearchNoteType;
                    },
                    "methodType",
                > & { typeMode?: TypeMode } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<SearchNotes, M>>>

            获取搜索笔记数据

          • getEmojiList: <M extends TypeMode>(
                options: Omit<{ methodType: "表情列表" }, "methodType"> & {
                    typeMode?: TypeMode;
                } & { typeMode?: M },
            ) => Promise<ApiResponse<ConditionalReturnType<XiaohongshuEmojiList, M>>>

            获取表情列表数据