wasdtv
Version:
WASD.tv API client
61 lines (60 loc) • 4.41 kB
TypeScript
/// <reference types="node" />
/// <reference types="node" />
import EventEmitter from 'events';
import { PassThrough } from 'stream';
import { Wasd } from './types/api';
export declare class WasdTv extends EventEmitter {
private token;
private _rest;
private _socket;
private _jwt;
private _subs;
private _originalOn;
private _originalOff;
constructor(token: string);
private init;
joinToChat(stream_id: number, channel_id: number): Promise<void>;
leaveChat(stream_id: number): Promise<void>;
sendMessage(stream_id: number, message: string, channel_id?: number, streamer_id?: number): void;
sendSticker(stream_id: number, sticker_id: number, channel_id?: number, streamer_id?: number): void;
private connectGuard;
on<T extends Wasd.EventMap, V extends keyof Wasd.EventMap>(event: V, listener: (ctx: Pick<T, V>[V]) => void): this;
off<T extends Wasd.EventMap, V extends keyof Wasd.EventMap>(event: V, listener: (ctx: Pick<T, V>[V]) => void): this;
getJWT(): Promise<Wasd.JWT>;
getChannelInfo(channel_name: string): Promise<Wasd.ChannelInfo>;
getStreamChatMessages(stream_id: number, limit?: number, offset?: number): Promise<Wasd.RestMessage<Wasd.Message>[]>;
getStreamChatStickers(stream_id: number, limit?: number, offset?: number): Promise<Wasd.RestMessage<Wasd.StickerMessage>[]>;
getStreamChatSubscribers(stream_id: number, limit?: number, offset?: number): Promise<Wasd.RestMessage<Wasd.SubscribeMessage>[]>;
getStreamChatHighlightedMessage(stream_id: number, limit?: number, offset?: number): Promise<Wasd.RestMessage<Wasd.HighlightedMessage>[]>;
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[]>;
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 | undefined, media_container_type: "SINGLE" | undefined, channel_id: number, limit?: number, offset?: number): Promise<Wasd.MediaContainerExtra[]>;
getChannelLinks(channel_id: number): Promise<Wasd.ChannelLink[]>;
getProfile(): Promise<Wasd.User>;
getNotifications(): Promise<Wasd.Notification[]>;
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[]>;
donwloadLiveMediaStream(user_id: number): PassThrough;
downloadMediaByUrl(url: string): PassThrough;
downloadVod(media_container: Wasd.MediaContainer): PassThrough;
getMediaStreamMetadata(user_id: number): Promise<Wasd.MediaStreamMetadata>;
}