UNPKG

timeline-state-resolver-types

Version:
151 lines • 6.42 kB
import * as Timeline from './superfly-timeline'; import { TSRTimelineObjProps } from './mapping'; import { ITranslatableMessage } from './translations'; import { Content } from './superfly-timeline'; import { TimelineContentTelemetricsAny } from './integrations/telemetrics'; import { TimelineContentAtemAny } from './integrations/atem'; import { TimelineContentCasparCGAny } from './integrations/casparcg'; import { TimelineContentHTTPSendAny } from './integrations/httpSend'; import { TimelineContentTCPSendAny } from './integrations/tcpSend'; import { TimelineContentHyperdeckAny } from './integrations/hyperdeck'; import { TimelineContentLawoAny } from './integrations/lawo'; import { TimelineContentOSCAny } from './integrations/osc'; import { TimelineContentPharosAny } from './integrations/pharos'; import { TimelineContentPanasonicPtzAny } from './integrations/panasonicPTZ'; import { TimelineContentAbstractAny } from './integrations/abstract'; import { TimelineContentQuantelAny } from './integrations/quantel'; import { TimelineContentShotoku } from './integrations/shotoku'; import { TimelineContentSisyfosAny } from './integrations/sisyfos'; import { TimelineContentSofieChefAny } from './integrations/sofieChef'; import { TimelineContentVIZMSEAny } from './integrations/vizMSE'; import { TimelineContentSingularLiveAny } from './integrations/singularLive'; import { TimelineContentVMixAny } from './integrations/vmix'; import { TimelineContentOBSAny } from './integrations/obs'; import { TimelineContentTriCasterAny } from './integrations/tricaster'; export * from './integrations/abstract'; export * from './integrations/atem'; export * from './integrations/casparcg'; export * from './integrations/httpSend'; export * from './integrations/hyperdeck'; export * from './integrations/lawo'; export * from './integrations/osc'; export * from './integrations/pharos'; export * from './integrations/panasonicPTZ'; export * from './integrations/sisyfos'; export * from './integrations/sofieChef'; export * from './integrations/quantel'; export * from './integrations/shotoku'; export * from './integrations/tcpSend'; export * from './integrations/vizMSE'; export * from './integrations/singularLive'; export * from './integrations/vmix'; export * from './integrations/obs'; export * from './integrations/tricaster'; export * from './integrations/telemetrics'; export * from './integrations/multiOsc'; export * from './integrations/viscaOverIP'; export * from './device'; export * from './mapping'; export { Timeline }; export * from './mapping'; export * from './expectedPlayoutItems'; export * from './mediaObject'; export * from './translations'; export * from './generated'; /** * An identifier of a particular device class * * @export * @enum {string} */ export declare enum DeviceType { ABSTRACT = "ABSTRACT", CASPARCG = "CASPARCG", ATEM = "ATEM", LAWO = "LAWO", HTTPSEND = "HTTPSEND", PANASONIC_PTZ = "PANASONIC_PTZ", TCPSEND = "TCPSEND", HYPERDECK = "HYPERDECK", PHAROS = "PHAROS", OSC = "OSC", HTTPWATCHER = "HTTPWATCHER", SISYFOS = "SISYFOS", QUANTEL = "QUANTEL", VIZMSE = "VIZMSE", SINGULAR_LIVE = "SINGULAR_LIVE", SHOTOKU = "SHOTOKU", VMIX = "VMIX", OBS = "OBS", SOFIE_CHEF = "SOFIE_CHEF", TELEMETRICS = "TELEMETRICS", TRICASTER = "TRICASTER", MULTI_OSC = "MULTI_OSC", VISCA_OVER_IP = "VISCA_OVER_IP" } export interface TSRTimelineKeyframe<TContent> extends Omit<Timeline.TimelineKeyframe, 'content'> { content: TContent; } /** * An object containing references to the datastore */ export interface TimelineDatastoreReferences { /** * localPath is the path to the property in the content object to override */ [localPath: string]: { /** Reference to the Datastore key where to fetch the value */ datastoreKey: string; /** * If true, the referenced value in the Datastore is only applied after the timeline-object has started (ie a later-started timeline-object will not be affected) */ overwrite: boolean; }; } export interface TimelineDatastoreReferencesContent { $references?: TimelineDatastoreReferences; } export type TSRTimeline = TSRTimelineObj<TSRTimelineContent>[]; export interface TSRTimelineObj<TContent extends { deviceType: DeviceType; }> extends Omit<Timeline.TimelineObject<TContent & TimelineDatastoreReferencesContent>, 'children'>, TSRTimelineObjProps { children?: TSRTimelineObj<TSRTimelineContent>[]; } export interface TimelineContentEmpty extends Content { deviceType: DeviceType.ABSTRACT; type: 'empty'; } export type TSRTimelineContent = TimelineContentEmpty | TimelineContentAbstractAny | TimelineContentAtemAny | TimelineContentCasparCGAny | TimelineContentHTTPSendAny | TimelineContentTCPSendAny | TimelineContentHyperdeckAny | TimelineContentLawoAny | TimelineContentOBSAny | TimelineContentOSCAny | TimelineContentPharosAny | TimelineContentPanasonicPtzAny | TimelineContentQuantelAny | TimelineContentShotoku | TimelineContentSisyfosAny | TimelineContentSofieChefAny | TimelineContentSingularLiveAny | TimelineContentVMixAny | TimelineContentVIZMSEAny | TimelineContentTelemetricsAny | TimelineContentTriCasterAny; /** * A simple key value store that can be referred to from the timeline objects */ export interface Datastore { [datastoreKey: string]: { /** The value that will replace a value in the Timeline-object content */ value: any; /** A unix-Timestamp of when the value was set. (Note that this must not be set a value in the future.) */ modified: number; }; } export interface ActionExecutionResult<ResultData = undefined> { result: ActionExecutionResultCode; /** Response message, intended to be displayed to a user */ response?: ITranslatableMessage; /** Response data */ resultData?: ResultData; } export declare enum ActionExecutionResultCode { Error = "ERROR", IgnoredNotRelevant = "IGNORED", Ok = "OK" } /** This resolves to a string, where parts can be defined by the datastore */ export interface TemplateString { /** The string template. Example: "http://google.com?q={{searchString}}" */ key: string; /** Values for the arguments in the key string. Example: { searchString: "TSR" } */ args?: { [k: string]: any; }; } //# sourceMappingURL=index.d.ts.map