curvy 2.0.0-alpha.2 → 2.0.0-alpha.5

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.
Files changed (98) hide show
  1. package/dist/characteristic/{index.d.mts → characteristic.d.ts} +15 -23
  2. package/dist/characteristic/index.d.ts +1 -0
  3. package/dist/characteristic/index.mjs +1 -1
  4. package/dist/curve/cubic2d.d.ts +219 -0
  5. package/dist/curve/index.d.ts +12 -0
  6. package/dist/curve/index.mjs +1 -1
  7. package/dist/curve/linear2d.d.ts +199 -0
  8. package/dist/curve/quadratic2d.d.ts +227 -0
  9. package/dist/curve/rationalCubic2d.d.ts +200 -0
  10. package/dist/dimensions.d.ts +23 -0
  11. package/dist/interval/index.d.ts +6 -0
  12. package/dist/interval/index.mjs +2 -2
  13. package/dist/interval/interval.d.ts +525 -0
  14. package/dist/interval/interval2d.d.ts +167 -0
  15. package/dist/length.d.ts +32 -0
  16. package/dist/matrix/index.d.ts +9 -0
  17. package/dist/matrix/matrix2x2.d.ts +339 -0
  18. package/dist/matrix/matrix3x3.d.ts +400 -0
  19. package/dist/matrix/matrix4x4.d.ts +443 -0
  20. package/dist/number.d.ts +276 -0
  21. package/dist/path/cubic2d.d.ts +155 -0
  22. package/dist/path/index.d.ts +12 -0
  23. package/dist/path/index.mjs +6 -6
  24. package/dist/path/index.mjs.map +1 -1
  25. package/dist/path/linear2d.d.ts +135 -0
  26. package/dist/path/quadratic2d.d.ts +127 -0
  27. package/dist/path/rationalCubic2d.d.ts +120 -0
  28. package/dist/path/traits.d.ts +31 -0
  29. package/dist/polynomial/cubic.d.ts +381 -0
  30. package/dist/polynomial/index.d.ts +9 -0
  31. package/dist/polynomial/index.mjs +2 -2
  32. package/dist/polynomial/linear.d.ts +321 -0
  33. package/dist/polynomial/monotonicity.d.ts +3 -0
  34. package/dist/polynomial/quadratic.d.ts +375 -0
  35. package/dist/polynomial/traits.d.ts +56 -0
  36. package/dist/shared/{characteristic-B9nCh_cx.mjs → characteristic-DLlhja-I.mjs} +9 -9
  37. package/dist/shared/{characteristic-B9nCh_cx.mjs.map → characteristic-DLlhja-I.mjs.map} +1 -1
  38. package/dist/shared/{cubic-CpHAx8cC.mjs → cubic-CMonq6bg.mjs} +26 -5
  39. package/dist/shared/cubic-CMonq6bg.mjs.map +1 -0
  40. package/dist/shared/{interval-05CR6eBf.mjs → interval-X1EYuf-T.mjs} +2 -2
  41. package/dist/shared/{interval-05CR6eBf.mjs.map → interval-X1EYuf-T.mjs.map} +1 -1
  42. package/dist/shared/{interval2d-8IBZnUOq.mjs → interval2d-ca0J1NMr.mjs} +8 -8
  43. package/dist/shared/{interval2d-8IBZnUOq.mjs.map → interval2d-ca0J1NMr.mjs.map} +1 -1
  44. package/dist/shared/{quadratic-CamozcFc.mjs → quadratic-DyeMtvET.mjs} +20 -2
  45. package/dist/shared/quadratic-DyeMtvET.mjs.map +1 -0
  46. package/dist/shared/{rationalCubic2d-Bys2Uory.mjs → rationalCubic2d-D658ltUM.mjs} +17 -17
  47. package/dist/shared/{rationalCubic2d-Bys2Uory.mjs.map → rationalCubic2d-D658ltUM.mjs.map} +1 -1
  48. package/dist/shared/{rationalCubic2d-BEgUGSFf.mjs → rationalCubic2d-Vw4qGPZj.mjs} +9 -9
  49. package/dist/shared/{rationalCubic2d-BEgUGSFf.mjs.map → rationalCubic2d-Vw4qGPZj.mjs.map} +1 -1
  50. package/dist/shared/{solution-CrtLfqEq.mjs → solution-3TDATEMn.mjs} +28 -2
  51. package/dist/shared/solution-3TDATEMn.mjs.map +1 -0
  52. package/dist/shared/{vector2-CL1HDdPr.mjs → vector2-CCuJx1rX.mjs} +6 -6
  53. package/dist/shared/{vector2-CL1HDdPr.mjs.map → vector2-CCuJx1rX.mjs.map} +1 -1
  54. package/dist/shared/{vector3-D-tv_aKL.mjs → vector3-C-qgKAjR.mjs} +2 -2
  55. package/dist/shared/{vector3-D-tv_aKL.mjs.map → vector3-C-qgKAjR.mjs.map} +1 -1
  56. package/dist/shared/{vector4-5KbjoHVj.mjs → vector4-BhOKDhD5.mjs} +2 -2
  57. package/dist/shared/{vector4-5KbjoHVj.mjs.map → vector4-BhOKDhD5.mjs.map} +1 -1
  58. package/dist/solution/index.d.ts +3 -0
  59. package/dist/solution/index.mjs +1 -1
  60. package/dist/{shared/solution-sNQ-ZVhN.d.mts → solution/solution.d.ts} +81 -68
  61. package/dist/splines/basis2d.d.ts +122 -0
  62. package/dist/splines/bezier2d.d.ts +202 -0
  63. package/dist/splines/cardinal2d.d.ts +273 -0
  64. package/dist/splines/hermite2d.d.ts +117 -0
  65. package/dist/splines/index.d.ts +15 -0
  66. package/dist/splines/index.mjs +193 -35
  67. package/dist/splines/index.mjs.map +1 -1
  68. package/dist/splines/rationalBezier2d.d.ts +148 -0
  69. package/dist/splines/util.d.ts +5 -0
  70. package/dist/utils.d.ts +73 -0
  71. package/dist/vector/index.d.ts +9 -0
  72. package/dist/vector/index.mjs +3 -3
  73. package/dist/vector/vector2.d.ts +446 -0
  74. package/dist/vector/vector3.d.ts +449 -0
  75. package/dist/vector/vector4.d.ts +253 -0
  76. package/package.json +13 -13
  77. package/dist/curve/index.d.mts +0 -2
  78. package/dist/interval/index.d.mts +0 -3
  79. package/dist/matrix/index.d.mts +0 -2
  80. package/dist/number.d.mts +0 -280
  81. package/dist/path/index.d.mts +0 -261
  82. package/dist/polynomial/index.d.mts +0 -2
  83. package/dist/shared/cubic-BajUY0JT.d.mts +0 -1100
  84. package/dist/shared/cubic-CpHAx8cC.mjs.map +0 -1
  85. package/dist/shared/interval-Dy-RMEE3.d.mts +0 -533
  86. package/dist/shared/interval2d-C2id9u31.d.mts +0 -172
  87. package/dist/shared/matrix4x4-Dm_tSiH1.d.mts +0 -1183
  88. package/dist/shared/quadratic-CamozcFc.mjs.map +0 -1
  89. package/dist/shared/rationalCubic2d-B6g97ryJ.d.mts +0 -308
  90. package/dist/shared/rationalCubic2d-DlQfBURs.d.mts +0 -818
  91. package/dist/shared/solution-CrtLfqEq.mjs.map +0 -1
  92. package/dist/shared/utils-MCckigYk.d.mts +0 -76
  93. package/dist/shared/vector2-DPUY3_eA.d.mts +0 -470
  94. package/dist/shared/vector3-DqeOZtOB.d.mts +0 -703
  95. package/dist/solution/index.d.mts +0 -2
  96. package/dist/splines/index.d.mts +0 -701
  97. package/dist/utils.d.mts +0 -2
  98. package/dist/vector/index.d.mts +0 -3
@@ -0,0 +1,32 @@
1
+ export declare const GL32_X0 = 0.9972638618494816;
2
+ export declare const GL32_X1 = 0.9856115115452684;
3
+ export declare const GL32_X2 = 0.9647622555875064;
4
+ export declare const GL32_X3 = 0.9349060759377397;
5
+ export declare const GL32_X4 = 0.8963211557660521;
6
+ export declare const GL32_X5 = 0.84936761373257;
7
+ export declare const GL32_X6 = 0.7944837959679424;
8
+ export declare const GL32_X7 = 0.7321821187402897;
9
+ export declare const GL32_X8 = 0.6630442669302152;
10
+ export declare const GL32_X9 = 0.5877157572407623;
11
+ export declare const GL32_X10 = 0.5068999089322294;
12
+ export declare const GL32_X11 = 0.42135127613063533;
13
+ export declare const GL32_X12 = 0.33186860228212767;
14
+ export declare const GL32_X13 = 0.23928736225213706;
15
+ export declare const GL32_X14 = 0.1444719615827965;
16
+ export declare const GL32_X15 = 0.04830766568773831;
17
+ export declare const GL32_W0 = 0.007018610009470136;
18
+ export declare const GL32_W1 = 0.01627439473090571;
19
+ export declare const GL32_W2 = 0.02539206530926214;
20
+ export declare const GL32_W3 = 0.03427386291302141;
21
+ export declare const GL32_W4 = 0.042835898022226704;
22
+ export declare const GL32_W5 = 0.050998059262376154;
23
+ export declare const GL32_W6 = 0.05868409347853558;
24
+ export declare const GL32_W7 = 0.06582222277636195;
25
+ export declare const GL32_W8 = 0.07234579410884862;
26
+ export declare const GL32_W9 = 0.07819389578707044;
27
+ export declare const GL32_W10 = 0.08331192422694672;
28
+ export declare const GL32_W11 = 0.08765209300440374;
29
+ export declare const GL32_W12 = 0.0911738786957639;
30
+ export declare const GL32_W13 = 0.09384439908080454;
31
+ export declare const GL32_W14 = 0.09563872007927485;
32
+ export declare const GL32_W15 = 0.09654008851472785;
@@ -0,0 +1,9 @@
1
+ import * as Matrix2x2Ns from './matrix2x2';
2
+ import * as Matrix3x3Ns from './matrix3x3';
3
+ import * as Matrix4x4Ns from './matrix4x4';
4
+ export { Matrix2x2Ns as Matrix2x2 };
5
+ export type Matrix2x2 = Matrix2x2Ns.Matrix2x2;
6
+ export { Matrix3x3Ns as Matrix3x3 };
7
+ export type Matrix3x3 = Matrix3x3Ns.Matrix3x3;
8
+ export { Matrix4x4Ns as Matrix4x4 };
9
+ export type Matrix4x4 = Matrix4x4Ns.Matrix4x4;
@@ -0,0 +1,339 @@
1
+ import type { TwoDimensionalComponent, TwoDimensionalIndex } from '../dimensions';
2
+ import type { Pipeable } from '../utils';
3
+ import type { Vector2 } from '../vector/vector2';
4
+
5
+ declare const Matrix2x2TypeId: unique symbol;
6
+ type Matrix2x2TypeId = typeof Matrix2x2TypeId;
7
+
8
+
9
+ /**
10
+ * A type representing the coordinate of a 2D matrix.
11
+ *
12
+ * @since 1.0.0
13
+ */
14
+ export type Matrix2x2Coordinate = TwoDimensionalIndex | TwoDimensionalComponent;
15
+ /**
16
+ * A 2D matrix with 2 rows and 2 columns.
17
+ *
18
+ * All fields are readonly and immutable, and all operations create new instances.
19
+ *
20
+ * @since 1.0.0
21
+ */
22
+ export interface Matrix2x2 extends Pipeable {
23
+ readonly [Matrix2x2TypeId]: Matrix2x2TypeId;
24
+ /**
25
+ * The value in the first row and first column.
26
+ */
27
+ readonly m00: number;
28
+ /**
29
+ * The value in the first row and second column.
30
+ */
31
+ readonly m01: number;
32
+ /**
33
+ * The value in the second row and first column.
34
+ */
35
+ readonly m10: number;
36
+ /**
37
+ * The value in the second row and second column.
38
+ */
39
+ readonly m11: number;
40
+ }
41
+ /**
42
+ * Checks if a value is a `Matrix2x2`.
43
+ *
44
+ * @param m - The value to check.
45
+ * @returns `true` if the value is a `Matrix2x2`, `false` otherwise.
46
+ * @since 1.0.0
47
+ */
48
+ export declare const isMatrix2x2: (m: unknown) => m is Matrix2x2;
49
+ export declare const equals: {
50
+ /**
51
+ * Checks if two `Matrix2x2` instances are approximately equal within the
52
+ * default absolute tolerance ({@link EPSILON}).
53
+ *
54
+ * @param a - The first matrix.
55
+ * @param b - The second matrix.
56
+ * @returns `true` when each pair of components is within tolerance.
57
+ * @since 1.1.0
58
+ */
59
+ (a: Matrix2x2, b: Matrix2x2): boolean;
60
+ /**
61
+ * Checks if two `Matrix2x2` instances are approximately equal within the
62
+ * default absolute tolerance ({@link EPSILON}).
63
+ *
64
+ * @param b - The second matrix.
65
+ * @returns A function that takes the first matrix and returns the comparison result.
66
+ * @since 1.1.0
67
+ */
68
+ (b: Matrix2x2): (a: Matrix2x2) => boolean;
69
+ };
70
+ /**
71
+ * Creates a new `Matrix2x2` instance.
72
+ *
73
+ * @param m00 - The value in the first row and first column. Defaults to 0.
74
+ * @param m01 - The value in the first row and second column. Defaults to 0.
75
+ * @param m10 - The value in the second row and first column. Defaults to 0.
76
+ * @param m11 - The value in the second row and second column. Defaults to 0.
77
+ */
78
+ export declare const make: (m00?: number, m01?: number, m10?: number, m11?: number) => Matrix2x2;
79
+ /**
80
+ * Creates a new `Matrix2x2` instance from two vectors representing rows.
81
+ *
82
+ * @param v0 - The first row vector.
83
+ * @param v1 - The second row vector.
84
+ * @returns A new `Matrix2x2` instance.
85
+ * @since 1.0.0
86
+ */
87
+ export declare const fromRows: (v0: Vector2, v1: Vector2) => Matrix2x2;
88
+ /**
89
+ * Creates a new `Matrix2x2` instance from two vectors representing columns.
90
+ *
91
+ * @param v0 - The first column vector.
92
+ * @param v1 - The second column vector.
93
+ * @returns A new `Matrix2x2` instance.
94
+ * @since 1.0.0
95
+ */
96
+ export declare const fromColumns: (v0: Vector2, v1: Vector2) => Matrix2x2;
97
+ export declare const setRow: {
98
+ /**
99
+ * Sets the specified row of the matrix to the given vector.
100
+ *
101
+ * @param m - The matrix to modify.
102
+ * @param row - The row index (0 or 1).
103
+ * @param v - The vector to set the row to.
104
+ * @returns A new `Matrix2x2` instance with the specified row set to the given vector.
105
+ * @since 1.0.0
106
+ */
107
+ (m: Matrix2x2, row: Matrix2x2Coordinate, v: Vector2): Matrix2x2;
108
+ /**
109
+ * Sets the specified row of the matrix to the given vector.
110
+ *
111
+ * @param row - The row index (0 or 1).
112
+ * @param v - The vector to set the row to.
113
+ * @returns A function that takes a matrix and returns a new `Matrix2x2` instance with the specified row set to the given vector.
114
+ * @since 1.0.0
115
+ */
116
+ (row: Matrix2x2Coordinate, v: Vector2): (m: Matrix2x2) => Matrix2x2;
117
+ };
118
+ export declare const setColumn: {
119
+ /**
120
+ * Sets the specified column of the matrix to the given vector.
121
+ *
122
+ * @param m - The matrix to modify.
123
+ * @param column - The column index (0 or 1).
124
+ * @param v - The vector to set the column to.
125
+ * @returns A new `Matrix2x2` instance with the specified column set to the given vector.
126
+ * @since 1.0.0
127
+ */
128
+ (m: Matrix2x2, column: Matrix2x2Coordinate, v: Vector2): Matrix2x2;
129
+ /**
130
+ * Sets the specified column of the matrix to the given vector.
131
+ *
132
+ * @param column - The column index (0 or 1).
133
+ * @param v - The vector to set the column to.
134
+ * @returns A function that takes a matrix and returns a new `Matrix2x2` instance with the specified column set to the given vector.
135
+ * @since 1.0.0
136
+ */
137
+ (column: Matrix2x2Coordinate, v: Vector2): (m: Matrix2x2) => Matrix2x2;
138
+ };
139
+ /**
140
+ * Calculates the determinant of a 2D matrix.
141
+ *
142
+ * @param m - The matrix to calculate the determinant for.
143
+ * @returns The determinant of the matrix.
144
+ * @since 1.0.0
145
+ */
146
+ export declare const determinant: (m: Matrix2x2) => number;
147
+ export declare const vectorProductLeft: {
148
+ /**
149
+ * Calculates the left vector product of a matrix and a vector.
150
+ *
151
+ * @example
152
+ * ```ts
153
+ * import * as Matrix2x2 from 'curvy/matrix2x2'
154
+ * import * as Vector2 from 'curvy/vector2'
155
+ *
156
+ * const matrix = Matrix2x2.make(1, 2, 3, 4)
157
+ * const vector = Vector2.make(5, 6)
158
+ *
159
+ * // Performs:
160
+ * // x = 1 * 5 + 2 * 6 = 17
161
+ * // y = 3 * 5 + 4 * 6 = 39
162
+ * const result = Matrix2x2.vectorProductLeft(matrix, vector)
163
+ * ```
164
+ * @param m - The matrix to multiply.
165
+ * @param v - The vector to multiply.
166
+ * @returns The resulting vector after the left vector product.
167
+ * @since 1.0.0
168
+ */
169
+ (m: Matrix2x2, v: Vector2): Vector2;
170
+ /**
171
+ * Calculates the left vector product of a matrix and a vector.
172
+ *
173
+ * @example
174
+ * ```ts
175
+ * import * as Matrix2x2 from 'curvy/matrix2x2'
176
+ * import * as Vector2 from 'curvy/vector2'
177
+ *
178
+ * const matrix = Matrix2x2.make(1, 2, 3, 4)
179
+ * const vector = Vector2.make(5, 6)
180
+ *
181
+ * // Performs:
182
+ * // x = 1 * 5 + 2 * 6 = 17
183
+ * // y = 3 * 5 + 4 * 6 = 39
184
+ * const result = Matrix2x2.vectorProductLeft(vector)(matrix)
185
+ * ```
186
+ * @param v - The vector to multiply.
187
+ * @returns A function that takes a matrix and returns the resulting vector after the left vector product.
188
+ * @since 1.0.0
189
+ */
190
+ (v: Vector2): (m: Matrix2x2) => Vector2;
191
+ };
192
+ export declare const vectorProductRight: {
193
+ /**
194
+ * Calculates the right vector product of a matrix and a vector.
195
+ *
196
+ * @example
197
+ * ```ts
198
+ * import * as Matrix2x2 from 'curvy/matrix2x2'
199
+ * import * as Vector2 from 'curvy/vector2'
200
+ *
201
+ * const matrix = Matrix2x2.make(1, 2, 3, 4)
202
+ * const vector = Vector2.make(5, 6)
203
+ *
204
+ * // Performs:
205
+ * // x = 1 * 5 + 3 * 6 = 33
206
+ * // y = 2 * 5 + 4 * 6 = 62
207
+ * const result = Matrix2x2.vectorProductRight(matrix, vector)
208
+ * ```
209
+ * @param m - The matrix to multiply.
210
+ * @param v - The vector to multiply.
211
+ * @returns The resulting vector after the right vector product.
212
+ * @since 1.0.0
213
+ */
214
+ (m: Matrix2x2, v: Vector2): Vector2;
215
+ /**
216
+ * Calculates the right vector product of a matrix and a vector.
217
+ *
218
+ * @example
219
+ * ```ts
220
+ * import * as Matrix2x2 from 'curvy/matrix2x2'
221
+ * import * as Vector2 from 'curvy/vector2'
222
+ *
223
+ * const matrix = Matrix2x2.make(1, 2, 3, 4)
224
+ * const vector = Vector2.make(5, 6)
225
+ *
226
+ * // Performs:
227
+ * // x = 1 * 5 + 3 * 6 = 33
228
+ * // y = 2 * 5 + 4 * 6 = 62
229
+ * const result = Matrix2x2.vectorProductRight(vector)(matrix)
230
+ * ```
231
+ * @param v - The vector to multiply.
232
+ * @returns A function that takes a matrix and returns the resulting vector after the right vector product.
233
+ * @since 1.0.0
234
+ */
235
+ (v: Vector2): (m: Matrix2x2) => Vector2;
236
+ };
237
+ export declare const solveSystem: {
238
+ /**
239
+ * Solves a system of linear equations represented by a matrix and a vector.
240
+ *
241
+ * @example
242
+ * ```ts
243
+ * import * as Matrix2x2 from 'curvy/matrix2x2'
244
+ * import * as Vector2 from 'curvy/vector2'
245
+ *
246
+ * const matrix = Matrix2x2.make(1, 2, 3, 4)
247
+ * const vector = Vector2.make(5, 6)
248
+ *
249
+ * // Solves the system of equations:
250
+ * // 1x + 2y = 5
251
+ * // 3x + 4y = 6
252
+ * const result = Matrix2x2.solveSystem(matrix, vector)
253
+ * ```
254
+ * @param m - The matrix representing the coefficients of the system.
255
+ * @param v - The vector representing the constants of the system.
256
+ * @returns The solution vector.
257
+ * @since 1.0.0
258
+ */
259
+ (m: Matrix2x2, v: Vector2): Vector2;
260
+ /**
261
+ * Solves a system of linear equations represented by a matrix and a vector.
262
+ *
263
+ * @example
264
+ * ```ts
265
+ * import * as Matrix2x2 from 'curvy/matrix2x2'
266
+ * import * as Vector2 from 'curvy/vector2'
267
+ *
268
+ * const matrix = Matrix2x2.make(1, 2, 3, 4)
269
+ * const vector = Vector2.make(5, 6)
270
+ *
271
+ * // Solves the system of equations:
272
+ * // 1x + 2y = 5
273
+ * // 3x + 4y = 6
274
+ * const result = Matrix2x2.solveSystem(vector)(matrix)
275
+ * ```
276
+ * @param v - The vector representing the constants of the system.
277
+ * @returns A function that takes a matrix and returns the solution vector.
278
+ * @since 1.0.0
279
+ */
280
+ (v: Vector2): (m: Matrix2x2) => Vector2;
281
+ };
282
+ /**
283
+ * Returns the rows of a matrix as an array of vectors.
284
+ *
285
+ * @param m - The matrix to convert.
286
+ * @returns An array of vectors representing the rows of the matrix.
287
+ * @since 1.0.0
288
+ */
289
+ export declare const toRows: (m: Matrix2x2) => [Vector2, Vector2];
290
+ /**
291
+ * Returns the columns of a matrix as an array of vectors.
292
+ *
293
+ * @param m - The matrix to convert.
294
+ * @returns An array of vectors representing the columns of the matrix.
295
+ * @since 1.0.0
296
+ */
297
+ export declare const toColumns: (m: Matrix2x2) => [Vector2, Vector2];
298
+ /**
299
+ * Returns the specified row of a matrix as a vector.
300
+ *
301
+ * @param m - The matrix to get the row from.
302
+ * @param row - The row index (0 or 1).
303
+ * @returns A vector representing the specified row of the matrix.
304
+ * @since 1.0.0
305
+ */
306
+ export declare const rowVector: (m: Matrix2x2, row: Matrix2x2Coordinate) => Vector2;
307
+ /**
308
+ * Returns the specified column of a matrix as a vector.
309
+ *
310
+ * @param m - The matrix to get the column from.
311
+ * @param column - The column index (0 or 1).
312
+ * @returns A vector representing the specified column of the matrix.
313
+ * @since 1.0.0
314
+ */
315
+ export declare const columnVector: (m: Matrix2x2, column: Matrix2x2Coordinate) => Vector2;
316
+ /**
317
+ * Transposes a matrix.
318
+ *
319
+ * @param m - The matrix to transpose.
320
+ * @returns A new `Matrix2x2` instance representing the transposed matrix.
321
+ * @since 1.0.0
322
+ */
323
+ export declare const transpose: (m: Matrix2x2) => Matrix2x2;
324
+ /**
325
+ * Reverses the rows of a matrix.
326
+ *
327
+ * @param m - The matrix to reverse the rows of.
328
+ * @returns A new `Matrix2x2` instance with the rows reversed.
329
+ * @since 1.0.0
330
+ */
331
+ export declare const reverseRows: (m: Matrix2x2) => Matrix2x2;
332
+ /**
333
+ * Reverses the columns of a matrix.
334
+ *
335
+ * @param m - The matrix to reverse the columns of.
336
+ * @returns A new `Matrix2x2` instance with the columns reversed.
337
+ * @since 1.0.0
338
+ */
339
+ export declare const reverseColumns: (m: Matrix2x2) => Matrix2x2;