wasdtv
Version:
WASD.tv API client
47 lines (46 loc) • 3.53 kB
TypeScript
/// <reference types="node" />
import { PassThrough } from 'stream';
import { Wasd } from '../types/api';
export default class RestClient {
private token;
private _axios;
constructor(token: string);
getJWT(): Promise<Wasd.JWT>;
getChannelInfo(channel_name: string): Promise<Wasd.ChannelInfo>;
getStreamChatMessages<T extends Wasd.InfoType>(stream_id: number, message_type: Wasd.MessageType, limit?: number, offset?: number): Promise<Wasd.RestMessage<T>[]>;
setChatSettings(stream_id: number, chat_role_limit: Wasd.ChatPermission, chat_delay: Wasd.ChatDelay): Promise<boolean>;
addModerator(channel_id: number, user_id: number): Promise<boolean>;
deleteModerator(channel_id: number, user_id: number): Promise<boolean>;
listModerator(streamer_id: number): Promise<Wasd.Moderator[]>;
banUser(channel_id: number, user_id: number, stream_id: number, keep_messages?: boolean, duration?: number): Promise<boolean>;
unbanUser(channel_id: number, user_id: number): Promise<boolean>;
listBanned(streamer_id: number): Promise<Wasd.BannedUser[]>;
getGifts(media_container_id: number): Promise<Wasd.Gift[]>;
productsToSell(user_id: number): Promise<Wasd.Product[]>;
getWebCustomBlocks(channel_id: number): Promise<Wasd.WebCustomBlock[]>;
getStickerPack(streamer_id: number, limit?: number, offset?: number): Promise<Wasd.StickerPack[]>;
getPopularClips(): Promise<Wasd.Clip[]>;
getClips(channel_id: number, limit: number, offset: number): Promise<Wasd.Clip[]>;
getGames(limit?: number, offset?: number): Promise<Wasd.Game[]>;
getMediaContainers(media_container_status?: Wasd.MediaStatus, media_container_type?: Wasd.MediaContainerType, game_id?: number, limit?: number, offset?: number): Promise<Wasd.MediaContainerExtra[]>;
getChannelMediaContainers(media_container_status?: Wasd.MediaStatus, media_container_type?: Wasd.MediaContainerType, channel_id?: number, limit?: number, offset?: number): Promise<Wasd.MediaContainerExtra[]>;
getProfile(): Promise<Wasd.User>;
getNotifications(): Promise<Wasd.Notification[]>;
getChannelLinks(channel_id: number): Promise<Wasd.ChannelLink[]>;
searchGames(search_phrase: string, limit: number, offset: number): Promise<Wasd.SearchResult<Wasd.Game>>;
searchProfile(search_phrase: string, limit: number, offset: number): Promise<Wasd.SearchResult<Wasd.UserProfile>>;
searchChannel(search_phrase: string, limit: number, offset: number): Promise<Wasd.SearchResult<Wasd.Channel>>;
searchMediaContainer(media_container_name?: string, media_container_status?: Wasd.MediaStatus, limit?: number, offset?: number): Promise<Wasd.SearchResult<Wasd.MediaContainerExtra>>;
getTags(type?: Wasd.TagType, limit?: number, offset?: number): Promise<Wasd.Tag[]>;
getStreamPushUrl(): Promise<Wasd.StreamPushUrl>;
getStreamClosedViewUrl(): Promise<Wasd.StreamClosedViewUrl>;
getBroadcastLimits(): Promise<Wasd.BroadcastLimits>;
setSetting(setting_key: Wasd.SettingKey, setting_value: any): Promise<Wasd.Setting[]>;
getPosts(user_id: number, limit: number, offset: number): Promise<Wasd.Post[]>;
getSchedule(user_id: number): Promise<Wasd.Schedule[]>;
downloadLiveMediaStream(user_id: number): PassThrough;
downloadMediaByUrl(url: string): PassThrough;
downloadVod(media_container: Wasd.MediaContainer): PassThrough;
getMediaStreamMetadata(user_id: number): Promise<Wasd.MediaStreamMetadata>;
private errorHandler;
}