steam-family-bot-core
Version:
一个用于新版 Steam 家庭的库存监控 Bot 插件
49 lines (48 loc) • 2.35 kB
TypeScript
import { CFamilyGroups_GetFamilyGroupForUser_Response, CStoreBrowse_GetItems_Request, PartialMessage, CFamilyGroups_GetPlaytimeSummary_Response, CFamilyGroups_GetSharedLibraryApps_Response, CPlayer_GetPlayerLinkDetails_Response, CStoreBrowse_GetItems_Response } from 'node-steam-family-group-api';
import { APIResp, WishItem } from './types';
import { GameBaseInfoResp } from '../../interface';
export interface ProxiedAPIResponse<T> {
ok: boolean;
status: number;
message: string;
data: null | T;
}
export * from './types';
export interface IAPIService {
Steam: ISteamFamilyAPI;
}
export declare abstract class ISteamFamilyAPI {
token?: string;
steamId?: bigint;
abstract getSteamFamilyGroup(token?: string, steamId?: bigint): Promise<ProxiedAPIResponse<CFamilyGroups_GetFamilyGroupForUser_Response>>;
abstract getPlaytimeSummary(familyGroupid: bigint, token?: string): Promise<ProxiedAPIResponse<CFamilyGroups_GetPlaytimeSummary_Response>>;
abstract getSteamFamilyGroupLibs(familyId: bigint, token?: string): Promise<ProxiedAPIResponse<CFamilyGroups_GetSharedLibraryApps_Response>>;
abstract getFamilyMembers(memberIds: string[], token?: string): Promise<ProxiedAPIResponse<CPlayer_GetPlayerLinkDetails_Response>>;
abstract getSteamItems(appIds: string[], params?: PartialMessage<CStoreBrowse_GetItems_Request>): Promise<ProxiedAPIResponse<CStoreBrowse_GetItems_Response>>;
abstract getSteamItemsBaseInfo(appIds: number[]): Promise<ProxiedAPIResponse<GameBaseInfoResp>>;
getSteamWishesByPage: (id: string, page: number) => Promise<any>;
retry: <T>(func: () => T, times?: number) => Promise<any>;
getOnePlayersSteamWishes: (id: string) => Promise<{
wisher: string;
item: any;
appId: string;
}[]>;
getSteamWishesByPlayerIds(playerIds: string[]): Promise<APIResp<WishItem[]>>;
}
declare enum ReqResultStatus {
Success = 0,
NotMatch = 1,
NetworkError = 2
}
export declare class NetReqResult<T> {
data?: T | null;
private status;
msg: string;
static failed<T>(reason: string): NetReqResult<T>;
static success<T>(data: T): NetReqResult<T>;
constructor(data: T, status: ReqResultStatus, message: string);
successOr(data: T): T;
isSuccess(): boolean;
isNetworkError(): boolean;
isNotMatch(): boolean;
}