import type { CommercialLength } from '../../Shared/CommercialLength'; import type { User } from '../User/User'; import type { ChannelData } from './Channel'; import { Channel } from './Channel'; /** @private */ export interface PrivilegedChannelData extends ChannelData { stream_key: string; email: string; } /** * A channel you have extended privileges for, i.e. the channel of the currently authenticated user. */ export declare class PrivilegedChannel extends Channel { /** @private */ protected readonly _data: PrivilegedChannelData; /** * The channel's stream key. */ get streamKey(): string; /** * The channel's email address. */ get email(): string; /** * Retrieves the list of editors of the channel. */ getEditors(): Promise; /** * Starts a commercial in the channel. * * @param length The length of the commercial. */ startCommercial(length: CommercialLength): Promise; /** * Resets the given channel's stream key. */ resetStreamKey(): Promise; }