@2702rebels/wpidata 1.0.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.
Files changed (80) hide show
  1. package/LICENSE +28 -0
  2. package/README.md +5 -0
  3. package/dist/abstractions.cjs +0 -0
  4. package/dist/abstractions.d.cts +246 -0
  5. package/dist/abstractions.d.cts.map +1 -0
  6. package/dist/abstractions.d.mts +246 -0
  7. package/dist/abstractions.d.mts.map +1 -0
  8. package/dist/abstractions.mjs +1 -0
  9. package/dist/formats/json.cjs +32 -0
  10. package/dist/formats/json.d.cts +14 -0
  11. package/dist/formats/json.d.cts.map +1 -0
  12. package/dist/formats/json.d.mts +14 -0
  13. package/dist/formats/json.d.mts.map +1 -0
  14. package/dist/formats/json.mjs +33 -0
  15. package/dist/formats/json.mjs.map +1 -0
  16. package/dist/formats/msgpack.cjs +30 -0
  17. package/dist/formats/msgpack.d.cts +14 -0
  18. package/dist/formats/msgpack.d.cts.map +1 -0
  19. package/dist/formats/msgpack.d.mts +14 -0
  20. package/dist/formats/msgpack.d.mts.map +1 -0
  21. package/dist/formats/msgpack.mjs +31 -0
  22. package/dist/formats/msgpack.mjs.map +1 -0
  23. package/dist/formats/protobuf.cjs +130 -0
  24. package/dist/formats/protobuf.d.cts +68 -0
  25. package/dist/formats/protobuf.d.cts.map +1 -0
  26. package/dist/formats/protobuf.d.mts +68 -0
  27. package/dist/formats/protobuf.d.mts.map +1 -0
  28. package/dist/formats/protobuf.mjs +128 -0
  29. package/dist/formats/protobuf.mjs.map +1 -0
  30. package/dist/formats/struct.cjs +593 -0
  31. package/dist/formats/struct.d.cts +134 -0
  32. package/dist/formats/struct.d.cts.map +1 -0
  33. package/dist/formats/struct.d.mts +134 -0
  34. package/dist/formats/struct.d.mts.map +1 -0
  35. package/dist/formats/struct.mjs +591 -0
  36. package/dist/formats/struct.mjs.map +1 -0
  37. package/dist/sink.cjs +360 -0
  38. package/dist/sink.d.cts +93 -0
  39. package/dist/sink.d.cts.map +1 -0
  40. package/dist/sink.d.mts +93 -0
  41. package/dist/sink.d.mts.map +1 -0
  42. package/dist/sink.mjs +361 -0
  43. package/dist/sink.mjs.map +1 -0
  44. package/dist/types/protobuf.cjs +0 -0
  45. package/dist/types/protobuf.d.cts +302 -0
  46. package/dist/types/protobuf.d.cts.map +1 -0
  47. package/dist/types/protobuf.d.mts +302 -0
  48. package/dist/types/protobuf.d.mts.map +1 -0
  49. package/dist/types/protobuf.mjs +1 -0
  50. package/dist/types/sendable.cjs +0 -0
  51. package/dist/types/sendable.d.cts +225 -0
  52. package/dist/types/sendable.d.cts.map +1 -0
  53. package/dist/types/sendable.d.mts +225 -0
  54. package/dist/types/sendable.d.mts.map +1 -0
  55. package/dist/types/sendable.mjs +1 -0
  56. package/dist/types/struct.cjs +0 -0
  57. package/dist/types/struct.d.cts +304 -0
  58. package/dist/types/struct.d.cts.map +1 -0
  59. package/dist/types/struct.d.mts +304 -0
  60. package/dist/types/struct.d.mts.map +1 -0
  61. package/dist/types/struct.mjs +1 -0
  62. package/dist/utils.cjs +140 -0
  63. package/dist/utils.d.cts +40 -0
  64. package/dist/utils.d.cts.map +1 -0
  65. package/dist/utils.d.mts +40 -0
  66. package/dist/utils.d.mts.map +1 -0
  67. package/dist/utils.mjs +135 -0
  68. package/dist/utils.mjs.map +1 -0
  69. package/package.json +51 -0
  70. package/src/abstractions.ts +308 -0
  71. package/src/formats/json.ts +53 -0
  72. package/src/formats/msgpack.ts +42 -0
  73. package/src/formats/protobuf.ts +213 -0
  74. package/src/formats/struct.test.ts +814 -0
  75. package/src/formats/struct.ts +992 -0
  76. package/src/sink.ts +611 -0
  77. package/src/types/protobuf.ts +334 -0
  78. package/src/types/sendable.ts +244 -0
  79. package/src/types/struct.ts +333 -0
  80. package/src/utils.ts +241 -0
@@ -0,0 +1,334 @@
1
+ /**
2
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/wpimath.proto
3
+ */
4
+ export interface VectorProto {
5
+ readonly rows: ReadonlyArray<number>;
6
+ }
7
+
8
+ /**
9
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/wpimath.proto
10
+ */
11
+ export interface MatrixProto {
12
+ readonly num_rows: number;
13
+ readonly num_cols: number;
14
+ readonly data: ReadonlyArray<number>;
15
+ }
16
+
17
+ /**
18
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry2d.proto
19
+ */
20
+ export interface Translation2dProto {
21
+ readonly x: number;
22
+ readonly y: number;
23
+ }
24
+
25
+ /**
26
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry3d.proto
27
+ */
28
+ export interface Translation3dProto {
29
+ readonly x: number;
30
+ readonly y: number;
31
+ readonly z: number;
32
+ }
33
+
34
+ /**
35
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry2d.proto
36
+ */
37
+ export interface Twist2dProto {
38
+ readonly dx: number;
39
+ readonly dy: number;
40
+ readonly dtheta: number;
41
+ }
42
+
43
+ /**
44
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry3d.proto
45
+ */
46
+ export interface Twist3dProto {
47
+ readonly dx: number;
48
+ readonly dy: number;
49
+ readonly dz: number;
50
+ readonly rx: number;
51
+ readonly ry: number;
52
+ readonly rz: number;
53
+ }
54
+
55
+ /**
56
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry3d.proto
57
+ */
58
+ export interface QuaternionProto {
59
+ readonly w: number;
60
+ readonly x: number;
61
+ readonly y: number;
62
+ readonly z: number;
63
+ }
64
+
65
+ /**
66
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry2d.proto
67
+ */
68
+ export interface Rotation2dProto {
69
+ readonly value: number;
70
+ }
71
+
72
+ /**
73
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry3d.proto
74
+ */
75
+ export interface Rotation3dProto {
76
+ readonly q: QuaternionProto;
77
+ }
78
+
79
+ /**
80
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry2d.proto
81
+ */
82
+ export interface Transform2dProto {
83
+ readonly translation: Translation2dProto;
84
+ readonly rotation: Rotation2dProto;
85
+ }
86
+
87
+ /**
88
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry3d.proto
89
+ */
90
+ export interface Transform3dProto {
91
+ readonly translation: Translation3dProto;
92
+ readonly rotation: Rotation3dProto;
93
+ }
94
+
95
+ /**
96
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry2d.proto
97
+ */
98
+ export interface Pose2dProto {
99
+ readonly translation: Translation2dProto;
100
+ readonly rotation: Rotation2dProto;
101
+ }
102
+
103
+ /**
104
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry3d.proto
105
+ */
106
+ export interface Pose3dProto {
107
+ readonly translation: Translation3dProto;
108
+ readonly rotation: Rotation3dProto;
109
+ }
110
+
111
+ /**
112
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry2d.proto
113
+ */
114
+ export interface Ellipse2dProto {
115
+ readonly center: Pose2dProto;
116
+ readonly xSemiAxis: number;
117
+ readonly ySemiAxis: number;
118
+ }
119
+
120
+ /**
121
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/geometry2d.proto
122
+ */
123
+ export interface Rectangle2dProto {
124
+ readonly center: Pose2dProto;
125
+ readonly xWidth: number;
126
+ readonly yWidth: number;
127
+ }
128
+
129
+ /**
130
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/controller.proto
131
+ */
132
+ export interface ArmFeedforwardProto {
133
+ readonly ks: number;
134
+ readonly kg: number;
135
+ readonly kv: number;
136
+ readonly ka: number;
137
+ readonly dt: number;
138
+ }
139
+
140
+ /**
141
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/controller.proto
142
+ */
143
+ export interface DifferentialDriveFeedforwardProto {
144
+ readonly kv_linear: number;
145
+ readonly ka_linear: number;
146
+ readonly kv_angular: number;
147
+ readonly ka_angular: number;
148
+ }
149
+
150
+ /**
151
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/controller.proto
152
+ */
153
+ export interface DifferentialDriveWheelVoltagesProto {
154
+ readonly left: number;
155
+ readonly right: number;
156
+ }
157
+
158
+ /**
159
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/controller.proto
160
+ */
161
+ export interface ElevatorFeedforwardProto {
162
+ readonly ks: number;
163
+ readonly kg: number;
164
+ readonly kv: number;
165
+ readonly ka: number;
166
+ readonly dt: number;
167
+ }
168
+
169
+ /**
170
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/controller.proto
171
+ */
172
+ export interface SimpleMotorFeedforwardProto {
173
+ readonly ks: number;
174
+ readonly kv: number;
175
+ readonly ka: number;
176
+ readonly dt: number;
177
+ }
178
+
179
+ /**
180
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
181
+ */
182
+ export interface ChassisSpeedsProto {
183
+ readonly vx: number;
184
+ readonly vy: number;
185
+ readonly omega: number;
186
+ }
187
+
188
+ /**
189
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
190
+ */
191
+ export interface DifferentialDriveKinematicsProto {
192
+ readonly track_width: number;
193
+ }
194
+
195
+ /**
196
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
197
+ */
198
+ export interface DifferentialDriveWheelPositionsProto {
199
+ readonly left: number;
200
+ readonly right: number;
201
+ }
202
+
203
+ /**
204
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
205
+ */
206
+ export interface DifferentialDriveWheelSpeedsProto {
207
+ readonly left: number;
208
+ readonly right: number;
209
+ }
210
+
211
+ /**
212
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
213
+ */
214
+ export interface MecanumDriveKinematicsProto {
215
+ readonly front_left: Translation2dProto;
216
+ readonly front_right: Translation2dProto;
217
+ readonly rear_left: Translation2dProto;
218
+ readonly rear_right: Translation2dProto;
219
+ }
220
+
221
+ /**
222
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
223
+ */
224
+ export interface MecanumDriveMotorVoltagesProto {
225
+ readonly front_left: number;
226
+ readonly front_right: number;
227
+ readonly rear_left: number;
228
+ readonly rear_right: number;
229
+ }
230
+
231
+ /**
232
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
233
+ */
234
+ export interface MecanumDriveWheelPositionsProto {
235
+ readonly front_left: number;
236
+ readonly front_right: number;
237
+ readonly rear_left: number;
238
+ readonly rear_right: number;
239
+ }
240
+
241
+ /**
242
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
243
+ */
244
+ export interface MecanumDriveWheelSpeedsProto {
245
+ readonly front_left: number;
246
+ readonly front_right: number;
247
+ readonly rear_left: number;
248
+ readonly rear_right: number;
249
+ }
250
+
251
+ /**
252
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
253
+ */
254
+ export interface SwerveDriveKinematicsProto {
255
+ readonly modules: ReadonlyArray<Translation2dProto>;
256
+ }
257
+
258
+ /**
259
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
260
+ */
261
+ export interface SwerveModulePositionProto {
262
+ readonly distance: number;
263
+ readonly angle: Rotation2dProto;
264
+ }
265
+
266
+ /**
267
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/kinematics.proto
268
+ */
269
+ export interface SwerveModuleStateProto {
270
+ readonly speed: number;
271
+ readonly angle: Rotation2dProto;
272
+ }
273
+
274
+ /**
275
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/spline.proto
276
+ */
277
+ export interface CubicHermiteSplineProto {
278
+ readonly x_initial: readonly [number, number];
279
+ readonly x_final: readonly [number, number];
280
+ readonly y_initial: readonly [number, number];
281
+ readonly y_final: readonly [number, number];
282
+ }
283
+
284
+ /**
285
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/spline.proto
286
+ */
287
+ export interface QuinticHermiteSplineProto {
288
+ readonly x_initial: readonly [number, number, number];
289
+ readonly x_final: readonly [number, number, number];
290
+ readonly y_initial: readonly [number, number, number];
291
+ readonly y_final: readonly [number, number, number];
292
+ }
293
+
294
+ /**
295
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/system.proto
296
+ */
297
+ export interface LinearSystemProto {
298
+ readonly num_states: number;
299
+ readonly num_inputs: number;
300
+ readonly num_outputs: number;
301
+ readonly a: MatrixProto;
302
+ readonly b: MatrixProto;
303
+ readonly c: MatrixProto;
304
+ readonly d: MatrixProto;
305
+ }
306
+
307
+ /**
308
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/plant.proto
309
+ */
310
+ export interface DCMotorProto {
311
+ readonly nominal_voltage: number;
312
+ readonly stall_torque: number;
313
+ readonly stall_current: number;
314
+ readonly free_current: number;
315
+ readonly free_speed: number;
316
+ }
317
+
318
+ /**
319
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/trajectory.proto
320
+ */
321
+ export interface TrajectoryStateProto {
322
+ readonly time: number;
323
+ readonly velocity: number;
324
+ readonly acceleration: number;
325
+ readonly pose: Pose2dProto;
326
+ readonly curvature: number;
327
+ }
328
+
329
+ /**
330
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/proto/trajectory.proto
331
+ */
332
+ export interface TrajectoryProto {
333
+ readonly states: ReadonlyArray<TrajectoryStateProto>;
334
+ }
@@ -0,0 +1,244 @@
1
+ /**
2
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/smartdashboard/SendableChooser.java
3
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/include/frc/smartdashboard/SendableChooser.h
4
+ */
5
+ export interface StringChooserSendable {
6
+ readonly default: string;
7
+ readonly selected: string | undefined;
8
+ readonly active: string;
9
+ readonly options: ReadonlyArray<string>;
10
+ }
11
+
12
+ /**
13
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/smartdashboard/Field2d.java
14
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/smartdashboard/Field2d.cpp
15
+ */
16
+ export interface Field2dSendable {
17
+ readonly Robot: readonly [number, number, number];
18
+ }
19
+
20
+ /**
21
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/AnalogGyro.java
22
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/AnalogGyro.cpp
23
+ */
24
+ export interface GyroSendable {
25
+ readonly Value: number;
26
+ }
27
+
28
+ /**
29
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/AnalogAccelerometer.java
30
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/AnalogAccelerometer.cpp
31
+ */
32
+ export interface AccelerometerSendable {
33
+ readonly Value: number;
34
+ }
35
+
36
+ /**
37
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/BuiltInAccelerometer.java
38
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/BuiltInAccelerometer.cpp
39
+ */
40
+ export interface ThreeAxisAccelerometerSendable {
41
+ readonly X: number;
42
+ readonly Y: number;
43
+ readonly Z: number;
44
+ }
45
+
46
+ /**
47
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/ADIS16448_IMU.java
48
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/ADIS16470_IMU.cpp
49
+ */
50
+ export interface ADIS164xxIMUSendable {
51
+ readonly "Yaw Angle": number;
52
+ }
53
+
54
+ /**
55
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/AnalogInput.java
56
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/AnalogInput.cpp
57
+ */
58
+ export interface AnalogInputSendable {
59
+ readonly Value: number;
60
+ }
61
+
62
+ /**
63
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/AnalogOutput.java
64
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/AnalogOutput.cpp
65
+ */
66
+ export interface AnalogOutputSendable {
67
+ readonly Value: number;
68
+ }
69
+
70
+ /**
71
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/DigitalInput.java
72
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/DigitalInput.cpp
73
+ */
74
+ export interface DigitalInputSendable {
75
+ readonly Value: boolean;
76
+ }
77
+
78
+ /**
79
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/DigitalOutput.java
80
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/DigitalOutput.cpp
81
+ */
82
+ export interface DigitalOutputSendable {
83
+ readonly Value: boolean;
84
+ }
85
+
86
+ /**
87
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/Compressor.java
88
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/Compressor.cpp
89
+ */
90
+ export interface CompressorSendable {
91
+ readonly Enabled: boolean;
92
+ readonly "Pressure switch": boolean;
93
+ readonly "Current (A)": number;
94
+ readonly "Analog Voltage": number | undefined;
95
+ readonly "Pressure (PSI)": number | undefined;
96
+ }
97
+
98
+ /**
99
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/Counter.java
100
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/Counter.cpp
101
+ */
102
+ export interface CounterSendable {
103
+ readonly Value: number;
104
+ }
105
+
106
+ /**
107
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/DutyCycleEncoder.java
108
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/DutyCycleEncoder.cpp
109
+ */
110
+ export interface AbsoluteEncoderSendable {
111
+ readonly Position: number;
112
+ readonly "Is Connected": boolean;
113
+ }
114
+
115
+ /**
116
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/Encoder.java
117
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/Encoder.cpp
118
+ */
119
+ export interface EncoderSendable {
120
+ readonly Speed: number;
121
+ readonly Distance: number;
122
+ readonly "Distance per Tick": number;
123
+ }
124
+
125
+ /**
126
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/PWM.java
127
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/PWM.cpp
128
+ */
129
+ export interface PWMSendable {
130
+ readonly Value: number;
131
+ readonly Speed: number;
132
+ readonly Position: number;
133
+ }
134
+
135
+ /**
136
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/PowerDistribution.java
137
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/PowerDistribution.cpp
138
+ */
139
+ export interface PowerDistributionSendable {
140
+ readonly Chan0: number;
141
+ readonly Chan1: number;
142
+ readonly Chan2: number;
143
+ readonly Chan3: number;
144
+ readonly Chan4: number;
145
+ readonly Chan5: number;
146
+ readonly Chan6: number;
147
+ readonly Chan7: number;
148
+ readonly Chan8: number;
149
+ readonly Chan9: number;
150
+ readonly Chan10: number;
151
+ readonly Chan11: number;
152
+ readonly Chan12: number;
153
+ readonly Chan13: number;
154
+ readonly Chan14: number;
155
+ readonly Chan15: number;
156
+ readonly Chan16: number;
157
+ readonly Chan17: number;
158
+ readonly Chan18: number;
159
+ readonly Chan19: number;
160
+ readonly Chan20: number;
161
+ readonly Chan21: number;
162
+ readonly Chan22: number;
163
+ readonly Chan23: number;
164
+ readonly Voltage: number;
165
+ readonly TotalCurrent: number;
166
+ readonly SwitchableChannel: boolean;
167
+ }
168
+
169
+ /**
170
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/Relay.java
171
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/Relay.cpp
172
+ */
173
+ export interface RelaySendable {
174
+ readonly Value: string;
175
+ }
176
+
177
+ /**
178
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/Servo.java
179
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/Servo.cpp
180
+ */
181
+ export interface ServoSendable {
182
+ readonly Value: number;
183
+ }
184
+
185
+ /**
186
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/Solenoid.java
187
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/Solenoid.cpp
188
+ */
189
+ export interface SolenoidSendable {
190
+ readonly Value: boolean;
191
+ }
192
+
193
+ /**
194
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/DoubleSolenoid.java
195
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/DoubleSolenoid.cpp
196
+ */
197
+ export interface DoubleSolenoidSendable {
198
+ readonly Value: string;
199
+ }
200
+
201
+ /**
202
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/Ultrasonic.java
203
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/Ultrasonic.cpp
204
+ */
205
+ export interface UltrasonicSendable {
206
+ readonly Value: number;
207
+ }
208
+
209
+ /**
210
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/drive/DifferentialDrive.java
211
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/drive/DifferentialDrive.cpp
212
+ */
213
+ export interface DifferentialDriveSendable {
214
+ readonly "Left Motor Speed": number;
215
+ readonly "Right Motor Speed": number;
216
+ }
217
+
218
+ /**
219
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibj/src/main/java/edu/wpi/first/wpilibj/drive/MecanumDrive.java
220
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpilibc/src/main/native/cpp/drive/MecanumDrive.cpp
221
+ */
222
+ export interface MecanumDriveSendable {
223
+ readonly "Front Left Motor Speed": number;
224
+ readonly "Front Right Motor Speed": number;
225
+ readonly "Rear Left Motor Speed": number;
226
+ readonly "Rear Right Motor Speed": number;
227
+ }
228
+
229
+ /**
230
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/java/edu/wpi/first/math/controller/PIDController.java
231
+ * @see https://github.com/wpilibsuite/allwpilib/blob/main/wpimath/src/main/native/cpp/controller/PIDController.cpp
232
+ */
233
+ export interface PIDControllerSendable {
234
+ readonly p: number;
235
+ readonly i: number;
236
+ readonly d: number;
237
+ readonly izone: number;
238
+ readonly setpoint: number;
239
+ readonly measurement: number;
240
+ readonly error: number;
241
+ readonly "error derivative": number;
242
+ readonly "previous error": number;
243
+ readonly "total error": number;
244
+ }