@esotericsoftware/spine-core 4.3.5 → 4.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -80,17 +80,26 @@ export declare class Animation {
80
80
  * @param loop True if `time` beyond the {@link duration} repeats the animation, else the last frame is used.
81
81
  * @param events If any events are fired, they are added to this list. Pass null to ignore fired events or if no timelines fire
82
82
  * events.
83
- * @param alpha 0 applies setup or current values (depending on `fromSetup`), 1 uses timeline values, and
84
- * intermediate values interpolate between them. Adjusting `alpha` over time can mix an animation in or
85
- * out.
86
- * @param fromSetup If true, `alpha` transitions between setup and timeline values, setup values are used before the
87
- * first frame (current values are not used). If false, `alpha` transitions between current and timeline
88
- * values, no change is made before the first frame.
83
+ * @param alpha 0 applies setup or current values (depending on `from`), 1 uses timeline values, and intermediate
84
+ * values interpolate between them. Adjusting `alpha` over time can mix an animation in or out.
85
+ * @param from Controls how `alpha` and `add` mix from current or setup pose values to timeline values.
89
86
  * @param add If true, for timelines that support it, their values are added to the setup or current values (depending on
90
- * `fromSetup`).
87
+ * `from`).
91
88
  * @param out True when the animation is mixing out, else it is mixing in. Used by timelines that perform instant transitions.
92
89
  * @param appliedPose True to modify {@link Posed.appliedPose}, else {@link Posed.pose} is modified. */
93
- apply(skeleton: Skeleton, lastTime: number, time: number, loop: boolean, events: Array<Event> | null, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
90
+ apply(skeleton: Skeleton, lastTime: number, time: number, loop: boolean, events: Array<Event> | null, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
91
+ }
92
+ /** Controls whether `alpha` and `add` mix from current or setup pose values and what happens before the
93
+ * first key.
94
+ *
95
+ * See {@link Timeline.apply}. */
96
+ export declare enum MixFrom {
97
+ /** Alpha mixes from the current pose. Before the first key, no change is made. */
98
+ current = 0,
99
+ /** Alpha mixes from the setup pose. Before the first key, the setup pose is used. */
100
+ setup = 1,
101
+ /** Alpha mixes from the current pose. Before the first key, alpha mixes from the current pose to the setup pose. */
102
+ first = 2
94
103
  }
95
104
  export declare enum Property {
96
105
  rotate = 0,
@@ -108,22 +117,23 @@ export declare enum Property {
108
117
  deform = 12,
109
118
  event = 13,
110
119
  drawOrder = 14,
111
- ikConstraint = 15,
112
- transformConstraint = 16,
113
- pathConstraintPosition = 17,
114
- pathConstraintSpacing = 18,
115
- pathConstraintMix = 19,
116
- physicsConstraintInertia = 20,
117
- physicsConstraintStrength = 21,
118
- physicsConstraintDamping = 22,
119
- physicsConstraintMass = 23,
120
- physicsConstraintWind = 24,
121
- physicsConstraintGravity = 25,
122
- physicsConstraintMix = 26,
123
- physicsConstraintReset = 27,
124
- sequence = 28,
125
- sliderTime = 29,
126
- sliderMix = 30
120
+ drawOrderFolder = 15,
121
+ ikConstraint = 16,
122
+ transformConstraint = 17,
123
+ pathConstraintPosition = 18,
124
+ pathConstraintSpacing = 19,
125
+ pathConstraintMix = 20,
126
+ physicsConstraintInertia = 21,
127
+ physicsConstraintStrength = 22,
128
+ physicsConstraintDamping = 23,
129
+ physicsConstraintMass = 24,
130
+ physicsConstraintWind = 25,
131
+ physicsConstraintGravity = 26,
132
+ physicsConstraintMix = 27,
133
+ physicsConstraintReset = 28,
134
+ sequence = 29,
135
+ sliderTime = 30,
136
+ sliderMix = 31
127
137
  }
128
138
  /** The base class for all timelines.
129
139
  *
@@ -132,7 +142,9 @@ export declare enum Property {
132
142
  export declare abstract class Timeline {
133
143
  readonly propertyIds: string[];
134
144
  readonly frames: NumberArrayLike;
135
- /** True if this timeline supports additive blending. */
145
+ /** True if this timeline supports being applied additively.
146
+ *
147
+ * See the `add` parameter in {@link Timeline.apply}. */
136
148
  additive: boolean;
137
149
  /** True if this timeline sets values instantaneously and does not support interpolation between frames. */
138
150
  instant: boolean;
@@ -157,18 +169,16 @@ export declare abstract class Timeline {
157
169
  * interpolate between the frame values.
158
170
  * @param events If any events are fired, they are added to this list. Pass null to ignore fired events or if no timelines
159
171
  * fire events.
160
- * @param alpha 0 applies setup or current values (depending on `fromSetup`), 1 uses timeline values, and
161
- * intermediate values interpolate between them. Adjusting `alpha` over time can mix a timeline in or
162
- * out.
163
- * @param fromSetup If true, `alpha` transitions between setup and timeline values, setup values are used before
164
- * the first frame (current values are not used). If false, `alpha` transitions between current and
165
- * timeline values, no change is made before the first frame.
172
+ * @param alpha 0 applies setup or current values (depending on `from`), 1 uses timeline values, and intermediate
173
+ * values interpolate between them. Adjusting `alpha` over time can mix a timeline in or out.
174
+ * @param from Controls how `alpha` and `add` mix from current or setup pose values to timeline
175
+ * values.
166
176
  * @param add If true, for timelines that support it, their values are added to the setup or current values (depending on
167
- * `fromSetup`).
177
+ * `from`).
168
178
  * @param out True when the animation is mixing out, else it is mixing in. Used by timelines that perform instant
169
179
  * transitions.
170
180
  * @param appliedPose True to modify {@link Posed.appliedPose}, else {@link Posed.pose} is modified. */
171
- abstract apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event> | null, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
181
+ abstract apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event> | null, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
172
182
  /** Linear search using the specified stride (default 1).
173
183
  * @param time Must be >= the first value in `frames`.
174
184
  * @return The index of the first value <= `time`. */
@@ -228,14 +238,14 @@ export declare abstract class CurveTimeline1 extends CurveTimeline {
228
238
  * See {@link Timeline.apply}.
229
239
  * @param current The current value for the property.
230
240
  * @param setup The setup value for the property. */
231
- getRelativeValue(time: number, alpha: number, fromSetup: boolean, add: boolean, current: number, setup: number): number;
241
+ getRelativeValue(time: number, alpha: number, from: MixFrom, add: boolean, current: number, setup: number): number;
232
242
  /** Returns the interpolated value for properties set as absolute values. The timeline value replaces the setup value,
233
243
  * rather than being relative to it.
234
244
  *
235
245
  * See {@link Timeline.apply}.
236
246
  * @param current The current value for the property.
237
247
  * @param setup The setup value for the property. */
238
- getAbsoluteValue(time: number, alpha: number, fromSetup: boolean, add: boolean, current: number, setup: number): number;
248
+ getAbsoluteValue(time: number, alpha: number, from: MixFrom, add: boolean, current: number, setup: number): number;
239
249
  /** Returns the interpolated value for properties set as absolute values, using the specified timeline value rather than
240
250
  * calling {@link getCurveValue}.
241
251
  *
@@ -243,7 +253,7 @@ export declare abstract class CurveTimeline1 extends CurveTimeline {
243
253
  * @param current The current value for the property.
244
254
  * @param setup The setup value for the property.
245
255
  * @param value The timeline value to apply. */
246
- getAbsoluteValue(time: number, alpha: number, fromSetup: boolean, add: boolean, current: number, setup: number, value: number): number;
256
+ getAbsoluteValue(time: number, alpha: number, from: MixFrom, add: boolean, current: number, setup: number, value: number): number;
247
257
  private getAbsoluteValue1;
248
258
  private getAbsoluteValue2;
249
259
  /** Returns the interpolated value for scale properties. The timeline and setup values are multiplied and sign adjusted.
@@ -251,7 +261,8 @@ export declare abstract class CurveTimeline1 extends CurveTimeline {
251
261
  * See {@link Timeline.apply}.
252
262
  * @param current The current value for the property.
253
263
  * @param setup The setup value for the property. */
254
- getScaleValue(time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean, current: number, setup: number): number;
264
+ getScaleValue(time: number, alpha: number, from: MixFrom, add: boolean, out: boolean, current: number, setup: number): number;
265
+ private static beforeFirstKey;
255
266
  }
256
267
  /** An interface for timelines that change a bone's properties. */
257
268
  export interface BoneTimeline {
@@ -263,8 +274,8 @@ export declare function isBoneTimeline(obj: Timeline & Partial<BoneTimeline>): o
263
274
  export declare abstract class BoneTimeline1 extends CurveTimeline1 implements BoneTimeline {
264
275
  readonly boneIndex: number;
265
276
  constructor(frameCount: number, bezierCount: number, boneIndex: number, property: Property);
266
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event> | null, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
267
- protected abstract apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
277
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event> | null, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
278
+ protected abstract apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
268
279
  }
269
280
  /** The base class for timelines that change two bone properties with a curve. */
270
281
  export declare abstract class BoneTimeline2 extends CurveTimeline implements BoneTimeline {
@@ -277,58 +288,58 @@ export declare abstract class BoneTimeline2 extends CurveTimeline implements Bon
277
288
  * @param frame Between 0 and `frameCount`, inclusive.
278
289
  * @param time The frame time in seconds. */
279
290
  setFrame(frame: number, time: number, value1: number, value2: number): void;
280
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event> | null, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
281
- protected abstract apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
291
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event> | null, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
292
+ protected abstract apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
282
293
  }
283
294
  /** Changes {@link BonePose.rotation}. */
284
295
  export declare class RotateTimeline extends BoneTimeline1 {
285
296
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
286
- apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
297
+ apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
287
298
  }
288
299
  /** Changes {@link BonePose.x} and {@link BonePose.y}. */
289
300
  export declare class TranslateTimeline extends BoneTimeline2 {
290
301
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
291
- apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
302
+ apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
292
303
  }
293
304
  /** Changes {@link BonePose.x}. */
294
305
  export declare class TranslateXTimeline extends BoneTimeline1 {
295
306
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
296
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
307
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
297
308
  }
298
309
  /** Changes {@link BonePose.y}. */
299
310
  export declare class TranslateYTimeline extends BoneTimeline1 {
300
311
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
301
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
312
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
302
313
  }
303
314
  /** Changes {@link BonePose.scaleX} and {@link BonePose.scaleY}. */
304
315
  export declare class ScaleTimeline extends BoneTimeline2 {
305
316
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
306
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
317
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
307
318
  }
308
319
  /** Changes a {@link BonePose.scaleX}. */
309
320
  export declare class ScaleXTimeline extends BoneTimeline1 {
310
321
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
311
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
322
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
312
323
  }
313
324
  /** Changes a {@link BonePose.scaleY}. */
314
325
  export declare class ScaleYTimeline extends BoneTimeline1 {
315
326
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
316
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
327
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
317
328
  }
318
329
  /** Changes {@link Bone.shearX} and {@link Bone.shearY}. */
319
330
  export declare class ShearTimeline extends BoneTimeline2 {
320
331
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
321
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
332
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
322
333
  }
323
334
  /** Changes {@link Bone.shearX} and {@link Bone.shearY}. */
324
335
  export declare class ShearXTimeline extends BoneTimeline1 {
325
336
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
326
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
337
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
327
338
  }
328
339
  /** Changes {@link Bone.shearX} and {@link Bone.shearY}. */
329
340
  export declare class ShearYTimeline extends BoneTimeline1 {
330
341
  constructor(frameCount: number, bezierCount: number, boneIndex: number);
331
- protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, fromSetup: boolean, add: boolean, out: boolean): void;
342
+ protected apply1(pose: BonePose, setup: BonePose, time: number, alpha: number, from: MixFrom, add: boolean, out: boolean): void;
332
343
  }
333
344
  /** Changes {@link BonePose.inherit}. */
334
345
  export declare class InheritTimeline extends Timeline implements BoneTimeline {
@@ -339,14 +350,14 @@ export declare class InheritTimeline extends Timeline implements BoneTimeline {
339
350
  * @param frame Between 0 and `frameCount`, inclusive.
340
351
  * @param time The frame time in seconds. */
341
352
  setFrame(frame: number, time: number, inherit: Inherit): void;
342
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
353
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
343
354
  }
344
355
  /** The base class for timelines that change any number of slot properties with a curve. */
345
356
  export declare abstract class SlotCurveTimeline extends CurveTimeline implements SlotTimeline {
346
357
  readonly slotIndex: number;
347
358
  constructor(frameCount: number, bezierCount: number, slotIndex: number, ...propertyIds: string[]);
348
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
349
- protected abstract apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, fromSetup: boolean, add: boolean): void;
359
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
360
+ protected abstract apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, from: MixFrom, add: boolean): void;
350
361
  }
351
362
  /** Changes {@link SlotPose.color}. */
352
363
  export declare class RGBATimeline extends SlotCurveTimeline {
@@ -354,7 +365,7 @@ export declare class RGBATimeline extends SlotCurveTimeline {
354
365
  getFrameEntries(): number;
355
366
  /** Sets the time in seconds, red, green, blue, and alpha for the specified key frame. */
356
367
  setFrame(frame: number, time: number, r: number, g: number, b: number, a: number): void;
357
- protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, fromSetup: boolean, add: boolean): void;
368
+ protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, from: MixFrom, add: boolean): void;
358
369
  }
359
370
  /** Changes RGB for a slot's {@link SlotPose.color}. */
360
371
  export declare class RGBTimeline extends SlotCurveTimeline {
@@ -362,13 +373,13 @@ export declare class RGBTimeline extends SlotCurveTimeline {
362
373
  getFrameEntries(): number;
363
374
  /** Sets the time in seconds, red, green, blue, and alpha for the specified key frame. */
364
375
  setFrame(frame: number, time: number, r: number, g: number, b: number): void;
365
- protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, fromSetup: boolean, add: boolean): void;
376
+ protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, from: MixFrom, add: boolean): void;
366
377
  }
367
378
  /** Changes alpha for a slot's {@link SlotPose.color}. */
368
379
  export declare class AlphaTimeline extends CurveTimeline1 implements SlotTimeline {
369
380
  slotIndex: number;
370
381
  constructor(frameCount: number, bezierCount: number, slotIndex: number);
371
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
382
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
372
383
  }
373
384
  /** Changes {@link SlotPose.color} and {@link SlotPose.darkColor} for two color tinting. */
374
385
  export declare class RGBA2Timeline extends SlotCurveTimeline {
@@ -376,7 +387,7 @@ export declare class RGBA2Timeline extends SlotCurveTimeline {
376
387
  getFrameEntries(): number;
377
388
  /** Sets the time in seconds, light, and dark colors for the specified key frame. */
378
389
  setFrame(frame: number, time: number, r: number, g: number, b: number, a: number, r2: number, g2: number, b2: number): void;
379
- protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, fromSetup: boolean, add: boolean): void;
390
+ protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, from: MixFrom, add: boolean): void;
380
391
  }
381
392
  /** Changes {@link SlotPose.color} and {@link SlotPose.darkColor} for two color tinting. */
382
393
  export declare class RGB2Timeline extends SlotCurveTimeline {
@@ -384,7 +395,7 @@ export declare class RGB2Timeline extends SlotCurveTimeline {
384
395
  getFrameEntries(): number;
385
396
  /** Sets the time in seconds, light, and dark colors for the specified key frame. */
386
397
  setFrame(frame: number, time: number, r: number, g: number, b: number, r2: number, g2: number, b2: number): void;
387
- protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, fromSetup: boolean, add: boolean): void;
398
+ protected apply1(slot: Slot, pose: SlotPose, time: number, alpha: number, from: MixFrom, add: boolean): void;
388
399
  }
389
400
  /** Changes {@link SlotPose.ttachment}. */
390
401
  export declare class AttachmentTimeline extends Timeline implements SlotTimeline {
@@ -395,7 +406,7 @@ export declare class AttachmentTimeline extends Timeline implements SlotTimeline
395
406
  getFrameCount(): number;
396
407
  /** Sets the time in seconds and the attachment name for the specified key frame. */
397
408
  setFrame(frame: number, time: number, attachmentName: string | null): void;
398
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
409
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
399
410
  setAttachment(skeleton: Skeleton, pose: SlotPose, attachmentName: string | null): void;
400
411
  }
401
412
  /** Changes {@link SlotPose.deform} to deform a {@link VertexAttachment}. */
@@ -418,9 +429,9 @@ export declare class DeformTimeline extends CurveTimeline implements SlotTimelin
418
429
  * @param value2 Ignored (1 is used for a deform timeline). */
419
430
  setBezier(bezier: number, frame: number, value: number, time1: number, value1: number, cx1: number, cy1: number, cx2: number, cy2: number, time2: number, value2: number): void;
420
431
  getCurvePercent(time: number, frame: number): number;
421
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Event[] | null, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
422
- private applyToSlot;
432
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Event[] | null, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
423
433
  private applyBeforeFirst;
434
+ private applyToSlot;
424
435
  }
425
436
  /** Changes {@link Slot.getSequenceIndex} for an attachment's {@link Sequence}. */
426
437
  export declare class SequenceTimeline extends Timeline implements SlotTimeline {
@@ -440,7 +451,7 @@ export declare class SequenceTimeline extends Timeline implements SlotTimeline {
440
451
  * @param frame Between 0 and `frameCount`, inclusive.
441
452
  * @param time Seconds between frames. */
442
453
  setFrame(frame: number, time: number, mode: SequenceMode, index: number, delay: number): void;
443
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
454
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
444
455
  private setupPose;
445
456
  private applyToSlot;
446
457
  }
@@ -454,7 +465,7 @@ export declare class EventTimeline extends Timeline {
454
465
  /** Sets the time in seconds and the event for the specified key frame. */
455
466
  setFrame(frame: number, event: Event): void;
456
467
  /** Fires events for frames > `lastTime` and <= `time`. */
457
- apply(skeleton: Skeleton | null, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
468
+ apply(skeleton: Skeleton | null, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
458
469
  }
459
470
  /** Changes the {@link Skeleton.getDrawOrder}. */
460
471
  export declare class DrawOrderTimeline extends Timeline {
@@ -468,10 +479,11 @@ export declare class DrawOrderTimeline extends Timeline {
468
479
  * @param drawOrder Ordered {@link Skeleton.slots} indices, or null to use setup pose
469
480
  * draw order. */
470
481
  setFrame(frame: number, time: number, drawOrder: Array<number> | null): void;
471
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
482
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
472
483
  }
473
484
  /** Changes a subset of the {@link Skeleton.getDrawOrder | draw order}. */
474
485
  export declare class DrawOrderFolderTimeline extends Timeline {
486
+ static readonly propertyID = "15";
475
487
  private readonly slots;
476
488
  private readonly inFolder;
477
489
  private readonly drawOrders;
@@ -489,7 +501,7 @@ export declare class DrawOrderFolderTimeline extends Timeline {
489
501
  * @param time The frame time in seconds.
490
502
  * @param drawOrder Ordered {@link getSlots} indices, or null to use setup pose order. */
491
503
  setFrame(frame: number, time: number, drawOrder: Array<number> | null): void;
492
- apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
504
+ apply(skeleton: Skeleton, lastTime: number, time: number, events: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
493
505
  private setup;
494
506
  }
495
507
  export interface ConstraintTimeline {
@@ -510,7 +522,7 @@ export declare class IkConstraintTimeline extends CurveTimeline implements Const
510
522
  * @param time The frame time in seconds.
511
523
  * @param bendDirection 1 or -1. */
512
524
  setFrame(frame: number, time: number, mix: number, softness: number, bendDirection: number, compress: boolean, stretch: boolean): void;
513
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
525
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
514
526
  }
515
527
  /** Changes {@link TransformConstraintPose.mixRotate}, {@link TransformConstraintPose.mixX},
516
528
  * {@link TransformConstraintPose.mixY}, {@link TransformConstraintPose.mixScaleX},
@@ -524,7 +536,7 @@ export declare class TransformConstraintTimeline extends CurveTimeline implement
524
536
  * @param frame Between 0 and `frameCount`, inclusive.
525
537
  * @param time The frame time in seconds. */
526
538
  setFrame(frame: number, time: number, mixRotate: number, mixX: number, mixY: number, mixScaleX: number, mixScaleY: number, mixShearY: number): void;
527
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
539
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
528
540
  }
529
541
  /** The base class for timelines that change 1 constraint property with a curve. */
530
542
  export declare abstract class ConstraintTimeline1 extends CurveTimeline1 implements ConstraintTimeline {
@@ -534,12 +546,12 @@ export declare abstract class ConstraintTimeline1 extends CurveTimeline1 impleme
534
546
  /** Changes {@link PathConstraintPose.position}. */
535
547
  export declare class PathConstraintPositionTimeline extends ConstraintTimeline1 {
536
548
  constructor(frameCount: number, bezierCount: number, constraintIndex: number);
537
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
549
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
538
550
  }
539
551
  /** Changes {@link PathConstraintPose.spacing}. */
540
552
  export declare class PathConstraintSpacingTimeline extends ConstraintTimeline1 {
541
553
  constructor(frameCount: number, bezierCount: number, constraintIndex: number);
542
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
554
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
543
555
  }
544
556
  /** Changes {@link PathConstraint.mixRotate}, {@link PathConstraint.mixX}, and
545
557
  * {@link PathConstraint.mixY}. */
@@ -551,13 +563,13 @@ export declare class PathConstraintMixTimeline extends CurveTimeline implements
551
563
  * @param frame Between 0 and `frameCount`, inclusive.
552
564
  * @param time The frame time in seconds. */
553
565
  setFrame(frame: number, time: number, mixRotate: number, mixX: number, mixY: number): void;
554
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
566
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
555
567
  }
556
568
  /** The base class for most {@link PhysicsConstraint} timelines. */
557
569
  export declare abstract class PhysicsConstraintTimeline extends ConstraintTimeline1 {
558
570
  /** @param constraintIndex -1 for all physics constraints in the skeleton. */
559
571
  constructor(frameCount: number, bezierCount: number, constraintIndex: number, property: number);
560
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
572
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
561
573
  abstract get(pose: PhysicsConstraintPose): number;
562
574
  abstract set(pose: PhysicsConstraintPose, value: number): void;
563
575
  abstract global(constraint: PhysicsConstraintData): boolean;
@@ -624,15 +636,15 @@ export declare class PhysicsConstraintResetTimeline extends Timeline implements
624
636
  * @param frame Between 0 and `frameCount`, inclusive. */
625
637
  setFrame(frame: number, time: number): void;
626
638
  /** Resets the physics constraint when frames > `lastTime` and <= `time`. */
627
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
639
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
628
640
  }
629
641
  /** Changes {@link SliderPose.time}. */
630
642
  export declare class SliderTimeline extends ConstraintTimeline1 {
631
643
  constructor(frameCount: number, bezierCount: number, constraintIndex: number);
632
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
644
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
633
645
  }
634
646
  /** Changes {@link SliderPose.mix}. */
635
647
  export declare class SliderMixTimeline extends ConstraintTimeline1 {
636
648
  constructor(frameCount: number, bezierCount: number, constraintIndex: number);
637
- apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, fromSetup: boolean, add: boolean, out: boolean, appliedPose: boolean): void;
649
+ apply(skeleton: Skeleton, lastTime: number, time: number, firedEvents: Array<Event>, alpha: number, from: MixFrom, add: boolean, out: boolean, appliedPose: boolean): void;
638
650
  }