@energy8platform/golem 0.3.0 → 0.5.0

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.
@@ -742,6 +742,59 @@ export declare const Key: z.ZodObject<{
742
742
  } | undefined;
743
743
  }>;
744
744
  export declare const Track: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
745
+ keys: z.ZodArray<z.ZodObject<{
746
+ t: z.ZodNumber;
747
+ v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
748
+ /** easing INTO the next key */
749
+ ease: z.ZodDefault<z.ZodUnion<[z.ZodEnum<["linear", "step", "ease_in", "ease_out", "ease_in_out", "minimum_jerk", "back_out", "elastic_out"]>, z.ZodObject<{
750
+ bezier: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
751
+ }, "strip", z.ZodTypeAny, {
752
+ bezier: [number, number, number, number];
753
+ }, {
754
+ bezier: [number, number, number, number];
755
+ }>]>>;
756
+ }, "strip", z.ZodTypeAny, {
757
+ t: number;
758
+ v: string | number | number[] | string[] | null;
759
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
760
+ bezier: [number, number, number, number];
761
+ };
762
+ }, {
763
+ t: number;
764
+ v: string | number | number[] | string[] | null;
765
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
766
+ bezier: [number, number, number, number];
767
+ } | undefined;
768
+ }>, "many">;
769
+ interpolation: z.ZodOptional<z.ZodEnum<["segment", "pchip"]>>;
770
+ target: z.ZodLiteral<"control">;
771
+ id: z.ZodString;
772
+ prop: z.ZodLiteral<"value">;
773
+ }, "strip", z.ZodTypeAny, {
774
+ keys: {
775
+ t: number;
776
+ v: string | number | number[] | string[] | null;
777
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
778
+ bezier: [number, number, number, number];
779
+ };
780
+ }[];
781
+ id: string;
782
+ target: "control";
783
+ prop: "value";
784
+ interpolation?: "segment" | "pchip" | undefined;
785
+ }, {
786
+ keys: {
787
+ t: number;
788
+ v: string | number | number[] | string[] | null;
789
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
790
+ bezier: [number, number, number, number];
791
+ } | undefined;
792
+ }[];
793
+ id: string;
794
+ target: "control";
795
+ prop: "value";
796
+ interpolation?: "segment" | "pchip" | undefined;
797
+ }>, z.ZodObject<{
745
798
  keys: z.ZodArray<z.ZodObject<{
746
799
  t: z.ZodNumber;
747
800
  v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
@@ -1131,6 +1184,59 @@ export declare const Animation: z.ZodObject<{
1131
1184
  duration: z.ZodNumber;
1132
1185
  loop: z.ZodDefault<z.ZodBoolean>;
1133
1186
  tracks: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
1187
+ keys: z.ZodArray<z.ZodObject<{
1188
+ t: z.ZodNumber;
1189
+ v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
1190
+ /** easing INTO the next key */
1191
+ ease: z.ZodDefault<z.ZodUnion<[z.ZodEnum<["linear", "step", "ease_in", "ease_out", "ease_in_out", "minimum_jerk", "back_out", "elastic_out"]>, z.ZodObject<{
1192
+ bezier: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
1193
+ }, "strip", z.ZodTypeAny, {
1194
+ bezier: [number, number, number, number];
1195
+ }, {
1196
+ bezier: [number, number, number, number];
1197
+ }>]>>;
1198
+ }, "strip", z.ZodTypeAny, {
1199
+ t: number;
1200
+ v: string | number | number[] | string[] | null;
1201
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
1202
+ bezier: [number, number, number, number];
1203
+ };
1204
+ }, {
1205
+ t: number;
1206
+ v: string | number | number[] | string[] | null;
1207
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
1208
+ bezier: [number, number, number, number];
1209
+ } | undefined;
1210
+ }>, "many">;
1211
+ interpolation: z.ZodOptional<z.ZodEnum<["segment", "pchip"]>>;
1212
+ target: z.ZodLiteral<"control">;
1213
+ id: z.ZodString;
1214
+ prop: z.ZodLiteral<"value">;
1215
+ }, "strip", z.ZodTypeAny, {
1216
+ keys: {
1217
+ t: number;
1218
+ v: string | number | number[] | string[] | null;
1219
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
1220
+ bezier: [number, number, number, number];
1221
+ };
1222
+ }[];
1223
+ id: string;
1224
+ target: "control";
1225
+ prop: "value";
1226
+ interpolation?: "segment" | "pchip" | undefined;
1227
+ }, {
1228
+ keys: {
1229
+ t: number;
1230
+ v: string | number | number[] | string[] | null;
1231
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
1232
+ bezier: [number, number, number, number];
1233
+ } | undefined;
1234
+ }[];
1235
+ id: string;
1236
+ target: "control";
1237
+ prop: "value";
1238
+ interpolation?: "segment" | "pchip" | undefined;
1239
+ }>, z.ZodObject<{
1134
1240
  keys: z.ZodArray<z.ZodObject<{
1135
1241
  t: z.ZodNumber;
1136
1242
  v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
@@ -1531,6 +1637,18 @@ export declare const Animation: z.ZodObject<{
1531
1637
  duration: number;
1532
1638
  loop: boolean;
1533
1639
  tracks: ({
1640
+ keys: {
1641
+ t: number;
1642
+ v: string | number | number[] | string[] | null;
1643
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
1644
+ bezier: [number, number, number, number];
1645
+ };
1646
+ }[];
1647
+ id: string;
1648
+ target: "control";
1649
+ prop: "value";
1650
+ interpolation?: "segment" | "pchip" | undefined;
1651
+ } | {
1534
1652
  keys: {
1535
1653
  t: number;
1536
1654
  v: string | number | number[] | string[] | null;
@@ -1629,6 +1747,18 @@ export declare const Animation: z.ZodObject<{
1629
1747
  duration: number;
1630
1748
  loop?: boolean | undefined;
1631
1749
  tracks?: ({
1750
+ keys: {
1751
+ t: number;
1752
+ v: string | number | number[] | string[] | null;
1753
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
1754
+ bezier: [number, number, number, number];
1755
+ } | undefined;
1756
+ }[];
1757
+ id: string;
1758
+ target: "control";
1759
+ prop: "value";
1760
+ interpolation?: "segment" | "pchip" | undefined;
1761
+ } | {
1632
1762
  keys: {
1633
1763
  t: number;
1634
1764
  v: string | number | number[] | string[] | null;
@@ -1723,6 +1853,178 @@ export declare const Animation: z.ZodObject<{
1723
1853
  name: string;
1724
1854
  } | undefined;
1725
1855
  }>;
1856
+ /** Optional semantic controls. Values are absolute; each output channel has exactly one owner. */
1857
+ export declare const RigControl: z.ZodObject<{
1858
+ id: z.ZodString;
1859
+ label: z.ZodOptional<z.ZodString>;
1860
+ min: z.ZodNumber;
1861
+ max: z.ZodNumber;
1862
+ default: z.ZodNumber;
1863
+ }, "strict", z.ZodTypeAny, {
1864
+ id: string;
1865
+ min: number;
1866
+ max: number;
1867
+ default: number;
1868
+ label?: string | undefined;
1869
+ }, {
1870
+ id: string;
1871
+ min: number;
1872
+ max: number;
1873
+ default: number;
1874
+ label?: string | undefined;
1875
+ }>;
1876
+ export declare const ControlChannel: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
1877
+ target: z.ZodLiteral<"bone">;
1878
+ id: z.ZodString;
1879
+ prop: z.ZodEnum<["x", "y", "rotation", "scaleX", "scaleY", "shearX", "shearY"]>;
1880
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
1881
+ }, "strict", z.ZodTypeAny, {
1882
+ values: (number | number[])[];
1883
+ id: string;
1884
+ target: "bone";
1885
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
1886
+ }, {
1887
+ values: (number | number[])[];
1888
+ id: string;
1889
+ target: "bone";
1890
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
1891
+ }>, z.ZodObject<{
1892
+ target: z.ZodLiteral<"slot">;
1893
+ id: z.ZodString;
1894
+ prop: z.ZodLiteral<"alpha">;
1895
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
1896
+ }, "strict", z.ZodTypeAny, {
1897
+ values: (number | number[])[];
1898
+ id: string;
1899
+ target: "slot";
1900
+ prop: "alpha";
1901
+ }, {
1902
+ values: (number | number[])[];
1903
+ id: string;
1904
+ target: "slot";
1905
+ prop: "alpha";
1906
+ }>, z.ZodObject<{
1907
+ target: z.ZodLiteral<"deform">;
1908
+ id: z.ZodString;
1909
+ prop: z.ZodLiteral<"vertices">;
1910
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
1911
+ }, "strict", z.ZodTypeAny, {
1912
+ values: (number | number[])[];
1913
+ id: string;
1914
+ target: "deform";
1915
+ prop: "vertices";
1916
+ }, {
1917
+ values: (number | number[])[];
1918
+ id: string;
1919
+ target: "deform";
1920
+ prop: "vertices";
1921
+ }>]>;
1922
+ export declare const ControlBinding: z.ZodObject<{
1923
+ id: z.ZodString;
1924
+ axes: z.ZodArray<z.ZodObject<{
1925
+ control: z.ZodString;
1926
+ keys: z.ZodArray<z.ZodNumber, "many">;
1927
+ }, "strict", z.ZodTypeAny, {
1928
+ keys: number[];
1929
+ control: string;
1930
+ }, {
1931
+ keys: number[];
1932
+ control: string;
1933
+ }>, "many">;
1934
+ /** Flattened grid, first axis varies fastest. Linear / bilinear interpolation. */
1935
+ channels: z.ZodArray<z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
1936
+ target: z.ZodLiteral<"bone">;
1937
+ id: z.ZodString;
1938
+ prop: z.ZodEnum<["x", "y", "rotation", "scaleX", "scaleY", "shearX", "shearY"]>;
1939
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
1940
+ }, "strict", z.ZodTypeAny, {
1941
+ values: (number | number[])[];
1942
+ id: string;
1943
+ target: "bone";
1944
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
1945
+ }, {
1946
+ values: (number | number[])[];
1947
+ id: string;
1948
+ target: "bone";
1949
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
1950
+ }>, z.ZodObject<{
1951
+ target: z.ZodLiteral<"slot">;
1952
+ id: z.ZodString;
1953
+ prop: z.ZodLiteral<"alpha">;
1954
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
1955
+ }, "strict", z.ZodTypeAny, {
1956
+ values: (number | number[])[];
1957
+ id: string;
1958
+ target: "slot";
1959
+ prop: "alpha";
1960
+ }, {
1961
+ values: (number | number[])[];
1962
+ id: string;
1963
+ target: "slot";
1964
+ prop: "alpha";
1965
+ }>, z.ZodObject<{
1966
+ target: z.ZodLiteral<"deform">;
1967
+ id: z.ZodString;
1968
+ prop: z.ZodLiteral<"vertices">;
1969
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
1970
+ }, "strict", z.ZodTypeAny, {
1971
+ values: (number | number[])[];
1972
+ id: string;
1973
+ target: "deform";
1974
+ prop: "vertices";
1975
+ }, {
1976
+ values: (number | number[])[];
1977
+ id: string;
1978
+ target: "deform";
1979
+ prop: "vertices";
1980
+ }>]>, "many">;
1981
+ }, "strict", z.ZodTypeAny, {
1982
+ id: string;
1983
+ axes: {
1984
+ keys: number[];
1985
+ control: string;
1986
+ }[];
1987
+ channels: ({
1988
+ values: (number | number[])[];
1989
+ id: string;
1990
+ target: "bone";
1991
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
1992
+ } | {
1993
+ values: (number | number[])[];
1994
+ id: string;
1995
+ target: "slot";
1996
+ prop: "alpha";
1997
+ } | {
1998
+ values: (number | number[])[];
1999
+ id: string;
2000
+ target: "deform";
2001
+ prop: "vertices";
2002
+ })[];
2003
+ }, {
2004
+ id: string;
2005
+ axes: {
2006
+ keys: number[];
2007
+ control: string;
2008
+ }[];
2009
+ channels: ({
2010
+ values: (number | number[])[];
2011
+ id: string;
2012
+ target: "bone";
2013
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
2014
+ } | {
2015
+ values: (number | number[])[];
2016
+ id: string;
2017
+ target: "slot";
2018
+ prop: "alpha";
2019
+ } | {
2020
+ values: (number | number[])[];
2021
+ id: string;
2022
+ target: "deform";
2023
+ prop: "vertices";
2024
+ })[];
2025
+ }>;
2026
+ export type RigControl = z.infer<typeof RigControl>;
2027
+ export type ControlBinding = z.infer<typeof ControlBinding>;
1726
2028
  /** the editor's reference underlay: a PNG in the rig's directory drawn under the canvas — runtime, preview and export ignore it */
1727
2029
  export declare const Reference: z.ZodObject<{
1728
2030
  src: z.ZodString;
@@ -2269,6 +2571,59 @@ export declare const RigSchema: z.ZodObject<{
2269
2571
  duration: z.ZodNumber;
2270
2572
  loop: z.ZodDefault<z.ZodBoolean>;
2271
2573
  tracks: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
2574
+ keys: z.ZodArray<z.ZodObject<{
2575
+ t: z.ZodNumber;
2576
+ v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
2577
+ /** easing INTO the next key */
2578
+ ease: z.ZodDefault<z.ZodUnion<[z.ZodEnum<["linear", "step", "ease_in", "ease_out", "ease_in_out", "minimum_jerk", "back_out", "elastic_out"]>, z.ZodObject<{
2579
+ bezier: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
2580
+ }, "strip", z.ZodTypeAny, {
2581
+ bezier: [number, number, number, number];
2582
+ }, {
2583
+ bezier: [number, number, number, number];
2584
+ }>]>>;
2585
+ }, "strip", z.ZodTypeAny, {
2586
+ t: number;
2587
+ v: string | number | number[] | string[] | null;
2588
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
2589
+ bezier: [number, number, number, number];
2590
+ };
2591
+ }, {
2592
+ t: number;
2593
+ v: string | number | number[] | string[] | null;
2594
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
2595
+ bezier: [number, number, number, number];
2596
+ } | undefined;
2597
+ }>, "many">;
2598
+ interpolation: z.ZodOptional<z.ZodEnum<["segment", "pchip"]>>;
2599
+ target: z.ZodLiteral<"control">;
2600
+ id: z.ZodString;
2601
+ prop: z.ZodLiteral<"value">;
2602
+ }, "strip", z.ZodTypeAny, {
2603
+ keys: {
2604
+ t: number;
2605
+ v: string | number | number[] | string[] | null;
2606
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
2607
+ bezier: [number, number, number, number];
2608
+ };
2609
+ }[];
2610
+ id: string;
2611
+ target: "control";
2612
+ prop: "value";
2613
+ interpolation?: "segment" | "pchip" | undefined;
2614
+ }, {
2615
+ keys: {
2616
+ t: number;
2617
+ v: string | number | number[] | string[] | null;
2618
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
2619
+ bezier: [number, number, number, number];
2620
+ } | undefined;
2621
+ }[];
2622
+ id: string;
2623
+ target: "control";
2624
+ prop: "value";
2625
+ interpolation?: "segment" | "pchip" | undefined;
2626
+ }>, z.ZodObject<{
2272
2627
  keys: z.ZodArray<z.ZodObject<{
2273
2628
  t: z.ZodNumber;
2274
2629
  v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
@@ -2669,6 +3024,18 @@ export declare const RigSchema: z.ZodObject<{
2669
3024
  duration: number;
2670
3025
  loop: boolean;
2671
3026
  tracks: ({
3027
+ keys: {
3028
+ t: number;
3029
+ v: string | number | number[] | string[] | null;
3030
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
3031
+ bezier: [number, number, number, number];
3032
+ };
3033
+ }[];
3034
+ id: string;
3035
+ target: "control";
3036
+ prop: "value";
3037
+ interpolation?: "segment" | "pchip" | undefined;
3038
+ } | {
2672
3039
  keys: {
2673
3040
  t: number;
2674
3041
  v: string | number | number[] | string[] | null;
@@ -2767,6 +3134,18 @@ export declare const RigSchema: z.ZodObject<{
2767
3134
  duration: number;
2768
3135
  loop?: boolean | undefined;
2769
3136
  tracks?: ({
3137
+ keys: {
3138
+ t: number;
3139
+ v: string | number | number[] | string[] | null;
3140
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
3141
+ bezier: [number, number, number, number];
3142
+ } | undefined;
3143
+ }[];
3144
+ id: string;
3145
+ target: "control";
3146
+ prop: "value";
3147
+ interpolation?: "segment" | "pchip" | undefined;
3148
+ } | {
2770
3149
  keys: {
2771
3150
  t: number;
2772
3151
  v: string | number | number[] | string[] | null;
@@ -2861,6 +3240,129 @@ export declare const RigSchema: z.ZodObject<{
2861
3240
  name: string;
2862
3241
  } | undefined;
2863
3242
  }>, "many">;
3243
+ controls: z.ZodOptional<z.ZodArray<z.ZodObject<{
3244
+ id: z.ZodString;
3245
+ label: z.ZodOptional<z.ZodString>;
3246
+ min: z.ZodNumber;
3247
+ max: z.ZodNumber;
3248
+ default: z.ZodNumber;
3249
+ }, "strict", z.ZodTypeAny, {
3250
+ id: string;
3251
+ min: number;
3252
+ max: number;
3253
+ default: number;
3254
+ label?: string | undefined;
3255
+ }, {
3256
+ id: string;
3257
+ min: number;
3258
+ max: number;
3259
+ default: number;
3260
+ label?: string | undefined;
3261
+ }>, "many">>;
3262
+ controlBindings: z.ZodOptional<z.ZodArray<z.ZodObject<{
3263
+ id: z.ZodString;
3264
+ axes: z.ZodArray<z.ZodObject<{
3265
+ control: z.ZodString;
3266
+ keys: z.ZodArray<z.ZodNumber, "many">;
3267
+ }, "strict", z.ZodTypeAny, {
3268
+ keys: number[];
3269
+ control: string;
3270
+ }, {
3271
+ keys: number[];
3272
+ control: string;
3273
+ }>, "many">;
3274
+ /** Flattened grid, first axis varies fastest. Linear / bilinear interpolation. */
3275
+ channels: z.ZodArray<z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
3276
+ target: z.ZodLiteral<"bone">;
3277
+ id: z.ZodString;
3278
+ prop: z.ZodEnum<["x", "y", "rotation", "scaleX", "scaleY", "shearX", "shearY"]>;
3279
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
3280
+ }, "strict", z.ZodTypeAny, {
3281
+ values: (number | number[])[];
3282
+ id: string;
3283
+ target: "bone";
3284
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
3285
+ }, {
3286
+ values: (number | number[])[];
3287
+ id: string;
3288
+ target: "bone";
3289
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
3290
+ }>, z.ZodObject<{
3291
+ target: z.ZodLiteral<"slot">;
3292
+ id: z.ZodString;
3293
+ prop: z.ZodLiteral<"alpha">;
3294
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
3295
+ }, "strict", z.ZodTypeAny, {
3296
+ values: (number | number[])[];
3297
+ id: string;
3298
+ target: "slot";
3299
+ prop: "alpha";
3300
+ }, {
3301
+ values: (number | number[])[];
3302
+ id: string;
3303
+ target: "slot";
3304
+ prop: "alpha";
3305
+ }>, z.ZodObject<{
3306
+ target: z.ZodLiteral<"deform">;
3307
+ id: z.ZodString;
3308
+ prop: z.ZodLiteral<"vertices">;
3309
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
3310
+ }, "strict", z.ZodTypeAny, {
3311
+ values: (number | number[])[];
3312
+ id: string;
3313
+ target: "deform";
3314
+ prop: "vertices";
3315
+ }, {
3316
+ values: (number | number[])[];
3317
+ id: string;
3318
+ target: "deform";
3319
+ prop: "vertices";
3320
+ }>]>, "many">;
3321
+ }, "strict", z.ZodTypeAny, {
3322
+ id: string;
3323
+ axes: {
3324
+ keys: number[];
3325
+ control: string;
3326
+ }[];
3327
+ channels: ({
3328
+ values: (number | number[])[];
3329
+ id: string;
3330
+ target: "bone";
3331
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
3332
+ } | {
3333
+ values: (number | number[])[];
3334
+ id: string;
3335
+ target: "slot";
3336
+ prop: "alpha";
3337
+ } | {
3338
+ values: (number | number[])[];
3339
+ id: string;
3340
+ target: "deform";
3341
+ prop: "vertices";
3342
+ })[];
3343
+ }, {
3344
+ id: string;
3345
+ axes: {
3346
+ keys: number[];
3347
+ control: string;
3348
+ }[];
3349
+ channels: ({
3350
+ values: (number | number[])[];
3351
+ id: string;
3352
+ target: "bone";
3353
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
3354
+ } | {
3355
+ values: (number | number[])[];
3356
+ id: string;
3357
+ target: "slot";
3358
+ prop: "alpha";
3359
+ } | {
3360
+ values: (number | number[])[];
3361
+ id: string;
3362
+ target: "deform";
3363
+ prop: "vertices";
3364
+ })[];
3365
+ }>, "many">>;
2864
3366
  }, "strip", z.ZodTypeAny, {
2865
3367
  path: {
2866
3368
  rotation: number;
@@ -3018,6 +3520,18 @@ export declare const RigSchema: z.ZodObject<{
3018
3520
  duration: number;
3019
3521
  loop: boolean;
3020
3522
  tracks: ({
3523
+ keys: {
3524
+ t: number;
3525
+ v: string | number | number[] | string[] | null;
3526
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
3527
+ bezier: [number, number, number, number];
3528
+ };
3529
+ }[];
3530
+ id: string;
3531
+ target: "control";
3532
+ prop: "value";
3533
+ interpolation?: "segment" | "pchip" | undefined;
3534
+ } | {
3021
3535
  keys: {
3022
3536
  t: number;
3023
3537
  v: string | number | number[] | string[] | null;
@@ -3112,6 +3626,36 @@ export declare const RigSchema: z.ZodObject<{
3112
3626
  name: string;
3113
3627
  } | undefined;
3114
3628
  }[];
3629
+ controls?: {
3630
+ id: string;
3631
+ min: number;
3632
+ max: number;
3633
+ default: number;
3634
+ label?: string | undefined;
3635
+ }[] | undefined;
3636
+ controlBindings?: {
3637
+ id: string;
3638
+ axes: {
3639
+ keys: number[];
3640
+ control: string;
3641
+ }[];
3642
+ channels: ({
3643
+ values: (number | number[])[];
3644
+ id: string;
3645
+ target: "bone";
3646
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
3647
+ } | {
3648
+ values: (number | number[])[];
3649
+ id: string;
3650
+ target: "slot";
3651
+ prop: "alpha";
3652
+ } | {
3653
+ values: (number | number[])[];
3654
+ id: string;
3655
+ target: "deform";
3656
+ prop: "vertices";
3657
+ })[];
3658
+ }[] | undefined;
3115
3659
  }, {
3116
3660
  bones: {
3117
3661
  id: string;
@@ -3176,6 +3720,18 @@ export declare const RigSchema: z.ZodObject<{
3176
3720
  duration: number;
3177
3721
  loop?: boolean | undefined;
3178
3722
  tracks?: ({
3723
+ keys: {
3724
+ t: number;
3725
+ v: string | number | number[] | string[] | null;
3726
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
3727
+ bezier: [number, number, number, number];
3728
+ } | undefined;
3729
+ }[];
3730
+ id: string;
3731
+ target: "control";
3732
+ prop: "value";
3733
+ interpolation?: "segment" | "pchip" | undefined;
3734
+ } | {
3179
3735
  keys: {
3180
3736
  t: number;
3181
3737
  v: string | number | number[] | string[] | null;
@@ -3363,6 +3919,36 @@ export declare const RigSchema: z.ZodObject<{
3363
3919
  closed?: boolean | undefined;
3364
3920
  constantSpeed?: boolean | undefined;
3365
3921
  })[] | undefined;
3922
+ controls?: {
3923
+ id: string;
3924
+ min: number;
3925
+ max: number;
3926
+ default: number;
3927
+ label?: string | undefined;
3928
+ }[] | undefined;
3929
+ controlBindings?: {
3930
+ id: string;
3931
+ axes: {
3932
+ keys: number[];
3933
+ control: string;
3934
+ }[];
3935
+ channels: ({
3936
+ values: (number | number[])[];
3937
+ id: string;
3938
+ target: "bone";
3939
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
3940
+ } | {
3941
+ values: (number | number[])[];
3942
+ id: string;
3943
+ target: "slot";
3944
+ prop: "alpha";
3945
+ } | {
3946
+ values: (number | number[])[];
3947
+ id: string;
3948
+ target: "deform";
3949
+ prop: "vertices";
3950
+ })[];
3951
+ }[] | undefined;
3366
3952
  }>;
3367
3953
  /** schema that also accepts v0/v1 input (migrated on the fly) */
3368
3954
  export declare const RigDocument: z.ZodEffects<z.ZodObject<{
@@ -3891,6 +4477,59 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
3891
4477
  duration: z.ZodNumber;
3892
4478
  loop: z.ZodDefault<z.ZodBoolean>;
3893
4479
  tracks: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
4480
+ keys: z.ZodArray<z.ZodObject<{
4481
+ t: z.ZodNumber;
4482
+ v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
4483
+ /** easing INTO the next key */
4484
+ ease: z.ZodDefault<z.ZodUnion<[z.ZodEnum<["linear", "step", "ease_in", "ease_out", "ease_in_out", "minimum_jerk", "back_out", "elastic_out"]>, z.ZodObject<{
4485
+ bezier: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
4486
+ }, "strip", z.ZodTypeAny, {
4487
+ bezier: [number, number, number, number];
4488
+ }, {
4489
+ bezier: [number, number, number, number];
4490
+ }>]>>;
4491
+ }, "strip", z.ZodTypeAny, {
4492
+ t: number;
4493
+ v: string | number | number[] | string[] | null;
4494
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
4495
+ bezier: [number, number, number, number];
4496
+ };
4497
+ }, {
4498
+ t: number;
4499
+ v: string | number | number[] | string[] | null;
4500
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
4501
+ bezier: [number, number, number, number];
4502
+ } | undefined;
4503
+ }>, "many">;
4504
+ interpolation: z.ZodOptional<z.ZodEnum<["segment", "pchip"]>>;
4505
+ target: z.ZodLiteral<"control">;
4506
+ id: z.ZodString;
4507
+ prop: z.ZodLiteral<"value">;
4508
+ }, "strip", z.ZodTypeAny, {
4509
+ keys: {
4510
+ t: number;
4511
+ v: string | number | number[] | string[] | null;
4512
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
4513
+ bezier: [number, number, number, number];
4514
+ };
4515
+ }[];
4516
+ id: string;
4517
+ target: "control";
4518
+ prop: "value";
4519
+ interpolation?: "segment" | "pchip" | undefined;
4520
+ }, {
4521
+ keys: {
4522
+ t: number;
4523
+ v: string | number | number[] | string[] | null;
4524
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
4525
+ bezier: [number, number, number, number];
4526
+ } | undefined;
4527
+ }[];
4528
+ id: string;
4529
+ target: "control";
4530
+ prop: "value";
4531
+ interpolation?: "segment" | "pchip" | undefined;
4532
+ }>, z.ZodObject<{
3894
4533
  keys: z.ZodArray<z.ZodObject<{
3895
4534
  t: z.ZodNumber;
3896
4535
  v: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodNull, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodString, "many">]>;
@@ -4291,6 +4930,18 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
4291
4930
  duration: number;
4292
4931
  loop: boolean;
4293
4932
  tracks: ({
4933
+ keys: {
4934
+ t: number;
4935
+ v: string | number | number[] | string[] | null;
4936
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
4937
+ bezier: [number, number, number, number];
4938
+ };
4939
+ }[];
4940
+ id: string;
4941
+ target: "control";
4942
+ prop: "value";
4943
+ interpolation?: "segment" | "pchip" | undefined;
4944
+ } | {
4294
4945
  keys: {
4295
4946
  t: number;
4296
4947
  v: string | number | number[] | string[] | null;
@@ -4389,6 +5040,18 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
4389
5040
  duration: number;
4390
5041
  loop?: boolean | undefined;
4391
5042
  tracks?: ({
5043
+ keys: {
5044
+ t: number;
5045
+ v: string | number | number[] | string[] | null;
5046
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
5047
+ bezier: [number, number, number, number];
5048
+ } | undefined;
5049
+ }[];
5050
+ id: string;
5051
+ target: "control";
5052
+ prop: "value";
5053
+ interpolation?: "segment" | "pchip" | undefined;
5054
+ } | {
4392
5055
  keys: {
4393
5056
  t: number;
4394
5057
  v: string | number | number[] | string[] | null;
@@ -4483,6 +5146,129 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
4483
5146
  name: string;
4484
5147
  } | undefined;
4485
5148
  }>, "many">;
5149
+ controls: z.ZodOptional<z.ZodArray<z.ZodObject<{
5150
+ id: z.ZodString;
5151
+ label: z.ZodOptional<z.ZodString>;
5152
+ min: z.ZodNumber;
5153
+ max: z.ZodNumber;
5154
+ default: z.ZodNumber;
5155
+ }, "strict", z.ZodTypeAny, {
5156
+ id: string;
5157
+ min: number;
5158
+ max: number;
5159
+ default: number;
5160
+ label?: string | undefined;
5161
+ }, {
5162
+ id: string;
5163
+ min: number;
5164
+ max: number;
5165
+ default: number;
5166
+ label?: string | undefined;
5167
+ }>, "many">>;
5168
+ controlBindings: z.ZodOptional<z.ZodArray<z.ZodObject<{
5169
+ id: z.ZodString;
5170
+ axes: z.ZodArray<z.ZodObject<{
5171
+ control: z.ZodString;
5172
+ keys: z.ZodArray<z.ZodNumber, "many">;
5173
+ }, "strict", z.ZodTypeAny, {
5174
+ keys: number[];
5175
+ control: string;
5176
+ }, {
5177
+ keys: number[];
5178
+ control: string;
5179
+ }>, "many">;
5180
+ /** Flattened grid, first axis varies fastest. Linear / bilinear interpolation. */
5181
+ channels: z.ZodArray<z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
5182
+ target: z.ZodLiteral<"bone">;
5183
+ id: z.ZodString;
5184
+ prop: z.ZodEnum<["x", "y", "rotation", "scaleX", "scaleY", "shearX", "shearY"]>;
5185
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
5186
+ }, "strict", z.ZodTypeAny, {
5187
+ values: (number | number[])[];
5188
+ id: string;
5189
+ target: "bone";
5190
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
5191
+ }, {
5192
+ values: (number | number[])[];
5193
+ id: string;
5194
+ target: "bone";
5195
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
5196
+ }>, z.ZodObject<{
5197
+ target: z.ZodLiteral<"slot">;
5198
+ id: z.ZodString;
5199
+ prop: z.ZodLiteral<"alpha">;
5200
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
5201
+ }, "strict", z.ZodTypeAny, {
5202
+ values: (number | number[])[];
5203
+ id: string;
5204
+ target: "slot";
5205
+ prop: "alpha";
5206
+ }, {
5207
+ values: (number | number[])[];
5208
+ id: string;
5209
+ target: "slot";
5210
+ prop: "alpha";
5211
+ }>, z.ZodObject<{
5212
+ target: z.ZodLiteral<"deform">;
5213
+ id: z.ZodString;
5214
+ prop: z.ZodLiteral<"vertices">;
5215
+ values: z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>, "many">;
5216
+ }, "strict", z.ZodTypeAny, {
5217
+ values: (number | number[])[];
5218
+ id: string;
5219
+ target: "deform";
5220
+ prop: "vertices";
5221
+ }, {
5222
+ values: (number | number[])[];
5223
+ id: string;
5224
+ target: "deform";
5225
+ prop: "vertices";
5226
+ }>]>, "many">;
5227
+ }, "strict", z.ZodTypeAny, {
5228
+ id: string;
5229
+ axes: {
5230
+ keys: number[];
5231
+ control: string;
5232
+ }[];
5233
+ channels: ({
5234
+ values: (number | number[])[];
5235
+ id: string;
5236
+ target: "bone";
5237
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
5238
+ } | {
5239
+ values: (number | number[])[];
5240
+ id: string;
5241
+ target: "slot";
5242
+ prop: "alpha";
5243
+ } | {
5244
+ values: (number | number[])[];
5245
+ id: string;
5246
+ target: "deform";
5247
+ prop: "vertices";
5248
+ })[];
5249
+ }, {
5250
+ id: string;
5251
+ axes: {
5252
+ keys: number[];
5253
+ control: string;
5254
+ }[];
5255
+ channels: ({
5256
+ values: (number | number[])[];
5257
+ id: string;
5258
+ target: "bone";
5259
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
5260
+ } | {
5261
+ values: (number | number[])[];
5262
+ id: string;
5263
+ target: "slot";
5264
+ prop: "alpha";
5265
+ } | {
5266
+ values: (number | number[])[];
5267
+ id: string;
5268
+ target: "deform";
5269
+ prop: "vertices";
5270
+ })[];
5271
+ }>, "many">>;
4486
5272
  }, "strip", z.ZodTypeAny, {
4487
5273
  path: {
4488
5274
  rotation: number;
@@ -4640,6 +5426,18 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
4640
5426
  duration: number;
4641
5427
  loop: boolean;
4642
5428
  tracks: ({
5429
+ keys: {
5430
+ t: number;
5431
+ v: string | number | number[] | string[] | null;
5432
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
5433
+ bezier: [number, number, number, number];
5434
+ };
5435
+ }[];
5436
+ id: string;
5437
+ target: "control";
5438
+ prop: "value";
5439
+ interpolation?: "segment" | "pchip" | undefined;
5440
+ } | {
4643
5441
  keys: {
4644
5442
  t: number;
4645
5443
  v: string | number | number[] | string[] | null;
@@ -4734,6 +5532,36 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
4734
5532
  name: string;
4735
5533
  } | undefined;
4736
5534
  }[];
5535
+ controls?: {
5536
+ id: string;
5537
+ min: number;
5538
+ max: number;
5539
+ default: number;
5540
+ label?: string | undefined;
5541
+ }[] | undefined;
5542
+ controlBindings?: {
5543
+ id: string;
5544
+ axes: {
5545
+ keys: number[];
5546
+ control: string;
5547
+ }[];
5548
+ channels: ({
5549
+ values: (number | number[])[];
5550
+ id: string;
5551
+ target: "bone";
5552
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
5553
+ } | {
5554
+ values: (number | number[])[];
5555
+ id: string;
5556
+ target: "slot";
5557
+ prop: "alpha";
5558
+ } | {
5559
+ values: (number | number[])[];
5560
+ id: string;
5561
+ target: "deform";
5562
+ prop: "vertices";
5563
+ })[];
5564
+ }[] | undefined;
4737
5565
  }, {
4738
5566
  bones: {
4739
5567
  id: string;
@@ -4798,6 +5626,18 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
4798
5626
  duration: number;
4799
5627
  loop?: boolean | undefined;
4800
5628
  tracks?: ({
5629
+ keys: {
5630
+ t: number;
5631
+ v: string | number | number[] | string[] | null;
5632
+ ease?: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
5633
+ bezier: [number, number, number, number];
5634
+ } | undefined;
5635
+ }[];
5636
+ id: string;
5637
+ target: "control";
5638
+ prop: "value";
5639
+ interpolation?: "segment" | "pchip" | undefined;
5640
+ } | {
4801
5641
  keys: {
4802
5642
  t: number;
4803
5643
  v: string | number | number[] | string[] | null;
@@ -4985,6 +5825,36 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
4985
5825
  closed?: boolean | undefined;
4986
5826
  constantSpeed?: boolean | undefined;
4987
5827
  })[] | undefined;
5828
+ controls?: {
5829
+ id: string;
5830
+ min: number;
5831
+ max: number;
5832
+ default: number;
5833
+ label?: string | undefined;
5834
+ }[] | undefined;
5835
+ controlBindings?: {
5836
+ id: string;
5837
+ axes: {
5838
+ keys: number[];
5839
+ control: string;
5840
+ }[];
5841
+ channels: ({
5842
+ values: (number | number[])[];
5843
+ id: string;
5844
+ target: "bone";
5845
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
5846
+ } | {
5847
+ values: (number | number[])[];
5848
+ id: string;
5849
+ target: "slot";
5850
+ prop: "alpha";
5851
+ } | {
5852
+ values: (number | number[])[];
5853
+ id: string;
5854
+ target: "deform";
5855
+ prop: "vertices";
5856
+ })[];
5857
+ }[] | undefined;
4988
5858
  }>, {
4989
5859
  path: {
4990
5860
  rotation: number;
@@ -5142,6 +6012,18 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
5142
6012
  duration: number;
5143
6013
  loop: boolean;
5144
6014
  tracks: ({
6015
+ keys: {
6016
+ t: number;
6017
+ v: string | number | number[] | string[] | null;
6018
+ ease: "linear" | "step" | "ease_in" | "ease_out" | "ease_in_out" | "minimum_jerk" | "back_out" | "elastic_out" | {
6019
+ bezier: [number, number, number, number];
6020
+ };
6021
+ }[];
6022
+ id: string;
6023
+ target: "control";
6024
+ prop: "value";
6025
+ interpolation?: "segment" | "pchip" | undefined;
6026
+ } | {
5145
6027
  keys: {
5146
6028
  t: number;
5147
6029
  v: string | number | number[] | string[] | null;
@@ -5236,6 +6118,36 @@ export declare const RigDocument: z.ZodEffects<z.ZodObject<{
5236
6118
  name: string;
5237
6119
  } | undefined;
5238
6120
  }[];
6121
+ controls?: {
6122
+ id: string;
6123
+ min: number;
6124
+ max: number;
6125
+ default: number;
6126
+ label?: string | undefined;
6127
+ }[] | undefined;
6128
+ controlBindings?: {
6129
+ id: string;
6130
+ axes: {
6131
+ keys: number[];
6132
+ control: string;
6133
+ }[];
6134
+ channels: ({
6135
+ values: (number | number[])[];
6136
+ id: string;
6137
+ target: "bone";
6138
+ prop: "x" | "y" | "rotation" | "scaleX" | "scaleY" | "shearX" | "shearY";
6139
+ } | {
6140
+ values: (number | number[])[];
6141
+ id: string;
6142
+ target: "slot";
6143
+ prop: "alpha";
6144
+ } | {
6145
+ values: (number | number[])[];
6146
+ id: string;
6147
+ target: "deform";
6148
+ prop: "vertices";
6149
+ })[];
6150
+ }[] | undefined;
5239
6151
  }, unknown>;
5240
6152
  export type RigDocument = z.infer<typeof RigSchema>;
5241
6153
  export type Bone = z.infer<typeof Bone>;