Tracks

Exports related to tracks.

interface ClientTrack 
extends Track {
  addClips: (clip: Array<ClientClip>, insertIndex?: number) => void
  assureFrames: (quantize: number, clips?: Array<Clip>) => void
  boolean: (key: string) => boolean
  changeObject: (propertyId: SignalId, scalar?: Scalar) => ChangeEditObject
  changeScalars: (scalars: ScalarsById) => void
  changesObject: (scalars: ScalarsById) => ChangePropertiesEditObject
  clips: Array<Clip>
  constrainedValue: (found: Property, value?: Scalar) => Scalar | undefined
  dense: boolean
  frameForClipNearFrame: (clip: ClientClip, frame?: number) => number
  frames: number
  host: Plugins
  id: string
  index: number
  mashMedia: MashMedia
  number: (key: string) => number
  properties: Array<Property>
  propertiesOfTarget: (targetId: string) => Array<Property>
  propertyFind: (name: string) => Property | undefined
  propertyIds: (targetId: string) => Array<SignalId>
  removeClips: (clip: Array<ClientClip>) => void
  scalarsRecord: (idOrNames: Strings) => ScalarRecord
  setValue: (nameOrId: string, scalar?: Scalar, dontConstrain?: boolean) => void
  shouldSelectProperty: (property: Property) => boolean
  sortClips: (clips?: Array<Clip>) => void
  string: (key: string) => string
  targetId: string
  toJSON: () => unknown
  trackIndex: TrackIndex
  trackObject: TrackObject
  tweenValues: (key: string, time: Time, range: TimeRange) => Array<Scalar>
  tweens: (key: string) => boolean
  value: (key: string) => Scalar | undefined
}
interface Track 
extends Propertied, WithIndex {
  assureFrames: (quantize: number, clips?: Array<Clip>) => void
  boolean: (key: string) => boolean
  changeObject: (propertyId: SignalId, scalar?: Scalar) => ChangeEditObject
  changeScalars: (scalars: ScalarsById) => void
  changesObject: (scalars: ScalarsById) => ChangePropertiesEditObject
  clips: Array<Clip>
  constrainedValue: (found: Property, value?: Scalar) => Scalar | undefined
  dense: boolean
  frames: number
  host: Plugins
  id: string
  index: number
  mashMedia: MashMedia
  number: (key: string) => number
  properties: Array<Property>
  propertiesOfTarget: (targetId: string) => Array<Property>
  propertyFind: (name: string) => Property | undefined
  propertyIds: (targetId: string) => Array<SignalId>
  scalarsRecord: (idOrNames: Strings) => ScalarRecord
  setValue: (nameOrId: string, scalar?: Scalar, dontConstrain?: boolean) => void
  shouldSelectProperty: (property: Property) => boolean
  sortClips: (clips?: Array<Clip>) => void
  string: (key: string) => string
  targetId: string
  toJSON: () => unknown
  trackIndex: TrackIndex
  trackObject: TrackObject
  tweenValues: (key: string, time: Time, range: TimeRange) => Array<Scalar>
  tweens: (key: string) => boolean
  value: (key: string) => Scalar | undefined
}
interface TrackArgs 
extends TrackObject {
  clips?: Array<ClipObject>
  dense?: boolean
  index?: number
  mashMedia: MashMedia
}
type TrackClipsTuple = ArrayOf2<ClientTrack, Array<ClientClip>>
interface TrackIndex 
extends ArrayOf2<number, number> {}
interface TrackObject 
extends UnknownRecord {
  clips?: Array<ClipObject>
  dense?: boolean
  index?: number
}
interface WithTrack  {
  trackNumber: number
}
/** @implements ClientTrack */
class ClientTrackClass
extends TrackClass {
  addClips: (clip: Array<ClientClip>, insertIndex?: number) => void
  assureFrames: (quantize: number, clips?: Array<Clip>) => void
  boolean: (key: string) => boolean
  changeObject: (propertyId: SignalId, scalar?: Scalar) => ChangeEditObject
  changeScalars: (scalars: ScalarsById) => void
  changesObject: (scalars: ScalarsById) => ChangePropertiesEditObject
  clips: Array<Clip>
  constrainedValue: (found: Property, value?: Scalar) => Scalar | undefined
  dense: boolean
  frameForClipNearFrame: (clip: ClientClip, frame?: number) => number
  frames: number
  host: Plugins
  id: string
  index: number
  mashMedia: MashMedia
  number: (key: string) => number
  properties: Array<Property>
  propertiesOfTarget: (targetId: string) => Array<Property>
  propertyFind: (name: string) => Property | undefined
  propertyIds: (targetId: string) => Array<SignalId>
  removeClips: (clip: Array<ClientClip>) => void
  scalarsRecord: (idOrNames: Strings) => ScalarRecord
  setValue: (nameOrId: string, scalar?: Scalar, dontConstrain?: boolean) => void
  shouldSelectProperty: (property: Property) => boolean
  sortClips: (clips?: Array<Clip>) => void
  string: (key: string) => string
  targetId: string
  toJSON: () => unknown
  trackIndex: TrackIndex
  trackObject: TrackObject
  tweenValues: (key: string, time: Time, range: TimeRange) => Array<Scalar>
  tweens: (key: string) => boolean
  tweensProperty: (key: string) => boolean
  value: (key: string) => Scalar | undefined
}
/** @implements Track */
class TrackClass
extends PropertiedClass {
  assureFrames: (quantize: number, clips?: Array<Clip>) => void
  boolean: (key: string) => boolean
  changeObject: (propertyId: SignalId, scalar?: Scalar) => ChangeEditObject
  changeScalars: (scalars: ScalarsById) => void
  changesObject: (scalars: ScalarsById) => ChangePropertiesEditObject
  clips: Array<Clip>
  constrainedValue: (found: Property, value?: Scalar) => Scalar | undefined
  dense: boolean
  frames: number
  host: Plugins
  id: string
  index: number
  mashMedia: MashMedia
  number: (key: string) => number
  properties: Array<Property>
  propertiesOfTarget: (targetId: string) => Array<Property>
  propertyFind: (name: string) => Property | undefined
  propertyIds: (targetId: string) => Array<SignalId>
  scalarsRecord: (idOrNames: Strings) => ScalarRecord
  setValue: (nameOrId: string, scalar?: Scalar, dontConstrain?: boolean) => void
  shouldSelectProperty: (property: Property) => boolean
  sortClips: (clips?: Array<Clip>) => void
  string: (key: string) => string
  targetId: string
  toJSON: () => unknown
  trackIndex: TrackIndex
  trackObject: TrackObject
  tweenValues: (key: string, time: Time, range: TimeRange) => Array<Scalar>
  tweens: (key: string) => boolean
  tweensProperty: (key: string) => boolean
  value: (key: string) => Scalar | undefined
}
/** Type assertion for ClientTrack */
function assertClientTrack(
  value: unknown, 
  name?: string
): void
/** Type guard for ClientTrack */
function isClientTrack(
  value: unknown
): boolean
/** Type guard for Track */
function isTrack(
  value?: unknown
): boolean
function sortByTrack(
  a: WithTrack, 
  b: WithTrack
): number