ai.muna.muna 0.0.47 → 0.0.49

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 (83) hide show
  1. package/Plugins/Android/Muna.aar +0 -0
  2. package/Plugins/Linux/arm64/libFunction.so +0 -0
  3. package/Plugins/Linux/x86_64/libFunction.so +0 -0
  4. package/Plugins/Web/libFunction.a +0 -0
  5. package/Plugins/Windows/arm64/Function.dll +0 -0
  6. package/Plugins/Windows/x86_64/Function.dll +0 -0
  7. package/Plugins/iOS/Function.xcframework/Info.plist +10 -12
  8. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Function +0 -0
  9. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNConfiguration.h +15 -15
  10. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNPrediction.h +8 -8
  11. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNPredictionStream.h +3 -3
  12. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNPredictor.h +5 -5
  13. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNStatus.h +1 -1
  14. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNValue.h +117 -33
  15. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNValueList.h +87 -0
  16. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNValueMap.h +8 -37
  17. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/FXNVersion.h +3 -3
  18. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Headers/Function.h +2 -1
  19. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/Info.plist +0 -0
  20. package/Plugins/iOS/Function.xcframework/ios-arm64/Function.framework/_CodeSignature/CodeResources +30 -19
  21. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Function +0 -0
  22. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNConfiguration.h +313 -0
  23. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNPrediction.h +165 -0
  24. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNPredictionStream.h +63 -0
  25. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNPredictor.h +108 -0
  26. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNStatus.h +42 -0
  27. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNValue.h +479 -0
  28. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNValueList.h +87 -0
  29. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNValueMap.h +119 -0
  30. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/FXNVersion.h +26 -0
  31. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Headers/Function.h +19 -0
  32. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Info.plist +0 -0
  33. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/Modules/module.modulemap +6 -0
  34. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/PrivacyInfo.xcprivacy +36 -0
  35. package/Plugins/iOS/Function.xcframework/ios-arm64-simulator/Function.framework/_CodeSignature/CodeResources +234 -0
  36. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Function +0 -0
  37. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNConfiguration.h +15 -15
  38. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNPrediction.h +8 -8
  39. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNPredictionStream.h +3 -3
  40. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNPredictor.h +5 -5
  41. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNStatus.h +1 -1
  42. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNValue.h +117 -33
  43. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNValueList.h +87 -0
  44. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNValueMap.h +8 -37
  45. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/FXNVersion.h +3 -3
  46. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Headers/Function.h +2 -1
  47. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/Info.plist +0 -0
  48. package/Plugins/iOS/Function.xcframework/xros-arm64/Function.framework/_CodeSignature/CodeResources +30 -19
  49. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Function +0 -0
  50. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNConfiguration.h +313 -0
  51. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNPrediction.h +165 -0
  52. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNPredictionStream.h +63 -0
  53. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNPredictor.h +108 -0
  54. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNStatus.h +42 -0
  55. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNValue.h +479 -0
  56. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNValueList.h +87 -0
  57. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNValueMap.h +119 -0
  58. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/FXNVersion.h +26 -0
  59. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Headers/Function.h +19 -0
  60. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Info.plist +0 -0
  61. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/Modules/module.modulemap +6 -0
  62. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/PrivacyInfo.xcprivacy +36 -0
  63. package/Plugins/iOS/Function.xcframework/xros-arm64-simulator/Function.framework/_CodeSignature/CodeResources +234 -0
  64. package/Plugins/macOS/Function.dylib +0 -0
  65. package/README.md +1 -1
  66. package/Runtime/C/Configuration.cs +3 -3
  67. package/Runtime/C/Function.cs +25 -5
  68. package/Runtime/C/PredictionStream.cs +1 -1
  69. package/Runtime/C/Predictor.cs +1 -1
  70. package/Runtime/C/Value.cs +18 -4
  71. package/Runtime/C/ValueList.cs +40 -0
  72. package/Runtime/C/ValueList.cs.meta +2 -0
  73. package/Runtime/C/ValueMap.cs +2 -2
  74. package/Runtime/Muna.cs +1 -1
  75. package/Runtime/Types/Dtype.cs +29 -24
  76. package/Runtime/Types/Image.cs +1 -1
  77. package/Runtime/Types/Parameter.cs +1 -1
  78. package/Runtime/Types/Prediction.cs +1 -1
  79. package/Runtime/Types/Predictor.cs +1 -1
  80. package/Runtime/Types/Tensor.cs +1 -1
  81. package/Runtime/Types/User.cs +1 -1
  82. package/Unity/Internal/PredictionCache.cs +10 -9
  83. package/package.json +1 -1
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -8,7 +8,7 @@
8
8
  <key>BinaryPath</key>
9
9
  <string>Function.framework/Function</string>
10
10
  <key>LibraryIdentifier</key>
11
- <string>xros-arm64</string>
11
+ <string>ios-arm64-simulator</string>
12
12
  <key>LibraryPath</key>
13
13
  <string>Function.framework</string>
14
14
  <key>SupportedArchitectures</key>
@@ -16,47 +16,43 @@
16
16
  <string>arm64</string>
17
17
  </array>
18
18
  <key>SupportedPlatform</key>
19
- <string>xros</string>
19
+ <string>ios</string>
20
+ <key>SupportedPlatformVariant</key>
21
+ <string>simulator</string>
20
22
  </dict>
21
23
  <dict>
22
24
  <key>BinaryPath</key>
23
25
  <string>Function.framework/Function</string>
24
26
  <key>LibraryIdentifier</key>
25
- <string>xros-arm64_x86_64-simulator</string>
27
+ <string>xros-arm64</string>
26
28
  <key>LibraryPath</key>
27
29
  <string>Function.framework</string>
28
30
  <key>SupportedArchitectures</key>
29
31
  <array>
30
32
  <string>arm64</string>
31
- <string>x86_64</string>
32
33
  </array>
33
34
  <key>SupportedPlatform</key>
34
35
  <string>xros</string>
35
- <key>SupportedPlatformVariant</key>
36
- <string>simulator</string>
37
36
  </dict>
38
37
  <dict>
39
38
  <key>BinaryPath</key>
40
39
  <string>Function.framework/Function</string>
41
40
  <key>LibraryIdentifier</key>
42
- <string>ios-arm64_x86_64-simulator</string>
41
+ <string>ios-arm64</string>
43
42
  <key>LibraryPath</key>
44
43
  <string>Function.framework</string>
45
44
  <key>SupportedArchitectures</key>
46
45
  <array>
47
46
  <string>arm64</string>
48
- <string>x86_64</string>
49
47
  </array>
50
48
  <key>SupportedPlatform</key>
51
49
  <string>ios</string>
52
- <key>SupportedPlatformVariant</key>
53
- <string>simulator</string>
54
50
  </dict>
55
51
  <dict>
56
52
  <key>BinaryPath</key>
57
53
  <string>Function.framework/Function</string>
58
54
  <key>LibraryIdentifier</key>
59
- <string>ios-arm64</string>
55
+ <string>xros-arm64-simulator</string>
60
56
  <key>LibraryPath</key>
61
57
  <string>Function.framework</string>
62
58
  <key>SupportedArchitectures</key>
@@ -64,7 +60,9 @@
64
60
  <string>arm64</string>
65
61
  </array>
66
62
  <key>SupportedPlatform</key>
67
- <string>ios</string>
63
+ <string>xros</string>
64
+ <key>SupportedPlatformVariant</key>
65
+ <string>simulator</string>
68
66
  </dict>
69
67
  </array>
70
68
  <key>CFBundlePackageType</key>
@@ -3,7 +3,7 @@
3
3
  // Function
4
4
  //
5
5
  // Created by Yusuf Olokoba on 5/27/2023.
6
- // Copyright © 2025 NatML Inc. All rights reserved.
6
+ // Copyright © 2026 NatML Inc. All rights reserved.
7
7
  //
8
8
 
9
9
  #pragma once
@@ -59,7 +59,7 @@ typedef struct FXNConfiguration FXNConfiguration;
59
59
  @param status
60
60
  Result status.
61
61
  */
62
- typedef void (*FXNConfigurationAddResourceHandler) (
62
+ typedef void (*FXNConfigurationAddResourceHandler)(
63
63
  void* context,
64
64
  FXNStatus status
65
65
  );
@@ -80,7 +80,7 @@ typedef void (*FXNConfigurationAddResourceHandler) (
80
80
  @param size
81
81
  Identifier size.
82
82
  */
83
- FXN_API FXNStatus FXNConfigurationGetUniqueID (
83
+ FXN_API FXNStatus FXNConfigurationGetUniqueID(
84
84
  char* identifier,
85
85
  int32_t size
86
86
  );
@@ -98,7 +98,7 @@ FXN_API FXNStatus FXNConfigurationGetUniqueID (
98
98
  @param size
99
99
  Identifier size.
100
100
  */
101
- FXN_API FXNStatus FXNConfigurationGetClientID (
101
+ FXN_API FXNStatus FXNConfigurationGetClientID(
102
102
  char* identifier,
103
103
  int32_t size
104
104
  );
@@ -113,7 +113,7 @@ FXN_API FXNStatus FXNConfigurationGetClientID (
113
113
  @param configuration
114
114
  Created configuration. MUST NOT be `NULL`.
115
115
  */
116
- FXN_API FXNStatus FXNConfigurationCreate (FXNConfiguration** configuration);
116
+ FXN_API FXNStatus FXNConfigurationCreate(FXNConfiguration** configuration);
117
117
 
118
118
  /*!
119
119
  @function FXNConfigurationRelease
@@ -125,7 +125,7 @@ FXN_API FXNStatus FXNConfigurationCreate (FXNConfiguration** configuration);
125
125
  @param configuration
126
126
  Predictor configuration.
127
127
  */
128
- FXN_API FXNStatus FXNConfigurationRelease (FXNConfiguration* configuration);
128
+ FXN_API FXNStatus FXNConfigurationRelease(FXNConfiguration* configuration);
129
129
  #pragma endregion
130
130
 
131
131
 
@@ -146,7 +146,7 @@ FXN_API FXNStatus FXNConfigurationRelease (FXNConfiguration* configuration);
146
146
  @param size
147
147
  Size of destination buffer.
148
148
  */
149
- FXN_API FXNStatus FXNConfigurationGetTag (
149
+ FXN_API FXNStatus FXNConfigurationGetTag(
150
150
  FXNConfiguration* configuration,
151
151
  char* tag,
152
152
  int32_t size
@@ -166,7 +166,7 @@ FXN_API FXNStatus FXNConfigurationGetTag (
166
166
  @param tag
167
167
  Predictor tag.
168
168
  */
169
- FXN_API FXNStatus FXNConfigurationSetTag (
169
+ FXN_API FXNStatus FXNConfigurationSetTag(
170
170
  FXNConfiguration* configuration,
171
171
  const char* tag
172
172
  );
@@ -187,7 +187,7 @@ FXN_API FXNStatus FXNConfigurationSetTag (
187
187
  @param size
188
188
  Size of destination buffer.
189
189
  */
190
- FXN_API FXNStatus FXNConfigurationGetToken (
190
+ FXN_API FXNStatus FXNConfigurationGetToken(
191
191
  FXNConfiguration* configuration,
192
192
  char* token,
193
193
  int32_t size
@@ -207,7 +207,7 @@ FXN_API FXNStatus FXNConfigurationGetToken (
207
207
  @param token
208
208
  Configuration token.
209
209
  */
210
- FXN_API FXNStatus FXNConfigurationSetToken (
210
+ FXN_API FXNStatus FXNConfigurationSetToken(
211
211
  FXNConfiguration* configuration,
212
212
  const char* token
213
213
  );
@@ -225,7 +225,7 @@ FXN_API FXNStatus FXNConfigurationSetToken (
225
225
  @param acceleration
226
226
  Acceleration.
227
227
  */
228
- FXN_API FXNStatus FXNConfigurationGetAcceleration (
228
+ FXN_API FXNStatus FXNConfigurationGetAcceleration(
229
229
  FXNConfiguration* configuration,
230
230
  FXNAcceleration* acceleration
231
231
  );
@@ -243,7 +243,7 @@ FXN_API FXNStatus FXNConfigurationGetAcceleration (
243
243
  @param acceleration
244
244
  Acceleration used for making predictions predictions.
245
245
  */
246
- FXN_API FXNStatus FXNConfigurationSetAcceleration (
246
+ FXN_API FXNStatus FXNConfigurationSetAcceleration(
247
247
  FXNConfiguration* configuration,
248
248
  FXNAcceleration acceleration
249
249
  );
@@ -263,7 +263,7 @@ FXN_API FXNStatus FXNConfigurationSetAcceleration (
263
263
  The type of this device is platform-dependent.
264
264
  See https://docs.fxn.ai/workflows/realtime#specifying-the-acceleration-device for more information.
265
265
  */
266
- FXN_API FXNStatus FXNConfigurationGetDevice (
266
+ FXN_API FXNStatus FXNConfigurationGetDevice(
267
267
  FXNConfiguration* configuration,
268
268
  void** device
269
269
  );
@@ -284,7 +284,7 @@ FXN_API FXNStatus FXNConfigurationGetDevice (
284
284
  Pass `NULL` to use the default compute device.
285
285
  See https://docs.fxn.ai/workflows/realtime#specifying-the-acceleration-device for more information.
286
286
  */
287
- FXN_API FXNStatus FXNConfigurationSetDevice (
287
+ FXN_API FXNStatus FXNConfigurationSetDevice(
288
288
  FXNConfiguration* configuration,
289
289
  void* device
290
290
  );
@@ -305,7 +305,7 @@ FXN_API FXNStatus FXNConfigurationSetDevice (
305
305
  @param path
306
306
  Resource path.
307
307
  */
308
- FXN_API FXNStatus FXNConfigurationAddResource (
308
+ FXN_API FXNStatus FXNConfigurationAddResource(
309
309
  FXNConfiguration* configuration,
310
310
  const char* type,
311
311
  const char* path
@@ -3,7 +3,7 @@
3
3
  // Function
4
4
  //
5
5
  // Created by Yusuf Olokoba on 11/23/2023.
6
- // Copyright © 2025 NatML Inc. All rights reserved.
6
+ // Copyright © 2026 NatML Inc. All rights reserved.
7
7
  //
8
8
 
9
9
  #pragma once
@@ -35,7 +35,7 @@ typedef struct FXNPrediction FXNPrediction;
35
35
  @param prediction
36
36
  Prediction.
37
37
  */
38
- FXN_API FXNStatus FXNPredictionRelease (FXNPrediction* prediction);
38
+ FXN_API FXNStatus FXNPredictionRelease(FXNPrediction* prediction);
39
39
  #pragma endregion
40
40
 
41
41
 
@@ -56,7 +56,7 @@ FXN_API FXNStatus FXNPredictionRelease (FXNPrediction* prediction);
56
56
  @param size
57
57
  Destination buffer size.
58
58
  */
59
- FXN_API FXNStatus FXNPredictionGetID (
59
+ FXN_API FXNStatus FXNPredictionGetID(
60
60
  FXNPrediction* prediction,
61
61
  char* destination,
62
62
  int32_t size
@@ -75,7 +75,7 @@ FXN_API FXNStatus FXNPredictionGetID (
75
75
  @param latency
76
76
  Prediction latency in milliseconds.
77
77
  */
78
- FXN_API FXNStatus FXNPredictionGetLatency (
78
+ FXN_API FXNStatus FXNPredictionGetLatency(
79
79
  FXNPrediction* prediction,
80
80
  double* latency
81
81
  );
@@ -93,7 +93,7 @@ FXN_API FXNStatus FXNPredictionGetLatency (
93
93
  @param map
94
94
  Prediction output value map. Do NOT release this value map as it is owned by the prediction.
95
95
  */
96
- FXN_API FXNStatus FXNPredictionGetResults (
96
+ FXN_API FXNStatus FXNPredictionGetResults(
97
97
  FXNPrediction* prediction,
98
98
  FXNValueMap** map
99
99
  );
@@ -117,7 +117,7 @@ FXN_API FXNStatus FXNPredictionGetResults (
117
117
  @returns `FXN_OK` if an error has been copied.
118
118
  `FXN_ERROR_INVALID_OPERATION` if no error exists.
119
119
  */
120
- FXN_API FXNStatus FXNPredictionGetError (
120
+ FXN_API FXNStatus FXNPredictionGetError(
121
121
  FXNPrediction* prediction,
122
122
  char* error,
123
123
  int32_t size
@@ -139,7 +139,7 @@ FXN_API FXNStatus FXNPredictionGetError (
139
139
  @param size
140
140
  Destination buffer size.
141
141
  */
142
- FXN_API FXNStatus FXNPredictionGetLogs (
142
+ FXN_API FXNStatus FXNPredictionGetLogs(
143
143
  FXNPrediction* prediction,
144
144
  char* logs,
145
145
  int32_t size
@@ -158,7 +158,7 @@ FXN_API FXNStatus FXNPredictionGetLogs (
158
158
  @param length
159
159
  Logs length.
160
160
  */
161
- FXN_API FXNStatus FXNPredictionGetLogLength (
161
+ FXN_API FXNStatus FXNPredictionGetLogLength(
162
162
  FXNPrediction* prediction,
163
163
  int32_t* length
164
164
  );
@@ -3,7 +3,7 @@
3
3
  // Function
4
4
  //
5
5
  // Created by Yusuf Olokoba on 4/19/2024.
6
- // Copyright © 2025 NatML Inc. All rights reserved.
6
+ // Copyright © 2026 NatML Inc. All rights reserved.
7
7
  //
8
8
 
9
9
  #pragma once
@@ -34,7 +34,7 @@ typedef struct FXNPredictionStream FXNPredictionStream;
34
34
  @param stream
35
35
  Prediction stream.
36
36
  */
37
- FXN_API FXNStatus FXNPredictionStreamRelease (FXNPredictionStream* stream);
37
+ FXN_API FXNStatus FXNPredictionStreamRelease(FXNPredictionStream* stream);
38
38
  #pragma endregion
39
39
 
40
40
 
@@ -56,7 +56,7 @@ FXN_API FXNStatus FXNPredictionStreamRelease (FXNPredictionStream* stream);
56
56
  @returns `FXN_OK` a prediction was successfully read from the stream.
57
57
  `FXN_ERROR_INVALID_OPERATION` if the stream has no more predictions.
58
58
  */
59
- FXN_API FXNStatus FXNPredictionStreamReadNext (
59
+ FXN_API FXNStatus FXNPredictionStreamReadNext(
60
60
  FXNPredictionStream* stream,
61
61
  FXNPrediction** prediction
62
62
  );
@@ -3,7 +3,7 @@
3
3
  // Function
4
4
  //
5
5
  // Created by Yusuf Olokoba on 10/14/2023.
6
- // Copyright © 2025 NatML Inc. All rights reserved.
6
+ // Copyright © 2026 NatML Inc. All rights reserved.
7
7
  //
8
8
 
9
9
  #pragma once
@@ -39,7 +39,7 @@ typedef struct FXNPredictor FXNPredictor;
39
39
  @param predictor
40
40
  Created predictor.
41
41
  */
42
- FXN_API FXNStatus FXNPredictorCreate (
42
+ FXN_API FXNStatus FXNPredictorCreate(
43
43
  FXNConfiguration* configuration,
44
44
  FXNPredictor** predictor
45
45
  );
@@ -54,7 +54,7 @@ FXN_API FXNStatus FXNPredictorCreate (
54
54
  @param predictor
55
55
  Predictor.
56
56
  */
57
- FXN_API FXNStatus FXNPredictorRelease (FXNPredictor* predictor);
57
+ FXN_API FXNStatus FXNPredictorRelease(FXNPredictor* predictor);
58
58
  #pragma endregion
59
59
 
60
60
 
@@ -76,7 +76,7 @@ FXN_API FXNStatus FXNPredictorRelease (FXNPredictor* predictor);
76
76
  Prediction.
77
77
  You MUST release the prediction with `FXNPredictionRelease` when no longer needed.
78
78
  */
79
- FXN_API FXNStatus FXNPredictorCreatePrediction (
79
+ FXN_API FXNStatus FXNPredictorCreatePrediction(
80
80
  FXNPredictor* predictor,
81
81
  FXNValueMap* inputs,
82
82
  FXNPrediction** prediction
@@ -100,7 +100,7 @@ FXN_API FXNStatus FXNPredictorCreatePrediction (
100
100
  Prediction stream.
101
101
  You MUST release the prediction stream with `FXNPredictionStreamRelease` when no longer needed.
102
102
  */
103
- FXN_API FXNStatus FXNPredictorStreamPrediction (
103
+ FXN_API FXNStatus FXNPredictorStreamPrediction(
104
104
  FXNPredictor* predictor,
105
105
  FXNValueMap* inputs,
106
106
  FXNPredictionStream** stream
@@ -3,7 +3,7 @@
3
3
  // Function
4
4
  //
5
5
  // Created by Yusuf Olokoba on 10/14/2023.
6
- // Copyright © 2025 NatML Inc. All rights reserved.
6
+ // Copyright © 2026 NatML Inc. All rights reserved.
7
7
  //
8
8
 
9
9
  #pragma once
@@ -3,7 +3,7 @@
3
3
  // Function
4
4
  //
5
5
  // Created by Yusuf Olokoba on 5/27/2023.
6
- // Copyright © 2025 NatML Inc. All rights reserved.
6
+ // Copyright © 2026 NatML Inc. All rights reserved.
7
7
  //
8
8
 
9
9
  #pragma once
@@ -73,27 +73,35 @@
73
73
 
74
74
  @constant FXN_DTYPE_BFLOAT16
75
75
  16-bit brain float.
76
+
77
+ @constant FXN_DTYPE_VALUE_LIST
78
+ Prediction value list.
79
+
80
+ @constant FXN_DTYPE_VALUE_MAP
81
+ Prediction value map.
76
82
  */
77
83
  enum FXNDtype {
78
- FXN_DTYPE_NULL = 0,
79
- FXN_DTYPE_FLOAT16 = 1,
80
- FXN_DTYPE_FLOAT32 = 2,
81
- FXN_DTYPE_FLOAT64 = 3,
82
- FXN_DTYPE_INT8 = 4,
83
- FXN_DTYPE_INT16 = 5,
84
- FXN_DTYPE_INT32 = 6,
85
- FXN_DTYPE_INT64 = 7,
86
- FXN_DTYPE_UINT8 = 8,
87
- FXN_DTYPE_UINT16 = 9,
88
- FXN_DTYPE_UINT32 = 10,
89
- FXN_DTYPE_UINT64 = 11,
90
- FXN_DTYPE_BOOL = 12,
91
- FXN_DTYPE_STRING = 13,
92
- FXN_DTYPE_LIST = 14,
93
- FXN_DTYPE_DICT = 15,
94
- FXN_DTYPE_IMAGE = 16,
95
- FXN_DTYPE_BINARY = 17,
96
- FXN_DTYPE_BFLOAT16 = 18,
84
+ FXN_DTYPE_NULL = 0,
85
+ FXN_DTYPE_FLOAT16 = 1,
86
+ FXN_DTYPE_FLOAT32 = 2,
87
+ FXN_DTYPE_FLOAT64 = 3,
88
+ FXN_DTYPE_INT8 = 4,
89
+ FXN_DTYPE_INT16 = 5,
90
+ FXN_DTYPE_INT32 = 6,
91
+ FXN_DTYPE_INT64 = 7,
92
+ FXN_DTYPE_UINT8 = 8,
93
+ FXN_DTYPE_UINT16 = 9,
94
+ FXN_DTYPE_UINT32 = 10,
95
+ FXN_DTYPE_UINT64 = 11,
96
+ FXN_DTYPE_BOOL = 12,
97
+ FXN_DTYPE_STRING = 13,
98
+ FXN_DTYPE_LIST = 14,
99
+ FXN_DTYPE_DICT = 15,
100
+ FXN_DTYPE_IMAGE = 16,
101
+ FXN_DTYPE_BINARY = 17,
102
+ FXN_DTYPE_BFLOAT16 = 18,
103
+ FXN_DTYPE_VALUE_LIST = 19,
104
+ FXN_DTYPE_VALUE_MAP = 20,
97
105
  };
98
106
  typedef enum FXNDtype FXNDtype;
99
107
 
@@ -141,7 +149,7 @@ typedef struct FXNValue FXNValue;
141
149
  @param value
142
150
  Value.
143
151
  */
144
- FXN_API FXNStatus FXNValueRelease (FXNValue* value);
152
+ FXN_API FXNStatus FXNValueRelease(FXNValue* value);
145
153
  #pragma endregion
146
154
 
147
155
 
@@ -159,7 +167,7 @@ FXN_API FXNStatus FXNValueRelease (FXNValue* value);
159
167
  @param data
160
168
  Opaque pointer to value data.
161
169
  */
162
- FXN_API FXNStatus FXNValueGetData (
170
+ FXN_API FXNStatus FXNValueGetData(
163
171
  FXNValue* value,
164
172
  void** data
165
173
  );
@@ -177,7 +185,7 @@ FXN_API FXNStatus FXNValueGetData (
177
185
  @param type
178
186
  Value data type.
179
187
  */
180
- FXN_API FXNStatus FXNValueGetType (
188
+ FXN_API FXNStatus FXNValueGetType(
181
189
  FXNValue* value,
182
190
  FXNDtype* type
183
191
  );
@@ -196,7 +204,7 @@ FXN_API FXNStatus FXNValueGetType (
196
204
  @param dimensions
197
205
  Number of dimensions for a given value.
198
206
  */
199
- FXN_API FXNStatus FXNValueGetDimensions (
207
+ FXN_API FXNStatus FXNValueGetDimensions(
200
208
  FXNValue* value,
201
209
  int32_t* dimensions
202
210
  );
@@ -217,7 +225,7 @@ FXN_API FXNStatus FXNValueGetDimensions (
217
225
  @param shapeLen
218
226
  Length of the destination array in elements.
219
227
  */
220
- FXN_API FXNStatus FXNValueGetShape (
228
+ FXN_API FXNStatus FXNValueGetShape(
221
229
  FXNValue* value,
222
230
  int32_t* shape,
223
231
  int32_t shapeLen
@@ -254,7 +262,7 @@ FXN_API FXNStatus FXNValueGetShape (
254
262
  @param value
255
263
  Created value.
256
264
  */
257
- FXN_API FXNStatus FXNValueCreateArray (
265
+ FXN_API FXNStatus FXNValueCreateArray(
258
266
  void* data,
259
267
  const int32_t* shape,
260
268
  int32_t dims,
@@ -276,7 +284,7 @@ FXN_API FXNStatus FXNValueCreateArray (
276
284
  @param value
277
285
  Created value.
278
286
  */
279
- FXN_API FXNStatus FXNValueCreateString (
287
+ FXN_API FXNStatus FXNValueCreateString(
280
288
  const char* data,
281
289
  FXNValue** value
282
290
  );
@@ -294,7 +302,7 @@ FXN_API FXNStatus FXNValueCreateString (
294
302
  @param value
295
303
  Created value.
296
304
  */
297
- FXN_API FXNStatus FXNValueCreateList (
305
+ FXN_API FXNStatus FXNValueCreateList(
298
306
  const char* data,
299
307
  FXNValue** value
300
308
  );
@@ -312,7 +320,7 @@ FXN_API FXNStatus FXNValueCreateList (
312
320
  @param value
313
321
  Created value.
314
322
  */
315
- FXN_API FXNStatus FXNValueCreateDict (
323
+ FXN_API FXNStatus FXNValueCreateDict(
316
324
  const char* data,
317
325
  FXNValue** value
318
326
  );
@@ -346,7 +354,7 @@ FXN_API FXNStatus FXNValueCreateDict (
346
354
  The value `type` will be `FXN_DTYPE_IMAGE`.
347
355
  The value `shape` will be `(H,W,C)`.
348
356
  */
349
- FXN_API FXNStatus FXNValueCreateImage (
357
+ FXN_API FXNStatus FXNValueCreateImage(
350
358
  const uint8_t* pixelBuffer,
351
359
  int32_t width,
352
360
  int32_t height,
@@ -374,8 +382,8 @@ FXN_API FXNStatus FXNValueCreateImage (
374
382
  @param value
375
383
  Created value.
376
384
  */
377
- FXN_API FXNStatus FXNValueCreateBinary (
378
- void* buffer,
385
+ FXN_API FXNStatus FXNValueCreateBinary(
386
+ const void* buffer,
379
387
  int32_t bufferLen, // CHECK // max buffer size becomes 2GB
380
388
  FXNValueFlags flags,
381
389
  FXNValue** value
@@ -391,5 +399,81 @@ FXN_API FXNStatus FXNValueCreateBinary (
391
399
  @param value
392
400
  Created value.
393
401
  */
394
- FXN_API FXNStatus FXNValueCreateNull (FXNValue** value);
402
+ FXN_API FXNStatus FXNValueCreateNull(FXNValue** value);
403
+
404
+ /*!
405
+ @function FXNValueCreateValueList
406
+
407
+ @abstract Create a value list.
408
+
409
+ @discussion Create a value list.
410
+
411
+ @param value
412
+ Created value.
413
+ */
414
+ FXN_API FXNStatus FXNValueCreateValueList(FXNValue** value);
415
+
416
+ /*!
417
+ @function FXNValueCreateValueMap
418
+
419
+ @abstract Create a value map.
420
+
421
+ @discussion Create a value map.
422
+
423
+ @param value
424
+ Created value.
425
+ */
426
+ FXN_API FXNStatus FXNValueCreateValueMap(FXNValue** value);
427
+
428
+ /*!
429
+ @function FXNValueCreateSerializedValue
430
+
431
+ @abstract Serialize a value.
432
+
433
+ @discussion Serialize a value.
434
+
435
+ @param value
436
+ Value.
437
+
438
+ @param mime
439
+ Target MIME type.
440
+ Pass `NULL` to use the default MIME type for the value type.
441
+
442
+ @param result
443
+ Serialized value.
444
+ */
445
+ FXN_API FXNStatus FXNValueCreateSerializedValue(
446
+ FXNValue* value,
447
+ const char* mime,
448
+ FXNValue** result
449
+ );
450
+
451
+ /*!
452
+ @function FXNValueCreateFromSerializedValue
453
+
454
+ @abstract Create a value by deserializing a serialized value.
455
+
456
+ @discussion Create a value by deserializing a serialized value.
457
+
458
+ For serialized image data, the value will have shape `(H,W,C)`.
459
+ Supported formats: PNG, JPEG (auto-detected from buffer).
460
+
461
+ For serialized audio data, the value will have shape `(F,C)`.
462
+ Audio samples are normalized to [-1.0, 1.0] in interleaved layout.
463
+ Supported formats: WAV, MP3, FLAC, AAC, Opus (auto-detected from buffer).
464
+
465
+ @param value
466
+ Value containing encoded data.
467
+
468
+ @param mime
469
+ Value MIME type.
470
+
471
+ @param result
472
+ Deserialized value.
473
+ */
474
+ FXN_API FXNStatus FXNValueCreateFromSerializedValue(
475
+ FXNValue* value,
476
+ const char* mime,
477
+ FXNValue** result
478
+ );
395
479
  #pragma endregion