Properties

Property related exports.

interface Propertied  {
  boolean: (key: string) => boolean
  changeObject: (propertyId: SignalId, scalar?: Scalar) => ChangeEditObject
  changeScalars: (scalars: ScalarsById) => void
  changesObject: (scalars: ScalarsById) => ChangePropertiesEditObject
  constrainedValue: (found: Property, value?: Scalar) => Scalar | undefined
  host: Plugins
  id: string
  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
  string: (key: string) => string
  targetId: string
  toJSON: () => unknown
  tweenValues: (key: string, time: Time, range: TimeRange) => Array<Scalar>
  tweens: (key: string) => boolean
  value: (key: string) => Scalar | undefined
}
interface Property 
extends PropertyObject {
  fallback?: Scalar
  frame?: number
  icon?: string
  max?: number
  min?: number
  name?: string
  options?: Array<Scalar> | ScalarRecord
  order?: number
  step?: number
  target?: string
  tweens?: boolean
  type?: string
  undoable?: boolean
}
interface PropertyObject  {
  fallback?: Scalar
  frame?: number
  icon?: string
  max?: number
  min?: number
  name?: string
  options?: Array<Scalar> | ScalarRecord
  order?: number
  step?: number
  target?: string
  tweens?: boolean
  type?: string
  undoable?: boolean
}
type PropertyType = ScalarType | OrString
/** @implements Propertied */
class PropertiedClass {
  boolean: (key: string) => boolean
  changeObject: (propertyId: SignalId, scalar?: Scalar) => ChangeEditObject
  changeScalars: (scalars: ScalarsById) => void
  changesObject: (scalars: ScalarsById) => ChangePropertiesEditObject
  constrainedValue: (found: Property, value?: Scalar) => Scalar | undefined
  host: Plugins
  id: string
  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
  string: (key: string) => string
  targetId: string
  toJSON: () => unknown
  tweenValues: (key: string, time: Time, range: TimeRange) => Array<Scalar>
  tweens: (key: string) => boolean
  tweensProperty: (key: string) => boolean
  value: (key: string) => Scalar | undefined
}
function propertyColumn(
  property: string
): string
function propertyNumeric(
  dataType: PropertyType
): boolean
function propertyObjectFromArgs(
  arg: string | PropertyObject, 
  owner?: string
): PropertyObject
function propertyScalar<T = boolean>(
  property: Property, 
  scalar?: Scalar, 
  forCss?: T
): StringOrScalar<T> | undefined
function propertyTypeCoerce<T = boolean>(
  value: Scalar, 
  type: PropertyType, 
  forCss?: T
): StringOrScalar<T> | undefined