UNPKG

@twitchfy/chatbot

Version:

A powerful node module to make your own Twitch ChatBot

76 lines (75 loc) 1.88 kB
import type { ChatBot } from './ChatBot'; import { Base } from './Base'; import { BaseUser } from './BaseUser'; import { BaseClip } from './BaseClip'; import type { EventSubConnection } from '../enums'; /** * The base class for a stream. */ export declare class BaseStream<T extends EventSubConnection> extends Base<T> { /** * The id of the stream. */ readonly id: string; /** * The type of the stream. */ readonly type: string; /** * The broadcaster of the stream. */ readonly broadcaster: BaseUser<T>; /** * The base data of the stream. */ private data; /** * Creates a new instance of the base stream. * @param chatbot The current instance of the chatbot. * @param data The base data of the stream. */ constructor(chatbot: ChatBot<T>, data: BaseStreamData); /** * Creates a new clip of the stream. * @param delay Whether to delay few seconds the clip or not. */ createClip(delay?: boolean): Promise<BaseClip<T>>; /** * Fetches the current stream from the API. * @returns The current stream or null if the stream is offline. */ fetch(): Promise<import("./Stream").Stream<T> | null>; /** * When the stream has started. Returns a JavaScript Date object. */ get startedAt(): Date; } /** * The data of the base stream. */ export interface BaseStreamData { /** * The id of the stream. */ id: string; /** * The type of the stream. */ type: string; /** * When the stream has started. */ started_at: string; /** * The id of the user who is streaming. */ user_id: string; /** * The name of the user who is streaming. */ user_name: string; /** * The login of the user who is streaming. */ user_login: string; }