UNPKG

mythtv-services-api

Version:
117 lines (116 loc) 4.7 kB
/// <reference types="node" /> import { AbstractService } from "./Communication"; import ApiTypes from "./ApiTypes"; import { InternalTypes } from "./CommonTypes"; import { Writable } from "stream"; export declare namespace ContentService { namespace Request { export interface AddLiveStream extends LiveStream { StorageGroup?: string; FileName: string; HostName?: string; } export type AddRecordingLiveStream = InternalTypes.RecordingKey & LiveStream; export interface AddVideoLiveStream extends LiveStream { Id: number; } interface LiveStream extends ImageFile { MaxSegments?: number; Bitrate?: number; AudioBitrate?: number; SampleRate?: number; } export interface DownloadFile { URL: string; StorageGroup: string; } export interface GetAlbumArt extends ImageFile { Id: number; } export interface GetDirList { StorageGroup: string; } export interface GetFile { StorageGroup: string; FileName: string; } export interface GetFileList { StorageGroup: string; } export interface GetHash { StorageGroup: string; FileName: string; } interface ImageFile { Width?: number; Height?: number; } export interface GetImageFile extends ImageFile { StorageGroup: string; FileName: string; } export interface GetLiveStream { Id: number; } export interface GetLiveStreamList { FileName?: string; } export interface GetMusic { Id: number; } export type GetPreviewImage = InternalTypes.RecordingKey & ImageFile & { SecsIn?: number; Format?: string; }; export interface GetProgramArtworkList { Inetref: string; Season?: number; } export type GetRecording = InternalTypes.RecordingKey; export interface GetRecordingArtwork extends ImageFile { Type?: string; Inetref: string; Season?: number; } export type GetRecordingArtworkList = InternalTypes.RecordingKey; export interface GetVideo { Id: number; } export interface GetVideoArtwork extends ImageFile { Type?: string; Id: number; } export interface RemoveLiveStream { Id: number; } export interface StopLiveStream { Id: number; } export {}; } class Service extends AbstractService { constructor(baseUrl: URL); AddLiveStream(req: Request.AddLiveStream): Promise<ApiTypes.LiveStreamInfo>; AddRecordingLiveStream(req: Request.AddRecordingLiveStream): Promise<ApiTypes.LiveStreamInfo>; AddVideoLiveStream(req: Request.AddVideoLiveStream): Promise<ApiTypes.LiveStreamInfo>; DownloadFile(req: Request.DownloadFile): Promise<void>; GetAlbumArt(req: Request.GetAlbumArt, writable: Writable): Promise<void>; GetDirList(req: Request.GetDirList): Promise<string[]>; GetFile(req: Request.GetFile, writable: Writable): Promise<void>; GetFileList(req: Request.GetFileList): Promise<string[]>; GetHash(req: Request.GetHash): Promise<string>; GetImageFile(req: Request.GetImageFile, writable: Writable): Promise<void>; GetLiveStream(req: Request.GetLiveStream): Promise<ApiTypes.LiveStreamInfo>; GetLiveStreamList(req: Request.GetLiveStreamList): Promise<ApiTypes.LiveStreamInfo[]>; GetMusic(req: Request.GetMusic, writable: Writable): Promise<void>; GetPreviewImage(req: Request.GetPreviewImage, writable: Writable): Promise<void>; GetProgramArtworkList(req: Request.GetProgramArtworkList): Promise<ApiTypes.ArtworkInfo[]>; GetRecording(req: Request.GetRecording, writable: Writable): Promise<void>; GetRecordingArtwork(req: Request.GetRecordingArtwork, writable: Writable): Promise<void>; GetRecordingArtworkList(req: Request.GetRecordingArtworkList): Promise<ApiTypes.ArtworkInfo[]>; GetVideo(req: Request.GetVideo, writable: Writable): Promise<void>; GetVideoArtwork(req: Request.GetVideoArtwork, writable: Writable): Promise<void>; RemoveLiveStream(req: Request.RemoveLiveStream): Promise<void>; StopLiveStream(req: Request.StopLiveStream): Promise<ApiTypes.LiveStreamInfo>; } }