@pixodesk/svg-animator-web 1.0.15 → 1.0.16

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.
package/dist/index.d.ts CHANGED
@@ -199,7 +199,28 @@ declare const PX_ANIM_SRC_ATTR_NAME = "data-px-animation-src";
199
199
  declare const PX_ANIM_ATTR_NAME = "_px_animator";
200
200
  type StartOn = 'load' | 'mouseOver' | 'click' | 'scrollIntoView';
201
201
  type OutAction = 'continue' | 'pause' | 'reset' | 'reverse';
202
- type JsMode = "auto" | "webapi" | "frames";
202
+ /** Animation engine selection (config level). `auto` means "try `webapi`, fall
203
+ * back to `frames`"; the runtime resolves it to a concrete {@link PxAnimatorEngine}
204
+ * via `createAnimatorFromConfig`. Wire as a const-namespace + matching string
205
+ * type so call sites can use named members (`PxAnimatorMode.frames`) instead of
206
+ * bare string literals. */
207
+ declare const PxAnimatorMode: {
208
+ readonly auto: "auto";
209
+ readonly webapi: "webapi";
210
+ readonly frames: "frames";
211
+ };
212
+ type PxAnimatorMode = typeof PxAnimatorMode[keyof typeof PxAnimatorMode];
213
+ /** Resolved engine after `auto` dispatch — used downstream by code that always
214
+ * knows exactly which engine is running (e.g. `getNormalisedBindings`'s
215
+ * `engine` arg gates motion-along-path materialisation). Strictly a subset of
216
+ * {@link PxAnimatorMode} (no `auto`). */
217
+ declare const PxAnimatorEngine: {
218
+ readonly webapi: "webapi";
219
+ readonly frames: "frames";
220
+ };
221
+ type PxAnimatorEngine = typeof PxAnimatorEngine[keyof typeof PxAnimatorEngine];
222
+ /** @deprecated Backwards-compatibility alias — use {@link PxAnimatorMode} for the type. */
223
+ type JsMode = PxAnimatorMode;
203
224
  /**
204
225
  * Easing function definition.
205
226
  * Can be a named reference to a predefined easing or a cubic-bezier array [x1, y1, x2, y2].
@@ -237,7 +258,7 @@ declare const PxKeyframeSchema: PxSchema<{} & {
237
258
  };
238
259
  };
239
260
  /** A single animation keyframe defining the state at a specific point in time. */
240
- type PxKeyframe$1 = PxInfer<typeof PxKeyframeSchema>;
261
+ type PxKeyframe = PxInfer<typeof PxKeyframeSchema>;
241
262
  declare const PxLoopSchema: PxSchema<{} & {
242
263
  segmentCount?: number | undefined;
243
264
  before?: boolean | undefined;
@@ -1052,10 +1073,27 @@ declare const PxAttrValueSchema: PxSchema<string | number | ({} & {
1052
1073
  type PxAttrValue = string | number | {
1053
1074
  value: any;
1054
1075
  } | PxPropertyAnimation;
1055
- /** Per-part editor transform (`transformation` effect). All parts optional and animatable. */
1076
+ /** Fixed-length 2-number tuple. `[x, y]` for positions, `[sx, sy]` for scale, …. */
1077
+ type Vec2 = [number, number];
1078
+ /**
1079
+ * Animatable wire value: a raw static value, a `{value}` structured-static, or
1080
+ * a `{keyframes}` animation. Used by the effect schemas; the runtime schema
1081
+ * variants live below as `PxAnimatableNumberSchema` / `PxAnimatableVec2Schema`.
1082
+ *
1083
+ * Generic over the per-kf value type `T` for compile-time narrowing of the
1084
+ * static / `{value}` forms. The `{keyframes}` form uses the lib's non-generic
1085
+ * `PxKeyframe` (whose `value` is `any`) — kf values are read with care in the
1086
+ * applier (the visualModel walker / `interpParts` know per-property shapes).
1087
+ */
1088
+ type PxAnimatable<T> = T | {
1089
+ value: T;
1090
+ } | {
1091
+ keyframes: Array<PxKeyframe>;
1092
+ autoOrient?: boolean;
1093
+ };
1056
1094
  declare const PxTransformationEffectSchema: PxSchema<{} & {
1057
- translate?: number[] | ({
1058
- value: number[];
1095
+ translate?: [number, number] | ({
1096
+ value: [number, number];
1059
1097
  } & {}) | ({
1060
1098
  keyframes: ({} & {
1061
1099
  time?: number | undefined;
@@ -1092,8 +1130,8 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1092
1130
  } & {
1093
1131
  autoOrient?: boolean | undefined;
1094
1132
  }) | undefined;
1095
- scale?: number[] | ({
1096
- value: number[];
1133
+ scale?: [number, number] | ({
1134
+ value: [number, number];
1097
1135
  } & {}) | ({
1098
1136
  keyframes: ({} & {
1099
1137
  time?: number | undefined;
@@ -1111,8 +1149,8 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1111
1149
  } & {
1112
1150
  autoOrient?: boolean | undefined;
1113
1151
  }) | undefined;
1114
- skew?: number[] | ({
1115
- value: number[];
1152
+ skew?: [number, number] | ({
1153
+ value: [number, number];
1116
1154
  } & {}) | ({
1117
1155
  keyframes: ({} & {
1118
1156
  time?: number | undefined;
@@ -1130,8 +1168,8 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1130
1168
  } & {
1131
1169
  autoOrient?: boolean | undefined;
1132
1170
  }) | undefined;
1133
- origin?: number[] | ({
1134
- value: number[];
1171
+ origin?: [number, number] | ({
1172
+ value: [number, number];
1135
1173
  } & {}) | ({
1136
1174
  keyframes: ({} & {
1137
1175
  time?: number | undefined;
@@ -1151,8 +1189,8 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1151
1189
  }) | undefined;
1152
1190
  }, false> & {
1153
1191
  readonly _shape: {
1154
- translate: PxSchema<number[] | ({
1155
- value: number[];
1192
+ translate: PxSchema<[number, number] | ({
1193
+ value: [number, number];
1156
1194
  } & {}) | ({
1157
1195
  keyframes: ({} & {
1158
1196
  time?: number | undefined;
@@ -1189,8 +1227,8 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1189
1227
  } & {
1190
1228
  autoOrient?: boolean | undefined;
1191
1229
  }) | undefined, true>;
1192
- scale: PxSchema<number[] | ({
1193
- value: number[];
1230
+ scale: PxSchema<[number, number] | ({
1231
+ value: [number, number];
1194
1232
  } & {}) | ({
1195
1233
  keyframes: ({} & {
1196
1234
  time?: number | undefined;
@@ -1208,8 +1246,8 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1208
1246
  } & {
1209
1247
  autoOrient?: boolean | undefined;
1210
1248
  }) | undefined, true>;
1211
- skew: PxSchema<number[] | ({
1212
- value: number[];
1249
+ skew: PxSchema<[number, number] | ({
1250
+ value: [number, number];
1213
1251
  } & {}) | ({
1214
1252
  keyframes: ({} & {
1215
1253
  time?: number | undefined;
@@ -1227,8 +1265,8 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1227
1265
  } & {
1228
1266
  autoOrient?: boolean | undefined;
1229
1267
  }) | undefined, true>;
1230
- origin: PxSchema<number[] | ({
1231
- value: number[];
1268
+ origin: PxSchema<[number, number] | ({
1269
+ value: [number, number];
1232
1270
  } & {}) | ({
1233
1271
  keyframes: ({} & {
1234
1272
  time?: number | undefined;
@@ -1248,68 +1286,90 @@ declare const PxTransformationEffectSchema: PxSchema<{} & {
1248
1286
  }) | undefined, true>;
1249
1287
  };
1250
1288
  };
1251
- /** Per-copy repeater offsets. All static (animated repeater not yet supported). */
1289
+ type PxTransformationEffect = PxInfer<typeof PxTransformationEffectSchema>;
1252
1290
  declare const PxRepeaterEffectSchema: PxSchema<{} & {
1253
1291
  copies?: number | undefined;
1254
- translate?: number[] | undefined;
1255
- rotate?: number | undefined;
1256
- scale?: number[] | undefined;
1257
- origin?: number[] | undefined;
1292
+ translate?: [number, number] | ({
1293
+ value: [number, number];
1294
+ } & {}) | ({
1295
+ keyframes: ({} & {
1296
+ time?: number | undefined;
1297
+ t?: number | undefined;
1298
+ value?: any;
1299
+ v?: any;
1300
+ easing?: string | [number, number, number, number] | undefined;
1301
+ e?: string | [number, number, number, number] | undefined;
1302
+ tangentOut?: [number, number] | undefined;
1303
+ to?: [number, number] | undefined;
1304
+ tangentIn?: [number, number] | undefined;
1305
+ ti?: [number, number] | undefined;
1306
+ selected?: boolean | undefined;
1307
+ })[];
1308
+ } & {
1309
+ autoOrient?: boolean | undefined;
1310
+ }) | undefined;
1311
+ rotate?: number | ({
1312
+ value: number;
1313
+ } & {}) | ({
1314
+ keyframes: ({} & {
1315
+ time?: number | undefined;
1316
+ t?: number | undefined;
1317
+ value?: any;
1318
+ v?: any;
1319
+ easing?: string | [number, number, number, number] | undefined;
1320
+ e?: string | [number, number, number, number] | undefined;
1321
+ tangentOut?: [number, number] | undefined;
1322
+ to?: [number, number] | undefined;
1323
+ tangentIn?: [number, number] | undefined;
1324
+ ti?: [number, number] | undefined;
1325
+ selected?: boolean | undefined;
1326
+ })[];
1327
+ } & {
1328
+ autoOrient?: boolean | undefined;
1329
+ }) | undefined;
1330
+ scale?: [number, number] | ({
1331
+ value: [number, number];
1332
+ } & {}) | ({
1333
+ keyframes: ({} & {
1334
+ time?: number | undefined;
1335
+ t?: number | undefined;
1336
+ value?: any;
1337
+ v?: any;
1338
+ easing?: string | [number, number, number, number] | undefined;
1339
+ e?: string | [number, number, number, number] | undefined;
1340
+ tangentOut?: [number, number] | undefined;
1341
+ to?: [number, number] | undefined;
1342
+ tangentIn?: [number, number] | undefined;
1343
+ ti?: [number, number] | undefined;
1344
+ selected?: boolean | undefined;
1345
+ })[];
1346
+ } & {
1347
+ autoOrient?: boolean | undefined;
1348
+ }) | undefined;
1349
+ origin?: [number, number] | ({
1350
+ value: [number, number];
1351
+ } & {}) | ({
1352
+ keyframes: ({} & {
1353
+ time?: number | undefined;
1354
+ t?: number | undefined;
1355
+ value?: any;
1356
+ v?: any;
1357
+ easing?: string | [number, number, number, number] | undefined;
1358
+ e?: string | [number, number, number, number] | undefined;
1359
+ tangentOut?: [number, number] | undefined;
1360
+ to?: [number, number] | undefined;
1361
+ tangentIn?: [number, number] | undefined;
1362
+ ti?: [number, number] | undefined;
1363
+ selected?: boolean | undefined;
1364
+ })[];
1365
+ } & {
1366
+ autoOrient?: boolean | undefined;
1367
+ }) | undefined;
1258
1368
  }, false> & {
1259
1369
  readonly _shape: {
1260
1370
  copies: PxSchema<number | undefined, true>;
1261
- translate: PxSchema<number[] | undefined, true>;
1262
- rotate: PxSchema<number | undefined, true>;
1263
- scale: PxSchema<number[] | undefined, true>;
1264
- origin: PxSchema<number[] | undefined, true>;
1265
- };
1266
- };
1267
- /** Mask source ref + standard `<mask>` attributes. */
1268
- declare const PxMaskedByEffectSchema: PxSchema<{} & {
1269
- href?: string | undefined;
1270
- maskType?: string | undefined;
1271
- maskUnits?: string | undefined;
1272
- maskContentUnits?: string | undefined;
1273
- }, false> & {
1274
- readonly _shape: {
1275
- href: PxSchema<string | undefined, true>;
1276
- maskType: PxSchema<string | undefined, true>;
1277
- maskUnits: PxSchema<string | undefined, true>;
1278
- maskContentUnits: PxSchema<string | undefined, true>;
1279
- };
1280
- };
1281
- /** Trim-path effect payload — opaque to the player materialiser; lives on `meta`. */
1282
- declare const PxTrimPathEffectSchema: PxSchema<any, false>;
1283
- /** `<use>` retime: `baseId` = source; `start`/`timeCrop` in ms. */
1284
- declare const PxRetimeEffectSchema: PxSchema<{} & {
1285
- baseId?: string | undefined;
1286
- start?: number | undefined;
1287
- stretch?: number | undefined;
1288
- timeCrop?: number[] | undefined;
1289
- }, false> & {
1290
- readonly _shape: {
1291
- baseId: PxSchema<string | undefined, true>;
1292
- start: PxSchema<number | undefined, true>;
1293
- stretch: PxSchema<number | undefined, true>;
1294
- timeCrop: PxSchema<number[] | undefined, true>;
1295
- };
1296
- };
1297
- /** `<use>` ref: `baseId` = source; `type: 'content'` = exclude object-translate. */
1298
- declare const PxRefEffectSchema: PxSchema<{} & {
1299
- baseId?: string | undefined;
1300
- type?: string | undefined;
1301
- }, false> & {
1302
- readonly _shape: {
1303
- baseId: PxSchema<string | undefined, true>;
1304
- type: PxSchema<string | undefined, true>;
1305
- };
1306
- };
1307
- /** The full `node.effects` bucket. Closed — each known effect is declared
1308
- * (strict-mode validation flags an unknown effect key as a wire-format drift). */
1309
- declare const PxEffectsSchema: PxSchema<{} & {
1310
- transformation?: ({} & {
1311
- translate?: number[] | ({
1312
- value: number[];
1371
+ translate: PxSchema<[number, number] | ({
1372
+ value: [number, number];
1313
1373
  } & {}) | ({
1314
1374
  keyframes: ({} & {
1315
1375
  time?: number | undefined;
@@ -1326,8 +1386,8 @@ declare const PxEffectsSchema: PxSchema<{} & {
1326
1386
  })[];
1327
1387
  } & {
1328
1388
  autoOrient?: boolean | undefined;
1329
- }) | undefined;
1330
- rotate?: number | ({
1389
+ }) | undefined, true>;
1390
+ rotate: PxSchema<number | ({
1331
1391
  value: number;
1332
1392
  } & {}) | ({
1333
1393
  keyframes: ({} & {
@@ -1345,9 +1405,9 @@ declare const PxEffectsSchema: PxSchema<{} & {
1345
1405
  })[];
1346
1406
  } & {
1347
1407
  autoOrient?: boolean | undefined;
1348
- }) | undefined;
1349
- scale?: number[] | ({
1350
- value: number[];
1408
+ }) | undefined, true>;
1409
+ scale: PxSchema<[number, number] | ({
1410
+ value: [number, number];
1351
1411
  } & {}) | ({
1352
1412
  keyframes: ({} & {
1353
1413
  time?: number | undefined;
@@ -1364,9 +1424,9 @@ declare const PxEffectsSchema: PxSchema<{} & {
1364
1424
  })[];
1365
1425
  } & {
1366
1426
  autoOrient?: boolean | undefined;
1367
- }) | undefined;
1368
- skew?: number[] | ({
1369
- value: number[];
1427
+ }) | undefined, true>;
1428
+ origin: PxSchema<[number, number] | ({
1429
+ value: [number, number];
1370
1430
  } & {}) | ({
1371
1431
  keyframes: ({} & {
1372
1432
  time?: number | undefined;
@@ -1383,9 +1443,68 @@ declare const PxEffectsSchema: PxSchema<{} & {
1383
1443
  })[];
1384
1444
  } & {
1385
1445
  autoOrient?: boolean | undefined;
1386
- }) | undefined;
1387
- origin?: number[] | ({
1388
- value: number[];
1446
+ }) | undefined, true>;
1447
+ };
1448
+ };
1449
+ type PxRepeaterEffect = PxInfer<typeof PxRepeaterEffectSchema>;
1450
+ declare const PxMaskedByEffectSchema: PxSchema<{} & {
1451
+ href?: string | undefined;
1452
+ maskType?: string | undefined;
1453
+ maskUnits?: string | undefined;
1454
+ maskContentUnits?: string | undefined;
1455
+ }, false> & {
1456
+ readonly _shape: {
1457
+ href: PxSchema<string | undefined, true>;
1458
+ maskType: PxSchema<string | undefined, true>;
1459
+ maskUnits: PxSchema<string | undefined, true>;
1460
+ maskContentUnits: PxSchema<string | undefined, true>;
1461
+ };
1462
+ };
1463
+ type PxMaskedByEffect = PxInfer<typeof PxMaskedByEffectSchema>;
1464
+ declare const PxTrimPathEffectSchema: PxSchema<{} & {
1465
+ offset?: number | ({
1466
+ value: number;
1467
+ } & {}) | ({
1468
+ keyframes: ({} & {
1469
+ time?: number | undefined;
1470
+ t?: number | undefined;
1471
+ value?: any;
1472
+ v?: any;
1473
+ easing?: string | [number, number, number, number] | undefined;
1474
+ e?: string | [number, number, number, number] | undefined;
1475
+ tangentOut?: [number, number] | undefined;
1476
+ to?: [number, number] | undefined;
1477
+ tangentIn?: [number, number] | undefined;
1478
+ ti?: [number, number] | undefined;
1479
+ selected?: boolean | undefined;
1480
+ })[];
1481
+ } & {
1482
+ autoOrient?: boolean | undefined;
1483
+ }) | undefined;
1484
+ range?: [number, number] | ({
1485
+ value: [number, number];
1486
+ } & {}) | ({
1487
+ keyframes: ({} & {
1488
+ time?: number | undefined;
1489
+ t?: number | undefined;
1490
+ value?: any;
1491
+ v?: any;
1492
+ easing?: string | [number, number, number, number] | undefined;
1493
+ e?: string | [number, number, number, number] | undefined;
1494
+ tangentOut?: [number, number] | undefined;
1495
+ to?: [number, number] | undefined;
1496
+ tangentIn?: [number, number] | undefined;
1497
+ ti?: [number, number] | undefined;
1498
+ selected?: boolean | undefined;
1499
+ })[];
1500
+ } & {
1501
+ autoOrient?: boolean | undefined;
1502
+ }) | undefined;
1503
+ trimAllAsOne?: boolean | undefined;
1504
+ }, false> & {
1505
+ readonly _shape: {
1506
+ offset: PxSchema<number | ({
1507
+ value: number;
1389
1508
  } & {}) | ({
1390
1509
  keyframes: ({} & {
1391
1510
  time?: number | undefined;
@@ -1402,64 +1521,814 @@ declare const PxEffectsSchema: PxSchema<{} & {
1402
1521
  })[];
1403
1522
  } & {
1404
1523
  autoOrient?: boolean | undefined;
1405
- }) | undefined;
1406
- }) | undefined;
1407
- repeater?: ({} & {
1408
- copies?: number | undefined;
1409
- translate?: number[] | undefined;
1410
- rotate?: number | undefined;
1411
- scale?: number[] | undefined;
1412
- origin?: number[] | undefined;
1413
- }) | undefined;
1414
- maskedBy?: ({} & {
1415
- href?: string | undefined;
1416
- maskType?: string | undefined;
1417
- maskUnits?: string | undefined;
1418
- maskContentUnits?: string | undefined;
1419
- }) | undefined;
1420
- trimPath?: any;
1421
- retime?: ({} & {
1422
- baseId?: string | undefined;
1423
- start?: number | undefined;
1424
- stretch?: number | undefined;
1425
- timeCrop?: number[] | undefined;
1426
- }) | undefined;
1427
- isCombinedShape?: boolean | undefined;
1428
- ref?: ({} & {
1429
- baseId?: string | undefined;
1430
- type?: string | undefined;
1431
- }) | undefined;
1524
+ }) | undefined, true>;
1525
+ range: PxSchema<[number, number] | ({
1526
+ value: [number, number];
1527
+ } & {}) | ({
1528
+ keyframes: ({} & {
1529
+ time?: number | undefined;
1530
+ t?: number | undefined;
1531
+ value?: any;
1532
+ v?: any;
1533
+ easing?: string | [number, number, number, number] | undefined;
1534
+ e?: string | [number, number, number, number] | undefined;
1535
+ tangentOut?: [number, number] | undefined;
1536
+ to?: [number, number] | undefined;
1537
+ tangentIn?: [number, number] | undefined;
1538
+ ti?: [number, number] | undefined;
1539
+ selected?: boolean | undefined;
1540
+ })[];
1541
+ } & {
1542
+ autoOrient?: boolean | undefined;
1543
+ }) | undefined, true>;
1544
+ trimAllAsOne: PxSchema<boolean | undefined, true>;
1545
+ };
1546
+ };
1547
+ type PxTrimPathEffect = PxInfer<typeof PxTrimPathEffectSchema>;
1548
+ declare const PxRetimeEffectSchema: PxSchema<{} & {
1549
+ baseId?: string | undefined;
1550
+ start?: number | undefined;
1551
+ stretch?: number | undefined;
1552
+ timeCrop?: [number, number] | undefined;
1432
1553
  }, false> & {
1433
1554
  readonly _shape: {
1434
- transformation: PxSchema<({} & {
1435
- translate?: number[] | ({
1436
- value: number[];
1437
- } & {}) | ({
1438
- keyframes: ({} & {
1439
- time?: number | undefined;
1440
- t?: number | undefined;
1441
- value?: any;
1442
- v?: any;
1443
- easing?: string | [number, number, number, number] | undefined;
1444
- e?: string | [number, number, number, number] | undefined;
1445
- tangentOut?: [number, number] | undefined;
1446
- to?: [number, number] | undefined;
1447
- tangentIn?: [number, number] | undefined;
1448
- ti?: [number, number] | undefined;
1449
- selected?: boolean | undefined;
1450
- })[];
1451
- } & {
1452
- autoOrient?: boolean | undefined;
1453
- }) | undefined;
1454
- rotate?: number | ({
1455
- value: number;
1456
- } & {}) | ({
1457
- keyframes: ({} & {
1458
- time?: number | undefined;
1459
- t?: number | undefined;
1460
- value?: any;
1461
- v?: any;
1462
- easing?: string | [number, number, number, number] | undefined;
1555
+ baseId: PxSchema<string | undefined, true>;
1556
+ start: PxSchema<number | undefined, true>;
1557
+ stretch: PxSchema<number | undefined, true>;
1558
+ timeCrop: PxSchema<[number, number] | undefined, true>;
1559
+ };
1560
+ };
1561
+ type PxRetimeEffect = PxInfer<typeof PxRetimeEffectSchema>;
1562
+ declare const PxRefEffectSchema: PxSchema<{} & {
1563
+ baseId?: string | undefined;
1564
+ type?: string | undefined;
1565
+ }, false> & {
1566
+ readonly _shape: {
1567
+ baseId: PxSchema<string | undefined, true>;
1568
+ type: PxSchema<string | undefined, true>;
1569
+ };
1570
+ };
1571
+ type PxRefEffect = PxInfer<typeof PxRefEffectSchema>;
1572
+ /** Loose enums for `gradientUnits` / `spreadMethod` — kept on the wire as
1573
+ * plain strings (matches the rest of the schema's loose-enum stance) but
1574
+ * collected here so call sites use named constants instead of bare literals. */
1575
+ declare const PxGradientUnits: {
1576
+ readonly userSpaceOnUse: "userSpaceOnUse";
1577
+ readonly objectBoundingBox: "objectBoundingBox";
1578
+ };
1579
+ type PxGradientUnits = typeof PxGradientUnits[keyof typeof PxGradientUnits];
1580
+ declare const PxGradientSpreadMethod: {
1581
+ readonly pad: "pad";
1582
+ readonly reflect: "reflect";
1583
+ readonly repeat: "repeat";
1584
+ };
1585
+ type PxGradientSpreadMethod = typeof PxGradientSpreadMethod[keyof typeof PxGradientSpreadMethod];
1586
+ declare const PxGradientType: {
1587
+ readonly linear: "linear";
1588
+ readonly radial: "radial";
1589
+ };
1590
+ type PxGradientType = typeof PxGradientType[keyof typeof PxGradientType];
1591
+ declare const PxGradientStopSchema: PxSchema<{
1592
+ offset: number;
1593
+ color: string;
1594
+ } & {}, false> & {
1595
+ readonly _shape: {
1596
+ offset: PxSchema<number, false>;
1597
+ color: PxSchema<string, false>;
1598
+ };
1599
+ };
1600
+ type PxGradientStop = PxInfer<typeof PxGradientStopSchema>;
1601
+ declare const PxFillGradientEffectSchema: PxSchema<{
1602
+ type: "linear" | "radial";
1603
+ } & {
1604
+ p1?: [number, number] | undefined;
1605
+ p2?: [number, number] | undefined;
1606
+ c?: [number, number] | undefined;
1607
+ r?: number | undefined;
1608
+ fp?: [number, number] | undefined;
1609
+ stops?: ({
1610
+ offset: number;
1611
+ color: string;
1612
+ } & {})[] | ({
1613
+ value: ({
1614
+ offset: number;
1615
+ color: string;
1616
+ } & {})[];
1617
+ } & {}) | ({
1618
+ keyframes: ({} & {
1619
+ time?: number | undefined;
1620
+ t?: number | undefined;
1621
+ value?: any;
1622
+ v?: any;
1623
+ easing?: string | [number, number, number, number] | undefined;
1624
+ e?: string | [number, number, number, number] | undefined;
1625
+ tangentOut?: [number, number] | undefined;
1626
+ to?: [number, number] | undefined;
1627
+ tangentIn?: [number, number] | undefined;
1628
+ ti?: [number, number] | undefined;
1629
+ selected?: boolean | undefined;
1630
+ })[];
1631
+ } & {}) | undefined;
1632
+ gradientUnits?: string | undefined;
1633
+ spreadMethod?: string | undefined;
1634
+ gradientTransform?: string | undefined;
1635
+ }, false> & {
1636
+ readonly _shape: {
1637
+ type: PxSchema<"linear" | "radial", false>;
1638
+ p1: PxSchema<[number, number] | undefined, true>;
1639
+ p2: PxSchema<[number, number] | undefined, true>;
1640
+ c: PxSchema<[number, number] | undefined, true>;
1641
+ r: PxSchema<number | undefined, true>;
1642
+ fp: PxSchema<[number, number] | undefined, true>;
1643
+ stops: PxSchema<({
1644
+ offset: number;
1645
+ color: string;
1646
+ } & {})[] | ({
1647
+ value: ({
1648
+ offset: number;
1649
+ color: string;
1650
+ } & {})[];
1651
+ } & {}) | ({
1652
+ keyframes: ({} & {
1653
+ time?: number | undefined;
1654
+ t?: number | undefined;
1655
+ value?: any;
1656
+ v?: any;
1657
+ easing?: string | [number, number, number, number] | undefined;
1658
+ e?: string | [number, number, number, number] | undefined;
1659
+ tangentOut?: [number, number] | undefined;
1660
+ to?: [number, number] | undefined;
1661
+ tangentIn?: [number, number] | undefined;
1662
+ ti?: [number, number] | undefined;
1663
+ selected?: boolean | undefined;
1664
+ })[];
1665
+ } & {}) | undefined, true>;
1666
+ gradientUnits: PxSchema<string | undefined, true>;
1667
+ spreadMethod: PxSchema<string | undefined, true>;
1668
+ gradientTransform: PxSchema<string | undefined, true>;
1669
+ };
1670
+ };
1671
+ type PxFillGradientEffect = PxInfer<typeof PxFillGradientEffectSchema>;
1672
+ declare const PxStrokeGradientEffectSchema: PxSchema<{
1673
+ type: "linear" | "radial";
1674
+ } & {
1675
+ p1?: [number, number] | undefined;
1676
+ p2?: [number, number] | undefined;
1677
+ c?: [number, number] | undefined;
1678
+ r?: number | undefined;
1679
+ fp?: [number, number] | undefined;
1680
+ stops?: ({
1681
+ offset: number;
1682
+ color: string;
1683
+ } & {})[] | ({
1684
+ value: ({
1685
+ offset: number;
1686
+ color: string;
1687
+ } & {})[];
1688
+ } & {}) | ({
1689
+ keyframes: ({} & {
1690
+ time?: number | undefined;
1691
+ t?: number | undefined;
1692
+ value?: any;
1693
+ v?: any;
1694
+ easing?: string | [number, number, number, number] | undefined;
1695
+ e?: string | [number, number, number, number] | undefined;
1696
+ tangentOut?: [number, number] | undefined;
1697
+ to?: [number, number] | undefined;
1698
+ tangentIn?: [number, number] | undefined;
1699
+ ti?: [number, number] | undefined;
1700
+ selected?: boolean | undefined;
1701
+ })[];
1702
+ } & {}) | undefined;
1703
+ gradientUnits?: string | undefined;
1704
+ spreadMethod?: string | undefined;
1705
+ gradientTransform?: string | undefined;
1706
+ }, false> & {
1707
+ readonly _shape: {
1708
+ type: PxSchema<"linear" | "radial", false>;
1709
+ p1: PxSchema<[number, number] | undefined, true>;
1710
+ p2: PxSchema<[number, number] | undefined, true>;
1711
+ c: PxSchema<[number, number] | undefined, true>;
1712
+ r: PxSchema<number | undefined, true>;
1713
+ fp: PxSchema<[number, number] | undefined, true>;
1714
+ stops: PxSchema<({
1715
+ offset: number;
1716
+ color: string;
1717
+ } & {})[] | ({
1718
+ value: ({
1719
+ offset: number;
1720
+ color: string;
1721
+ } & {})[];
1722
+ } & {}) | ({
1723
+ keyframes: ({} & {
1724
+ time?: number | undefined;
1725
+ t?: number | undefined;
1726
+ value?: any;
1727
+ v?: any;
1728
+ easing?: string | [number, number, number, number] | undefined;
1729
+ e?: string | [number, number, number, number] | undefined;
1730
+ tangentOut?: [number, number] | undefined;
1731
+ to?: [number, number] | undefined;
1732
+ tangentIn?: [number, number] | undefined;
1733
+ ti?: [number, number] | undefined;
1734
+ selected?: boolean | undefined;
1735
+ })[];
1736
+ } & {}) | undefined, true>;
1737
+ gradientUnits: PxSchema<string | undefined, true>;
1738
+ spreadMethod: PxSchema<string | undefined, true>;
1739
+ gradientTransform: PxSchema<string | undefined, true>;
1740
+ };
1741
+ };
1742
+ type PxStrokeGradientEffect = PxFillGradientEffect;
1743
+ declare const PxTextAlongPathEffectSchema: PxSchema<{
1744
+ href: string;
1745
+ } & {
1746
+ lengthAdjust?: string | undefined;
1747
+ method?: string | undefined;
1748
+ spacing?: string | undefined;
1749
+ startOffset?: number | ({
1750
+ value: number;
1751
+ } & {}) | ({
1752
+ keyframes: ({} & {
1753
+ time?: number | undefined;
1754
+ t?: number | undefined;
1755
+ value?: any;
1756
+ v?: any;
1757
+ easing?: string | [number, number, number, number] | undefined;
1758
+ e?: string | [number, number, number, number] | undefined;
1759
+ tangentOut?: [number, number] | undefined;
1760
+ to?: [number, number] | undefined;
1761
+ tangentIn?: [number, number] | undefined;
1762
+ ti?: [number, number] | undefined;
1763
+ selected?: boolean | undefined;
1764
+ })[];
1765
+ } & {
1766
+ autoOrient?: boolean | undefined;
1767
+ }) | undefined;
1768
+ textLength?: number | ({
1769
+ value: number;
1770
+ } & {}) | ({
1771
+ keyframes: ({} & {
1772
+ time?: number | undefined;
1773
+ t?: number | undefined;
1774
+ value?: any;
1775
+ v?: any;
1776
+ easing?: string | [number, number, number, number] | undefined;
1777
+ e?: string | [number, number, number, number] | undefined;
1778
+ tangentOut?: [number, number] | undefined;
1779
+ to?: [number, number] | undefined;
1780
+ tangentIn?: [number, number] | undefined;
1781
+ ti?: [number, number] | undefined;
1782
+ selected?: boolean | undefined;
1783
+ })[];
1784
+ } & {
1785
+ autoOrient?: boolean | undefined;
1786
+ }) | undefined;
1787
+ }, false> & {
1788
+ readonly _shape: {
1789
+ href: PxSchema<string, false>;
1790
+ lengthAdjust: PxSchema<string | undefined, true>;
1791
+ method: PxSchema<string | undefined, true>;
1792
+ spacing: PxSchema<string | undefined, true>;
1793
+ startOffset: PxSchema<number | ({
1794
+ value: number;
1795
+ } & {}) | ({
1796
+ keyframes: ({} & {
1797
+ time?: number | undefined;
1798
+ t?: number | undefined;
1799
+ value?: any;
1800
+ v?: any;
1801
+ easing?: string | [number, number, number, number] | undefined;
1802
+ e?: string | [number, number, number, number] | undefined;
1803
+ tangentOut?: [number, number] | undefined;
1804
+ to?: [number, number] | undefined;
1805
+ tangentIn?: [number, number] | undefined;
1806
+ ti?: [number, number] | undefined;
1807
+ selected?: boolean | undefined;
1808
+ })[];
1809
+ } & {
1810
+ autoOrient?: boolean | undefined;
1811
+ }) | undefined, true>;
1812
+ textLength: PxSchema<number | ({
1813
+ value: number;
1814
+ } & {}) | ({
1815
+ keyframes: ({} & {
1816
+ time?: number | undefined;
1817
+ t?: number | undefined;
1818
+ value?: any;
1819
+ v?: any;
1820
+ easing?: string | [number, number, number, number] | undefined;
1821
+ e?: string | [number, number, number, number] | undefined;
1822
+ tangentOut?: [number, number] | undefined;
1823
+ to?: [number, number] | undefined;
1824
+ tangentIn?: [number, number] | undefined;
1825
+ ti?: [number, number] | undefined;
1826
+ selected?: boolean | undefined;
1827
+ })[];
1828
+ } & {
1829
+ autoOrient?: boolean | undefined;
1830
+ }) | undefined, true>;
1831
+ };
1832
+ };
1833
+ type PxTextAlongPathEffect = PxInfer<typeof PxTextAlongPathEffectSchema>;
1834
+ declare const PxEffectsSchema: PxSchema<{} & {
1835
+ transformation?: ({} & {
1836
+ translate?: [number, number] | ({
1837
+ value: [number, number];
1838
+ } & {}) | ({
1839
+ keyframes: ({} & {
1840
+ time?: number | undefined;
1841
+ t?: number | undefined;
1842
+ value?: any;
1843
+ v?: any;
1844
+ easing?: string | [number, number, number, number] | undefined;
1845
+ e?: string | [number, number, number, number] | undefined;
1846
+ tangentOut?: [number, number] | undefined;
1847
+ to?: [number, number] | undefined;
1848
+ tangentIn?: [number, number] | undefined;
1849
+ ti?: [number, number] | undefined;
1850
+ selected?: boolean | undefined;
1851
+ })[];
1852
+ } & {
1853
+ autoOrient?: boolean | undefined;
1854
+ }) | undefined;
1855
+ rotate?: number | ({
1856
+ value: number;
1857
+ } & {}) | ({
1858
+ keyframes: ({} & {
1859
+ time?: number | undefined;
1860
+ t?: number | undefined;
1861
+ value?: any;
1862
+ v?: any;
1863
+ easing?: string | [number, number, number, number] | undefined;
1864
+ e?: string | [number, number, number, number] | undefined;
1865
+ tangentOut?: [number, number] | undefined;
1866
+ to?: [number, number] | undefined;
1867
+ tangentIn?: [number, number] | undefined;
1868
+ ti?: [number, number] | undefined;
1869
+ selected?: boolean | undefined;
1870
+ })[];
1871
+ } & {
1872
+ autoOrient?: boolean | undefined;
1873
+ }) | undefined;
1874
+ scale?: [number, number] | ({
1875
+ value: [number, number];
1876
+ } & {}) | ({
1877
+ keyframes: ({} & {
1878
+ time?: number | undefined;
1879
+ t?: number | undefined;
1880
+ value?: any;
1881
+ v?: any;
1882
+ easing?: string | [number, number, number, number] | undefined;
1883
+ e?: string | [number, number, number, number] | undefined;
1884
+ tangentOut?: [number, number] | undefined;
1885
+ to?: [number, number] | undefined;
1886
+ tangentIn?: [number, number] | undefined;
1887
+ ti?: [number, number] | undefined;
1888
+ selected?: boolean | undefined;
1889
+ })[];
1890
+ } & {
1891
+ autoOrient?: boolean | undefined;
1892
+ }) | undefined;
1893
+ skew?: [number, number] | ({
1894
+ value: [number, number];
1895
+ } & {}) | ({
1896
+ keyframes: ({} & {
1897
+ time?: number | undefined;
1898
+ t?: number | undefined;
1899
+ value?: any;
1900
+ v?: any;
1901
+ easing?: string | [number, number, number, number] | undefined;
1902
+ e?: string | [number, number, number, number] | undefined;
1903
+ tangentOut?: [number, number] | undefined;
1904
+ to?: [number, number] | undefined;
1905
+ tangentIn?: [number, number] | undefined;
1906
+ ti?: [number, number] | undefined;
1907
+ selected?: boolean | undefined;
1908
+ })[];
1909
+ } & {
1910
+ autoOrient?: boolean | undefined;
1911
+ }) | undefined;
1912
+ origin?: [number, number] | ({
1913
+ value: [number, number];
1914
+ } & {}) | ({
1915
+ keyframes: ({} & {
1916
+ time?: number | undefined;
1917
+ t?: number | undefined;
1918
+ value?: any;
1919
+ v?: any;
1920
+ easing?: string | [number, number, number, number] | undefined;
1921
+ e?: string | [number, number, number, number] | undefined;
1922
+ tangentOut?: [number, number] | undefined;
1923
+ to?: [number, number] | undefined;
1924
+ tangentIn?: [number, number] | undefined;
1925
+ ti?: [number, number] | undefined;
1926
+ selected?: boolean | undefined;
1927
+ })[];
1928
+ } & {
1929
+ autoOrient?: boolean | undefined;
1930
+ }) | undefined;
1931
+ }) | undefined;
1932
+ repeater?: ({} & {
1933
+ copies?: number | undefined;
1934
+ translate?: [number, number] | ({
1935
+ value: [number, number];
1936
+ } & {}) | ({
1937
+ keyframes: ({} & {
1938
+ time?: number | undefined;
1939
+ t?: number | undefined;
1940
+ value?: any;
1941
+ v?: any;
1942
+ easing?: string | [number, number, number, number] | undefined;
1943
+ e?: string | [number, number, number, number] | undefined;
1944
+ tangentOut?: [number, number] | undefined;
1945
+ to?: [number, number] | undefined;
1946
+ tangentIn?: [number, number] | undefined;
1947
+ ti?: [number, number] | undefined;
1948
+ selected?: boolean | undefined;
1949
+ })[];
1950
+ } & {
1951
+ autoOrient?: boolean | undefined;
1952
+ }) | undefined;
1953
+ rotate?: number | ({
1954
+ value: number;
1955
+ } & {}) | ({
1956
+ keyframes: ({} & {
1957
+ time?: number | undefined;
1958
+ t?: number | undefined;
1959
+ value?: any;
1960
+ v?: any;
1961
+ easing?: string | [number, number, number, number] | undefined;
1962
+ e?: string | [number, number, number, number] | undefined;
1963
+ tangentOut?: [number, number] | undefined;
1964
+ to?: [number, number] | undefined;
1965
+ tangentIn?: [number, number] | undefined;
1966
+ ti?: [number, number] | undefined;
1967
+ selected?: boolean | undefined;
1968
+ })[];
1969
+ } & {
1970
+ autoOrient?: boolean | undefined;
1971
+ }) | undefined;
1972
+ scale?: [number, number] | ({
1973
+ value: [number, number];
1974
+ } & {}) | ({
1975
+ keyframes: ({} & {
1976
+ time?: number | undefined;
1977
+ t?: number | undefined;
1978
+ value?: any;
1979
+ v?: any;
1980
+ easing?: string | [number, number, number, number] | undefined;
1981
+ e?: string | [number, number, number, number] | undefined;
1982
+ tangentOut?: [number, number] | undefined;
1983
+ to?: [number, number] | undefined;
1984
+ tangentIn?: [number, number] | undefined;
1985
+ ti?: [number, number] | undefined;
1986
+ selected?: boolean | undefined;
1987
+ })[];
1988
+ } & {
1989
+ autoOrient?: boolean | undefined;
1990
+ }) | undefined;
1991
+ origin?: [number, number] | ({
1992
+ value: [number, number];
1993
+ } & {}) | ({
1994
+ keyframes: ({} & {
1995
+ time?: number | undefined;
1996
+ t?: number | undefined;
1997
+ value?: any;
1998
+ v?: any;
1999
+ easing?: string | [number, number, number, number] | undefined;
2000
+ e?: string | [number, number, number, number] | undefined;
2001
+ tangentOut?: [number, number] | undefined;
2002
+ to?: [number, number] | undefined;
2003
+ tangentIn?: [number, number] | undefined;
2004
+ ti?: [number, number] | undefined;
2005
+ selected?: boolean | undefined;
2006
+ })[];
2007
+ } & {
2008
+ autoOrient?: boolean | undefined;
2009
+ }) | undefined;
2010
+ }) | undefined;
2011
+ maskedBy?: ({} & {
2012
+ href?: string | undefined;
2013
+ maskType?: string | undefined;
2014
+ maskUnits?: string | undefined;
2015
+ maskContentUnits?: string | undefined;
2016
+ }) | undefined;
2017
+ trimPath?: ({} & {
2018
+ offset?: number | ({
2019
+ value: number;
2020
+ } & {}) | ({
2021
+ keyframes: ({} & {
2022
+ time?: number | undefined;
2023
+ t?: number | undefined;
2024
+ value?: any;
2025
+ v?: any;
2026
+ easing?: string | [number, number, number, number] | undefined;
2027
+ e?: string | [number, number, number, number] | undefined;
2028
+ tangentOut?: [number, number] | undefined;
2029
+ to?: [number, number] | undefined;
2030
+ tangentIn?: [number, number] | undefined;
2031
+ ti?: [number, number] | undefined;
2032
+ selected?: boolean | undefined;
2033
+ })[];
2034
+ } & {
2035
+ autoOrient?: boolean | undefined;
2036
+ }) | undefined;
2037
+ range?: [number, number] | ({
2038
+ value: [number, number];
2039
+ } & {}) | ({
2040
+ keyframes: ({} & {
2041
+ time?: number | undefined;
2042
+ t?: number | undefined;
2043
+ value?: any;
2044
+ v?: any;
2045
+ easing?: string | [number, number, number, number] | undefined;
2046
+ e?: string | [number, number, number, number] | undefined;
2047
+ tangentOut?: [number, number] | undefined;
2048
+ to?: [number, number] | undefined;
2049
+ tangentIn?: [number, number] | undefined;
2050
+ ti?: [number, number] | undefined;
2051
+ selected?: boolean | undefined;
2052
+ })[];
2053
+ } & {
2054
+ autoOrient?: boolean | undefined;
2055
+ }) | undefined;
2056
+ trimAllAsOne?: boolean | undefined;
2057
+ }) | undefined;
2058
+ retime?: ({} & {
2059
+ baseId?: string | undefined;
2060
+ start?: number | undefined;
2061
+ stretch?: number | undefined;
2062
+ timeCrop?: [number, number] | undefined;
2063
+ }) | undefined;
2064
+ isCombinedShape?: boolean | undefined;
2065
+ ref?: ({} & {
2066
+ baseId?: string | undefined;
2067
+ type?: string | undefined;
2068
+ }) | undefined;
2069
+ fillGradient?: ({
2070
+ type: "linear" | "radial";
2071
+ } & {
2072
+ p1?: [number, number] | undefined;
2073
+ p2?: [number, number] | undefined;
2074
+ c?: [number, number] | undefined;
2075
+ r?: number | undefined;
2076
+ fp?: [number, number] | undefined;
2077
+ stops?: ({
2078
+ offset: number;
2079
+ color: string;
2080
+ } & {})[] | ({
2081
+ value: ({
2082
+ offset: number;
2083
+ color: string;
2084
+ } & {})[];
2085
+ } & {}) | ({
2086
+ keyframes: ({} & {
2087
+ time?: number | undefined;
2088
+ t?: number | undefined;
2089
+ value?: any;
2090
+ v?: any;
2091
+ easing?: string | [number, number, number, number] | undefined;
2092
+ e?: string | [number, number, number, number] | undefined;
2093
+ tangentOut?: [number, number] | undefined;
2094
+ to?: [number, number] | undefined;
2095
+ tangentIn?: [number, number] | undefined;
2096
+ ti?: [number, number] | undefined;
2097
+ selected?: boolean | undefined;
2098
+ })[];
2099
+ } & {}) | undefined;
2100
+ gradientUnits?: string | undefined;
2101
+ spreadMethod?: string | undefined;
2102
+ gradientTransform?: string | undefined;
2103
+ }) | undefined;
2104
+ strokeGradient?: ({
2105
+ type: "linear" | "radial";
2106
+ } & {
2107
+ p1?: [number, number] | undefined;
2108
+ p2?: [number, number] | undefined;
2109
+ c?: [number, number] | undefined;
2110
+ r?: number | undefined;
2111
+ fp?: [number, number] | undefined;
2112
+ stops?: ({
2113
+ offset: number;
2114
+ color: string;
2115
+ } & {})[] | ({
2116
+ value: ({
2117
+ offset: number;
2118
+ color: string;
2119
+ } & {})[];
2120
+ } & {}) | ({
2121
+ keyframes: ({} & {
2122
+ time?: number | undefined;
2123
+ t?: number | undefined;
2124
+ value?: any;
2125
+ v?: any;
2126
+ easing?: string | [number, number, number, number] | undefined;
2127
+ e?: string | [number, number, number, number] | undefined;
2128
+ tangentOut?: [number, number] | undefined;
2129
+ to?: [number, number] | undefined;
2130
+ tangentIn?: [number, number] | undefined;
2131
+ ti?: [number, number] | undefined;
2132
+ selected?: boolean | undefined;
2133
+ })[];
2134
+ } & {}) | undefined;
2135
+ gradientUnits?: string | undefined;
2136
+ spreadMethod?: string | undefined;
2137
+ gradientTransform?: string | undefined;
2138
+ }) | undefined;
2139
+ textAlongPath?: ({
2140
+ href: string;
2141
+ } & {
2142
+ lengthAdjust?: string | undefined;
2143
+ method?: string | undefined;
2144
+ spacing?: string | undefined;
2145
+ startOffset?: number | ({
2146
+ value: number;
2147
+ } & {}) | ({
2148
+ keyframes: ({} & {
2149
+ time?: number | undefined;
2150
+ t?: number | undefined;
2151
+ value?: any;
2152
+ v?: any;
2153
+ easing?: string | [number, number, number, number] | undefined;
2154
+ e?: string | [number, number, number, number] | undefined;
2155
+ tangentOut?: [number, number] | undefined;
2156
+ to?: [number, number] | undefined;
2157
+ tangentIn?: [number, number] | undefined;
2158
+ ti?: [number, number] | undefined;
2159
+ selected?: boolean | undefined;
2160
+ })[];
2161
+ } & {
2162
+ autoOrient?: boolean | undefined;
2163
+ }) | undefined;
2164
+ textLength?: number | ({
2165
+ value: number;
2166
+ } & {}) | ({
2167
+ keyframes: ({} & {
2168
+ time?: number | undefined;
2169
+ t?: number | undefined;
2170
+ value?: any;
2171
+ v?: any;
2172
+ easing?: string | [number, number, number, number] | undefined;
2173
+ e?: string | [number, number, number, number] | undefined;
2174
+ tangentOut?: [number, number] | undefined;
2175
+ to?: [number, number] | undefined;
2176
+ tangentIn?: [number, number] | undefined;
2177
+ ti?: [number, number] | undefined;
2178
+ selected?: boolean | undefined;
2179
+ })[];
2180
+ } & {
2181
+ autoOrient?: boolean | undefined;
2182
+ }) | undefined;
2183
+ }) | undefined;
2184
+ }, false> & {
2185
+ readonly _shape: {
2186
+ transformation: PxSchema<({} & {
2187
+ translate?: [number, number] | ({
2188
+ value: [number, number];
2189
+ } & {}) | ({
2190
+ keyframes: ({} & {
2191
+ time?: number | undefined;
2192
+ t?: number | undefined;
2193
+ value?: any;
2194
+ v?: any;
2195
+ easing?: string | [number, number, number, number] | undefined;
2196
+ e?: string | [number, number, number, number] | undefined;
2197
+ tangentOut?: [number, number] | undefined;
2198
+ to?: [number, number] | undefined;
2199
+ tangentIn?: [number, number] | undefined;
2200
+ ti?: [number, number] | undefined;
2201
+ selected?: boolean | undefined;
2202
+ })[];
2203
+ } & {
2204
+ autoOrient?: boolean | undefined;
2205
+ }) | undefined;
2206
+ rotate?: number | ({
2207
+ value: number;
2208
+ } & {}) | ({
2209
+ keyframes: ({} & {
2210
+ time?: number | undefined;
2211
+ t?: number | undefined;
2212
+ value?: any;
2213
+ v?: any;
2214
+ easing?: string | [number, number, number, number] | undefined;
2215
+ e?: string | [number, number, number, number] | undefined;
2216
+ tangentOut?: [number, number] | undefined;
2217
+ to?: [number, number] | undefined;
2218
+ tangentIn?: [number, number] | undefined;
2219
+ ti?: [number, number] | undefined;
2220
+ selected?: boolean | undefined;
2221
+ })[];
2222
+ } & {
2223
+ autoOrient?: boolean | undefined;
2224
+ }) | undefined;
2225
+ scale?: [number, number] | ({
2226
+ value: [number, number];
2227
+ } & {}) | ({
2228
+ keyframes: ({} & {
2229
+ time?: number | undefined;
2230
+ t?: number | undefined;
2231
+ value?: any;
2232
+ v?: any;
2233
+ easing?: string | [number, number, number, number] | undefined;
2234
+ e?: string | [number, number, number, number] | undefined;
2235
+ tangentOut?: [number, number] | undefined;
2236
+ to?: [number, number] | undefined;
2237
+ tangentIn?: [number, number] | undefined;
2238
+ ti?: [number, number] | undefined;
2239
+ selected?: boolean | undefined;
2240
+ })[];
2241
+ } & {
2242
+ autoOrient?: boolean | undefined;
2243
+ }) | undefined;
2244
+ skew?: [number, number] | ({
2245
+ value: [number, number];
2246
+ } & {}) | ({
2247
+ keyframes: ({} & {
2248
+ time?: number | undefined;
2249
+ t?: number | undefined;
2250
+ value?: any;
2251
+ v?: any;
2252
+ easing?: string | [number, number, number, number] | undefined;
2253
+ e?: string | [number, number, number, number] | undefined;
2254
+ tangentOut?: [number, number] | undefined;
2255
+ to?: [number, number] | undefined;
2256
+ tangentIn?: [number, number] | undefined;
2257
+ ti?: [number, number] | undefined;
2258
+ selected?: boolean | undefined;
2259
+ })[];
2260
+ } & {
2261
+ autoOrient?: boolean | undefined;
2262
+ }) | undefined;
2263
+ origin?: [number, number] | ({
2264
+ value: [number, number];
2265
+ } & {}) | ({
2266
+ keyframes: ({} & {
2267
+ time?: number | undefined;
2268
+ t?: number | undefined;
2269
+ value?: any;
2270
+ v?: any;
2271
+ easing?: string | [number, number, number, number] | undefined;
2272
+ e?: string | [number, number, number, number] | undefined;
2273
+ tangentOut?: [number, number] | undefined;
2274
+ to?: [number, number] | undefined;
2275
+ tangentIn?: [number, number] | undefined;
2276
+ ti?: [number, number] | undefined;
2277
+ selected?: boolean | undefined;
2278
+ })[];
2279
+ } & {
2280
+ autoOrient?: boolean | undefined;
2281
+ }) | undefined;
2282
+ }) | undefined, true>;
2283
+ repeater: PxSchema<({} & {
2284
+ copies?: number | undefined;
2285
+ translate?: [number, number] | ({
2286
+ value: [number, number];
2287
+ } & {}) | ({
2288
+ keyframes: ({} & {
2289
+ time?: number | undefined;
2290
+ t?: number | undefined;
2291
+ value?: any;
2292
+ v?: any;
2293
+ easing?: string | [number, number, number, number] | undefined;
2294
+ e?: string | [number, number, number, number] | undefined;
2295
+ tangentOut?: [number, number] | undefined;
2296
+ to?: [number, number] | undefined;
2297
+ tangentIn?: [number, number] | undefined;
2298
+ ti?: [number, number] | undefined;
2299
+ selected?: boolean | undefined;
2300
+ })[];
2301
+ } & {
2302
+ autoOrient?: boolean | undefined;
2303
+ }) | undefined;
2304
+ rotate?: number | ({
2305
+ value: number;
2306
+ } & {}) | ({
2307
+ keyframes: ({} & {
2308
+ time?: number | undefined;
2309
+ t?: number | undefined;
2310
+ value?: any;
2311
+ v?: any;
2312
+ easing?: string | [number, number, number, number] | undefined;
2313
+ e?: string | [number, number, number, number] | undefined;
2314
+ tangentOut?: [number, number] | undefined;
2315
+ to?: [number, number] | undefined;
2316
+ tangentIn?: [number, number] | undefined;
2317
+ ti?: [number, number] | undefined;
2318
+ selected?: boolean | undefined;
2319
+ })[];
2320
+ } & {
2321
+ autoOrient?: boolean | undefined;
2322
+ }) | undefined;
2323
+ scale?: [number, number] | ({
2324
+ value: [number, number];
2325
+ } & {}) | ({
2326
+ keyframes: ({} & {
2327
+ time?: number | undefined;
2328
+ t?: number | undefined;
2329
+ value?: any;
2330
+ v?: any;
2331
+ easing?: string | [number, number, number, number] | undefined;
1463
2332
  e?: string | [number, number, number, number] | undefined;
1464
2333
  tangentOut?: [number, number] | undefined;
1465
2334
  to?: [number, number] | undefined;
@@ -1470,8 +2339,8 @@ declare const PxEffectsSchema: PxSchema<{} & {
1470
2339
  } & {
1471
2340
  autoOrient?: boolean | undefined;
1472
2341
  }) | undefined;
1473
- scale?: number[] | ({
1474
- value: number[];
2342
+ origin?: [number, number] | ({
2343
+ value: [number, number];
1475
2344
  } & {}) | ({
1476
2345
  keyframes: ({} & {
1477
2346
  time?: number | undefined;
@@ -1489,8 +2358,16 @@ declare const PxEffectsSchema: PxSchema<{} & {
1489
2358
  } & {
1490
2359
  autoOrient?: boolean | undefined;
1491
2360
  }) | undefined;
1492
- skew?: number[] | ({
1493
- value: number[];
2361
+ }) | undefined, true>;
2362
+ maskedBy: PxSchema<({} & {
2363
+ href?: string | undefined;
2364
+ maskType?: string | undefined;
2365
+ maskUnits?: string | undefined;
2366
+ maskContentUnits?: string | undefined;
2367
+ }) | undefined, true>;
2368
+ trimPath: PxSchema<({} & {
2369
+ offset?: number | ({
2370
+ value: number;
1494
2371
  } & {}) | ({
1495
2372
  keyframes: ({} & {
1496
2373
  time?: number | undefined;
@@ -1508,8 +2385,8 @@ declare const PxEffectsSchema: PxSchema<{} & {
1508
2385
  } & {
1509
2386
  autoOrient?: boolean | undefined;
1510
2387
  }) | undefined;
1511
- origin?: number[] | ({
1512
- value: number[];
2388
+ range?: [number, number] | ({
2389
+ value: [number, number];
1513
2390
  } & {}) | ({
1514
2391
  keyframes: ({} & {
1515
2392
  time?: number | undefined;
@@ -1527,34 +2404,137 @@ declare const PxEffectsSchema: PxSchema<{} & {
1527
2404
  } & {
1528
2405
  autoOrient?: boolean | undefined;
1529
2406
  }) | undefined;
2407
+ trimAllAsOne?: boolean | undefined;
1530
2408
  }) | undefined, true>;
1531
- repeater: PxSchema<({} & {
1532
- copies?: number | undefined;
1533
- translate?: number[] | undefined;
1534
- rotate?: number | undefined;
1535
- scale?: number[] | undefined;
1536
- origin?: number[] | undefined;
1537
- }) | undefined, true>;
1538
- maskedBy: PxSchema<({} & {
1539
- href?: string | undefined;
1540
- maskType?: string | undefined;
1541
- maskUnits?: string | undefined;
1542
- maskContentUnits?: string | undefined;
1543
- }) | undefined, true>;
1544
- trimPath: PxSchema<any, true>;
1545
2409
  retime: PxSchema<({} & {
1546
2410
  baseId?: string | undefined;
1547
2411
  start?: number | undefined;
1548
2412
  stretch?: number | undefined;
1549
- timeCrop?: number[] | undefined;
2413
+ timeCrop?: [number, number] | undefined;
1550
2414
  }) | undefined, true>;
1551
2415
  isCombinedShape: PxSchema<boolean | undefined, true>;
1552
2416
  ref: PxSchema<({} & {
1553
2417
  baseId?: string | undefined;
1554
2418
  type?: string | undefined;
1555
2419
  }) | undefined, true>;
2420
+ fillGradient: PxSchema<({
2421
+ type: "linear" | "radial";
2422
+ } & {
2423
+ p1?: [number, number] | undefined;
2424
+ p2?: [number, number] | undefined;
2425
+ c?: [number, number] | undefined;
2426
+ r?: number | undefined;
2427
+ fp?: [number, number] | undefined;
2428
+ stops?: ({
2429
+ offset: number;
2430
+ color: string;
2431
+ } & {})[] | ({
2432
+ value: ({
2433
+ offset: number;
2434
+ color: string;
2435
+ } & {})[];
2436
+ } & {}) | ({
2437
+ keyframes: ({} & {
2438
+ time?: number | undefined;
2439
+ t?: number | undefined;
2440
+ value?: any;
2441
+ v?: any;
2442
+ easing?: string | [number, number, number, number] | undefined;
2443
+ e?: string | [number, number, number, number] | undefined;
2444
+ tangentOut?: [number, number] | undefined;
2445
+ to?: [number, number] | undefined;
2446
+ tangentIn?: [number, number] | undefined;
2447
+ ti?: [number, number] | undefined;
2448
+ selected?: boolean | undefined;
2449
+ })[];
2450
+ } & {}) | undefined;
2451
+ gradientUnits?: string | undefined;
2452
+ spreadMethod?: string | undefined;
2453
+ gradientTransform?: string | undefined;
2454
+ }) | undefined, true>;
2455
+ strokeGradient: PxSchema<({
2456
+ type: "linear" | "radial";
2457
+ } & {
2458
+ p1?: [number, number] | undefined;
2459
+ p2?: [number, number] | undefined;
2460
+ c?: [number, number] | undefined;
2461
+ r?: number | undefined;
2462
+ fp?: [number, number] | undefined;
2463
+ stops?: ({
2464
+ offset: number;
2465
+ color: string;
2466
+ } & {})[] | ({
2467
+ value: ({
2468
+ offset: number;
2469
+ color: string;
2470
+ } & {})[];
2471
+ } & {}) | ({
2472
+ keyframes: ({} & {
2473
+ time?: number | undefined;
2474
+ t?: number | undefined;
2475
+ value?: any;
2476
+ v?: any;
2477
+ easing?: string | [number, number, number, number] | undefined;
2478
+ e?: string | [number, number, number, number] | undefined;
2479
+ tangentOut?: [number, number] | undefined;
2480
+ to?: [number, number] | undefined;
2481
+ tangentIn?: [number, number] | undefined;
2482
+ ti?: [number, number] | undefined;
2483
+ selected?: boolean | undefined;
2484
+ })[];
2485
+ } & {}) | undefined;
2486
+ gradientUnits?: string | undefined;
2487
+ spreadMethod?: string | undefined;
2488
+ gradientTransform?: string | undefined;
2489
+ }) | undefined, true>;
2490
+ textAlongPath: PxSchema<({
2491
+ href: string;
2492
+ } & {
2493
+ lengthAdjust?: string | undefined;
2494
+ method?: string | undefined;
2495
+ spacing?: string | undefined;
2496
+ startOffset?: number | ({
2497
+ value: number;
2498
+ } & {}) | ({
2499
+ keyframes: ({} & {
2500
+ time?: number | undefined;
2501
+ t?: number | undefined;
2502
+ value?: any;
2503
+ v?: any;
2504
+ easing?: string | [number, number, number, number] | undefined;
2505
+ e?: string | [number, number, number, number] | undefined;
2506
+ tangentOut?: [number, number] | undefined;
2507
+ to?: [number, number] | undefined;
2508
+ tangentIn?: [number, number] | undefined;
2509
+ ti?: [number, number] | undefined;
2510
+ selected?: boolean | undefined;
2511
+ })[];
2512
+ } & {
2513
+ autoOrient?: boolean | undefined;
2514
+ }) | undefined;
2515
+ textLength?: number | ({
2516
+ value: number;
2517
+ } & {}) | ({
2518
+ keyframes: ({} & {
2519
+ time?: number | undefined;
2520
+ t?: number | undefined;
2521
+ value?: any;
2522
+ v?: any;
2523
+ easing?: string | [number, number, number, number] | undefined;
2524
+ e?: string | [number, number, number, number] | undefined;
2525
+ tangentOut?: [number, number] | undefined;
2526
+ to?: [number, number] | undefined;
2527
+ tangentIn?: [number, number] | undefined;
2528
+ ti?: [number, number] | undefined;
2529
+ selected?: boolean | undefined;
2530
+ })[];
2531
+ } & {
2532
+ autoOrient?: boolean | undefined;
2533
+ }) | undefined;
2534
+ }) | undefined, true>;
1556
2535
  };
1557
2536
  };
2537
+ type PxEffects = PxInfer<typeof PxEffectsSchema>;
1558
2538
  /**
1559
2539
  * Walks `root` and validates every `node.effects` bucket against `PxEffectsSchema`.
1560
2540
  * Returns an array of human-readable warning strings (empty when all good).
@@ -1562,7 +2542,7 @@ declare const PxEffectsSchema: PxSchema<{} & {
1562
2542
  *
1563
2543
  * Pass `strict: true` to also flag undeclared keys (useful in dev / tests).
1564
2544
  */
1565
- declare function validateNodeEffects(root: PxNode$1, opts?: {
2545
+ declare function validateNodeEffects(root: PxNode, opts?: {
1566
2546
  strict?: boolean;
1567
2547
  }): Array<string>;
1568
2548
  /**
@@ -1580,8 +2560,190 @@ declare const PxNodeBase: PxSchema<{
1580
2560
  meta?: any;
1581
2561
  effects?: ({} & {
1582
2562
  transformation?: ({} & {
1583
- translate?: number[] | ({
1584
- value: number[];
2563
+ translate?: [number, number] | ({
2564
+ value: [number, number];
2565
+ } & {}) | ({
2566
+ keyframes: ({} & {
2567
+ time?: number | undefined;
2568
+ t?: number | undefined;
2569
+ value?: any;
2570
+ v?: any;
2571
+ easing?: string | [number, number, number, number] | undefined;
2572
+ e?: string | [number, number, number, number] | undefined;
2573
+ tangentOut?: [number, number] | undefined;
2574
+ to?: [number, number] | undefined;
2575
+ tangentIn?: [number, number] | undefined;
2576
+ ti?: [number, number] | undefined;
2577
+ selected?: boolean | undefined;
2578
+ })[];
2579
+ } & {
2580
+ autoOrient?: boolean | undefined;
2581
+ }) | undefined;
2582
+ rotate?: number | ({
2583
+ value: number;
2584
+ } & {}) | ({
2585
+ keyframes: ({} & {
2586
+ time?: number | undefined;
2587
+ t?: number | undefined;
2588
+ value?: any;
2589
+ v?: any;
2590
+ easing?: string | [number, number, number, number] | undefined;
2591
+ e?: string | [number, number, number, number] | undefined;
2592
+ tangentOut?: [number, number] | undefined;
2593
+ to?: [number, number] | undefined;
2594
+ tangentIn?: [number, number] | undefined;
2595
+ ti?: [number, number] | undefined;
2596
+ selected?: boolean | undefined;
2597
+ })[];
2598
+ } & {
2599
+ autoOrient?: boolean | undefined;
2600
+ }) | undefined;
2601
+ scale?: [number, number] | ({
2602
+ value: [number, number];
2603
+ } & {}) | ({
2604
+ keyframes: ({} & {
2605
+ time?: number | undefined;
2606
+ t?: number | undefined;
2607
+ value?: any;
2608
+ v?: any;
2609
+ easing?: string | [number, number, number, number] | undefined;
2610
+ e?: string | [number, number, number, number] | undefined;
2611
+ tangentOut?: [number, number] | undefined;
2612
+ to?: [number, number] | undefined;
2613
+ tangentIn?: [number, number] | undefined;
2614
+ ti?: [number, number] | undefined;
2615
+ selected?: boolean | undefined;
2616
+ })[];
2617
+ } & {
2618
+ autoOrient?: boolean | undefined;
2619
+ }) | undefined;
2620
+ skew?: [number, number] | ({
2621
+ value: [number, number];
2622
+ } & {}) | ({
2623
+ keyframes: ({} & {
2624
+ time?: number | undefined;
2625
+ t?: number | undefined;
2626
+ value?: any;
2627
+ v?: any;
2628
+ easing?: string | [number, number, number, number] | undefined;
2629
+ e?: string | [number, number, number, number] | undefined;
2630
+ tangentOut?: [number, number] | undefined;
2631
+ to?: [number, number] | undefined;
2632
+ tangentIn?: [number, number] | undefined;
2633
+ ti?: [number, number] | undefined;
2634
+ selected?: boolean | undefined;
2635
+ })[];
2636
+ } & {
2637
+ autoOrient?: boolean | undefined;
2638
+ }) | undefined;
2639
+ origin?: [number, number] | ({
2640
+ value: [number, number];
2641
+ } & {}) | ({
2642
+ keyframes: ({} & {
2643
+ time?: number | undefined;
2644
+ t?: number | undefined;
2645
+ value?: any;
2646
+ v?: any;
2647
+ easing?: string | [number, number, number, number] | undefined;
2648
+ e?: string | [number, number, number, number] | undefined;
2649
+ tangentOut?: [number, number] | undefined;
2650
+ to?: [number, number] | undefined;
2651
+ tangentIn?: [number, number] | undefined;
2652
+ ti?: [number, number] | undefined;
2653
+ selected?: boolean | undefined;
2654
+ })[];
2655
+ } & {
2656
+ autoOrient?: boolean | undefined;
2657
+ }) | undefined;
2658
+ }) | undefined;
2659
+ repeater?: ({} & {
2660
+ copies?: number | undefined;
2661
+ translate?: [number, number] | ({
2662
+ value: [number, number];
2663
+ } & {}) | ({
2664
+ keyframes: ({} & {
2665
+ time?: number | undefined;
2666
+ t?: number | undefined;
2667
+ value?: any;
2668
+ v?: any;
2669
+ easing?: string | [number, number, number, number] | undefined;
2670
+ e?: string | [number, number, number, number] | undefined;
2671
+ tangentOut?: [number, number] | undefined;
2672
+ to?: [number, number] | undefined;
2673
+ tangentIn?: [number, number] | undefined;
2674
+ ti?: [number, number] | undefined;
2675
+ selected?: boolean | undefined;
2676
+ })[];
2677
+ } & {
2678
+ autoOrient?: boolean | undefined;
2679
+ }) | undefined;
2680
+ rotate?: number | ({
2681
+ value: number;
2682
+ } & {}) | ({
2683
+ keyframes: ({} & {
2684
+ time?: number | undefined;
2685
+ t?: number | undefined;
2686
+ value?: any;
2687
+ v?: any;
2688
+ easing?: string | [number, number, number, number] | undefined;
2689
+ e?: string | [number, number, number, number] | undefined;
2690
+ tangentOut?: [number, number] | undefined;
2691
+ to?: [number, number] | undefined;
2692
+ tangentIn?: [number, number] | undefined;
2693
+ ti?: [number, number] | undefined;
2694
+ selected?: boolean | undefined;
2695
+ })[];
2696
+ } & {
2697
+ autoOrient?: boolean | undefined;
2698
+ }) | undefined;
2699
+ scale?: [number, number] | ({
2700
+ value: [number, number];
2701
+ } & {}) | ({
2702
+ keyframes: ({} & {
2703
+ time?: number | undefined;
2704
+ t?: number | undefined;
2705
+ value?: any;
2706
+ v?: any;
2707
+ easing?: string | [number, number, number, number] | undefined;
2708
+ e?: string | [number, number, number, number] | undefined;
2709
+ tangentOut?: [number, number] | undefined;
2710
+ to?: [number, number] | undefined;
2711
+ tangentIn?: [number, number] | undefined;
2712
+ ti?: [number, number] | undefined;
2713
+ selected?: boolean | undefined;
2714
+ })[];
2715
+ } & {
2716
+ autoOrient?: boolean | undefined;
2717
+ }) | undefined;
2718
+ origin?: [number, number] | ({
2719
+ value: [number, number];
2720
+ } & {}) | ({
2721
+ keyframes: ({} & {
2722
+ time?: number | undefined;
2723
+ t?: number | undefined;
2724
+ value?: any;
2725
+ v?: any;
2726
+ easing?: string | [number, number, number, number] | undefined;
2727
+ e?: string | [number, number, number, number] | undefined;
2728
+ tangentOut?: [number, number] | undefined;
2729
+ to?: [number, number] | undefined;
2730
+ tangentIn?: [number, number] | undefined;
2731
+ ti?: [number, number] | undefined;
2732
+ selected?: boolean | undefined;
2733
+ })[];
2734
+ } & {
2735
+ autoOrient?: boolean | undefined;
2736
+ }) | undefined;
2737
+ }) | undefined;
2738
+ maskedBy?: ({} & {
2739
+ href?: string | undefined;
2740
+ maskType?: string | undefined;
2741
+ maskUnits?: string | undefined;
2742
+ maskContentUnits?: string | undefined;
2743
+ }) | undefined;
2744
+ trimPath?: ({} & {
2745
+ offset?: number | ({
2746
+ value: number;
1585
2747
  } & {}) | ({
1586
2748
  keyframes: ({} & {
1587
2749
  time?: number | undefined;
@@ -1599,8 +2761,8 @@ declare const PxNodeBase: PxSchema<{
1599
2761
  } & {
1600
2762
  autoOrient?: boolean | undefined;
1601
2763
  }) | undefined;
1602
- rotate?: number | ({
1603
- value: number;
2764
+ range?: [number, number] | ({
2765
+ value: [number, number];
1604
2766
  } & {}) | ({
1605
2767
  keyframes: ({} & {
1606
2768
  time?: number | undefined;
@@ -1618,8 +2780,35 @@ declare const PxNodeBase: PxSchema<{
1618
2780
  } & {
1619
2781
  autoOrient?: boolean | undefined;
1620
2782
  }) | undefined;
1621
- scale?: number[] | ({
1622
- value: number[];
2783
+ trimAllAsOne?: boolean | undefined;
2784
+ }) | undefined;
2785
+ retime?: ({} & {
2786
+ baseId?: string | undefined;
2787
+ start?: number | undefined;
2788
+ stretch?: number | undefined;
2789
+ timeCrop?: [number, number] | undefined;
2790
+ }) | undefined;
2791
+ isCombinedShape?: boolean | undefined;
2792
+ ref?: ({} & {
2793
+ baseId?: string | undefined;
2794
+ type?: string | undefined;
2795
+ }) | undefined;
2796
+ fillGradient?: ({
2797
+ type: "linear" | "radial";
2798
+ } & {
2799
+ p1?: [number, number] | undefined;
2800
+ p2?: [number, number] | undefined;
2801
+ c?: [number, number] | undefined;
2802
+ r?: number | undefined;
2803
+ fp?: [number, number] | undefined;
2804
+ stops?: ({
2805
+ offset: number;
2806
+ color: string;
2807
+ } & {})[] | ({
2808
+ value: ({
2809
+ offset: number;
2810
+ color: string;
2811
+ } & {})[];
1623
2812
  } & {}) | ({
1624
2813
  keyframes: ({} & {
1625
2814
  time?: number | undefined;
@@ -1634,11 +2823,54 @@ declare const PxNodeBase: PxSchema<{
1634
2823
  ti?: [number, number] | undefined;
1635
2824
  selected?: boolean | undefined;
1636
2825
  })[];
1637
- } & {
1638
- autoOrient?: boolean | undefined;
1639
- }) | undefined;
1640
- skew?: number[] | ({
1641
- value: number[];
2826
+ } & {}) | undefined;
2827
+ gradientUnits?: string | undefined;
2828
+ spreadMethod?: string | undefined;
2829
+ gradientTransform?: string | undefined;
2830
+ }) | undefined;
2831
+ strokeGradient?: ({
2832
+ type: "linear" | "radial";
2833
+ } & {
2834
+ p1?: [number, number] | undefined;
2835
+ p2?: [number, number] | undefined;
2836
+ c?: [number, number] | undefined;
2837
+ r?: number | undefined;
2838
+ fp?: [number, number] | undefined;
2839
+ stops?: ({
2840
+ offset: number;
2841
+ color: string;
2842
+ } & {})[] | ({
2843
+ value: ({
2844
+ offset: number;
2845
+ color: string;
2846
+ } & {})[];
2847
+ } & {}) | ({
2848
+ keyframes: ({} & {
2849
+ time?: number | undefined;
2850
+ t?: number | undefined;
2851
+ value?: any;
2852
+ v?: any;
2853
+ easing?: string | [number, number, number, number] | undefined;
2854
+ e?: string | [number, number, number, number] | undefined;
2855
+ tangentOut?: [number, number] | undefined;
2856
+ to?: [number, number] | undefined;
2857
+ tangentIn?: [number, number] | undefined;
2858
+ ti?: [number, number] | undefined;
2859
+ selected?: boolean | undefined;
2860
+ })[];
2861
+ } & {}) | undefined;
2862
+ gradientUnits?: string | undefined;
2863
+ spreadMethod?: string | undefined;
2864
+ gradientTransform?: string | undefined;
2865
+ }) | undefined;
2866
+ textAlongPath?: ({
2867
+ href: string;
2868
+ } & {
2869
+ lengthAdjust?: string | undefined;
2870
+ method?: string | undefined;
2871
+ spacing?: string | undefined;
2872
+ startOffset?: number | ({
2873
+ value: number;
1642
2874
  } & {}) | ({
1643
2875
  keyframes: ({} & {
1644
2876
  time?: number | undefined;
@@ -1656,8 +2888,8 @@ declare const PxNodeBase: PxSchema<{
1656
2888
  } & {
1657
2889
  autoOrient?: boolean | undefined;
1658
2890
  }) | undefined;
1659
- origin?: number[] | ({
1660
- value: number[];
2891
+ textLength?: number | ({
2892
+ value: number;
1661
2893
  } & {}) | ({
1662
2894
  keyframes: ({} & {
1663
2895
  time?: number | undefined;
@@ -1676,33 +2908,41 @@ declare const PxNodeBase: PxSchema<{
1676
2908
  autoOrient?: boolean | undefined;
1677
2909
  }) | undefined;
1678
2910
  }) | undefined;
1679
- repeater?: ({} & {
1680
- copies?: number | undefined;
1681
- translate?: number[] | undefined;
1682
- rotate?: number | undefined;
1683
- scale?: number[] | undefined;
1684
- origin?: number[] | undefined;
1685
- }) | undefined;
1686
- maskedBy?: ({} & {
1687
- href?: string | undefined;
1688
- maskType?: string | undefined;
1689
- maskUnits?: string | undefined;
1690
- maskContentUnits?: string | undefined;
1691
- }) | undefined;
1692
- trimPath?: any;
1693
- retime?: ({} & {
1694
- baseId?: string | undefined;
1695
- start?: number | undefined;
1696
- stretch?: number | undefined;
1697
- timeCrop?: number[] | undefined;
1698
- }) | undefined;
1699
- isCombinedShape?: boolean | undefined;
1700
- ref?: ({} & {
1701
- baseId?: string | undefined;
1702
- type?: string | undefined;
1703
- }) | undefined;
1704
2911
  }) | undefined;
1705
- animate?: Record<string, {} & {
2912
+ animate?: string | Record<string, {} & {
2913
+ keyframes?: ({} & {
2914
+ time?: number | undefined;
2915
+ t?: number | undefined;
2916
+ value?: any;
2917
+ v?: any;
2918
+ easing?: string | [number, number, number, number] | undefined;
2919
+ e?: string | [number, number, number, number] | undefined;
2920
+ tangentOut?: [number, number] | undefined;
2921
+ to?: [number, number] | undefined;
2922
+ tangentIn?: [number, number] | undefined;
2923
+ ti?: [number, number] | undefined;
2924
+ selected?: boolean | undefined;
2925
+ })[] | undefined;
2926
+ kfs?: ({} & {
2927
+ time?: number | undefined;
2928
+ t?: number | undefined;
2929
+ value?: any;
2930
+ v?: any;
2931
+ easing?: string | [number, number, number, number] | undefined;
2932
+ e?: string | [number, number, number, number] | undefined;
2933
+ tangentOut?: [number, number] | undefined;
2934
+ to?: [number, number] | undefined;
2935
+ tangentIn?: [number, number] | undefined;
2936
+ ti?: [number, number] | undefined;
2937
+ selected?: boolean | undefined;
2938
+ })[] | undefined;
2939
+ loop?: boolean | ({} & {
2940
+ segmentCount?: number | undefined;
2941
+ before?: boolean | undefined;
2942
+ alternate?: boolean | undefined;
2943
+ }) | undefined;
2944
+ autoOrient?: boolean | undefined;
2945
+ }> | (string | Record<string, {} & {
1706
2946
  keyframes?: ({} & {
1707
2947
  time?: number | undefined;
1708
2948
  t?: number | undefined;
@@ -1735,7 +2975,7 @@ declare const PxNodeBase: PxSchema<{
1735
2975
  alternate?: boolean | undefined;
1736
2976
  }) | undefined;
1737
2977
  autoOrient?: boolean | undefined;
1738
- }> | undefined;
2978
+ }>)[] | undefined;
1739
2979
  style?: string | Record<string, string | number> | undefined;
1740
2980
  } & {
1741
2981
  [key: string]: any;
@@ -1746,8 +2986,8 @@ declare const PxNodeBase: PxSchema<{
1746
2986
  meta: PxSchema<any, true>;
1747
2987
  effects: PxSchema<({} & {
1748
2988
  transformation?: ({} & {
1749
- translate?: number[] | ({
1750
- value: number[];
2989
+ translate?: [number, number] | ({
2990
+ value: [number, number];
1751
2991
  } & {}) | ({
1752
2992
  keyframes: ({} & {
1753
2993
  time?: number | undefined;
@@ -1784,8 +3024,8 @@ declare const PxNodeBase: PxSchema<{
1784
3024
  } & {
1785
3025
  autoOrient?: boolean | undefined;
1786
3026
  }) | undefined;
1787
- scale?: number[] | ({
1788
- value: number[];
3027
+ scale?: [number, number] | ({
3028
+ value: [number, number];
1789
3029
  } & {}) | ({
1790
3030
  keyframes: ({} & {
1791
3031
  time?: number | undefined;
@@ -1803,8 +3043,8 @@ declare const PxNodeBase: PxSchema<{
1803
3043
  } & {
1804
3044
  autoOrient?: boolean | undefined;
1805
3045
  }) | undefined;
1806
- skew?: number[] | ({
1807
- value: number[];
3046
+ skew?: [number, number] | ({
3047
+ value: [number, number];
1808
3048
  } & {}) | ({
1809
3049
  keyframes: ({} & {
1810
3050
  time?: number | undefined;
@@ -1822,8 +3062,8 @@ declare const PxNodeBase: PxSchema<{
1822
3062
  } & {
1823
3063
  autoOrient?: boolean | undefined;
1824
3064
  }) | undefined;
1825
- origin?: number[] | ({
1826
- value: number[];
3065
+ origin?: [number, number] | ({
3066
+ value: [number, number];
1827
3067
  } & {}) | ({
1828
3068
  keyframes: ({} & {
1829
3069
  time?: number | undefined;
@@ -1844,10 +3084,82 @@ declare const PxNodeBase: PxSchema<{
1844
3084
  }) | undefined;
1845
3085
  repeater?: ({} & {
1846
3086
  copies?: number | undefined;
1847
- translate?: number[] | undefined;
1848
- rotate?: number | undefined;
1849
- scale?: number[] | undefined;
1850
- origin?: number[] | undefined;
3087
+ translate?: [number, number] | ({
3088
+ value: [number, number];
3089
+ } & {}) | ({
3090
+ keyframes: ({} & {
3091
+ time?: number | undefined;
3092
+ t?: number | undefined;
3093
+ value?: any;
3094
+ v?: any;
3095
+ easing?: string | [number, number, number, number] | undefined;
3096
+ e?: string | [number, number, number, number] | undefined;
3097
+ tangentOut?: [number, number] | undefined;
3098
+ to?: [number, number] | undefined;
3099
+ tangentIn?: [number, number] | undefined;
3100
+ ti?: [number, number] | undefined;
3101
+ selected?: boolean | undefined;
3102
+ })[];
3103
+ } & {
3104
+ autoOrient?: boolean | undefined;
3105
+ }) | undefined;
3106
+ rotate?: number | ({
3107
+ value: number;
3108
+ } & {}) | ({
3109
+ keyframes: ({} & {
3110
+ time?: number | undefined;
3111
+ t?: number | undefined;
3112
+ value?: any;
3113
+ v?: any;
3114
+ easing?: string | [number, number, number, number] | undefined;
3115
+ e?: string | [number, number, number, number] | undefined;
3116
+ tangentOut?: [number, number] | undefined;
3117
+ to?: [number, number] | undefined;
3118
+ tangentIn?: [number, number] | undefined;
3119
+ ti?: [number, number] | undefined;
3120
+ selected?: boolean | undefined;
3121
+ })[];
3122
+ } & {
3123
+ autoOrient?: boolean | undefined;
3124
+ }) | undefined;
3125
+ scale?: [number, number] | ({
3126
+ value: [number, number];
3127
+ } & {}) | ({
3128
+ keyframes: ({} & {
3129
+ time?: number | undefined;
3130
+ t?: number | undefined;
3131
+ value?: any;
3132
+ v?: any;
3133
+ easing?: string | [number, number, number, number] | undefined;
3134
+ e?: string | [number, number, number, number] | undefined;
3135
+ tangentOut?: [number, number] | undefined;
3136
+ to?: [number, number] | undefined;
3137
+ tangentIn?: [number, number] | undefined;
3138
+ ti?: [number, number] | undefined;
3139
+ selected?: boolean | undefined;
3140
+ })[];
3141
+ } & {
3142
+ autoOrient?: boolean | undefined;
3143
+ }) | undefined;
3144
+ origin?: [number, number] | ({
3145
+ value: [number, number];
3146
+ } & {}) | ({
3147
+ keyframes: ({} & {
3148
+ time?: number | undefined;
3149
+ t?: number | undefined;
3150
+ value?: any;
3151
+ v?: any;
3152
+ easing?: string | [number, number, number, number] | undefined;
3153
+ e?: string | [number, number, number, number] | undefined;
3154
+ tangentOut?: [number, number] | undefined;
3155
+ to?: [number, number] | undefined;
3156
+ tangentIn?: [number, number] | undefined;
3157
+ ti?: [number, number] | undefined;
3158
+ selected?: boolean | undefined;
3159
+ })[];
3160
+ } & {
3161
+ autoOrient?: boolean | undefined;
3162
+ }) | undefined;
1851
3163
  }) | undefined;
1852
3164
  maskedBy?: ({} & {
1853
3165
  href?: string | undefined;
@@ -1855,20 +3167,208 @@ declare const PxNodeBase: PxSchema<{
1855
3167
  maskUnits?: string | undefined;
1856
3168
  maskContentUnits?: string | undefined;
1857
3169
  }) | undefined;
1858
- trimPath?: any;
3170
+ trimPath?: ({} & {
3171
+ offset?: number | ({
3172
+ value: number;
3173
+ } & {}) | ({
3174
+ keyframes: ({} & {
3175
+ time?: number | undefined;
3176
+ t?: number | undefined;
3177
+ value?: any;
3178
+ v?: any;
3179
+ easing?: string | [number, number, number, number] | undefined;
3180
+ e?: string | [number, number, number, number] | undefined;
3181
+ tangentOut?: [number, number] | undefined;
3182
+ to?: [number, number] | undefined;
3183
+ tangentIn?: [number, number] | undefined;
3184
+ ti?: [number, number] | undefined;
3185
+ selected?: boolean | undefined;
3186
+ })[];
3187
+ } & {
3188
+ autoOrient?: boolean | undefined;
3189
+ }) | undefined;
3190
+ range?: [number, number] | ({
3191
+ value: [number, number];
3192
+ } & {}) | ({
3193
+ keyframes: ({} & {
3194
+ time?: number | undefined;
3195
+ t?: number | undefined;
3196
+ value?: any;
3197
+ v?: any;
3198
+ easing?: string | [number, number, number, number] | undefined;
3199
+ e?: string | [number, number, number, number] | undefined;
3200
+ tangentOut?: [number, number] | undefined;
3201
+ to?: [number, number] | undefined;
3202
+ tangentIn?: [number, number] | undefined;
3203
+ ti?: [number, number] | undefined;
3204
+ selected?: boolean | undefined;
3205
+ })[];
3206
+ } & {
3207
+ autoOrient?: boolean | undefined;
3208
+ }) | undefined;
3209
+ trimAllAsOne?: boolean | undefined;
3210
+ }) | undefined;
1859
3211
  retime?: ({} & {
1860
3212
  baseId?: string | undefined;
1861
3213
  start?: number | undefined;
1862
3214
  stretch?: number | undefined;
1863
- timeCrop?: number[] | undefined;
3215
+ timeCrop?: [number, number] | undefined;
1864
3216
  }) | undefined;
1865
3217
  isCombinedShape?: boolean | undefined;
1866
3218
  ref?: ({} & {
1867
3219
  baseId?: string | undefined;
1868
3220
  type?: string | undefined;
1869
3221
  }) | undefined;
3222
+ fillGradient?: ({
3223
+ type: "linear" | "radial";
3224
+ } & {
3225
+ p1?: [number, number] | undefined;
3226
+ p2?: [number, number] | undefined;
3227
+ c?: [number, number] | undefined;
3228
+ r?: number | undefined;
3229
+ fp?: [number, number] | undefined;
3230
+ stops?: ({
3231
+ offset: number;
3232
+ color: string;
3233
+ } & {})[] | ({
3234
+ value: ({
3235
+ offset: number;
3236
+ color: string;
3237
+ } & {})[];
3238
+ } & {}) | ({
3239
+ keyframes: ({} & {
3240
+ time?: number | undefined;
3241
+ t?: number | undefined;
3242
+ value?: any;
3243
+ v?: any;
3244
+ easing?: string | [number, number, number, number] | undefined;
3245
+ e?: string | [number, number, number, number] | undefined;
3246
+ tangentOut?: [number, number] | undefined;
3247
+ to?: [number, number] | undefined;
3248
+ tangentIn?: [number, number] | undefined;
3249
+ ti?: [number, number] | undefined;
3250
+ selected?: boolean | undefined;
3251
+ })[];
3252
+ } & {}) | undefined;
3253
+ gradientUnits?: string | undefined;
3254
+ spreadMethod?: string | undefined;
3255
+ gradientTransform?: string | undefined;
3256
+ }) | undefined;
3257
+ strokeGradient?: ({
3258
+ type: "linear" | "radial";
3259
+ } & {
3260
+ p1?: [number, number] | undefined;
3261
+ p2?: [number, number] | undefined;
3262
+ c?: [number, number] | undefined;
3263
+ r?: number | undefined;
3264
+ fp?: [number, number] | undefined;
3265
+ stops?: ({
3266
+ offset: number;
3267
+ color: string;
3268
+ } & {})[] | ({
3269
+ value: ({
3270
+ offset: number;
3271
+ color: string;
3272
+ } & {})[];
3273
+ } & {}) | ({
3274
+ keyframes: ({} & {
3275
+ time?: number | undefined;
3276
+ t?: number | undefined;
3277
+ value?: any;
3278
+ v?: any;
3279
+ easing?: string | [number, number, number, number] | undefined;
3280
+ e?: string | [number, number, number, number] | undefined;
3281
+ tangentOut?: [number, number] | undefined;
3282
+ to?: [number, number] | undefined;
3283
+ tangentIn?: [number, number] | undefined;
3284
+ ti?: [number, number] | undefined;
3285
+ selected?: boolean | undefined;
3286
+ })[];
3287
+ } & {}) | undefined;
3288
+ gradientUnits?: string | undefined;
3289
+ spreadMethod?: string | undefined;
3290
+ gradientTransform?: string | undefined;
3291
+ }) | undefined;
3292
+ textAlongPath?: ({
3293
+ href: string;
3294
+ } & {
3295
+ lengthAdjust?: string | undefined;
3296
+ method?: string | undefined;
3297
+ spacing?: string | undefined;
3298
+ startOffset?: number | ({
3299
+ value: number;
3300
+ } & {}) | ({
3301
+ keyframes: ({} & {
3302
+ time?: number | undefined;
3303
+ t?: number | undefined;
3304
+ value?: any;
3305
+ v?: any;
3306
+ easing?: string | [number, number, number, number] | undefined;
3307
+ e?: string | [number, number, number, number] | undefined;
3308
+ tangentOut?: [number, number] | undefined;
3309
+ to?: [number, number] | undefined;
3310
+ tangentIn?: [number, number] | undefined;
3311
+ ti?: [number, number] | undefined;
3312
+ selected?: boolean | undefined;
3313
+ })[];
3314
+ } & {
3315
+ autoOrient?: boolean | undefined;
3316
+ }) | undefined;
3317
+ textLength?: number | ({
3318
+ value: number;
3319
+ } & {}) | ({
3320
+ keyframes: ({} & {
3321
+ time?: number | undefined;
3322
+ t?: number | undefined;
3323
+ value?: any;
3324
+ v?: any;
3325
+ easing?: string | [number, number, number, number] | undefined;
3326
+ e?: string | [number, number, number, number] | undefined;
3327
+ tangentOut?: [number, number] | undefined;
3328
+ to?: [number, number] | undefined;
3329
+ tangentIn?: [number, number] | undefined;
3330
+ ti?: [number, number] | undefined;
3331
+ selected?: boolean | undefined;
3332
+ })[];
3333
+ } & {
3334
+ autoOrient?: boolean | undefined;
3335
+ }) | undefined;
3336
+ }) | undefined;
1870
3337
  }) | undefined, true>;
1871
- animate: PxSchema<Record<string, {} & {
3338
+ animate: PxSchema<string | Record<string, {} & {
3339
+ keyframes?: ({} & {
3340
+ time?: number | undefined;
3341
+ t?: number | undefined;
3342
+ value?: any;
3343
+ v?: any;
3344
+ easing?: string | [number, number, number, number] | undefined;
3345
+ e?: string | [number, number, number, number] | undefined;
3346
+ tangentOut?: [number, number] | undefined;
3347
+ to?: [number, number] | undefined;
3348
+ tangentIn?: [number, number] | undefined;
3349
+ ti?: [number, number] | undefined;
3350
+ selected?: boolean | undefined;
3351
+ })[] | undefined;
3352
+ kfs?: ({} & {
3353
+ time?: number | undefined;
3354
+ t?: number | undefined;
3355
+ value?: any;
3356
+ v?: any;
3357
+ easing?: string | [number, number, number, number] | undefined;
3358
+ e?: string | [number, number, number, number] | undefined;
3359
+ tangentOut?: [number, number] | undefined;
3360
+ to?: [number, number] | undefined;
3361
+ tangentIn?: [number, number] | undefined;
3362
+ ti?: [number, number] | undefined;
3363
+ selected?: boolean | undefined;
3364
+ })[] | undefined;
3365
+ loop?: boolean | ({} & {
3366
+ segmentCount?: number | undefined;
3367
+ before?: boolean | undefined;
3368
+ alternate?: boolean | undefined;
3369
+ }) | undefined;
3370
+ autoOrient?: boolean | undefined;
3371
+ }> | (string | Record<string, {} & {
1872
3372
  keyframes?: ({} & {
1873
3373
  time?: number | undefined;
1874
3374
  t?: number | undefined;
@@ -1901,7 +3401,7 @@ declare const PxNodeBase: PxSchema<{
1901
3401
  alternate?: boolean | undefined;
1902
3402
  }) | undefined;
1903
3403
  autoOrient?: boolean | undefined;
1904
- }> | undefined, true>;
3404
+ }>)[] | undefined, true>;
1905
3405
  style: PxSchema<string | Record<string, string | number> | undefined, true>;
1906
3406
  };
1907
3407
  };
@@ -1913,8 +3413,8 @@ declare let PxNodeSchema: PxSchema<any>;
1913
3413
  * index signature for arbitrary SVG attributes (cx, cy, r, fill, etc.).
1914
3414
  * Named properties take precedence over the index signature when accessed.
1915
3415
  */
1916
- interface PxNode$1 extends PxInfer<typeof PxNodeBase> {
1917
- children?: PxNode$1[];
3416
+ interface PxNode extends PxInfer<typeof PxNodeBase> {
3417
+ children?: PxNode[];
1918
3418
  [key: string]: any;
1919
3419
  }
1920
3420
  /**
@@ -2181,7 +3681,7 @@ declare const PxSvgNodeExtra: PxSchema<{} & {
2181
3681
  * Extends PxNode (inheriting the open index signature) plus schema-derived
2182
3682
  * SVG-root fields.
2183
3683
  */
2184
- interface PxSvgNode extends PxNode$1, PxInfer<typeof PxSvgNodeExtra> {
3684
+ interface PxSvgNode extends PxNode, PxInfer<typeof PxSvgNodeExtra> {
2185
3685
  }
2186
3686
  /**
2187
3687
  * Root SVG document schema. Enforces `type === 'svg'` to distinguish from child nodes.
@@ -2323,8 +3823,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2323
3823
  meta?: any;
2324
3824
  effects?: ({} & {
2325
3825
  transformation?: ({} & {
2326
- translate?: number[] | ({
2327
- value: number[];
3826
+ translate?: [number, number] | ({
3827
+ value: [number, number];
2328
3828
  } & {}) | ({
2329
3829
  keyframes: ({} & {
2330
3830
  time?: number | undefined;
@@ -2361,8 +3861,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2361
3861
  } & {
2362
3862
  autoOrient?: boolean | undefined;
2363
3863
  }) | undefined;
2364
- scale?: number[] | ({
2365
- value: number[];
3864
+ scale?: [number, number] | ({
3865
+ value: [number, number];
2366
3866
  } & {}) | ({
2367
3867
  keyframes: ({} & {
2368
3868
  time?: number | undefined;
@@ -2380,8 +3880,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2380
3880
  } & {
2381
3881
  autoOrient?: boolean | undefined;
2382
3882
  }) | undefined;
2383
- skew?: number[] | ({
2384
- value: number[];
3883
+ skew?: [number, number] | ({
3884
+ value: [number, number];
2385
3885
  } & {}) | ({
2386
3886
  keyframes: ({} & {
2387
3887
  time?: number | undefined;
@@ -2399,8 +3899,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2399
3899
  } & {
2400
3900
  autoOrient?: boolean | undefined;
2401
3901
  }) | undefined;
2402
- origin?: number[] | ({
2403
- value: number[];
3902
+ origin?: [number, number] | ({
3903
+ value: [number, number];
2404
3904
  } & {}) | ({
2405
3905
  keyframes: ({} & {
2406
3906
  time?: number | undefined;
@@ -2421,10 +3921,82 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2421
3921
  }) | undefined;
2422
3922
  repeater?: ({} & {
2423
3923
  copies?: number | undefined;
2424
- translate?: number[] | undefined;
2425
- rotate?: number | undefined;
2426
- scale?: number[] | undefined;
2427
- origin?: number[] | undefined;
3924
+ translate?: [number, number] | ({
3925
+ value: [number, number];
3926
+ } & {}) | ({
3927
+ keyframes: ({} & {
3928
+ time?: number | undefined;
3929
+ t?: number | undefined;
3930
+ value?: any;
3931
+ v?: any;
3932
+ easing?: string | [number, number, number, number] | undefined;
3933
+ e?: string | [number, number, number, number] | undefined;
3934
+ tangentOut?: [number, number] | undefined;
3935
+ to?: [number, number] | undefined;
3936
+ tangentIn?: [number, number] | undefined;
3937
+ ti?: [number, number] | undefined;
3938
+ selected?: boolean | undefined;
3939
+ })[];
3940
+ } & {
3941
+ autoOrient?: boolean | undefined;
3942
+ }) | undefined;
3943
+ rotate?: number | ({
3944
+ value: number;
3945
+ } & {}) | ({
3946
+ keyframes: ({} & {
3947
+ time?: number | undefined;
3948
+ t?: number | undefined;
3949
+ value?: any;
3950
+ v?: any;
3951
+ easing?: string | [number, number, number, number] | undefined;
3952
+ e?: string | [number, number, number, number] | undefined;
3953
+ tangentOut?: [number, number] | undefined;
3954
+ to?: [number, number] | undefined;
3955
+ tangentIn?: [number, number] | undefined;
3956
+ ti?: [number, number] | undefined;
3957
+ selected?: boolean | undefined;
3958
+ })[];
3959
+ } & {
3960
+ autoOrient?: boolean | undefined;
3961
+ }) | undefined;
3962
+ scale?: [number, number] | ({
3963
+ value: [number, number];
3964
+ } & {}) | ({
3965
+ keyframes: ({} & {
3966
+ time?: number | undefined;
3967
+ t?: number | undefined;
3968
+ value?: any;
3969
+ v?: any;
3970
+ easing?: string | [number, number, number, number] | undefined;
3971
+ e?: string | [number, number, number, number] | undefined;
3972
+ tangentOut?: [number, number] | undefined;
3973
+ to?: [number, number] | undefined;
3974
+ tangentIn?: [number, number] | undefined;
3975
+ ti?: [number, number] | undefined;
3976
+ selected?: boolean | undefined;
3977
+ })[];
3978
+ } & {
3979
+ autoOrient?: boolean | undefined;
3980
+ }) | undefined;
3981
+ origin?: [number, number] | ({
3982
+ value: [number, number];
3983
+ } & {}) | ({
3984
+ keyframes: ({} & {
3985
+ time?: number | undefined;
3986
+ t?: number | undefined;
3987
+ value?: any;
3988
+ v?: any;
3989
+ easing?: string | [number, number, number, number] | undefined;
3990
+ e?: string | [number, number, number, number] | undefined;
3991
+ tangentOut?: [number, number] | undefined;
3992
+ to?: [number, number] | undefined;
3993
+ tangentIn?: [number, number] | undefined;
3994
+ ti?: [number, number] | undefined;
3995
+ selected?: boolean | undefined;
3996
+ })[];
3997
+ } & {
3998
+ autoOrient?: boolean | undefined;
3999
+ }) | undefined;
2428
4000
  }) | undefined;
2429
4001
  maskedBy?: ({} & {
2430
4002
  href?: string | undefined;
@@ -2432,20 +4004,208 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2432
4004
  maskUnits?: string | undefined;
2433
4005
  maskContentUnits?: string | undefined;
2434
4006
  }) | undefined;
2435
- trimPath?: any;
4007
+ trimPath?: ({} & {
4008
+ offset?: number | ({
4009
+ value: number;
4010
+ } & {}) | ({
4011
+ keyframes: ({} & {
4012
+ time?: number | undefined;
4013
+ t?: number | undefined;
4014
+ value?: any;
4015
+ v?: any;
4016
+ easing?: string | [number, number, number, number] | undefined;
4017
+ e?: string | [number, number, number, number] | undefined;
4018
+ tangentOut?: [number, number] | undefined;
4019
+ to?: [number, number] | undefined;
4020
+ tangentIn?: [number, number] | undefined;
4021
+ ti?: [number, number] | undefined;
4022
+ selected?: boolean | undefined;
4023
+ })[];
4024
+ } & {
4025
+ autoOrient?: boolean | undefined;
4026
+ }) | undefined;
4027
+ range?: [number, number] | ({
4028
+ value: [number, number];
4029
+ } & {}) | ({
4030
+ keyframes: ({} & {
4031
+ time?: number | undefined;
4032
+ t?: number | undefined;
4033
+ value?: any;
4034
+ v?: any;
4035
+ easing?: string | [number, number, number, number] | undefined;
4036
+ e?: string | [number, number, number, number] | undefined;
4037
+ tangentOut?: [number, number] | undefined;
4038
+ to?: [number, number] | undefined;
4039
+ tangentIn?: [number, number] | undefined;
4040
+ ti?: [number, number] | undefined;
4041
+ selected?: boolean | undefined;
4042
+ })[];
4043
+ } & {
4044
+ autoOrient?: boolean | undefined;
4045
+ }) | undefined;
4046
+ trimAllAsOne?: boolean | undefined;
4047
+ }) | undefined;
2436
4048
  retime?: ({} & {
2437
4049
  baseId?: string | undefined;
2438
4050
  start?: number | undefined;
2439
4051
  stretch?: number | undefined;
2440
- timeCrop?: number[] | undefined;
4052
+ timeCrop?: [number, number] | undefined;
2441
4053
  }) | undefined;
2442
4054
  isCombinedShape?: boolean | undefined;
2443
4055
  ref?: ({} & {
2444
4056
  baseId?: string | undefined;
2445
4057
  type?: string | undefined;
2446
4058
  }) | undefined;
2447
- }) | undefined;
2448
- animate?: Record<string, {} & {
4059
+ fillGradient?: ({
4060
+ type: "linear" | "radial";
4061
+ } & {
4062
+ p1?: [number, number] | undefined;
4063
+ p2?: [number, number] | undefined;
4064
+ c?: [number, number] | undefined;
4065
+ r?: number | undefined;
4066
+ fp?: [number, number] | undefined;
4067
+ stops?: ({
4068
+ offset: number;
4069
+ color: string;
4070
+ } & {})[] | ({
4071
+ value: ({
4072
+ offset: number;
4073
+ color: string;
4074
+ } & {})[];
4075
+ } & {}) | ({
4076
+ keyframes: ({} & {
4077
+ time?: number | undefined;
4078
+ t?: number | undefined;
4079
+ value?: any;
4080
+ v?: any;
4081
+ easing?: string | [number, number, number, number] | undefined;
4082
+ e?: string | [number, number, number, number] | undefined;
4083
+ tangentOut?: [number, number] | undefined;
4084
+ to?: [number, number] | undefined;
4085
+ tangentIn?: [number, number] | undefined;
4086
+ ti?: [number, number] | undefined;
4087
+ selected?: boolean | undefined;
4088
+ })[];
4089
+ } & {}) | undefined;
4090
+ gradientUnits?: string | undefined;
4091
+ spreadMethod?: string | undefined;
4092
+ gradientTransform?: string | undefined;
4093
+ }) | undefined;
4094
+ strokeGradient?: ({
4095
+ type: "linear" | "radial";
4096
+ } & {
4097
+ p1?: [number, number] | undefined;
4098
+ p2?: [number, number] | undefined;
4099
+ c?: [number, number] | undefined;
4100
+ r?: number | undefined;
4101
+ fp?: [number, number] | undefined;
4102
+ stops?: ({
4103
+ offset: number;
4104
+ color: string;
4105
+ } & {})[] | ({
4106
+ value: ({
4107
+ offset: number;
4108
+ color: string;
4109
+ } & {})[];
4110
+ } & {}) | ({
4111
+ keyframes: ({} & {
4112
+ time?: number | undefined;
4113
+ t?: number | undefined;
4114
+ value?: any;
4115
+ v?: any;
4116
+ easing?: string | [number, number, number, number] | undefined;
4117
+ e?: string | [number, number, number, number] | undefined;
4118
+ tangentOut?: [number, number] | undefined;
4119
+ to?: [number, number] | undefined;
4120
+ tangentIn?: [number, number] | undefined;
4121
+ ti?: [number, number] | undefined;
4122
+ selected?: boolean | undefined;
4123
+ })[];
4124
+ } & {}) | undefined;
4125
+ gradientUnits?: string | undefined;
4126
+ spreadMethod?: string | undefined;
4127
+ gradientTransform?: string | undefined;
4128
+ }) | undefined;
4129
+ textAlongPath?: ({
4130
+ href: string;
4131
+ } & {
4132
+ lengthAdjust?: string | undefined;
4133
+ method?: string | undefined;
4134
+ spacing?: string | undefined;
4135
+ startOffset?: number | ({
4136
+ value: number;
4137
+ } & {}) | ({
4138
+ keyframes: ({} & {
4139
+ time?: number | undefined;
4140
+ t?: number | undefined;
4141
+ value?: any;
4142
+ v?: any;
4143
+ easing?: string | [number, number, number, number] | undefined;
4144
+ e?: string | [number, number, number, number] | undefined;
4145
+ tangentOut?: [number, number] | undefined;
4146
+ to?: [number, number] | undefined;
4147
+ tangentIn?: [number, number] | undefined;
4148
+ ti?: [number, number] | undefined;
4149
+ selected?: boolean | undefined;
4150
+ })[];
4151
+ } & {
4152
+ autoOrient?: boolean | undefined;
4153
+ }) | undefined;
4154
+ textLength?: number | ({
4155
+ value: number;
4156
+ } & {}) | ({
4157
+ keyframes: ({} & {
4158
+ time?: number | undefined;
4159
+ t?: number | undefined;
4160
+ value?: any;
4161
+ v?: any;
4162
+ easing?: string | [number, number, number, number] | undefined;
4163
+ e?: string | [number, number, number, number] | undefined;
4164
+ tangentOut?: [number, number] | undefined;
4165
+ to?: [number, number] | undefined;
4166
+ tangentIn?: [number, number] | undefined;
4167
+ ti?: [number, number] | undefined;
4168
+ selected?: boolean | undefined;
4169
+ })[];
4170
+ } & {
4171
+ autoOrient?: boolean | undefined;
4172
+ }) | undefined;
4173
+ }) | undefined;
4174
+ }) | undefined;
4175
+ animate?: string | Record<string, {} & {
4176
+ keyframes?: ({} & {
4177
+ time?: number | undefined;
4178
+ t?: number | undefined;
4179
+ value?: any;
4180
+ v?: any;
4181
+ easing?: string | [number, number, number, number] | undefined;
4182
+ e?: string | [number, number, number, number] | undefined;
4183
+ tangentOut?: [number, number] | undefined;
4184
+ to?: [number, number] | undefined;
4185
+ tangentIn?: [number, number] | undefined;
4186
+ ti?: [number, number] | undefined;
4187
+ selected?: boolean | undefined;
4188
+ })[] | undefined;
4189
+ kfs?: ({} & {
4190
+ time?: number | undefined;
4191
+ t?: number | undefined;
4192
+ value?: any;
4193
+ v?: any;
4194
+ easing?: string | [number, number, number, number] | undefined;
4195
+ e?: string | [number, number, number, number] | undefined;
4196
+ tangentOut?: [number, number] | undefined;
4197
+ to?: [number, number] | undefined;
4198
+ tangentIn?: [number, number] | undefined;
4199
+ ti?: [number, number] | undefined;
4200
+ selected?: boolean | undefined;
4201
+ })[] | undefined;
4202
+ loop?: boolean | ({} & {
4203
+ segmentCount?: number | undefined;
4204
+ before?: boolean | undefined;
4205
+ alternate?: boolean | undefined;
4206
+ }) | undefined;
4207
+ autoOrient?: boolean | undefined;
4208
+ }> | (string | Record<string, {} & {
2449
4209
  keyframes?: ({} & {
2450
4210
  time?: number | undefined;
2451
4211
  t?: number | undefined;
@@ -2478,7 +4238,7 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2478
4238
  alternate?: boolean | undefined;
2479
4239
  }) | undefined;
2480
4240
  autoOrient?: boolean | undefined;
2481
- }> | undefined;
4241
+ }>)[] | undefined;
2482
4242
  style?: string | Record<string, string | number> | undefined;
2483
4243
  } & {
2484
4244
  [key: string]: any;
@@ -2614,8 +4374,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2614
4374
  meta: PxSchema<any, true>;
2615
4375
  effects: PxSchema<({} & {
2616
4376
  transformation?: ({} & {
2617
- translate?: number[] | ({
2618
- value: number[];
4377
+ translate?: [number, number] | ({
4378
+ value: [number, number];
2619
4379
  } & {}) | ({
2620
4380
  keyframes: ({} & {
2621
4381
  time?: number | undefined;
@@ -2652,8 +4412,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2652
4412
  } & {
2653
4413
  autoOrient?: boolean | undefined;
2654
4414
  }) | undefined;
2655
- scale?: number[] | ({
2656
- value: number[];
4415
+ scale?: [number, number] | ({
4416
+ value: [number, number];
2657
4417
  } & {}) | ({
2658
4418
  keyframes: ({} & {
2659
4419
  time?: number | undefined;
@@ -2671,8 +4431,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2671
4431
  } & {
2672
4432
  autoOrient?: boolean | undefined;
2673
4433
  }) | undefined;
2674
- skew?: number[] | ({
2675
- value: number[];
4434
+ skew?: [number, number] | ({
4435
+ value: [number, number];
2676
4436
  } & {}) | ({
2677
4437
  keyframes: ({} & {
2678
4438
  time?: number | undefined;
@@ -2690,8 +4450,8 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2690
4450
  } & {
2691
4451
  autoOrient?: boolean | undefined;
2692
4452
  }) | undefined;
2693
- origin?: number[] | ({
2694
- value: number[];
4453
+ origin?: [number, number] | ({
4454
+ value: [number, number];
2695
4455
  } & {}) | ({
2696
4456
  keyframes: ({} & {
2697
4457
  time?: number | undefined;
@@ -2712,10 +4472,82 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2712
4472
  }) | undefined;
2713
4473
  repeater?: ({} & {
2714
4474
  copies?: number | undefined;
2715
- translate?: number[] | undefined;
2716
- rotate?: number | undefined;
2717
- scale?: number[] | undefined;
2718
- origin?: number[] | undefined;
4475
+ translate?: [number, number] | ({
4476
+ value: [number, number];
4477
+ } & {}) | ({
4478
+ keyframes: ({} & {
4479
+ time?: number | undefined;
4480
+ t?: number | undefined;
4481
+ value?: any;
4482
+ v?: any;
4483
+ easing?: string | [number, number, number, number] | undefined;
4484
+ e?: string | [number, number, number, number] | undefined;
4485
+ tangentOut?: [number, number] | undefined;
4486
+ to?: [number, number] | undefined;
4487
+ tangentIn?: [number, number] | undefined;
4488
+ ti?: [number, number] | undefined;
4489
+ selected?: boolean | undefined;
4490
+ })[];
4491
+ } & {
4492
+ autoOrient?: boolean | undefined;
4493
+ }) | undefined;
4494
+ rotate?: number | ({
4495
+ value: number;
4496
+ } & {}) | ({
4497
+ keyframes: ({} & {
4498
+ time?: number | undefined;
4499
+ t?: number | undefined;
4500
+ value?: any;
4501
+ v?: any;
4502
+ easing?: string | [number, number, number, number] | undefined;
4503
+ e?: string | [number, number, number, number] | undefined;
4504
+ tangentOut?: [number, number] | undefined;
4505
+ to?: [number, number] | undefined;
4506
+ tangentIn?: [number, number] | undefined;
4507
+ ti?: [number, number] | undefined;
4508
+ selected?: boolean | undefined;
4509
+ })[];
4510
+ } & {
4511
+ autoOrient?: boolean | undefined;
4512
+ }) | undefined;
4513
+ scale?: [number, number] | ({
4514
+ value: [number, number];
4515
+ } & {}) | ({
4516
+ keyframes: ({} & {
4517
+ time?: number | undefined;
4518
+ t?: number | undefined;
4519
+ value?: any;
4520
+ v?: any;
4521
+ easing?: string | [number, number, number, number] | undefined;
4522
+ e?: string | [number, number, number, number] | undefined;
4523
+ tangentOut?: [number, number] | undefined;
4524
+ to?: [number, number] | undefined;
4525
+ tangentIn?: [number, number] | undefined;
4526
+ ti?: [number, number] | undefined;
4527
+ selected?: boolean | undefined;
4528
+ })[];
4529
+ } & {
4530
+ autoOrient?: boolean | undefined;
4531
+ }) | undefined;
4532
+ origin?: [number, number] | ({
4533
+ value: [number, number];
4534
+ } & {}) | ({
4535
+ keyframes: ({} & {
4536
+ time?: number | undefined;
4537
+ t?: number | undefined;
4538
+ value?: any;
4539
+ v?: any;
4540
+ easing?: string | [number, number, number, number] | undefined;
4541
+ e?: string | [number, number, number, number] | undefined;
4542
+ tangentOut?: [number, number] | undefined;
4543
+ to?: [number, number] | undefined;
4544
+ tangentIn?: [number, number] | undefined;
4545
+ ti?: [number, number] | undefined;
4546
+ selected?: boolean | undefined;
4547
+ })[];
4548
+ } & {
4549
+ autoOrient?: boolean | undefined;
4550
+ }) | undefined;
2719
4551
  }) | undefined;
2720
4552
  maskedBy?: ({} & {
2721
4553
  href?: string | undefined;
@@ -2723,20 +4555,208 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2723
4555
  maskUnits?: string | undefined;
2724
4556
  maskContentUnits?: string | undefined;
2725
4557
  }) | undefined;
2726
- trimPath?: any;
4558
+ trimPath?: ({} & {
4559
+ offset?: number | ({
4560
+ value: number;
4561
+ } & {}) | ({
4562
+ keyframes: ({} & {
4563
+ time?: number | undefined;
4564
+ t?: number | undefined;
4565
+ value?: any;
4566
+ v?: any;
4567
+ easing?: string | [number, number, number, number] | undefined;
4568
+ e?: string | [number, number, number, number] | undefined;
4569
+ tangentOut?: [number, number] | undefined;
4570
+ to?: [number, number] | undefined;
4571
+ tangentIn?: [number, number] | undefined;
4572
+ ti?: [number, number] | undefined;
4573
+ selected?: boolean | undefined;
4574
+ })[];
4575
+ } & {
4576
+ autoOrient?: boolean | undefined;
4577
+ }) | undefined;
4578
+ range?: [number, number] | ({
4579
+ value: [number, number];
4580
+ } & {}) | ({
4581
+ keyframes: ({} & {
4582
+ time?: number | undefined;
4583
+ t?: number | undefined;
4584
+ value?: any;
4585
+ v?: any;
4586
+ easing?: string | [number, number, number, number] | undefined;
4587
+ e?: string | [number, number, number, number] | undefined;
4588
+ tangentOut?: [number, number] | undefined;
4589
+ to?: [number, number] | undefined;
4590
+ tangentIn?: [number, number] | undefined;
4591
+ ti?: [number, number] | undefined;
4592
+ selected?: boolean | undefined;
4593
+ })[];
4594
+ } & {
4595
+ autoOrient?: boolean | undefined;
4596
+ }) | undefined;
4597
+ trimAllAsOne?: boolean | undefined;
4598
+ }) | undefined;
2727
4599
  retime?: ({} & {
2728
4600
  baseId?: string | undefined;
2729
4601
  start?: number | undefined;
2730
4602
  stretch?: number | undefined;
2731
- timeCrop?: number[] | undefined;
4603
+ timeCrop?: [number, number] | undefined;
2732
4604
  }) | undefined;
2733
4605
  isCombinedShape?: boolean | undefined;
2734
4606
  ref?: ({} & {
2735
4607
  baseId?: string | undefined;
2736
4608
  type?: string | undefined;
2737
4609
  }) | undefined;
4610
+ fillGradient?: ({
4611
+ type: "linear" | "radial";
4612
+ } & {
4613
+ p1?: [number, number] | undefined;
4614
+ p2?: [number, number] | undefined;
4615
+ c?: [number, number] | undefined;
4616
+ r?: number | undefined;
4617
+ fp?: [number, number] | undefined;
4618
+ stops?: ({
4619
+ offset: number;
4620
+ color: string;
4621
+ } & {})[] | ({
4622
+ value: ({
4623
+ offset: number;
4624
+ color: string;
4625
+ } & {})[];
4626
+ } & {}) | ({
4627
+ keyframes: ({} & {
4628
+ time?: number | undefined;
4629
+ t?: number | undefined;
4630
+ value?: any;
4631
+ v?: any;
4632
+ easing?: string | [number, number, number, number] | undefined;
4633
+ e?: string | [number, number, number, number] | undefined;
4634
+ tangentOut?: [number, number] | undefined;
4635
+ to?: [number, number] | undefined;
4636
+ tangentIn?: [number, number] | undefined;
4637
+ ti?: [number, number] | undefined;
4638
+ selected?: boolean | undefined;
4639
+ })[];
4640
+ } & {}) | undefined;
4641
+ gradientUnits?: string | undefined;
4642
+ spreadMethod?: string | undefined;
4643
+ gradientTransform?: string | undefined;
4644
+ }) | undefined;
4645
+ strokeGradient?: ({
4646
+ type: "linear" | "radial";
4647
+ } & {
4648
+ p1?: [number, number] | undefined;
4649
+ p2?: [number, number] | undefined;
4650
+ c?: [number, number] | undefined;
4651
+ r?: number | undefined;
4652
+ fp?: [number, number] | undefined;
4653
+ stops?: ({
4654
+ offset: number;
4655
+ color: string;
4656
+ } & {})[] | ({
4657
+ value: ({
4658
+ offset: number;
4659
+ color: string;
4660
+ } & {})[];
4661
+ } & {}) | ({
4662
+ keyframes: ({} & {
4663
+ time?: number | undefined;
4664
+ t?: number | undefined;
4665
+ value?: any;
4666
+ v?: any;
4667
+ easing?: string | [number, number, number, number] | undefined;
4668
+ e?: string | [number, number, number, number] | undefined;
4669
+ tangentOut?: [number, number] | undefined;
4670
+ to?: [number, number] | undefined;
4671
+ tangentIn?: [number, number] | undefined;
4672
+ ti?: [number, number] | undefined;
4673
+ selected?: boolean | undefined;
4674
+ })[];
4675
+ } & {}) | undefined;
4676
+ gradientUnits?: string | undefined;
4677
+ spreadMethod?: string | undefined;
4678
+ gradientTransform?: string | undefined;
4679
+ }) | undefined;
4680
+ textAlongPath?: ({
4681
+ href: string;
4682
+ } & {
4683
+ lengthAdjust?: string | undefined;
4684
+ method?: string | undefined;
4685
+ spacing?: string | undefined;
4686
+ startOffset?: number | ({
4687
+ value: number;
4688
+ } & {}) | ({
4689
+ keyframes: ({} & {
4690
+ time?: number | undefined;
4691
+ t?: number | undefined;
4692
+ value?: any;
4693
+ v?: any;
4694
+ easing?: string | [number, number, number, number] | undefined;
4695
+ e?: string | [number, number, number, number] | undefined;
4696
+ tangentOut?: [number, number] | undefined;
4697
+ to?: [number, number] | undefined;
4698
+ tangentIn?: [number, number] | undefined;
4699
+ ti?: [number, number] | undefined;
4700
+ selected?: boolean | undefined;
4701
+ })[];
4702
+ } & {
4703
+ autoOrient?: boolean | undefined;
4704
+ }) | undefined;
4705
+ textLength?: number | ({
4706
+ value: number;
4707
+ } & {}) | ({
4708
+ keyframes: ({} & {
4709
+ time?: number | undefined;
4710
+ t?: number | undefined;
4711
+ value?: any;
4712
+ v?: any;
4713
+ easing?: string | [number, number, number, number] | undefined;
4714
+ e?: string | [number, number, number, number] | undefined;
4715
+ tangentOut?: [number, number] | undefined;
4716
+ to?: [number, number] | undefined;
4717
+ tangentIn?: [number, number] | undefined;
4718
+ ti?: [number, number] | undefined;
4719
+ selected?: boolean | undefined;
4720
+ })[];
4721
+ } & {
4722
+ autoOrient?: boolean | undefined;
4723
+ }) | undefined;
4724
+ }) | undefined;
2738
4725
  }) | undefined, true>;
2739
- animate: PxSchema<Record<string, {} & {
4726
+ animate: PxSchema<string | Record<string, {} & {
4727
+ keyframes?: ({} & {
4728
+ time?: number | undefined;
4729
+ t?: number | undefined;
4730
+ value?: any;
4731
+ v?: any;
4732
+ easing?: string | [number, number, number, number] | undefined;
4733
+ e?: string | [number, number, number, number] | undefined;
4734
+ tangentOut?: [number, number] | undefined;
4735
+ to?: [number, number] | undefined;
4736
+ tangentIn?: [number, number] | undefined;
4737
+ ti?: [number, number] | undefined;
4738
+ selected?: boolean | undefined;
4739
+ })[] | undefined;
4740
+ kfs?: ({} & {
4741
+ time?: number | undefined;
4742
+ t?: number | undefined;
4743
+ value?: any;
4744
+ v?: any;
4745
+ easing?: string | [number, number, number, number] | undefined;
4746
+ e?: string | [number, number, number, number] | undefined;
4747
+ tangentOut?: [number, number] | undefined;
4748
+ to?: [number, number] | undefined;
4749
+ tangentIn?: [number, number] | undefined;
4750
+ ti?: [number, number] | undefined;
4751
+ selected?: boolean | undefined;
4752
+ })[] | undefined;
4753
+ loop?: boolean | ({} & {
4754
+ segmentCount?: number | undefined;
4755
+ before?: boolean | undefined;
4756
+ alternate?: boolean | undefined;
4757
+ }) | undefined;
4758
+ autoOrient?: boolean | undefined;
4759
+ }> | (string | Record<string, {} & {
2740
4760
  keyframes?: ({} & {
2741
4761
  time?: number | undefined;
2742
4762
  t?: number | undefined;
@@ -2769,7 +4789,7 @@ declare const PxAnimatedSvgDocumentSchema: PxSchema<{
2769
4789
  alternate?: boolean | undefined;
2770
4790
  }) | undefined;
2771
4791
  autoOrient?: boolean | undefined;
2772
- }> | undefined, true>;
4792
+ }>)[] | undefined, true>;
2773
4793
  style: PxSchema<string | Record<string, string | number> | undefined, true>;
2774
4794
  };
2775
4795
  };
@@ -2848,7 +4868,7 @@ declare function isPxElementFileFormatDeep(fileJson: any): PxValidationResult;
2848
4868
  declare function getAnimatorConfig(doc: PxAnimatedSvgDocument): PxAnimatorConfig | undefined;
2849
4869
  declare function getDefs(doc: PxAnimatedSvgDocument): PxDefs | undefined;
2850
4870
  declare function getBindings(doc: PxAnimatedSvgDocument): PxBinding[] | undefined;
2851
- declare function getChildren(doc: PxAnimatedSvgDocument): PxNode$1[] | undefined;
4871
+ declare function getChildren(doc: PxAnimatedSvgDocument): PxNode[] | undefined;
2852
4872
 
2853
4873
  /**
2854
4874
  * Platform adapter interface for abstracting DOM-specific operations.
@@ -2975,12 +4995,26 @@ declare function camelCaseToKebabWordIfNeeded(camel: string): string;
2975
4995
  */
2976
4996
  declare function setupAnimationTriggers(api: PxAnimatorAPI, config: PxTrigger): PxAnimatorAPI;
2977
4997
 
4998
+ /**
4999
+ * Replaces `propAnim.loop` with explicit repeated keyframes via
5000
+ * `expandLoopKeyframes`. Returns the input by reference when no loop is
5001
+ * configured (no-op). Output drops the `loop` field (consumed).
5002
+ */
5003
+ declare function materialiseInternalLoopsInPropAnim(propName: string, propAnim: PxPropertyAnimation, duration: number): PxPropertyAnimation;
5004
+ /**
5005
+ * Walks `root` and materialises every animated property's `loop` via
5006
+ * `materialiseInternalLoopsInPropAnim`. Immutable — returns the input by
5007
+ * reference when no loop was found anywhere; otherwise clones along the path
5008
+ * to each affected node, sharing untouched sub-trees.
5009
+ */
5010
+ declare function materialiseInternalLoopsInTree(root: PxNode, duration: number): PxNode;
2978
5011
  /**
2979
5012
  * Normalizes a PxAnimatedSvgDocument to a PxAnimatorConfig for the animation engines.
2980
5013
  * This is the main entry point for converting the new API format to internal format.
2981
- * Resolves animation/easing references.
5014
+ * Resolves animation/easing references. `engine` controls motion-along-path
5015
+ * handling — see {@link PxAnimatorEngine}.
2982
5016
  */
2983
- declare function getNormalisedBindings(doc: PxAnimatedSvgDocument): PxBinding[];
5017
+ declare function getNormalisedBindings(doc: PxAnimatedSvgDocument, engine?: PxAnimatorEngine): PxBinding[];
2984
5018
  /**
2985
5019
  * Calculates interpolated attribute values for an animation definition.
2986
5020
  * @param animDef The animation definition (with resolved refs and normalized times)
@@ -2989,11 +5023,83 @@ declare function getNormalisedBindings(doc: PxAnimatedSvgDocument): PxBinding[];
2989
5023
  */
2990
5024
  declare function calcAnimationValues(animDef: PxAnimationDefinition, progress: number): Record<string, string>;
2991
5025
 
5026
+ type Point2 = [number, number];
5027
+ /**
5028
+ * True when `anim` is a motion-along-path animation — at least one keyframe
5029
+ * carries spatial tangents (`tangentIn` / `tangentOut`) and/or the animation
5030
+ * has `autoOrient` set. Animation-level helper; works for either the body
5031
+ * `transform` slot or a composite per-part `translate` slot.
5032
+ */
5033
+ declare function propAnimIsMotionPath(anim: PxPropertyAnimation): boolean;
5034
+ interface MotionPathSample {
5035
+ /** Translate at the current time (motion-path arc-length-parametrised). */
5036
+ readonly translate: Point2;
5037
+ /** Auto-orient rotation in degrees (only when `autoOrient` is set). */
5038
+ readonly rotateDeg?: number;
5039
+ }
5040
+ /**
5041
+ * Evaluates the motion-path position (and optional auto-orient rotation) for a
5042
+ * single segment kf[i] → kf[i+1], given local progress already remapped to
5043
+ * `[0, 1]` and eased. Builds (or reuses cached) Bezier control points
5044
+ * `P1 = P0 + tangentOut`, `P2 = P3 + tangentIn`, maps `localProgress` to arc
5045
+ * length, then to curve parameter `t` via the arc-length LUT.
5046
+ */
5047
+ declare function evaluateMotionPathSegment(prevKf: PxKeyframe, nextKf: PxKeyframe, prevPos: Point2, nextPos: Point2, localProgress: number, autoOrient: boolean): MotionPathSample;
5048
+ /** Sampling configuration shared by `materialiseMotionPathInPropAnim` + `materialiseMotionPathsInTree`. */
5049
+ interface MotionPathMaterialisationOptions {
5050
+ /** Max chord-to-curve deviation per sub-interval, in user units (default 0.5). */
5051
+ flatnessTolerance?: number;
5052
+ /** Max rotation delta (in degrees) between adjacent samples when `autoOrient`
5053
+ * is set (default 5). */
5054
+ rotationTolerance?: number;
5055
+ /** Hard cap on samples per original segment; prevents runaway recursion on
5056
+ * pathological inputs (default 32). */
5057
+ maxSamplesPerSegment?: number;
5058
+ }
5059
+ /**
5060
+ * Converts ONE animated property to sampled transform kfs.
5061
+ *
5062
+ * Returns a NEW `PxPropertyAnimation` whose `kfs` are flat
5063
+ * `{ translate, rotate? }` records placed at curve extrema and adaptive
5064
+ * bisection points. Positions are arc-length-parametrised; easing is split via
5065
+ * De Casteljau so per-sub-segment easings reproduce the input easing exactly.
5066
+ * Original `loop` is carried across; `autoOrient` and per-kf `tangentIn` /
5067
+ * `tangentOut` are consumed.
5068
+ *
5069
+ * Returns the input unchanged (by reference) when it's not a motion-path
5070
+ * animation — callers can blindly run it through every propAnim.
5071
+ */
5072
+ declare function materialiseMotionPathInPropAnim(anim: PxPropertyAnimation, opts?: MotionPathMaterialisationOptions): PxPropertyAnimation;
5073
+ declare function materialiseMotionPathsInTree(root: PxNode, opts?: MotionPathMaterialisationOptions): PxNode;
5074
+
5075
+ /**
5076
+ * Walks `root`. For every `<use>` whose `href` target subtree contains any
5077
+ * `animate` bucket (recursively, following further `<use>` chains and
5078
+ * children), replaces the `<use>` with a `<g>` carrying a deep clone of the
5079
+ * target. The clone gets a fresh id on every node, and any internal `href` /
5080
+ * `url(#…)` refs that pointed at ids inside the cloned subtree are rewritten
5081
+ * to the new ids. Refs that point OUTSIDE the cloned subtree (e.g. a sibling
5082
+ * gradient) are left untouched.
5083
+ *
5084
+ * Recursive: if the materialised clone itself contains a `<use>` that needs
5085
+ * materialisation, that's handled in the same pass.
5086
+ */
5087
+ declare function materialiseAnimatedUseInstances(root: PxNode): PxNode;
5088
+
5089
+ /** Options accepted by {@link materialiseAllInTree}. Mostly forwarded to the
5090
+ * per-stage materialisers; ordering is fixed (see module doc). */
5091
+ interface MaterialiseAllOptions {
5092
+ /** Knobs forwarded to `materialiseMotionPathsInTree`. Only consulted for
5093
+ * `engine === webapi` — frames-mode skips that stage entirely. */
5094
+ motionPath?: MotionPathMaterialisationOptions;
5095
+ }
5096
+ declare function materialiseAllInTree(doc: PxAnimatedSvgDocument, engine: PxAnimatorEngine, opts?: MaterialiseAllOptions): PxAnimatedSvgDocument;
5097
+
2992
5098
  declare function getNormalizedProps(props: Record<string, any>): Record<string, any>;
2993
5099
  /**
2994
5100
  * Renders a PxNode tree to DOM elements.
2995
5101
  */
2996
- declare function renderNode(node: PxNode$1, defs?: PxDefs): Element | null;
5102
+ declare function renderNode(node: PxNode, defs?: PxDefs): Element | null;
2997
5103
 
2998
5104
  /**
2999
5105
  * Creates an animator instance that uses the native Web Animations API.
@@ -3010,83 +5116,15 @@ declare function renderNode(node: PxNode$1, defs?: PxDefs): Element | null;
3010
5116
  declare function createWebApiAnimator(doc: PxAnimatedSvgDocument, callbacks?: PxAnimatorCallbacksConfig, rootElement?: Element | null, forceEvenIfHasUnsupportedAttrs?: boolean): PxAnimatorAPI | null;
3011
5117
 
3012
5118
  /**
3013
- * Shared types for the lightweight player-effects applier.
5119
+ * Applier-runtime types: `ApplyContext` (per-run mutable state) and `ApplyResult`
5120
+ * (return shape of `applyPlayerEffects`).
3014
5121
  *
3015
- * The node keys used across these files (`type`, `children`, `transform`,
3016
- * `animate`, `href`, …) are the stable on-disk WIRE keys — accessed by literal
3017
- * dot-notation on purpose. Nothing here imports anything but plain TS, so the
3018
- * whole `effects/` folder can move into the Player codebase verbatim.
5122
+ * The wire-shape types (`PxNode`, `PxEffects`, individual effect shapes,
5123
+ * `PxAnimatable<T>`, etc.) live in `../PxAnimatorTypes` — the single source
5124
+ * of truth that pairs each interface with its runtime `Px*Schema` via
5125
+ * `implementsInterface`. Effect modules import those directly from there.
3019
5126
  */
3020
- /** A serialised SVGA node. Loose by design — this is parsed wire JSON. */
3021
- interface PxNode {
3022
- type?: string;
3023
- children?: Array<PxNode>;
3024
- effects?: PxEffects;
3025
- [attr: string]: any;
3026
- }
3027
- /** The `node.effects` bucket the player-effects writer emits (render effects only). */
3028
- interface PxEffects {
3029
- transformation?: PxTransformationEffect;
3030
- repeater?: PxRepeaterEffect;
3031
- maskedBy?: PxMaskedByEffect;
3032
- trimPath?: object;
3033
- retime?: PxRetimeEffect;
3034
- isCombinedShape?: boolean;
3035
- ref?: PxRefEffect;
3036
- }
3037
- /** `<use>` retime effect: `baseId` = source symbol/element; `start`/`timeCrop` in ms
3038
- * (no frame rate in the Player). The source's keyframe times are remapped
3039
- * `t' = start + t·stretch`. */
3040
- interface PxRetimeEffect {
3041
- baseId?: string;
3042
- start?: number;
3043
- stretch?: number;
3044
- timeCrop?: [number, number];
3045
- }
3046
- /** `<use>` reference effect: `baseId` = source element id; `type` = sub-ref mode
3047
- * (`content` = exclude object-translate, the former `noRefTranslate`). */
3048
- interface PxRefEffect {
3049
- baseId?: string;
3050
- type?: string;
3051
- }
3052
- type Vec2 = [number, number];
3053
- /** An animatable value: a raw static value, a `{value}` static, or `{keyframes}`.
3054
- * Animated translate may additionally carry `autoOrient` (motion-path rotation
3055
- * derived from the curve tangent) at the animation level, and `tangentOut` /
3056
- * `tangentIn` on individual keyframes (curve handles). */
3057
- type PxAnimatable<T> = T | {
3058
- value: T;
3059
- } | {
3060
- keyframes: Array<PxKeyframe<T>>;
3061
- autoOrient?: boolean;
3062
- };
3063
- interface PxKeyframe<T> {
3064
- time?: number;
3065
- value?: T;
3066
- easing?: Array<number>;
3067
- tangentOut?: Vec2;
3068
- tangentIn?: Vec2;
3069
- }
3070
- interface PxTransformationEffect {
3071
- translate?: PxAnimatable<Vec2>;
3072
- rotate?: PxAnimatable<number>;
3073
- scale?: PxAnimatable<Vec2>;
3074
- skew?: PxAnimatable<Vec2>;
3075
- origin?: PxAnimatable<Vec2>;
3076
- }
3077
- interface PxRepeaterEffect {
3078
- copies?: number;
3079
- translate?: Vec2;
3080
- rotate?: number;
3081
- scale?: Vec2;
3082
- origin?: Vec2;
3083
- }
3084
- interface PxMaskedByEffect {
3085
- href?: string;
3086
- maskType?: string;
3087
- maskUnits?: string;
3088
- maskContentUnits?: string;
3089
- }
5127
+
3090
5128
  /** Collected diagnostics + new <defs> nodes accumulated during a run. */
3091
5129
  interface ApplyResult {
3092
5130
  root: PxNode;
@@ -3132,4 +5170,4 @@ interface EffectDiff {
3132
5170
  */
3133
5171
  declare function diffInEffect(a: VmNode, b: VmNode): Array<EffectDiff>;
3134
5172
 
3135
- export { type ApplyResult, COLOUR_ATTR_NAMES, type FillMode, type JsMode, type KeysMatch, type OutAction, PX_ANIMATOR_DATA_KEY, PX_ANIM_ATTR_NAME, PX_ANIM_SRC_ATTR_NAME, PX_TRANSFORM_PART_KEYS, type PlaybackDirection, type PxAnimatedSvgDocument, PxAnimatedSvgDocumentSchema, type PxAnimationDefinition, PxAnimationDefinitionSchema, type PxAnimatorAPI, type PxAnimatorCallbacksConfig, type PxAnimatorConfig, PxAnimatorConfigSchema, type PxAnimatorOptions, type PxAttrValue, PxAttrValueSchema, type PxBezierPath, PxBezierPathSchema, type PxBinding, PxBindingSchema, type PxDefs, PxDefsSchema, PxEasingOrRefSchema, type PxEffects, type PxNode as PxEffectsNode, PxEffectsSchema, type PxElementAnimation, PxElementAnimationSchema, type PxInfer, type PxKeyframe$1 as PxKeyframe, PxKeyframeSchema, PxLoopSchema, PxMaskedByEffectSchema, type PxNode$1 as PxNode, PxNodeBase, PxNodeSchema, type PxPlatformAdapter, type PxPropertyAnimation, PxPropertyAnimationSchema, PxRefEffectSchema, PxRepeaterEffectSchema, PxRetimeEffectSchema, type PxSchema, type PxSchemaDesc, type PxSvgNode, PxSvgNodeExtra, type PxTransformPartKey, type PxTransformParts, PxTransformPartsSchema, type PxTransformValue, PxTransformValueSchema, PxTransformationEffectSchema, type PxTrigger, PxTriggerSchema, PxTrimPathEffectSchema, type PxValidationContext, type PxValidationResult, type RemoveIndex, STYLE_ATTR_NAMES, type StartOn, TRANSFORM_FN_NAMES, applyPlayerEffects, calcAnimationValues, camelCaseToKebabWordIfNeeded, collectSampleTimes, createAnimator, createAnimatorImpl, createBasicFrameLoopAnimator, createFrameLoopAnimator, createWebApiAnimator, describeSchema, diffInEffect, generateNewIds, getAnimatorConfig, getBindings, getChildren, getDefs, getNormalizedProps, isPxElementFileFormat, isPxElementFileFormatDeep, loadTagAnimators, getNormalisedBindings as normalizeDocument, px, renderNode, schemaKeys, setupAnimationTriggers, toRGBA, validateNodeEffects, visualModelAt };
5173
+ export { type ApplyResult, COLOUR_ATTR_NAMES, type FillMode, type JsMode, type KeysMatch, type MaterialiseAllOptions, type MotionPathMaterialisationOptions, type MotionPathSample, type OutAction, PX_ANIMATOR_DATA_KEY, PX_ANIM_ATTR_NAME, PX_ANIM_SRC_ATTR_NAME, PX_TRANSFORM_PART_KEYS, type PlaybackDirection, type PxAnimatable, type PxAnimatedSvgDocument, PxAnimatedSvgDocumentSchema, type PxAnimationDefinition, PxAnimationDefinitionSchema, type PxAnimatorAPI, type PxAnimatorCallbacksConfig, type PxAnimatorConfig, PxAnimatorConfigSchema, PxAnimatorEngine, PxAnimatorMode, type PxAnimatorOptions, type PxAttrValue, PxAttrValueSchema, type PxBezierPath, PxBezierPathSchema, type PxBinding, PxBindingSchema, type PxDefs, PxDefsSchema, PxEasingOrRefSchema, type PxEffects, PxEffectsSchema, type PxElementAnimation, PxElementAnimationSchema, type PxFillGradientEffect, PxFillGradientEffectSchema, PxGradientSpreadMethod, type PxGradientStop, PxGradientStopSchema, PxGradientType, PxGradientUnits, type PxInfer, type PxKeyframe, PxKeyframeSchema, PxLoopSchema, type PxMaskedByEffect, PxMaskedByEffectSchema, type PxNode, PxNodeBase, PxNodeSchema, type PxPlatformAdapter, type PxPropertyAnimation, PxPropertyAnimationSchema, type PxRefEffect, PxRefEffectSchema, type PxRepeaterEffect, PxRepeaterEffectSchema, type PxRetimeEffect, PxRetimeEffectSchema, type PxSchema, type PxSchemaDesc, type PxStrokeGradientEffect, PxStrokeGradientEffectSchema, type PxSvgNode, PxSvgNodeExtra, type PxTextAlongPathEffect, PxTextAlongPathEffectSchema, type PxTransformPartKey, type PxTransformParts, PxTransformPartsSchema, type PxTransformValue, PxTransformValueSchema, type PxTransformationEffect, PxTransformationEffectSchema, type PxTrigger, PxTriggerSchema, type PxTrimPathEffect, PxTrimPathEffectSchema, type PxValidationContext, type PxValidationResult, type RemoveIndex, STYLE_ATTR_NAMES, type StartOn, TRANSFORM_FN_NAMES, type Vec2, applyPlayerEffects, calcAnimationValues, camelCaseToKebabWordIfNeeded, collectSampleTimes, createAnimator, createAnimatorImpl, createBasicFrameLoopAnimator, createFrameLoopAnimator, createWebApiAnimator, describeSchema, diffInEffect, evaluateMotionPathSegment, generateNewIds, getAnimatorConfig, getBindings, getChildren, getDefs, getNormalizedProps, isPxElementFileFormat, isPxElementFileFormatDeep, loadTagAnimators, materialiseAllInTree, materialiseAnimatedUseInstances, materialiseInternalLoopsInPropAnim, materialiseInternalLoopsInTree, materialiseMotionPathInPropAnim, materialiseMotionPathsInTree, getNormalisedBindings as normalizeDocument, propAnimIsMotionPath, px, renderNode, schemaKeys, setupAnimationTriggers, toRGBA, validateNodeEffects, visualModelAt };