UNPKG

camstreamerlib

Version:

Helper library for CamStreamer ACAP applications.

1,762 lines 101 kB
import { IClient, TResponse } from './internal/types'; import { TAudioFile, TAudioFileStorageType, TDiagnosticsParams, TStream } from './types/CamStreamerAPI/CamStreamerAPI'; import { THttpRequestOptions } from './types/common'; import { TOldStream, TOldStringStream } from './types/CamStreamerAPI/oldStreamSchema'; import { BasicAPI } from './internal/BasicAPI'; export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> extends BasicAPI<Client> { static getProxyPath: () => string; static getWsEventsPath: () => string; checkAPIAvailable(options?: THttpRequestOptions): Promise<void>; wsAuthorization(options?: THttpRequestOptions): Promise<string>; getUtcTime(options?: THttpRequestOptions): Promise<number>; getMaxFps(source?: number, options?: THttpRequestOptions): Promise<any>; isCSPassValid(pass: string, options?: THttpRequestOptions): Promise<boolean>; getCamStreamerAppLog(options?: THttpRequestOptions): Promise<string>; getStreamList<TUnknownStream extends { platform: string; }>(options?: THttpRequestOptions): Promise<({ post: { postLocation: "timeline"; streamPrivacy: "public" | "friends" | "only_me"; } | { postLocation: "page"; page: string; }; status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "facebook"; deleteAfterEnd: boolean; countdown: boolean; description?: string | undefined; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "windy"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; streamPrivacy: "public" | "unlisted" | "private"; platform: "youtube"; playlists: string[]; tags: string[]; notificationEmails: string[]; latency: "normal" | "low" | "ultra_low"; afterEndStatus: "public" | "unlisted" | "private" | "no_change"; dvr: boolean; hasWatchdogs: boolean; streamingProtocol: "RTMP" | "RTMPS" | "HLS"; description?: string | undefined; countdown?: boolean | undefined; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "da_cast"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "dailymotion"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "facebook_rtmp"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "game_changer"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "hls_pull"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "hls_push"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "ibm"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "mpeg_dvb"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "microsoft_azure"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "microsoft_stream"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "rtmp"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "sd_card"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "srt"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "twitch"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "vimeo"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "wowza"; } | { status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "onetime"; startTime: number; stopTime: number; everActivated: boolean; prepareAheadS?: number | undefined; } | { type: "recurrent"; schedule: { start: { day: number; timeS: number; }; stop: { day: number; timeS: number; }; isActive: boolean; }[]; prepareAheadS?: number | undefined; }; video: { output: { type: "video"; url: string | null; parameters: string; saveToSdCard?: { ruleId: string; configurationId: string; } | undefined; } | { type: "images"; url: string | null; imageIntervalS: number; } | { type: "none"; saveToSdCard: { ruleId: string; configurationId: string; }; }; input: { type: "RTSP_URL"; url: string; internalVapixParameters: string; } | { type: "CSw"; } | { type: "CRS"; internalVapixParameters: string; userVapixParameters: string; }; delayS?: number | undefined; }; audio: { source: "none"; } | { source: "microphone"; audioChannelNbr: number; forceStereo: boolean; } | { path: string; name: string; source: "file"; forceStereo: boolean; } | { name: string; url: string; source: "url"; forceStereo: boolean; avSyncMsec: number; }; platform: "youtube_rtmp"; } | TUnknownStream)[]>; setStreamList<TUnknownStream extends { platform: string; }>(streamList: (TStream | TUnknownStream)[], options?: THttpRequestOptions): Promise<void>; getStream(streamId: string, options?: THttpRequestOptions): Promise<{ post: { postLocation: "timeline"; streamPrivacy: "public" | "friends" | "only_me"; } | { postLocation: "page"; page: string; }; status: { led: boolean; port?: number | undefined; }; streamId: string; enabled: boolean; active: boolean; title: string; trigger: { type: "manual"; port?: number | undefined; } | { type: "on