import { DeviceType, AtemOptions, CasparCGOptions, HTTPSendOptions, HyperdeckOptions, OBSOptions, OSCOptions, PharosOptions, QuantelOptions, SingularLiveOptions, SisyfosOptions, TCPSendOptions, AbstractOptions, LawoOptions, PanasonicPTZOptions, HTTPWatcherOptions, VizMSEOptions, VMixOptions } from '.'; import { ShotokuOptions } from './shotoku'; export interface DeviceOptionsBase extends SlowReportOptions { type: DeviceType; isMultiThreaded?: boolean; reportAllCommands?: boolean; threadUsage?: number; disable?: boolean; options?: T; debug?: boolean; } export interface SlowReportOptions { /** If set, report back that a command was slow if not sent at this time */ limitSlowSentCommand?: number; /** If set, report back that a command was slow if not fullfilled (sent + ack:ed) at this time */ limitSlowFulfilledCommand?: number; } export declare type DeviceOptionsAny = DeviceOptionsAbstract | DeviceOptionsCasparCG | DeviceOptionsAtem | DeviceOptionsLawo | DeviceOptionsHTTPSend | DeviceOptionsPanasonicPTZ | DeviceOptionsTCPSend | DeviceOptionsHyperdeck | DeviceOptionsPharos | DeviceOptionsOBS | DeviceOptionsOSC | DeviceOptionsHTTPWatcher | DeviceOptionsSisyfos | DeviceOptionsQuantel | DeviceOptionsSingularLive | DeviceOptionsVMix | DeviceOptionsVizMSE | DeviceOptionsShotoku; export interface DeviceOptionsAbstract extends DeviceOptionsBase { type: DeviceType.ABSTRACT; } export interface DeviceOptionsCasparCG extends DeviceOptionsBase { type: DeviceType.CASPARCG; } export interface DeviceOptionsAtem extends DeviceOptionsBase { type: DeviceType.ATEM; } export interface DeviceOptionsLawo extends DeviceOptionsBase { type: DeviceType.LAWO; } export interface DeviceOptionsHTTPSend extends DeviceOptionsBase { type: DeviceType.HTTPSEND; } export interface DeviceOptionsPanasonicPTZ extends DeviceOptionsBase { type: DeviceType.PANASONIC_PTZ; } export interface DeviceOptionsTCPSend extends DeviceOptionsBase { type: DeviceType.TCPSEND; } export interface DeviceOptionsHyperdeck extends DeviceOptionsBase { type: DeviceType.HYPERDECK; } export interface DeviceOptionsPharos extends DeviceOptionsBase { type: DeviceType.PHAROS; } export interface DeviceOptionsOBS extends DeviceOptionsBase { type: DeviceType.OBS; } export interface DeviceOptionsOSC extends DeviceOptionsBase { type: DeviceType.OSC; } export interface DeviceOptionsHTTPWatcher extends DeviceOptionsBase { type: DeviceType.HTTPWATCHER; } export interface DeviceOptionsSisyfos extends DeviceOptionsBase { type: DeviceType.SISYFOS; } export interface DeviceOptionsQuantel extends DeviceOptionsBase { type: DeviceType.QUANTEL; } export interface DeviceOptionsVizMSE extends DeviceOptionsBase { type: DeviceType.VIZMSE; } export interface DeviceOptionsSingularLive extends DeviceOptionsBase { type: DeviceType.SINGULAR_LIVE; } export interface DeviceOptionsShotoku extends DeviceOptionsBase { type: DeviceType.SHOTOKU; } export interface DeviceOptionsVMix extends DeviceOptionsBase { type: DeviceType.VMIX; } //# sourceMappingURL=device.d.ts.map