/**
 * This file was automatically generated by json-schema-to-typescript.
 * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
 * and re-run the "tsr-schema-types" tool to regenerate this file.
 */
import type { DeviceOptionsBase } from '../device';
import type { AbstractOptions } from './abstract';
export interface DeviceOptionsAbstract extends DeviceOptionsBase<AbstractOptions> {
    type: DeviceType.ABSTRACT;
}
import type { AtemOptions } from './atem';
export interface DeviceOptionsAtem extends DeviceOptionsBase<AtemOptions> {
    type: DeviceType.ATEM;
}
import type { CasparCGOptions } from './casparCG';
export interface DeviceOptionsCasparCG extends DeviceOptionsBase<CasparCGOptions> {
    type: DeviceType.CASPARCG;
}
import type { HttpSendOptions } from './httpSend';
export interface DeviceOptionsHttpSend extends DeviceOptionsBase<HttpSendOptions> {
    type: DeviceType.HTTPSEND;
}
import type { HttpWatcherOptions } from './httpWatcher';
export interface DeviceOptionsHttpWatcher extends DeviceOptionsBase<HttpWatcherOptions> {
    type: DeviceType.HTTPWATCHER;
}
import type { HyperdeckOptions } from './hyperdeck';
export interface DeviceOptionsHyperdeck extends DeviceOptionsBase<HyperdeckOptions> {
    type: DeviceType.HYPERDECK;
}
import type { LawoOptions } from './lawo';
export interface DeviceOptionsLawo extends DeviceOptionsBase<LawoOptions> {
    type: DeviceType.LAWO;
}
import type { MultiOscOptions } from './multiOsc';
export interface DeviceOptionsMultiOsc extends DeviceOptionsBase<MultiOscOptions> {
    type: DeviceType.MULTI_OSC;
}
import type { ObsOptions } from './obs';
export interface DeviceOptionsObs extends DeviceOptionsBase<ObsOptions> {
    type: DeviceType.OBS;
}
import type { OscOptions } from './osc';
export interface DeviceOptionsOsc extends DeviceOptionsBase<OscOptions> {
    type: DeviceType.OSC;
}
import type { PanasonicPTZOptions } from './panasonicPTZ';
export interface DeviceOptionsPanasonicPTZ extends DeviceOptionsBase<PanasonicPTZOptions> {
    type: DeviceType.PANASONIC_PTZ;
}
import type { PharosOptions } from './pharos';
export interface DeviceOptionsPharos extends DeviceOptionsBase<PharosOptions> {
    type: DeviceType.PHAROS;
}
import type { QuantelOptions } from './quantel';
export interface DeviceOptionsQuantel extends DeviceOptionsBase<QuantelOptions> {
    type: DeviceType.QUANTEL;
}
import type { ShotokuOptions } from './shotoku';
export interface DeviceOptionsShotoku extends DeviceOptionsBase<ShotokuOptions> {
    type: DeviceType.SHOTOKU;
}
import type { SingularLiveOptions } from './singularLive';
export interface DeviceOptionsSingularLive extends DeviceOptionsBase<SingularLiveOptions> {
    type: DeviceType.SINGULAR_LIVE;
}
import type { SisyfosOptions } from './sisyfos';
export interface DeviceOptionsSisyfos extends DeviceOptionsBase<SisyfosOptions> {
    type: DeviceType.SISYFOS;
}
import type { SofieChefOptions } from './sofieChef';
export interface DeviceOptionsSofieChef extends DeviceOptionsBase<SofieChefOptions> {
    type: DeviceType.SOFIE_CHEF;
}
import type { TcpSendOptions } from './tcpSend';
export interface DeviceOptionsTcpSend extends DeviceOptionsBase<TcpSendOptions> {
    type: DeviceType.TCPSEND;
}
import type { TelemetricsOptions } from './telemetrics';
export interface DeviceOptionsTelemetrics extends DeviceOptionsBase<TelemetricsOptions> {
    type: DeviceType.TELEMETRICS;
}
import type { TricasterOptions } from './tricaster';
export interface DeviceOptionsTricaster extends DeviceOptionsBase<TricasterOptions> {
    type: DeviceType.TRICASTER;
}
import type { ViscaOverIPOptions } from './viscaOverIP';
export interface DeviceOptionsViscaOverIP extends DeviceOptionsBase<ViscaOverIPOptions> {
    type: DeviceType.VISCA_OVER_IP;
}
import type { VizMSEOptions } from './vizMSE';
export interface DeviceOptionsVizMSE extends DeviceOptionsBase<VizMSEOptions> {
    type: DeviceType.VIZMSE;
}
import type { VmixOptions } from './vmix';
export interface DeviceOptionsVmix extends DeviceOptionsBase<VmixOptions> {
    type: DeviceType.VMIX;
}
import type { WebsocketClientOptions } from './websocketClient';
export interface DeviceOptionsWebsocketClient extends DeviceOptionsBase<WebsocketClientOptions> {
    type: DeviceType.WEBSOCKET_CLIENT;
}
export type DeviceOptionsAny = DeviceOptionsAbstract | DeviceOptionsAtem | DeviceOptionsCasparCG | DeviceOptionsHttpSend | DeviceOptionsHttpWatcher | DeviceOptionsHyperdeck | DeviceOptionsLawo | DeviceOptionsMultiOsc | DeviceOptionsObs | DeviceOptionsOsc | DeviceOptionsPanasonicPTZ | DeviceOptionsPharos | DeviceOptionsQuantel | DeviceOptionsShotoku | DeviceOptionsSingularLive | DeviceOptionsSisyfos | DeviceOptionsSofieChef | DeviceOptionsTcpSend | DeviceOptionsTelemetrics | DeviceOptionsTricaster | DeviceOptionsViscaOverIP | DeviceOptionsVizMSE | DeviceOptionsVmix | DeviceOptionsWebsocketClient;
/**
 * An identifier of a particular device class
 *
 * @export
 * @enum {string}
 */
export declare enum DeviceType {
    ABSTRACT = "ABSTRACT",
    ATEM = "ATEM",
    CASPARCG = "CASPARCG",
    HTTPSEND = "HTTPSEND",
    HTTPWATCHER = "HTTPWATCHER",
    HYPERDECK = "HYPERDECK",
    LAWO = "LAWO",
    MULTI_OSC = "MULTI_OSC",
    OBS = "OBS",
    OSC = "OSC",
    PANASONIC_PTZ = "PANASONIC_PTZ",
    PHAROS = "PHAROS",
    QUANTEL = "QUANTEL",
    SHOTOKU = "SHOTOKU",
    SINGULAR_LIVE = "SINGULAR_LIVE",
    SISYFOS = "SISYFOS",
    SOFIE_CHEF = "SOFIE_CHEF",
    TCPSEND = "TCPSEND",
    TELEMETRICS = "TELEMETRICS",
    TRICASTER = "TRICASTER",
    VISCA_OVER_IP = "VISCA_OVER_IP",
    VIZMSE = "VIZMSE",
    VMIX = "VMIX",
    WEBSOCKET_CLIENT = "WEBSOCKET_CLIENT"
}
//# sourceMappingURL=device-options.d.ts.map