@trylimbo/sdk-issuer 0.2.23 → 0.2.25-canary.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/gen/ffi/index.js CHANGED
@@ -935,7 +935,6 @@ function makePrimitive(read, write, byteSize) {
935
935
  writeIntoCursor: write
936
936
  };
937
937
  }
938
- const FfiConverterInt64 = makePrimitive((c) => c.readI64(), (v, c) => c.writeI64(v), 8);
939
938
  const FfiConverterUInt8 = makePrimitive((c) => c.readU8(), (v, c) => c.writeU8(v), 1);
940
939
  const FfiConverterUInt32 = makePrimitive((c) => c.readU32(), (v, c) => c.writeU32(v), 4);
941
940
  const FfiConverterUInt64 = makePrimitive((c) => c.readU64(), (v, c) => c.writeU64(v), 8);
@@ -950,7 +949,7 @@ const FfiConverterBool = (() => {
950
949
  writeIntoCursor: write
951
950
  };
952
951
  })();
953
- (() => {
952
+ const FfiConverterDuration = (() => {
954
953
  const msPerSecBigInt = BigInt("1000");
955
954
  const nanosPerMs = 1e6;
956
955
  class FFIConverter extends AbstractFfiConverterByteArray {
@@ -974,7 +973,7 @@ const FfiConverterBool = (() => {
974
973
  }
975
974
  return new FFIConverter();
976
975
  })();
977
- (() => {
976
+ const FfiConverterTimestamp = (() => {
978
977
  const msPerSecBigInt = BigInt("1000");
979
978
  const nanosPerMs = 1e6;
980
979
  const msPerSec = 1e3;
@@ -1175,6 +1174,13 @@ var FfiConverterCallback = class {
1175
1174
  return this.handleMap.remove(handle);
1176
1175
  }
1177
1176
  };
1177
+ function uniffiTraitInterfaceCall(makeCall, handleSuccess, handleError, lowerString, alloc) {
1178
+ try {
1179
+ handleSuccess(makeCall());
1180
+ } catch (e) {
1181
+ handleError(2, lowerString(e.toString(), alloc));
1182
+ }
1183
+ }
1178
1184
  function uniffiTraitInterfaceCallWithError(makeCall, handleSuccess, handleError, isErrorType, lowerError, lowerString, alloc) {
1179
1185
  try {
1180
1186
  handleSuccess(makeCall());
@@ -1617,12 +1623,12 @@ const DEFINITIONS = {
1617
1623
  ret: FfiType.Void,
1618
1624
  hasRustCallStatus: true
1619
1625
  },
1620
- "uniffi_trylimbo_sdk_issuer_fn_clone_binder": {
1626
+ "uniffi_trylimbo_sdk_issuer_fn_clone_compute": {
1621
1627
  args: [FfiType.Handle],
1622
1628
  ret: FfiType.Handle,
1623
1629
  hasRustCallStatus: true
1624
1630
  },
1625
- "uniffi_trylimbo_sdk_issuer_fn_free_binder": {
1631
+ "uniffi_trylimbo_sdk_issuer_fn_free_compute": {
1626
1632
  args: [FfiType.Handle],
1627
1633
  ret: FfiType.Void,
1628
1634
  hasRustCallStatus: true
@@ -1647,26 +1653,6 @@ const DEFINITIONS = {
1647
1653
  ret: FfiType.Void,
1648
1654
  hasRustCallStatus: true
1649
1655
  },
1650
- "uniffi_trylimbo_sdk_issuer_fn_clone_heldbinder": {
1651
- args: [FfiType.Handle],
1652
- ret: FfiType.Handle,
1653
- hasRustCallStatus: true
1654
- },
1655
- "uniffi_trylimbo_sdk_issuer_fn_free_heldbinder": {
1656
- args: [FfiType.Handle],
1657
- ret: FfiType.Void,
1658
- hasRustCallStatus: true
1659
- },
1660
- "uniffi_trylimbo_sdk_issuer_fn_clone_isccbinder": {
1661
- args: [FfiType.Handle],
1662
- ret: FfiType.Handle,
1663
- hasRustCallStatus: true
1664
- },
1665
- "uniffi_trylimbo_sdk_issuer_fn_free_isccbinder": {
1666
- args: [FfiType.Handle],
1667
- ret: FfiType.Void,
1668
- hasRustCallStatus: true
1669
- },
1670
1656
  "uniffi_trylimbo_sdk_issuer_fn_clone_memorysink": {
1671
1657
  args: [FfiType.Handle],
1672
1658
  ret: FfiType.Handle,
@@ -1737,8 +1723,8 @@ const DEFINITIONS = {
1737
1723
  ret: FfiType.Void,
1738
1724
  hasRustCallStatus: true
1739
1725
  },
1740
- "uniffi_trylimbo_sdk_issuer_fn_init_callback_vtable_binder": {
1741
- args: [FfiType.Reference(FfiType.Struct("VTableCallbackInterfaceTrylimboIssuerBinder"))],
1726
+ "uniffi_trylimbo_sdk_issuer_fn_init_callback_vtable_compute": {
1727
+ args: [FfiType.Reference(FfiType.Struct("VTableCallbackInterfaceTrylimboIssuerCompute"))],
1742
1728
  ret: FfiType.Void,
1743
1729
  hasRustCallStatus: false
1744
1730
  },
@@ -1767,6 +1753,15 @@ const DEFINITIONS = {
1767
1753
  ret: FfiType.Handle,
1768
1754
  hasRustCallStatus: false
1769
1755
  },
1756
+ "uniffi_trylimbo_sdk_issuer_fn_func_compute_soft_binding": {
1757
+ args: [
1758
+ FfiType.RustBuffer,
1759
+ FfiType.Handle,
1760
+ FfiType.RustBuffer
1761
+ ],
1762
+ ret: FfiType.Handle,
1763
+ hasRustCallStatus: false
1764
+ },
1770
1765
  "uniffi_trylimbo_sdk_issuer_fn_func_embed": {
1771
1766
  args: [
1772
1767
  FfiType.Handle,
@@ -1800,6 +1795,7 @@ const DEFINITIONS = {
1800
1795
  },
1801
1796
  "uniffi_trylimbo_sdk_issuer_fn_method_assetmarker_mark": {
1802
1797
  args: [
1798
+ FfiType.Handle,
1803
1799
  FfiType.Handle,
1804
1800
  FfiType.Handle,
1805
1801
  FfiType.RustBuffer
@@ -1807,12 +1803,13 @@ const DEFINITIONS = {
1807
1803
  ret: FfiType.Handle,
1808
1804
  hasRustCallStatus: false
1809
1805
  },
1810
- "uniffi_trylimbo_sdk_issuer_fn_method_binder_derive": {
1811
- args: [
1812
- FfiType.Handle,
1813
- FfiType.Handle,
1814
- FfiType.RustBuffer
1815
- ],
1806
+ "uniffi_trylimbo_sdk_issuer_fn_method_compute_alg": {
1807
+ args: [FfiType.Handle],
1808
+ ret: FfiType.RustBuffer,
1809
+ hasRustCallStatus: true
1810
+ },
1811
+ "uniffi_trylimbo_sdk_issuer_fn_method_compute_compute": {
1812
+ args: [FfiType.Handle, FfiType.RustBuffer],
1816
1813
  ret: FfiType.Handle,
1817
1814
  hasRustCallStatus: false
1818
1815
  },
@@ -1873,34 +1870,6 @@ const DEFINITIONS = {
1873
1870
  ret: FfiType.Handle,
1874
1871
  hasRustCallStatus: false
1875
1872
  },
1876
- "uniffi_trylimbo_sdk_issuer_fn_constructor_heldbinder_new": {
1877
- args: [FfiType.RustBuffer],
1878
- ret: FfiType.Handle,
1879
- hasRustCallStatus: true
1880
- },
1881
- "uniffi_trylimbo_sdk_issuer_fn_method_heldbinder_derive": {
1882
- args: [
1883
- FfiType.Handle,
1884
- FfiType.Handle,
1885
- FfiType.RustBuffer
1886
- ],
1887
- ret: FfiType.Handle,
1888
- hasRustCallStatus: false
1889
- },
1890
- "uniffi_trylimbo_sdk_issuer_fn_constructor_isccbinder_new": {
1891
- args: [],
1892
- ret: FfiType.Handle,
1893
- hasRustCallStatus: true
1894
- },
1895
- "uniffi_trylimbo_sdk_issuer_fn_method_isccbinder_derive": {
1896
- args: [
1897
- FfiType.Handle,
1898
- FfiType.Handle,
1899
- FfiType.RustBuffer
1900
- ],
1901
- ret: FfiType.Handle,
1902
- hasRustCallStatus: false
1903
- },
1904
1873
  "uniffi_trylimbo_sdk_issuer_fn_constructor_memorysink_new": {
1905
1874
  args: [FfiType.RustBuffer],
1906
1875
  ret: FfiType.Handle,
@@ -2052,6 +2021,11 @@ const DEFINITIONS = {
2052
2021
  ret: FfiType.UInt16,
2053
2022
  hasRustCallStatus: false
2054
2023
  },
2024
+ "uniffi_trylimbo_sdk_issuer_checksum_func_compute_soft_binding": {
2025
+ args: [],
2026
+ ret: FfiType.UInt16,
2027
+ hasRustCallStatus: false
2028
+ },
2055
2029
  "uniffi_trylimbo_sdk_issuer_checksum_func_embed": {
2056
2030
  args: [],
2057
2031
  ret: FfiType.UInt16,
@@ -2077,7 +2051,12 @@ const DEFINITIONS = {
2077
2051
  ret: FfiType.UInt16,
2078
2052
  hasRustCallStatus: false
2079
2053
  },
2080
- "uniffi_trylimbo_sdk_issuer_checksum_method_binder_derive": {
2054
+ "uniffi_trylimbo_sdk_issuer_checksum_method_compute_alg": {
2055
+ args: [],
2056
+ ret: FfiType.UInt16,
2057
+ hasRustCallStatus: false
2058
+ },
2059
+ "uniffi_trylimbo_sdk_issuer_checksum_method_compute_compute": {
2081
2060
  args: [],
2082
2061
  ret: FfiType.UInt16,
2083
2062
  hasRustCallStatus: false
@@ -2127,26 +2106,6 @@ const DEFINITIONS = {
2127
2106
  ret: FfiType.UInt16,
2128
2107
  hasRustCallStatus: false
2129
2108
  },
2130
- "uniffi_trylimbo_sdk_issuer_checksum_constructor_heldbinder_new": {
2131
- args: [],
2132
- ret: FfiType.UInt16,
2133
- hasRustCallStatus: false
2134
- },
2135
- "uniffi_trylimbo_sdk_issuer_checksum_method_heldbinder_derive": {
2136
- args: [],
2137
- ret: FfiType.UInt16,
2138
- hasRustCallStatus: false
2139
- },
2140
- "uniffi_trylimbo_sdk_issuer_checksum_constructor_isccbinder_new": {
2141
- args: [],
2142
- ret: FfiType.UInt16,
2143
- hasRustCallStatus: false
2144
- },
2145
- "uniffi_trylimbo_sdk_issuer_checksum_method_isccbinder_derive": {
2146
- args: [],
2147
- ret: FfiType.UInt16,
2148
- hasRustCallStatus: false
2149
- },
2150
2109
  "uniffi_trylimbo_sdk_issuer_checksum_constructor_memorysink_new": {
2151
2110
  args: [],
2152
2111
  ret: FfiType.UInt16,
@@ -2264,14 +2223,19 @@ const DEFINITIONS = {
2264
2223
  ret: FfiType.Void,
2265
2224
  hasRustCallStatus: false
2266
2225
  },
2226
+ "CallbackInterfaceTrylimboIssuerComputeMethod0": {
2227
+ args: [FfiType.Handle],
2228
+ ret: FfiType.RustBuffer,
2229
+ hasRustCallStatus: true,
2230
+ outReturn: true
2231
+ },
2267
2232
  "ForeignFutureCompleterust_buffer": {
2268
2233
  args: [FfiType.Handle, FfiType.Struct("ForeignFutureResultRustBuffer")],
2269
2234
  ret: FfiType.Void,
2270
2235
  hasRustCallStatus: false
2271
2236
  },
2272
- "CallbackInterfaceTrylimboIssuerBinderMethod0": {
2237
+ "CallbackInterfaceTrylimboIssuerComputeMethod1": {
2273
2238
  args: [
2274
- FfiType.Handle,
2275
2239
  FfiType.Handle,
2276
2240
  FfiType.RustBuffer,
2277
2241
  FfiType.Callback("ForeignFutureCompleterust_buffer"),
@@ -2281,12 +2245,12 @@ const DEFINITIONS = {
2281
2245
  hasRustCallStatus: false,
2282
2246
  outReturn: true
2283
2247
  },
2284
- "CallbackInterfaceCloneTrylimboIssuer_Binder": {
2248
+ "CallbackInterfaceCloneTrylimboIssuer_Compute": {
2285
2249
  args: [FfiType.Handle],
2286
2250
  ret: FfiType.Handle,
2287
2251
  hasRustCallStatus: false
2288
2252
  },
2289
- "CallbackInterfaceFreeTrylimboIssuer_Binder": {
2253
+ "CallbackInterfaceFreeTrylimboIssuer_Compute": {
2290
2254
  args: [FfiType.Handle],
2291
2255
  ret: FfiType.Void,
2292
2256
  hasRustCallStatus: false
@@ -2441,7 +2405,7 @@ const DEFINITIONS = {
2441
2405
  "CallbackInterfaceTrylimboIssuerSigningVaultMethod0": {
2442
2406
  args: [
2443
2407
  FfiType.Handle,
2444
- FfiType.UInt64,
2408
+ FfiType.RustBuffer,
2445
2409
  FfiType.Callback("ForeignFutureCompleterust_buffer"),
2446
2410
  FfiType.Handle
2447
2411
  ],
@@ -2498,18 +2462,22 @@ const DEFINITIONS = {
2498
2462
  name: "call_status",
2499
2463
  type: FfiType.RustCallStatus
2500
2464
  }],
2501
- "VTableCallbackInterfaceTrylimboIssuerBinder": [
2465
+ "VTableCallbackInterfaceTrylimboIssuerCompute": [
2502
2466
  {
2503
2467
  name: "uniffi_free",
2504
- type: FfiType.Callback("CallbackInterfaceFreeTrylimboIssuer_Binder")
2468
+ type: FfiType.Callback("CallbackInterfaceFreeTrylimboIssuer_Compute")
2505
2469
  },
2506
2470
  {
2507
2471
  name: "uniffi_clone",
2508
- type: FfiType.Callback("CallbackInterfaceCloneTrylimboIssuer_Binder")
2472
+ type: FfiType.Callback("CallbackInterfaceCloneTrylimboIssuer_Compute")
2473
+ },
2474
+ {
2475
+ name: "alg",
2476
+ type: FfiType.Callback("CallbackInterfaceTrylimboIssuerComputeMethod0")
2509
2477
  },
2510
2478
  {
2511
- name: "derive",
2512
- type: FfiType.Callback("CallbackInterfaceTrylimboIssuerBinderMethod0")
2479
+ name: "compute",
2480
+ type: FfiType.Callback("CallbackInterfaceTrylimboIssuerComputeMethod1")
2513
2481
  }
2514
2482
  ],
2515
2483
  "ForeignFutureResultU64": [{
@@ -2641,75 +2609,77 @@ var trylimbo_issuer_exports = /* @__PURE__ */ __exportAll({
2641
2609
  Assertion: () => Assertion,
2642
2610
  AssetDelivery: () => AssetDelivery,
2643
2611
  AssetDelivery_Tags: () => AssetDelivery_Tags,
2644
- AssetFormat: () => AssetFormat,
2645
- AssetFormat_Tags: () => AssetFormat_Tags,
2646
2612
  AssetIssuer: () => AssetIssuer,
2647
2613
  AssetManifestSpec: () => AssetManifestSpec,
2648
2614
  AssetMarker: () => AssetMarker,
2649
2615
  AssetOrigin: () => AssetOrigin,
2650
2616
  AssetOrigin_Tags: () => AssetOrigin_Tags,
2651
- BinderImpl: () => BinderImpl,
2617
+ Block: () => Block,
2618
+ ByteRange: () => ByteRange,
2652
2619
  Code: () => Code,
2653
2620
  Component: () => Component,
2654
2621
  ComponentEvent: () => ComponentEvent,
2655
2622
  ComponentEvent_Tags: () => ComponentEvent_Tags,
2623
+ ComputeImpl: () => ComputeImpl,
2624
+ ComputeRequest: () => ComputeRequest,
2656
2625
  ConnectOptions: () => ConnectOptions,
2657
2626
  CreatedOrigin: () => CreatedOrigin,
2658
2627
  CustomAction: () => CustomAction,
2659
- DeriveOptions: () => DeriveOptions,
2660
2628
  EmbedOptions: () => EmbedOptions,
2661
2629
  FieldViolation: () => FieldViolation,
2662
2630
  FileSink: () => FileSink,
2663
2631
  FileSource: () => FileSource,
2664
- HeldBinder: () => HeldBinder,
2665
2632
  Identity: () => Identity,
2666
2633
  Ingredient: () => Ingredient,
2667
- IngredientSource: () => IngredientSource,
2668
- IngredientSource_Tags: () => IngredientSource_Tags,
2634
+ IngredientKind: () => IngredientKind,
2635
+ IngredientKind_Tags: () => IngredientKind_Tags,
2669
2636
  InitOptions: () => InitOptions,
2670
2637
  InitOutcome: () => InitOutcome,
2671
- IsccBinder: () => IsccBinder,
2672
2638
  MarkOptions: () => MarkOptions,
2673
2639
  MarkOutcome: () => MarkOutcome,
2674
2640
  MemorySink: () => MemorySink,
2675
2641
  MemorySource: () => MemorySource,
2642
+ MintRequest: () => MintRequest,
2676
2643
  OpenedOrigin: () => OpenedOrigin,
2677
- Origin: () => Origin,
2678
- Origin_Tags: () => Origin_Tags,
2679
2644
  RangeSinkImpl: () => RangeSinkImpl,
2680
2645
  RangeSourceImpl: () => RangeSourceImpl,
2681
- Region: () => Region,
2682
2646
  RotationPolicy: () => RotationPolicy,
2647
+ Scope: () => Scope,
2683
2648
  SdkError: () => SdkError,
2684
2649
  SdkError_Tags: () => SdkError_Tags,
2685
2650
  SegmentKind: () => SegmentKind,
2686
2651
  SegmentOutcome: () => SegmentOutcome,
2652
+ SessionKey: () => SessionKey,
2687
2653
  SignOptions: () => SignOptions,
2688
2654
  SignOutcome: () => SignOutcome,
2689
2655
  SignOutput: () => SignOutput,
2690
2656
  SignOutput_Tags: () => SignOutput_Tags,
2691
2657
  SignerClient: () => SignerClient,
2692
2658
  SoftBinding: () => SoftBinding,
2659
+ SoftBindingSource: () => SoftBindingSource,
2660
+ SoftBindingSource_Tags: () => SoftBindingSource_Tags,
2661
+ SoftwareAgent: () => SoftwareAgent,
2693
2662
  StandardAction: () => StandardAction,
2694
2663
  StreamDelivery: () => StreamDelivery,
2695
- StreamDelivery_Tags: () => StreamDelivery_Tags,
2696
2664
  StreamIssuer: () => StreamIssuer,
2697
2665
  StreamManifestSpec: () => StreamManifestSpec,
2666
+ StreamOrigin: () => StreamOrigin,
2667
+ StreamOrigin_Tags: () => StreamOrigin_Tags,
2698
2668
  StreamSession: () => StreamSession,
2699
2669
  StreamStart: () => StreamStart,
2700
2670
  Thumbnail: () => Thumbnail,
2701
- VaultPublicKey: () => VaultPublicKey,
2671
+ Timespan: () => Timespan,
2702
2672
  classifySegment: () => classifySegment,
2673
+ computeSoftBinding: () => computeSoftBinding,
2703
2674
  default: () => trylimbo_issuer_default,
2704
2675
  embed: () => embed
2705
2676
  });
2706
2677
  const uniffiCaller = new UniffiRustCaller(() => ({ code: 0 }));
2707
2678
  const uniffiIsDebug = typeof process !== "object" || process?.env?.NODE_ENV !== "production" || false;
2708
2679
  /**
2709
- * Classify a fragmented-MP4 segment from a [`RangeSource`] as init/media/unknown: the
2710
- * SDK-owned box parse (`moov` vs `moof`) a streaming consumer uses to route each segment
2711
- * to [`StreamIssuer::init`](stream::StreamIssuer::init) vs
2712
- * [`StreamSession::sign`](stream::StreamSession::sign) without hand-parsing ISOBMFF itself.
2680
+ * Classify a fragmented-MP4 segment as init, media or unknown (`moov` vs `moof`), so a streaming
2681
+ * consumer routes each segment to `StreamIssuer.init` or `StreamSession.sign` without parsing
2682
+ * ISOBMFF itself.
2713
2683
  *
2714
2684
  * Async because it reads, and reading is the caller's storage: the two windows below may each
2715
2685
  * be a round trip. It stays off the island, uniquely among the read-path entry points, because
@@ -2738,22 +2708,36 @@ async function classifySegment(source, asyncOpts_) {
2738
2708
  }
2739
2709
  }
2740
2710
  /**
2741
- * Embed a signed manifest into an asset, writing the composed result back through
2742
- * `sink`. `plugins` are the caller's plugins for non-c2pa formats (e.g. MXF), in dispatch
2743
- * order, resolved the same way [`AssetIssuer::sign`](asset::AssetIssuer::sign) resolves
2744
- * them, per [the `plugins` contract](crate::asset#the-plugins-contract): the write lands on a
2745
- * bounded region for a plugin match, on the whole (small) asset otherwise; an empty list is
2746
- * a c2pa-native embed. `format` overrides the sniffed format. Pure local byte-wrangling: no
2747
- * signer round-trip.
2711
+ * The values this SDK computes for `alg` over an asset, `[]` when it finds none. `format` is
2712
+ * the asset's media type; omitted, the bytes name it.
2748
2713
  *
2749
- * # Why the body is offloaded rather than run inline
2714
+ * # Errors
2750
2715
  *
2751
- * UniFFI polls a future on the thread that called it and never spawns, so an `async fn` whose
2752
- * body never suspends completes in its first poll, on the caller's thread, blocking it exactly
2753
- * as a sync export would: measured at 88ms for a 10MB asset on Node, during which nothing else
2754
- * in the process runs. It is also the read path's hard requirement, not just a courtesy: the
2755
- * splice reads through `sink`, and the caller's thread is the one that has to answer those
2756
- * reads. See [`task`](shared::task).
2716
+ * An algorithm this SDK computes no value of, a `format` that is no media type or that the bytes
2717
+ * contradict, an unreadable source, or no trustworthy answer.
2718
+ */
2719
+ async function computeSoftBinding(alg, source, format = void 0, asyncOpts_) {
2720
+ const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
2721
+ try {
2722
+ return await uniffiRustCallAsync(uniffiCaller, () => {
2723
+ return getter().uniffi_trylimbo_sdk_issuer_fn_func_compute_soft_binding(FfiConverterString.lower(alg, getter().rustbuffer_alloc), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterOptionalString.lower(format, getter().rustbuffer_alloc));
2724
+ }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
2725
+ try {
2726
+ return FfiConverterSequenceTypeBlock.lift(__rb);
2727
+ } finally {
2728
+ getter().rustbuffer_free(__rb);
2729
+ }
2730
+ }, FfiConverterString.lift.bind(FfiConverterString), asyncOpts_, FfiConverterTypeSdkError.lift.bind(FfiConverterTypeSdkError));
2731
+ } catch (__error) {
2732
+ if (uniffiIsDebug && __error instanceof Error) __error.stack = __stack;
2733
+ throw __error;
2734
+ }
2735
+ }
2736
+ /**
2737
+ * Embed `sidecar`, the signed manifest a sign returned, into the asset `sink` holds, writing the
2738
+ * composed result back through `sink`.
2739
+ * `plugins` resolve a non-c2pa format (e.g. MXF) as `AssetIssuer.sign` resolves them; none is a
2740
+ * c2pa-native embed. No signer round trip.
2757
2741
  *
2758
2742
  * # Errors
2759
2743
  *
@@ -2761,11 +2745,11 @@ async function classifySegment(source, asyncOpts_) {
2761
2745
  * authoring/`locate` disagrees after the write, or the c2pa handler can't
2762
2746
  * parse/splice the asset.
2763
2747
  */
2764
- async function embed(sink, manifest, options, plugins, asyncOpts_) {
2748
+ async function embed(sink, sidecar, options, plugins = [], asyncOpts_) {
2765
2749
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
2766
2750
  try {
2767
2751
  return await uniffiRustCallAsync(uniffiCaller, () => {
2768
- return getter().uniffi_trylimbo_sdk_issuer_fn_func_embed(FfiConverterTypeRangeSink.lower(sink, getter().rustbuffer_alloc), FfiConverterArrayBuffer.lower(manifest, getter().rustbuffer_alloc), FfiConverterTypeEmbedOptions.lower(options, getter().rustbuffer_alloc), FfiConverterSequenceTypePluginAuthor.lower(plugins, getter().rustbuffer_alloc));
2752
+ return getter().uniffi_trylimbo_sdk_issuer_fn_func_embed(FfiConverterTypeRangeSink.lower(sink, getter().rustbuffer_alloc), FfiConverterArrayBuffer.lower(sidecar, getter().rustbuffer_alloc), FfiConverterTypeEmbedOptions.lower(options, getter().rustbuffer_alloc), FfiConverterSequenceTypePluginAuthor.lower(plugins, getter().rustbuffer_alloc));
2769
2753
  }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_void, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_void, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_void, getter().ffi_trylimbo_sdk_issuer_rust_future_free_void, (_v) => {}, FfiConverterString.lift.bind(FfiConverterString), asyncOpts_, FfiConverterTypeSdkError.lift.bind(FfiConverterTypeSdkError));
2770
2754
  } catch (__error) {
2771
2755
  if (uniffiIsDebug && __error instanceof Error) __error.stack = __stack;
@@ -2786,7 +2770,34 @@ const FfiConverterString = uniffiCreateFfiConverterString((() => {
2786
2770
  readStringFromBuffer: (buf, offset, length) => decoder.decode(new Uint8Array(buf.arrayBuffer, offset, length))
2787
2771
  };
2788
2772
  })());
2789
- const FfiConverterTypeTimestamp = FfiConverterString;
2773
+ /**
2774
+ * Generated factory for {@link SoftwareAgent} record objects.
2775
+ */
2776
+ const SoftwareAgent = (() => {
2777
+ const defaults = () => ({});
2778
+ const create = (() => {
2779
+ return uniffiCreateRecord(defaults);
2780
+ })();
2781
+ return Object.freeze({
2782
+ create,
2783
+ new: create,
2784
+ defaults: () => Object.freeze(defaults())
2785
+ });
2786
+ })();
2787
+ const FfiConverterTypeSoftwareAgent = (() => {
2788
+ class FFIConverter extends AbstractFfiConverterByteArray {
2789
+ readFromCursor(c) {
2790
+ return { name: FfiConverterString.readFromCursor(c) };
2791
+ }
2792
+ writeIntoCursor(value, c) {
2793
+ FfiConverterString.writeIntoCursor(value.name, c);
2794
+ }
2795
+ allocationSize(value) {
2796
+ return FfiConverterString.allocationSize(value.name);
2797
+ }
2798
+ }
2799
+ return new FFIConverter();
2800
+ })();
2790
2801
  const FfiConverterTypeUrl = FfiConverterString;
2791
2802
  /**
2792
2803
  * Generated factory for {@link ActionDetail} record objects.
@@ -2811,20 +2822,20 @@ const FfiConverterTypeActionDetail = (() => {
2811
2822
  class FFIConverter extends AbstractFfiConverterByteArray {
2812
2823
  readFromCursor(c) {
2813
2824
  return {
2814
- when: FfiConverterOptionalTypeTimestamp.readFromCursor(c),
2815
- softwareAgent: FfiConverterOptionalString.readFromCursor(c),
2825
+ when: FfiConverterOptionalTimestamp.readFromCursor(c),
2826
+ softwareAgent: FfiConverterOptionalTypeSoftwareAgent.readFromCursor(c),
2816
2827
  description: FfiConverterOptionalString.readFromCursor(c),
2817
2828
  sourceType: FfiConverterOptionalTypeUrl.readFromCursor(c)
2818
2829
  };
2819
2830
  }
2820
2831
  writeIntoCursor(value, c) {
2821
- FfiConverterOptionalTypeTimestamp.writeIntoCursor(value.when, c);
2822
- FfiConverterOptionalString.writeIntoCursor(value.softwareAgent, c);
2832
+ FfiConverterOptionalTimestamp.writeIntoCursor(value.when, c);
2833
+ FfiConverterOptionalTypeSoftwareAgent.writeIntoCursor(value.softwareAgent, c);
2823
2834
  FfiConverterOptionalString.writeIntoCursor(value.description, c);
2824
2835
  FfiConverterOptionalTypeUrl.writeIntoCursor(value.sourceType, c);
2825
2836
  }
2826
2837
  allocationSize(value) {
2827
- return FfiConverterOptionalTypeTimestamp.allocationSize(value.when) + FfiConverterOptionalString.allocationSize(value.softwareAgent) + FfiConverterOptionalString.allocationSize(value.description) + FfiConverterOptionalTypeUrl.allocationSize(value.sourceType);
2838
+ return FfiConverterOptionalTimestamp.allocationSize(value.when) + FfiConverterOptionalTypeSoftwareAgent.allocationSize(value.softwareAgent) + FfiConverterOptionalString.allocationSize(value.description) + FfiConverterOptionalTypeUrl.allocationSize(value.sourceType);
2828
2839
  }
2829
2840
  }
2830
2841
  return new FFIConverter();
@@ -2866,7 +2877,11 @@ const FfiConverterTypeAssertion = (() => {
2866
2877
  * Generated factory for {@link CreatedOrigin} record objects.
2867
2878
  */
2868
2879
  const CreatedOrigin = (() => {
2869
- const defaults = () => ({ detail: void 0 });
2880
+ const defaults = () => ({
2881
+ when: void 0,
2882
+ softwareAgent: void 0,
2883
+ description: void 0
2884
+ });
2870
2885
  const create = (() => {
2871
2886
  return uniffiCreateRecord(defaults);
2872
2887
  })();
@@ -2881,25 +2896,25 @@ const FfiConverterTypeCreatedOrigin = (() => {
2881
2896
  readFromCursor(c) {
2882
2897
  return {
2883
2898
  sourceType: FfiConverterTypeUrl.readFromCursor(c),
2884
- detail: FfiConverterOptionalTypeActionDetail.readFromCursor(c)
2899
+ when: FfiConverterOptionalTimestamp.readFromCursor(c),
2900
+ softwareAgent: FfiConverterOptionalTypeSoftwareAgent.readFromCursor(c),
2901
+ description: FfiConverterOptionalString.readFromCursor(c)
2885
2902
  };
2886
2903
  }
2887
2904
  writeIntoCursor(value, c) {
2888
2905
  FfiConverterTypeUrl.writeIntoCursor(value.sourceType, c);
2889
- FfiConverterOptionalTypeActionDetail.writeIntoCursor(value.detail, c);
2906
+ FfiConverterOptionalTimestamp.writeIntoCursor(value.when, c);
2907
+ FfiConverterOptionalTypeSoftwareAgent.writeIntoCursor(value.softwareAgent, c);
2908
+ FfiConverterOptionalString.writeIntoCursor(value.description, c);
2890
2909
  }
2891
2910
  allocationSize(value) {
2892
- return FfiConverterTypeUrl.allocationSize(value.sourceType) + FfiConverterOptionalTypeActionDetail.allocationSize(value.detail);
2911
+ return FfiConverterTypeUrl.allocationSize(value.sourceType) + FfiConverterOptionalTimestamp.allocationSize(value.when) + FfiConverterOptionalTypeSoftwareAgent.allocationSize(value.softwareAgent) + FfiConverterOptionalString.allocationSize(value.description);
2893
2912
  }
2894
2913
  }
2895
2914
  return new FFIConverter();
2896
2915
  })();
2897
2916
  /**
2898
2917
  * A canonical gRPC/Connect status code: the coarse, closed failure class.
2899
- *
2900
- * The wasm lane projects this as a camelCase string like every other tagged value
2901
- * there, so a consumer narrows on `err.code === "resourceExhausted"`; the native lane
2902
- * projects an enum.
2903
2918
  */
2904
2919
  let Code = /* @__PURE__ */ function(Code) {
2905
2920
  Code[Code["Canceled"] = 0] = "Canceled";
@@ -3356,160 +3371,68 @@ const uniffiCallbackInterfaceRangeSource = {
3356
3371
  getter().uniffi_trylimbo_sdk_issuer_fn_init_callback_vtable_rangesource(uniffiCallbackInterfaceRangeSource.vtable);
3357
3372
  }
3358
3373
  };
3359
- let AssetFormat_Tags = /* @__PURE__ */ function(AssetFormat_Tags) {
3360
- AssetFormat_Tags["Sniff"] = "Sniff";
3361
- AssetFormat_Tags["Declared"] = "Declared";
3362
- return AssetFormat_Tags;
3374
+ let IngredientKind_Tags = /* @__PURE__ */ function(IngredientKind_Tags) {
3375
+ IngredientKind_Tags["Asset"] = "Asset";
3376
+ IngredientKind_Tags["Descriptor"] = "Descriptor";
3377
+ return IngredientKind_Tags;
3363
3378
  }({});
3364
3379
  /**
3365
- * The format of the asset a call is handed. Stated, never defaulted: sniffing is a choice the
3366
- * caller makes by name, not what happens when they say nothing.
3380
+ * What an ingredient is: an asset whose manifest is read, or a description.
3367
3381
  */
3368
- const AssetFormat = (() => {
3369
- /**
3370
- * Read the format from the asset's leading bytes.
3371
- */
3372
- class Sniff_ extends UniffiEnum {
3373
- /**
3374
- * @private
3375
- * This field is private and should not be used, use `tag` instead.
3376
- */
3377
- [uniffiTypeNameSymbol] = "AssetFormat";
3378
- tag = "Sniff";
3379
- constructor() {
3380
- super("AssetFormat", "Sniff");
3381
- }
3382
- static new() {
3383
- return new Sniff_();
3384
- }
3385
- static instanceOf(obj) {
3386
- return obj.tag === "Sniff";
3387
- }
3388
- }
3389
- /**
3390
- * The caller knows the format and states it, as a media type.
3391
- */
3392
- class Declared_ extends UniffiEnum {
3393
- /**
3394
- * @private
3395
- * This field is private and should not be used, use `tag` instead.
3396
- */
3397
- [uniffiTypeNameSymbol] = "AssetFormat";
3398
- tag = "Declared";
3399
- inner;
3400
- constructor(inner) {
3401
- super("AssetFormat", "Declared");
3402
- this.inner = Object.freeze(inner);
3403
- }
3404
- static new(inner) {
3405
- return new Declared_(inner);
3406
- }
3407
- static instanceOf(obj) {
3408
- return obj.tag === "Declared";
3409
- }
3410
- }
3411
- function instanceOf(obj) {
3412
- return obj[uniffiTypeNameSymbol] === "AssetFormat";
3413
- }
3414
- return Object.freeze({
3415
- instanceOf,
3416
- Sniff: Sniff_,
3417
- Declared: Declared_
3418
- });
3419
- })();
3420
- const FfiConverterTypeAssetFormat = (() => {
3421
- class FFIConverter extends AbstractFfiConverterByteArray {
3422
- readFromCursor(c) {
3423
- switch (c.readI32()) {
3424
- case 1: return new AssetFormat.Sniff();
3425
- case 2: return new AssetFormat.Declared({ mediaType: FfiConverterString.readFromCursor(c) });
3426
- default: throw new UniffiInternalError.UnexpectedEnumCase();
3427
- }
3428
- }
3429
- writeIntoCursor(value, c) {
3430
- switch (value.tag) {
3431
- case "Sniff":
3432
- c.writeI32(1);
3433
- return;
3434
- case "Declared": {
3435
- c.writeI32(2);
3436
- const inner = value.inner;
3437
- FfiConverterString.writeIntoCursor(inner.mediaType, c);
3438
- return;
3439
- }
3440
- default: throw new UniffiInternalError.UnexpectedEnumCase();
3441
- }
3442
- }
3443
- allocationSize(value) {
3444
- switch (value.tag) {
3445
- case "Sniff": return 4;
3446
- case "Declared": {
3447
- const inner = value.inner;
3448
- let size = 4;
3449
- size += FfiConverterString.allocationSize(inner.mediaType);
3450
- return size;
3451
- }
3452
- default: throw new UniffiInternalError.UnexpectedEnumCase();
3453
- }
3454
- }
3455
- }
3456
- return new FFIConverter();
3457
- })();
3458
- let IngredientSource_Tags = /* @__PURE__ */ function(IngredientSource_Tags) {
3459
- IngredientSource_Tags["Asset"] = "Asset";
3460
- IngredientSource_Tags["Descriptor"] = "Descriptor";
3461
- return IngredientSource_Tags;
3462
- }({});
3463
- const IngredientSource = (() => {
3382
+ const IngredientKind = (() => {
3464
3383
  /**
3465
3384
  * The ingredient asset, read in place through `source`; the asset itself never crosses the
3466
3385
  * wire, only the manifest it carries and what validating it found.
3386
+ * `format` is the asset's media type; `None` reads it from the leading bytes.
3467
3387
  */
3468
3388
  class Asset_ extends UniffiEnum {
3469
3389
  /**
3470
3390
  * @private
3471
3391
  * This field is private and should not be used, use `tag` instead.
3472
3392
  */
3473
- [uniffiTypeNameSymbol] = "IngredientSource";
3393
+ [uniffiTypeNameSymbol] = "IngredientKind";
3474
3394
  tag = "Asset";
3475
3395
  inner;
3476
3396
  constructor(inner) {
3477
- super("IngredientSource", "Asset");
3397
+ super("IngredientKind", "Asset");
3478
3398
  this.inner = Object.freeze(inner);
3479
3399
  }
3480
- static new(inner) {
3481
- return new Asset_(inner);
3482
- }
3400
+ static new = (() => {
3401
+ const defaults = () => ({
3402
+ format: void 0,
3403
+ discoveredBy: []
3404
+ });
3405
+ const create = uniffiCreateRecord(defaults);
3406
+ return (partial) => new Asset_(create(partial));
3407
+ })();
3483
3408
  static instanceOf(obj) {
3484
3409
  return obj.tag === "Asset";
3485
3410
  }
3486
3411
  }
3487
3412
  /**
3488
- * No asset: the ingredient is described by its title and format alone.
3413
+ * No asset: the ingredient is described by its title and its media type alone.
3489
3414
  */
3490
3415
  class Descriptor_ extends UniffiEnum {
3491
3416
  /**
3492
3417
  * @private
3493
3418
  * This field is private and should not be used, use `tag` instead.
3494
3419
  */
3495
- [uniffiTypeNameSymbol] = "IngredientSource";
3420
+ [uniffiTypeNameSymbol] = "IngredientKind";
3496
3421
  tag = "Descriptor";
3497
3422
  inner;
3498
3423
  constructor(inner) {
3499
- super("IngredientSource", "Descriptor");
3424
+ super("IngredientKind", "Descriptor");
3500
3425
  this.inner = Object.freeze(inner);
3501
3426
  }
3502
- static new = (() => {
3503
- const defaults = () => ({ format: void 0 });
3504
- const create = uniffiCreateRecord(defaults);
3505
- return (partial) => new Descriptor_(create(partial));
3506
- })();
3427
+ static new(inner) {
3428
+ return new Descriptor_(inner);
3429
+ }
3507
3430
  static instanceOf(obj) {
3508
3431
  return obj.tag === "Descriptor";
3509
3432
  }
3510
3433
  }
3511
3434
  function instanceOf(obj) {
3512
- return obj[uniffiTypeNameSymbol] === "IngredientSource";
3435
+ return obj[uniffiTypeNameSymbol] === "IngredientKind";
3513
3436
  }
3514
3437
  return Object.freeze({
3515
3438
  instanceOf,
@@ -3517,15 +3440,16 @@ const IngredientSource = (() => {
3517
3440
  Descriptor: Descriptor_
3518
3441
  });
3519
3442
  })();
3520
- const FfiConverterTypeIngredientSource = (() => {
3443
+ const FfiConverterTypeIngredientKind = (() => {
3521
3444
  class FFIConverter extends AbstractFfiConverterByteArray {
3522
3445
  readFromCursor(c) {
3523
3446
  switch (c.readI32()) {
3524
- case 1: return new IngredientSource.Asset({
3447
+ case 1: return new IngredientKind.Asset({
3525
3448
  source: FfiConverterTypeRangeSource.readFromCursor(c),
3526
- format: FfiConverterTypeAssetFormat.readFromCursor(c)
3449
+ format: FfiConverterOptionalString.readFromCursor(c),
3450
+ discoveredBy: FfiConverterSequenceString.readFromCursor(c)
3527
3451
  });
3528
- case 2: return new IngredientSource.Descriptor({ format: FfiConverterOptionalString.readFromCursor(c) });
3452
+ case 2: return new IngredientKind.Descriptor({ format: FfiConverterString.readFromCursor(c) });
3529
3453
  default: throw new UniffiInternalError.UnexpectedEnumCase();
3530
3454
  }
3531
3455
  }
@@ -3535,13 +3459,14 @@ const FfiConverterTypeIngredientSource = (() => {
3535
3459
  c.writeI32(1);
3536
3460
  const inner = value.inner;
3537
3461
  FfiConverterTypeRangeSource.writeIntoCursor(inner.source, c);
3538
- FfiConverterTypeAssetFormat.writeIntoCursor(inner.format, c);
3462
+ FfiConverterOptionalString.writeIntoCursor(inner.format, c);
3463
+ FfiConverterSequenceString.writeIntoCursor(inner.discoveredBy, c);
3539
3464
  return;
3540
3465
  }
3541
3466
  case "Descriptor": {
3542
3467
  c.writeI32(2);
3543
3468
  const inner = value.inner;
3544
- FfiConverterOptionalString.writeIntoCursor(inner.format, c);
3469
+ FfiConverterString.writeIntoCursor(inner.format, c);
3545
3470
  return;
3546
3471
  }
3547
3472
  default: throw new UniffiInternalError.UnexpectedEnumCase();
@@ -3553,13 +3478,14 @@ const FfiConverterTypeIngredientSource = (() => {
3553
3478
  const inner = value.inner;
3554
3479
  let size = 4;
3555
3480
  size += FfiConverterTypeRangeSource.allocationSize(inner.source);
3556
- size += FfiConverterTypeAssetFormat.allocationSize(inner.format);
3481
+ size += FfiConverterOptionalString.allocationSize(inner.format);
3482
+ size += FfiConverterSequenceString.allocationSize(inner.discoveredBy);
3557
3483
  return size;
3558
3484
  }
3559
3485
  case "Descriptor": {
3560
3486
  const inner = value.inner;
3561
3487
  let size = 4;
3562
- size += FfiConverterOptionalString.allocationSize(inner.format);
3488
+ size += FfiConverterString.allocationSize(inner.format);
3563
3489
  return size;
3564
3490
  }
3565
3491
  default: throw new UniffiInternalError.UnexpectedEnumCase();
@@ -3572,7 +3498,7 @@ const FfiConverterTypeIngredientSource = (() => {
3572
3498
  * Generated factory for {@link Thumbnail} record objects.
3573
3499
  */
3574
3500
  const Thumbnail = (() => {
3575
- const defaults = () => ({});
3501
+ const defaults = () => ({ format: void 0 });
3576
3502
  const create = (() => {
3577
3503
  return uniffiCreateRecord(defaults);
3578
3504
  })();
@@ -3587,15 +3513,15 @@ const FfiConverterTypeThumbnail = (() => {
3587
3513
  readFromCursor(c) {
3588
3514
  return {
3589
3515
  data: FfiConverterArrayBuffer.readFromCursor(c),
3590
- format: FfiConverterString.readFromCursor(c)
3516
+ format: FfiConverterOptionalString.readFromCursor(c)
3591
3517
  };
3592
3518
  }
3593
3519
  writeIntoCursor(value, c) {
3594
3520
  FfiConverterArrayBuffer.writeIntoCursor(value.data, c);
3595
- FfiConverterString.writeIntoCursor(value.format, c);
3521
+ FfiConverterOptionalString.writeIntoCursor(value.format, c);
3596
3522
  }
3597
3523
  allocationSize(value) {
3598
- return FfiConverterArrayBuffer.allocationSize(value.data) + FfiConverterString.allocationSize(value.format);
3524
+ return FfiConverterArrayBuffer.allocationSize(value.data) + FfiConverterOptionalString.allocationSize(value.format);
3599
3525
  }
3600
3526
  }
3601
3527
  return new FFIConverter();
@@ -3621,20 +3547,18 @@ const FfiConverterTypeIngredient = (() => {
3621
3547
  class FFIConverter extends AbstractFfiConverterByteArray {
3622
3548
  readFromCursor(c) {
3623
3549
  return {
3624
- source: FfiConverterTypeIngredientSource.readFromCursor(c),
3550
+ kind: FfiConverterTypeIngredientKind.readFromCursor(c),
3625
3551
  title: FfiConverterOptionalString.readFromCursor(c),
3626
- thumbnail: FfiConverterOptionalTypeThumbnail.readFromCursor(c),
3627
- discoveredBy: FfiConverterSequenceString.readFromCursor(c)
3552
+ thumbnail: FfiConverterOptionalTypeThumbnail.readFromCursor(c)
3628
3553
  };
3629
3554
  }
3630
3555
  writeIntoCursor(value, c) {
3631
- FfiConverterTypeIngredientSource.writeIntoCursor(value.source, c);
3556
+ FfiConverterTypeIngredientKind.writeIntoCursor(value.kind, c);
3632
3557
  FfiConverterOptionalString.writeIntoCursor(value.title, c);
3633
3558
  FfiConverterOptionalTypeThumbnail.writeIntoCursor(value.thumbnail, c);
3634
- FfiConverterSequenceString.writeIntoCursor(value.discoveredBy, c);
3635
3559
  }
3636
3560
  allocationSize(value) {
3637
- return FfiConverterTypeIngredientSource.allocationSize(value.source) + FfiConverterOptionalString.allocationSize(value.title) + FfiConverterOptionalTypeThumbnail.allocationSize(value.thumbnail) + FfiConverterSequenceString.allocationSize(value.discoveredBy);
3561
+ return FfiConverterTypeIngredientKind.allocationSize(value.kind) + FfiConverterOptionalString.allocationSize(value.title) + FfiConverterOptionalTypeThumbnail.allocationSize(value.thumbnail);
3638
3562
  }
3639
3563
  }
3640
3564
  return new FFIConverter();
@@ -3814,7 +3738,10 @@ const FfiConverterTypeJsonObject = FfiConverterString;
3814
3738
  * Generated factory for {@link CustomAction} record objects.
3815
3739
  */
3816
3740
  const CustomAction = (() => {
3817
- const defaults = () => ({ detail: void 0 });
3741
+ const defaults = () => ({
3742
+ detail: void 0,
3743
+ componentIds: []
3744
+ });
3818
3745
  const create = (() => {
3819
3746
  return uniffiCreateRecord(defaults);
3820
3747
  })();
@@ -3829,27 +3756,27 @@ const FfiConverterTypeCustomAction = (() => {
3829
3756
  readFromCursor(c) {
3830
3757
  return {
3831
3758
  label: FfiConverterString.readFromCursor(c),
3832
- params: FfiConverterTypeJsonObject.readFromCursor(c),
3759
+ parameters: FfiConverterTypeJsonObject.readFromCursor(c),
3833
3760
  detail: FfiConverterOptionalTypeActionDetail.readFromCursor(c),
3834
3761
  componentIds: FfiConverterSequenceString.readFromCursor(c)
3835
3762
  };
3836
3763
  }
3837
3764
  writeIntoCursor(value, c) {
3838
3765
  FfiConverterString.writeIntoCursor(value.label, c);
3839
- FfiConverterTypeJsonObject.writeIntoCursor(value.params, c);
3766
+ FfiConverterTypeJsonObject.writeIntoCursor(value.parameters, c);
3840
3767
  FfiConverterOptionalTypeActionDetail.writeIntoCursor(value.detail, c);
3841
3768
  FfiConverterSequenceString.writeIntoCursor(value.componentIds, c);
3842
3769
  }
3843
3770
  allocationSize(value) {
3844
- return FfiConverterString.allocationSize(value.label) + FfiConverterTypeJsonObject.allocationSize(value.params) + FfiConverterOptionalTypeActionDetail.allocationSize(value.detail) + FfiConverterSequenceString.allocationSize(value.componentIds);
3771
+ return FfiConverterString.allocationSize(value.label) + FfiConverterTypeJsonObject.allocationSize(value.parameters) + FfiConverterOptionalTypeActionDetail.allocationSize(value.detail) + FfiConverterSequenceString.allocationSize(value.componentIds);
3845
3772
  }
3846
3773
  }
3847
3774
  return new FFIConverter();
3848
3775
  })();
3849
3776
  /**
3850
- * Generated factory for {@link SoftBinding} record objects.
3777
+ * Generated factory for {@link Timespan} record objects.
3851
3778
  */
3852
- const SoftBinding = (() => {
3779
+ const Timespan = (() => {
3853
3780
  const defaults = () => ({});
3854
3781
  const create = (() => {
3855
3782
  return uniffiCreateRecord(defaults);
@@ -3860,40 +3787,132 @@ const SoftBinding = (() => {
3860
3787
  defaults: () => Object.freeze(defaults())
3861
3788
  });
3862
3789
  })();
3863
- const FfiConverterTypeSoftBinding = (() => {
3790
+ const FfiConverterTypeTimespan = (() => {
3864
3791
  class FFIConverter extends AbstractFfiConverterByteArray {
3865
3792
  readFromCursor(c) {
3866
3793
  return {
3867
- alg: FfiConverterString.readFromCursor(c),
3868
- value: FfiConverterString.readFromCursor(c)
3794
+ start: FfiConverterDuration.readFromCursor(c),
3795
+ duration: FfiConverterDuration.readFromCursor(c)
3869
3796
  };
3870
3797
  }
3871
3798
  writeIntoCursor(value, c) {
3872
- FfiConverterString.writeIntoCursor(value.alg, c);
3873
- FfiConverterString.writeIntoCursor(value.value, c);
3799
+ FfiConverterDuration.writeIntoCursor(value.start, c);
3800
+ FfiConverterDuration.writeIntoCursor(value.duration, c);
3874
3801
  }
3875
3802
  allocationSize(value) {
3876
- return FfiConverterString.allocationSize(value.alg) + FfiConverterString.allocationSize(value.value);
3803
+ return FfiConverterDuration.allocationSize(value.start) + FfiConverterDuration.allocationSize(value.duration);
3877
3804
  }
3878
3805
  }
3879
3806
  return new FFIConverter();
3880
3807
  })();
3881
- let ActionKind_Tags = /* @__PURE__ */ function(ActionKind_Tags) {
3882
- ActionKind_Tags["AddedText"] = "AddedText";
3883
- ActionKind_Tags["AdjustedColor"] = "AdjustedColor";
3884
- ActionKind_Tags["ChangedSpeed"] = "ChangedSpeed";
3885
- ActionKind_Tags["Converted"] = "Converted";
3886
- ActionKind_Tags["Cropped"] = "Cropped";
3887
- ActionKind_Tags["Deleted"] = "Deleted";
3888
- ActionKind_Tags["Drawing"] = "Drawing";
3889
- ActionKind_Tags["Dubbed"] = "Dubbed";
3890
- ActionKind_Tags["Edited"] = "Edited";
3891
- ActionKind_Tags["EditedMetadata"] = "EditedMetadata";
3892
- ActionKind_Tags["Enhanced"] = "Enhanced";
3893
- ActionKind_Tags["Filtered"] = "Filtered";
3894
- ActionKind_Tags["Mastered"] = "Mastered";
3895
- ActionKind_Tags["Mixed"] = "Mixed";
3896
- ActionKind_Tags["Orientation"] = "Orientation";
3808
+ /**
3809
+ * Generated factory for {@link Scope} record objects.
3810
+ */
3811
+ const Scope = (() => {
3812
+ const defaults = () => ({ timespan: void 0 });
3813
+ const create = (() => {
3814
+ return uniffiCreateRecord(defaults);
3815
+ })();
3816
+ return Object.freeze({
3817
+ create,
3818
+ new: create,
3819
+ defaults: () => Object.freeze(defaults())
3820
+ });
3821
+ })();
3822
+ const FfiConverterTypeScope = (() => {
3823
+ class FFIConverter extends AbstractFfiConverterByteArray {
3824
+ readFromCursor(c) {
3825
+ return { timespan: FfiConverterOptionalTypeTimespan.readFromCursor(c) };
3826
+ }
3827
+ writeIntoCursor(value, c) {
3828
+ FfiConverterOptionalTypeTimespan.writeIntoCursor(value.timespan, c);
3829
+ }
3830
+ allocationSize(value) {
3831
+ return FfiConverterOptionalTypeTimespan.allocationSize(value.timespan);
3832
+ }
3833
+ }
3834
+ return new FFIConverter();
3835
+ })();
3836
+ /**
3837
+ * Generated factory for {@link Block} record objects.
3838
+ */
3839
+ const Block = (() => {
3840
+ const defaults = () => ({ scope: Scope.create({}) });
3841
+ const create = (() => {
3842
+ return uniffiCreateRecord(defaults);
3843
+ })();
3844
+ return Object.freeze({
3845
+ create,
3846
+ new: create,
3847
+ defaults: () => Object.freeze(defaults())
3848
+ });
3849
+ })();
3850
+ const FfiConverterTypeBlock = (() => {
3851
+ class FFIConverter extends AbstractFfiConverterByteArray {
3852
+ readFromCursor(c) {
3853
+ return {
3854
+ value: FfiConverterArrayBuffer.readFromCursor(c),
3855
+ scope: FfiConverterTypeScope.readFromCursor(c)
3856
+ };
3857
+ }
3858
+ writeIntoCursor(value, c) {
3859
+ FfiConverterArrayBuffer.writeIntoCursor(value.value, c);
3860
+ FfiConverterTypeScope.writeIntoCursor(value.scope, c);
3861
+ }
3862
+ allocationSize(value) {
3863
+ return FfiConverterArrayBuffer.allocationSize(value.value) + FfiConverterTypeScope.allocationSize(value.scope);
3864
+ }
3865
+ }
3866
+ return new FFIConverter();
3867
+ })();
3868
+ /**
3869
+ * Generated factory for {@link SoftBinding} record objects.
3870
+ */
3871
+ const SoftBinding = (() => {
3872
+ const defaults = () => ({});
3873
+ const create = (() => {
3874
+ return uniffiCreateRecord(defaults);
3875
+ })();
3876
+ return Object.freeze({
3877
+ create,
3878
+ new: create,
3879
+ defaults: () => Object.freeze(defaults())
3880
+ });
3881
+ })();
3882
+ const FfiConverterTypeSoftBinding = (() => {
3883
+ class FFIConverter extends AbstractFfiConverterByteArray {
3884
+ readFromCursor(c) {
3885
+ return {
3886
+ alg: FfiConverterString.readFromCursor(c),
3887
+ blocks: FfiConverterSequenceTypeBlock.readFromCursor(c)
3888
+ };
3889
+ }
3890
+ writeIntoCursor(value, c) {
3891
+ FfiConverterString.writeIntoCursor(value.alg, c);
3892
+ FfiConverterSequenceTypeBlock.writeIntoCursor(value.blocks, c);
3893
+ }
3894
+ allocationSize(value) {
3895
+ return FfiConverterString.allocationSize(value.alg) + FfiConverterSequenceTypeBlock.allocationSize(value.blocks);
3896
+ }
3897
+ }
3898
+ return new FFIConverter();
3899
+ })();
3900
+ let ActionKind_Tags = /* @__PURE__ */ function(ActionKind_Tags) {
3901
+ ActionKind_Tags["AddedText"] = "AddedText";
3902
+ ActionKind_Tags["AdjustedColor"] = "AdjustedColor";
3903
+ ActionKind_Tags["ChangedSpeed"] = "ChangedSpeed";
3904
+ ActionKind_Tags["Converted"] = "Converted";
3905
+ ActionKind_Tags["Cropped"] = "Cropped";
3906
+ ActionKind_Tags["Deleted"] = "Deleted";
3907
+ ActionKind_Tags["Drawing"] = "Drawing";
3908
+ ActionKind_Tags["Dubbed"] = "Dubbed";
3909
+ ActionKind_Tags["Edited"] = "Edited";
3910
+ ActionKind_Tags["EditedMetadata"] = "EditedMetadata";
3911
+ ActionKind_Tags["Enhanced"] = "Enhanced";
3912
+ ActionKind_Tags["Filtered"] = "Filtered";
3913
+ ActionKind_Tags["Mastered"] = "Mastered";
3914
+ ActionKind_Tags["Mixed"] = "Mixed";
3915
+ ActionKind_Tags["Orientation"] = "Orientation";
3897
3916
  ActionKind_Tags["Published"] = "Published";
3898
3917
  ActionKind_Tags["Remixed"] = "Remixed";
3899
3918
  ActionKind_Tags["Repackaged"] = "Repackaged";
@@ -3901,14 +3920,13 @@ let ActionKind_Tags = /* @__PURE__ */ function(ActionKind_Tags) {
3901
3920
  ActionKind_Tags["ResizedProportional"] = "ResizedProportional";
3902
3921
  ActionKind_Tags["Transcoded"] = "Transcoded";
3903
3922
  ActionKind_Tags["Trimmed"] = "Trimmed";
3904
- ActionKind_Tags["Unknown"] = "Unknown";
3905
3923
  ActionKind_Tags["WatermarkedBound"] = "WatermarkedBound";
3906
3924
  ActionKind_Tags["WatermarkedUnbound"] = "WatermarkedUnbound";
3907
3925
  return ActionKind_Tags;
3908
3926
  }({});
3909
3927
  /**
3910
- * The C2PA 2.3 workflow actions; see the core [`provenance::ActionKind`] for what each is.
3911
- * Mirrored for the one variant that carries a binding, which crosses as the two-string record.
3928
+ * The C2PA 2.4 workflow actions; see the core [`provenance::ActionKind`] for what each is.
3929
+ * Mirrored for the one variant that carries a binding, which crosses as the FFI record.
3912
3930
  */
3913
3931
  const ActionKind = (() => {
3914
3932
  class AddedText_ extends UniffiEnum {
@@ -4285,23 +4303,6 @@ const ActionKind = (() => {
4285
4303
  return obj.tag === "Trimmed";
4286
4304
  }
4287
4305
  }
4288
- class Unknown_ extends UniffiEnum {
4289
- /**
4290
- * @private
4291
- * This field is private and should not be used, use `tag` instead.
4292
- */
4293
- [uniffiTypeNameSymbol] = "ActionKind";
4294
- tag = "Unknown";
4295
- constructor() {
4296
- super("ActionKind", "Unknown");
4297
- }
4298
- static new() {
4299
- return new Unknown_();
4300
- }
4301
- static instanceOf(obj) {
4302
- return obj.tag === "Unknown";
4303
- }
4304
- }
4305
4306
  class WatermarkedBound_ extends UniffiEnum {
4306
4307
  /**
4307
4308
  * @private
@@ -4365,7 +4366,6 @@ const ActionKind = (() => {
4365
4366
  ResizedProportional: ResizedProportional_,
4366
4367
  Transcoded: Transcoded_,
4367
4368
  Trimmed: Trimmed_,
4368
- Unknown: Unknown_,
4369
4369
  WatermarkedBound: WatermarkedBound_,
4370
4370
  WatermarkedUnbound: WatermarkedUnbound_
4371
4371
  });
@@ -4396,9 +4396,8 @@ const FfiConverterTypeActionKind = (() => {
4396
4396
  case 20: return new ActionKind.ResizedProportional();
4397
4397
  case 21: return new ActionKind.Transcoded();
4398
4398
  case 22: return new ActionKind.Trimmed();
4399
- case 23: return new ActionKind.Unknown();
4400
- case 24: return new ActionKind.WatermarkedBound({ binding: FfiConverterTypeSoftBinding.readFromCursor(c) });
4401
- case 25: return new ActionKind.WatermarkedUnbound();
4399
+ case 23: return new ActionKind.WatermarkedBound({ binding: FfiConverterTypeSoftBinding.readFromCursor(c) });
4400
+ case 24: return new ActionKind.WatermarkedUnbound();
4402
4401
  default: throw new UniffiInternalError.UnexpectedEnumCase();
4403
4402
  }
4404
4403
  }
@@ -4470,17 +4469,14 @@ const FfiConverterTypeActionKind = (() => {
4470
4469
  case "Trimmed":
4471
4470
  c.writeI32(22);
4472
4471
  return;
4473
- case "Unknown":
4474
- c.writeI32(23);
4475
- return;
4476
4472
  case "WatermarkedBound": {
4477
- c.writeI32(24);
4473
+ c.writeI32(23);
4478
4474
  const inner = value.inner;
4479
4475
  FfiConverterTypeSoftBinding.writeIntoCursor(inner.binding, c);
4480
4476
  return;
4481
4477
  }
4482
4478
  case "WatermarkedUnbound":
4483
- c.writeI32(25);
4479
+ c.writeI32(24);
4484
4480
  return;
4485
4481
  default: throw new UniffiInternalError.UnexpectedEnumCase();
4486
4482
  }
@@ -4509,7 +4505,6 @@ const FfiConverterTypeActionKind = (() => {
4509
4505
  case "ResizedProportional": return 4;
4510
4506
  case "Transcoded": return 4;
4511
4507
  case "Trimmed": return 4;
4512
- case "Unknown": return 4;
4513
4508
  case "WatermarkedBound": {
4514
4509
  const inner = value.inner;
4515
4510
  let size = 4;
@@ -4527,7 +4522,10 @@ const FfiConverterTypeActionKind = (() => {
4527
4522
  * Generated factory for {@link StandardAction} record objects.
4528
4523
  */
4529
4524
  const StandardAction = (() => {
4530
- const defaults = () => ({ detail: void 0 });
4525
+ const defaults = () => ({
4526
+ detail: void 0,
4527
+ componentIds: []
4528
+ });
4531
4529
  const create = (() => {
4532
4530
  return uniffiCreateRecord(defaults);
4533
4531
  })();
@@ -4660,7 +4658,7 @@ const FfiConverterTypeAction = (() => {
4660
4658
  * Generated factory for {@link Identity} record objects.
4661
4659
  */
4662
4660
  const Identity = (() => {
4663
- const defaults = () => ({});
4661
+ const defaults = () => ({ roles: [] });
4664
4662
  const create = (() => {
4665
4663
  return uniffiCreateRecord(defaults);
4666
4664
  })();
@@ -4723,6 +4721,9 @@ const ComponentEvent = (() => {
4723
4721
  return obj.tag === "Placed";
4724
4722
  }
4725
4723
  }
4724
+ /**
4725
+ * `label` names the ingredient assertion the parent's active manifest holds for it.
4726
+ */
4726
4727
  class Removed_ extends UniffiEnum {
4727
4728
  /**
4728
4729
  * @private
@@ -4776,7 +4777,10 @@ const FfiConverterTypeComponentEvent = (() => {
4776
4777
  readFromCursor(c) {
4777
4778
  switch (c.readI32()) {
4778
4779
  case 1: return new ComponentEvent.Placed({ detail: FfiConverterOptionalTypeActionDetail.readFromCursor(c) });
4779
- case 2: return new ComponentEvent.Removed({ detail: FfiConverterOptionalTypeActionDetail.readFromCursor(c) });
4780
+ case 2: return new ComponentEvent.Removed({
4781
+ label: FfiConverterString.readFromCursor(c),
4782
+ detail: FfiConverterOptionalTypeActionDetail.readFromCursor(c)
4783
+ });
4780
4784
  case 3: return new ComponentEvent.InputTo();
4781
4785
  default: throw new UniffiInternalError.UnexpectedEnumCase();
4782
4786
  }
@@ -4792,6 +4796,7 @@ const FfiConverterTypeComponentEvent = (() => {
4792
4796
  case "Removed": {
4793
4797
  c.writeI32(2);
4794
4798
  const inner = value.inner;
4799
+ FfiConverterString.writeIntoCursor(inner.label, c);
4795
4800
  FfiConverterOptionalTypeActionDetail.writeIntoCursor(inner.detail, c);
4796
4801
  return;
4797
4802
  }
@@ -4812,6 +4817,7 @@ const FfiConverterTypeComponentEvent = (() => {
4812
4817
  case "Removed": {
4813
4818
  const inner = value.inner;
4814
4819
  let size = 4;
4820
+ size += FfiConverterString.allocationSize(inner.label);
4815
4821
  size += FfiConverterOptionalTypeActionDetail.allocationSize(inner.detail);
4816
4822
  return size;
4817
4823
  }
@@ -4840,18 +4846,16 @@ const FfiConverterTypeComponent = (() => {
4840
4846
  class FFIConverter extends AbstractFfiConverterByteArray {
4841
4847
  readFromCursor(c) {
4842
4848
  return {
4843
- id: FfiConverterString.readFromCursor(c),
4844
4849
  asset: FfiConverterTypeIngredient.readFromCursor(c),
4845
4850
  event: FfiConverterTypeComponentEvent.readFromCursor(c)
4846
4851
  };
4847
4852
  }
4848
4853
  writeIntoCursor(value, c) {
4849
- FfiConverterString.writeIntoCursor(value.id, c);
4850
4854
  FfiConverterTypeIngredient.writeIntoCursor(value.asset, c);
4851
4855
  FfiConverterTypeComponentEvent.writeIntoCursor(value.event, c);
4852
4856
  }
4853
4857
  allocationSize(value) {
4854
- return FfiConverterString.allocationSize(value.id) + FfiConverterTypeIngredient.allocationSize(value.asset) + FfiConverterTypeComponentEvent.allocationSize(value.event);
4858
+ return FfiConverterTypeIngredient.allocationSize(value.asset) + FfiConverterTypeComponentEvent.allocationSize(value.event);
4855
4859
  }
4856
4860
  }
4857
4861
  return new FFIConverter();
@@ -4862,7 +4866,10 @@ const FfiConverterTypeComponent = (() => {
4862
4866
  const AssetManifestSpec = (() => {
4863
4867
  const defaults = () => ({
4864
4868
  title: void 0,
4865
- identity: void 0
4869
+ actions: [],
4870
+ identity: void 0,
4871
+ assertions: [],
4872
+ components: /* @__PURE__ */ new Map()
4866
4873
  });
4867
4874
  const create = (() => {
4868
4875
  return uniffiCreateRecord(defaults);
@@ -4882,7 +4889,7 @@ const FfiConverterTypeAssetManifestSpec = (() => {
4882
4889
  actions: FfiConverterSequenceTypeAction.readFromCursor(c),
4883
4890
  identity: FfiConverterOptionalTypeIdentity.readFromCursor(c),
4884
4891
  assertions: FfiConverterSequenceTypeAssertion.readFromCursor(c),
4885
- components: FfiConverterSequenceTypeComponent.readFromCursor(c)
4892
+ components: FfiConverterMapStringTypeComponent.readFromCursor(c)
4886
4893
  };
4887
4894
  }
4888
4895
  writeIntoCursor(value, c) {
@@ -4891,19 +4898,19 @@ const FfiConverterTypeAssetManifestSpec = (() => {
4891
4898
  FfiConverterSequenceTypeAction.writeIntoCursor(value.actions, c);
4892
4899
  FfiConverterOptionalTypeIdentity.writeIntoCursor(value.identity, c);
4893
4900
  FfiConverterSequenceTypeAssertion.writeIntoCursor(value.assertions, c);
4894
- FfiConverterSequenceTypeComponent.writeIntoCursor(value.components, c);
4901
+ FfiConverterMapStringTypeComponent.writeIntoCursor(value.components, c);
4895
4902
  }
4896
4903
  allocationSize(value) {
4897
- return FfiConverterOptionalString.allocationSize(value.title) + FfiConverterTypeAssetOrigin.allocationSize(value.origin) + FfiConverterSequenceTypeAction.allocationSize(value.actions) + FfiConverterOptionalTypeIdentity.allocationSize(value.identity) + FfiConverterSequenceTypeAssertion.allocationSize(value.assertions) + FfiConverterSequenceTypeComponent.allocationSize(value.components);
4904
+ return FfiConverterOptionalString.allocationSize(value.title) + FfiConverterTypeAssetOrigin.allocationSize(value.origin) + FfiConverterSequenceTypeAction.allocationSize(value.actions) + FfiConverterOptionalTypeIdentity.allocationSize(value.identity) + FfiConverterSequenceTypeAssertion.allocationSize(value.assertions) + FfiConverterMapStringTypeComponent.allocationSize(value.components);
4898
4905
  }
4899
4906
  }
4900
4907
  return new FFIConverter();
4901
4908
  })();
4902
4909
  /**
4903
- * Generated factory for {@link ConnectOptions} record objects.
4910
+ * Generated factory for {@link ByteRange} record objects.
4904
4911
  */
4905
- const ConnectOptions = (() => {
4906
- const defaults = () => ({ headers: void 0 });
4912
+ const ByteRange = (() => {
4913
+ const defaults = () => ({});
4907
4914
  const create = (() => {
4908
4915
  return uniffiCreateRecord(defaults);
4909
4916
  })();
@@ -4913,30 +4920,28 @@ const ConnectOptions = (() => {
4913
4920
  defaults: () => Object.freeze(defaults())
4914
4921
  });
4915
4922
  })();
4916
- const FfiConverterTypeConnectOptions = (() => {
4923
+ const FfiConverterTypeByteRange = (() => {
4917
4924
  class FFIConverter extends AbstractFfiConverterByteArray {
4918
4925
  readFromCursor(c) {
4919
4926
  return {
4920
- headers: FfiConverterOptionalMapStringString.readFromCursor(c),
4921
- rpcTimeoutMs: FfiConverterUInt32.readFromCursor(c),
4922
- connectTimeoutMs: FfiConverterUInt32.readFromCursor(c)
4927
+ offset: FfiConverterUInt64.readFromCursor(c),
4928
+ length: FfiConverterUInt64.readFromCursor(c)
4923
4929
  };
4924
4930
  }
4925
4931
  writeIntoCursor(value, c) {
4926
- FfiConverterOptionalMapStringString.writeIntoCursor(value.headers, c);
4927
- FfiConverterUInt32.writeIntoCursor(value.rpcTimeoutMs, c);
4928
- FfiConverterUInt32.writeIntoCursor(value.connectTimeoutMs, c);
4932
+ FfiConverterUInt64.writeIntoCursor(value.offset, c);
4933
+ FfiConverterUInt64.writeIntoCursor(value.length, c);
4929
4934
  }
4930
4935
  allocationSize(value) {
4931
- return FfiConverterOptionalMapStringString.allocationSize(value.headers) + FfiConverterUInt32.allocationSize(value.rpcTimeoutMs) + FfiConverterUInt32.allocationSize(value.connectTimeoutMs);
4936
+ return FfiConverterUInt64.allocationSize(value.offset) + FfiConverterUInt64.allocationSize(value.length);
4932
4937
  }
4933
4938
  }
4934
4939
  return new FFIConverter();
4935
4940
  })();
4936
4941
  /**
4937
- * Generated factory for {@link DeriveOptions} record objects.
4942
+ * Generated factory for {@link ComputeRequest} record objects.
4938
4943
  */
4939
- const DeriveOptions = (() => {
4944
+ const ComputeRequest = (() => {
4940
4945
  const defaults = () => ({});
4941
4946
  const create = (() => {
4942
4947
  return uniffiCreateRecord(defaults);
@@ -4947,16 +4952,58 @@ const DeriveOptions = (() => {
4947
4952
  defaults: () => Object.freeze(defaults())
4948
4953
  });
4949
4954
  })();
4950
- const FfiConverterTypeDeriveOptions = (() => {
4955
+ const FfiConverterTypeComputeRequest = (() => {
4951
4956
  class FFIConverter extends AbstractFfiConverterByteArray {
4952
4957
  readFromCursor(c) {
4953
- return { format: FfiConverterTypeAssetFormat.readFromCursor(c) };
4958
+ return {
4959
+ source: FfiConverterTypeRangeSource.readFromCursor(c),
4960
+ format: FfiConverterString.readFromCursor(c)
4961
+ };
4954
4962
  }
4955
4963
  writeIntoCursor(value, c) {
4956
- FfiConverterTypeAssetFormat.writeIntoCursor(value.format, c);
4964
+ FfiConverterTypeRangeSource.writeIntoCursor(value.source, c);
4965
+ FfiConverterString.writeIntoCursor(value.format, c);
4957
4966
  }
4958
4967
  allocationSize(value) {
4959
- return FfiConverterTypeAssetFormat.allocationSize(value.format);
4968
+ return FfiConverterTypeRangeSource.allocationSize(value.source) + FfiConverterString.allocationSize(value.format);
4969
+ }
4970
+ }
4971
+ return new FFIConverter();
4972
+ })();
4973
+ /**
4974
+ * Generated factory for {@link ConnectOptions} record objects.
4975
+ */
4976
+ const ConnectOptions = (() => {
4977
+ const defaults = () => ({
4978
+ headers: /* @__PURE__ */ new Map(),
4979
+ rpcTimeout: void 0,
4980
+ connectTimeout: void 0
4981
+ });
4982
+ const create = (() => {
4983
+ return uniffiCreateRecord(defaults);
4984
+ })();
4985
+ return Object.freeze({
4986
+ create,
4987
+ new: create,
4988
+ defaults: () => Object.freeze(defaults())
4989
+ });
4990
+ })();
4991
+ const FfiConverterTypeConnectOptions = (() => {
4992
+ class FFIConverter extends AbstractFfiConverterByteArray {
4993
+ readFromCursor(c) {
4994
+ return {
4995
+ headers: FfiConverterMapStringString.readFromCursor(c),
4996
+ rpcTimeout: FfiConverterOptionalDuration.readFromCursor(c),
4997
+ connectTimeout: FfiConverterOptionalDuration.readFromCursor(c)
4998
+ };
4999
+ }
5000
+ writeIntoCursor(value, c) {
5001
+ FfiConverterMapStringString.writeIntoCursor(value.headers, c);
5002
+ FfiConverterOptionalDuration.writeIntoCursor(value.rpcTimeout, c);
5003
+ FfiConverterOptionalDuration.writeIntoCursor(value.connectTimeout, c);
5004
+ }
5005
+ allocationSize(value) {
5006
+ return FfiConverterMapStringString.allocationSize(value.headers) + FfiConverterOptionalDuration.allocationSize(value.rpcTimeout) + FfiConverterOptionalDuration.allocationSize(value.connectTimeout);
4960
5007
  }
4961
5008
  }
4962
5009
  return new FFIConverter();
@@ -4965,7 +5012,7 @@ const FfiConverterTypeDeriveOptions = (() => {
4965
5012
  * Generated factory for {@link EmbedOptions} record objects.
4966
5013
  */
4967
5014
  const EmbedOptions = (() => {
4968
- const defaults = () => ({});
5015
+ const defaults = () => ({ format: void 0 });
4969
5016
  const create = (() => {
4970
5017
  return uniffiCreateRecord(defaults);
4971
5018
  })();
@@ -4978,45 +5025,114 @@ const EmbedOptions = (() => {
4978
5025
  const FfiConverterTypeEmbedOptions = (() => {
4979
5026
  class FFIConverter extends AbstractFfiConverterByteArray {
4980
5027
  readFromCursor(c) {
4981
- return { format: FfiConverterTypeAssetFormat.readFromCursor(c) };
5028
+ return { format: FfiConverterOptionalString.readFromCursor(c) };
4982
5029
  }
4983
5030
  writeIntoCursor(value, c) {
4984
- FfiConverterTypeAssetFormat.writeIntoCursor(value.format, c);
5031
+ FfiConverterOptionalString.writeIntoCursor(value.format, c);
4985
5032
  }
4986
5033
  allocationSize(value) {
4987
- return FfiConverterTypeAssetFormat.allocationSize(value.format);
5034
+ return FfiConverterOptionalString.allocationSize(value.format);
4988
5035
  }
4989
5036
  }
4990
5037
  return new FFIConverter();
4991
5038
  })();
4992
5039
  /**
4993
- * A soft-binding binder: how a recoverable binding is derived from an asset. Put these inside
4994
- * the issuer's manifest mode to sign and index under them, and pass them in verify options to
4995
- * recover. Implement it for an algorithm the SDK does not ship; the SDK's own are
4996
- * [`IsccBinder`] and [`HeldBinder`].
4997
- *
4998
- * `derive` answers this binder's binding for `source`, or `None` when there is none.
4999
- * `options.format` is how the asset's format is known. `None` and an error
5000
- * mean different things: `None` is "no binding here", an error is "the question could not be
5001
- * answered", so a binder that failed never reads as an unmarked asset.
5040
+ * Where a stream's init manifest lives. The init segment always carries it, so there is no
5041
+ * remote-only delivery, and the segment comes back as bytes, so there is no output to name.
5002
5042
  */
5003
- var BinderImpl = class extends UniffiAbstractObject {
5004
- [uniffiTypeNameSymbol] = "BinderImpl";
5043
+ let StreamDelivery = /* @__PURE__ */ function(StreamDelivery) {
5044
+ StreamDelivery[StreamDelivery["Embedded"] = 0] = "Embedded";
5045
+ StreamDelivery[StreamDelivery["EmbeddedAndRemote"] = 1] = "EmbeddedAndRemote";
5046
+ return StreamDelivery;
5047
+ }({});
5048
+ const FfiConverterTypeStreamDelivery = (() => {
5049
+ class FFIConverter extends AbstractFfiConverterByteArray {
5050
+ readFromCursor(c) {
5051
+ switch (c.readI32()) {
5052
+ case 1: return 0;
5053
+ case 2: return 1;
5054
+ default: throw new UniffiInternalError.UnexpectedEnumCase();
5055
+ }
5056
+ }
5057
+ writeIntoCursor(value, c) {
5058
+ switch (value) {
5059
+ case 0: return c.writeI32(1);
5060
+ case 1: return c.writeI32(2);
5061
+ }
5062
+ }
5063
+ allocationSize(value) {
5064
+ return 4;
5065
+ }
5066
+ }
5067
+ return new FFIConverter();
5068
+ })();
5069
+ /**
5070
+ * Generated factory for {@link RotationPolicy} record objects.
5071
+ */
5072
+ const RotationPolicy = (() => {
5073
+ const defaults = () => ({});
5074
+ const create = (() => {
5075
+ return uniffiCreateRecord(defaults);
5076
+ })();
5077
+ return Object.freeze({
5078
+ create,
5079
+ new: create,
5080
+ defaults: () => Object.freeze(defaults())
5081
+ });
5082
+ })();
5083
+ const FfiConverterTypeRotationPolicy = (() => {
5084
+ class FFIConverter extends AbstractFfiConverterByteArray {
5085
+ readFromCursor(c) {
5086
+ return {
5087
+ validityPeriod: FfiConverterDuration.readFromCursor(c),
5088
+ refreshPercent: FfiConverterUInt8.readFromCursor(c)
5089
+ };
5090
+ }
5091
+ writeIntoCursor(value, c) {
5092
+ FfiConverterDuration.writeIntoCursor(value.validityPeriod, c);
5093
+ FfiConverterUInt8.writeIntoCursor(value.refreshPercent, c);
5094
+ }
5095
+ allocationSize(value) {
5096
+ return FfiConverterDuration.allocationSize(value.validityPeriod) + FfiConverterUInt8.allocationSize(value.refreshPercent);
5097
+ }
5098
+ }
5099
+ return new FFIConverter();
5100
+ })();
5101
+ /**
5102
+ * Computes one soft-binding algorithm's values from an asset (a fingerprint calculated, a
5103
+ * watermark detected). `[]` is "no value here"; an error is "no trustworthy answer", so a failed
5104
+ * engine never reads as an unmarked asset.
5105
+ */
5106
+ var ComputeImpl = class extends UniffiAbstractObject {
5107
+ [uniffiTypeNameSymbol] = "ComputeImpl";
5005
5108
  [destructorGuardSymbol];
5006
5109
  [pointerLiteralSymbol];
5007
5110
  constructor(pointer) {
5008
5111
  super();
5009
5112
  this[pointerLiteralSymbol] = pointer;
5010
- this[destructorGuardSymbol] = uniffiTypeBinderImplObjectFactory.bless(pointer);
5113
+ this[destructorGuardSymbol] = uniffiTypeComputeImplObjectFactory.bless(pointer);
5011
5114
  }
5012
- async derive(source, options, asyncOpts_) {
5115
+ /**
5116
+ * The C2PA soft-binding algorithm list label, e.g. `io.iscc.v0`.
5117
+ */
5118
+ alg() {
5119
+ const __rb = uniffiCaller.rustCall((callStatus) => {
5120
+ return getter().uniffi_trylimbo_sdk_issuer_fn_method_compute_alg(uniffiTypeComputeImplObjectFactory.clonePointer(this), callStatus);
5121
+ }, FfiConverterString.lift.bind(FfiConverterString));
5122
+ try {
5123
+ return FfiConverterString.lift(__rb);
5124
+ } finally {
5125
+ getter().rustbuffer_free(__rb);
5126
+ }
5127
+ }
5128
+ async compute(request, asyncOpts_) {
5013
5129
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
5014
5130
  try {
5015
5131
  return await uniffiRustCallAsync(uniffiCaller, () => {
5016
- return getter().uniffi_trylimbo_sdk_issuer_fn_method_binder_derive(uniffiTypeBinderImplObjectFactory.clonePointer(this), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterTypeDeriveOptions.lower(options, getter().rustbuffer_alloc));
5132
+ return getter().uniffi_trylimbo_sdk_issuer_fn_method_compute_compute(uniffiTypeComputeImplObjectFactory.clonePointer(this), FfiConverterTypeComputeRequest.lower(request, getter().rustbuffer_alloc));
5017
5133
  }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
5018
5134
  try {
5019
- return FfiConverterOptionalTypeSoftBinding.lift(__rb);
5135
+ return FfiConverterSequenceTypeBlock.lift(__rb);
5020
5136
  } finally {
5021
5137
  getter().rustbuffer_free(__rb);
5022
5138
  }
@@ -5029,26 +5145,26 @@ var BinderImpl = class extends UniffiAbstractObject {
5029
5145
  uniffiDestroy() {
5030
5146
  const ptr = this[destructorGuardSymbol];
5031
5147
  if (ptr !== void 0) {
5032
- const pointer = uniffiTypeBinderImplObjectFactory.pointer(this);
5033
- uniffiTypeBinderImplObjectFactory.freePointer(pointer);
5034
- uniffiTypeBinderImplObjectFactory.unbless(ptr);
5148
+ const pointer = uniffiTypeComputeImplObjectFactory.pointer(this);
5149
+ uniffiTypeComputeImplObjectFactory.freePointer(pointer);
5150
+ uniffiTypeComputeImplObjectFactory.unbless(ptr);
5035
5151
  delete this[destructorGuardSymbol];
5036
5152
  }
5037
5153
  }
5038
5154
  static instanceOf(obj_) {
5039
- return uniffiTypeBinderImplObjectFactory.isConcreteType(obj_);
5155
+ return uniffiTypeComputeImplObjectFactory.isConcreteType(obj_);
5040
5156
  }
5041
5157
  };
5042
- const uniffiTypeBinderImplObjectFactory = (() => {
5158
+ const uniffiTypeComputeImplObjectFactory = (() => {
5043
5159
  const registry = typeof FinalizationRegistry !== "undefined" ? new FinalizationRegistry((heldValue) => {
5044
- uniffiTypeBinderImplObjectFactory.freePointer(heldValue);
5160
+ uniffiTypeComputeImplObjectFactory.freePointer(heldValue);
5045
5161
  }) : null;
5046
5162
  return {
5047
5163
  create(pointer) {
5048
- const instance = Object.create(BinderImpl.prototype);
5164
+ const instance = Object.create(ComputeImpl.prototype);
5049
5165
  instance[pointerLiteralSymbol] = pointer;
5050
5166
  instance[destructorGuardSymbol] = this.bless(pointer);
5051
- instance[uniffiTypeNameSymbol] = "BinderImpl";
5167
+ instance[uniffiTypeNameSymbol] = "ComputeImpl";
5052
5168
  return instance;
5053
5169
  },
5054
5170
  bless(p) {
@@ -5068,26 +5184,40 @@ const uniffiTypeBinderImplObjectFactory = (() => {
5068
5184
  },
5069
5185
  clonePointer(obj_) {
5070
5186
  const pointer = this.pointer(obj_);
5071
- return uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_clone_binder(pointer, callStatus), FfiConverterString.lift);
5187
+ return uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_clone_compute(pointer, callStatus), FfiConverterString.lift);
5072
5188
  },
5073
5189
  freePointer(pointer) {
5074
- uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_free_binder(pointer, callStatus), FfiConverterString.lift);
5190
+ uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_free_compute(pointer, callStatus), FfiConverterString.lift);
5075
5191
  },
5076
5192
  isConcreteType(obj_) {
5077
- return obj_[destructorGuardSymbol] && obj_[uniffiTypeNameSymbol] === "BinderImpl";
5193
+ return obj_[destructorGuardSymbol] && obj_[uniffiTypeNameSymbol] === "ComputeImpl";
5078
5194
  }
5079
5195
  };
5080
5196
  })();
5081
- const FfiConverterTypeBinder = new FfiConverterObjectWithCallbacks(uniffiTypeBinderImplObjectFactory);
5082
- const uniffiCallbackInterfaceBinder = {
5197
+ const FfiConverterTypeCompute = new FfiConverterObjectWithCallbacks(uniffiTypeComputeImplObjectFactory);
5198
+ const uniffiCallbackInterfaceCompute = {
5083
5199
  vtable: {
5084
- derive: (uniffiHandle, source, options, uniffiFutureCallback, uniffiCallbackData) => {
5200
+ alg: (uniffiHandle) => {
5201
+ const uniffiMakeCall = () => {
5202
+ return FfiConverterTypeCompute.lift(uniffiHandle).alg();
5203
+ };
5204
+ const uniffiResult = UniffiResult.ready();
5205
+ const uniffiHandleSuccess = (obj) => {
5206
+ UniffiResult.writeSuccess(uniffiResult, FfiConverterString.lower(obj, getter().rustbuffer_alloc));
5207
+ };
5208
+ const uniffiHandleError = (code, errBuf) => {
5209
+ UniffiResult.writeError(uniffiResult, code, errBuf);
5210
+ };
5211
+ uniffiTraitInterfaceCall(uniffiMakeCall, uniffiHandleSuccess, uniffiHandleError, FfiConverterString.lower.bind(FfiConverterString), getter().rustbuffer_alloc);
5212
+ return uniffiResult;
5213
+ },
5214
+ compute: (uniffiHandle, request, uniffiFutureCallback, uniffiCallbackData) => {
5085
5215
  const uniffiMakeCall = async (signal) => {
5086
- return await FfiConverterTypeBinder.lift(uniffiHandle).derive(FfiConverterTypeRangeSource.lift(source), FfiConverterTypeDeriveOptions.lift(options), { signal });
5216
+ return await FfiConverterTypeCompute.lift(uniffiHandle).compute(FfiConverterTypeComputeRequest.lift(request), { signal });
5087
5217
  };
5088
5218
  const uniffiHandleSuccess = (returnValue) => {
5089
5219
  uniffiFutureCallback.call(uniffiFutureCallback, uniffiCallbackData, {
5090
- return_value: FfiConverterOptionalTypeSoftBinding.lower(returnValue, getter().rustbuffer_alloc),
5220
+ return_value: FfiConverterSequenceTypeBlock.lower(returnValue, getter().rustbuffer_alloc),
5091
5221
  call_status: uniffiCaller.createCallStatus()
5092
5222
  });
5093
5223
  };
@@ -5100,122 +5230,130 @@ const uniffiCallbackInterfaceBinder = {
5100
5230
  return uniffiTraitInterfaceCallAsyncWithError(uniffiMakeCall, uniffiHandleSuccess, uniffiHandleError, SdkError.instanceOf, FfiConverterTypeSdkError.lower.bind(FfiConverterTypeSdkError), FfiConverterString.lower.bind(FfiConverterString), getter().rustbuffer_alloc);
5101
5231
  },
5102
5232
  uniffi_free: (uniffiHandle) => {
5103
- FfiConverterTypeBinder.drop(uniffiHandle);
5233
+ FfiConverterTypeCompute.drop(uniffiHandle);
5104
5234
  },
5105
5235
  uniffi_clone: (uniffiHandle) => {
5106
- return FfiConverterTypeBinder.clone(uniffiHandle);
5236
+ return FfiConverterTypeCompute.clone(uniffiHandle);
5107
5237
  }
5108
5238
  },
5109
5239
  register: () => {
5110
- getter().uniffi_trylimbo_sdk_issuer_fn_init_callback_vtable_binder(uniffiCallbackInterfaceBinder.vtable);
5240
+ getter().uniffi_trylimbo_sdk_issuer_fn_init_callback_vtable_compute(uniffiCallbackInterfaceCompute.vtable);
5111
5241
  }
5112
5242
  };
5113
- let StreamDelivery_Tags = /* @__PURE__ */ function(StreamDelivery_Tags) {
5114
- StreamDelivery_Tags["Embedded"] = "Embedded";
5115
- StreamDelivery_Tags["Remote"] = "Remote";
5116
- StreamDelivery_Tags["Both"] = "Both";
5117
- return StreamDelivery_Tags;
5243
+ let SoftBindingSource_Tags = /* @__PURE__ */ function(SoftBindingSource_Tags) {
5244
+ SoftBindingSource_Tags["Builtin"] = "Builtin";
5245
+ SoftBindingSource_Tags["Held"] = "Held";
5246
+ SoftBindingSource_Tags["Custom"] = "Custom";
5247
+ return SoftBindingSource_Tags;
5118
5248
  }({});
5119
5249
  /**
5120
- * How a live stream's init manifest is delivered and which binders it declares. A stream
5121
- * returns its signed init segment as bytes, so there is no output to name.
5250
+ * Where one assertion's values come from.
5122
5251
  */
5123
- const StreamDelivery = (() => {
5124
- class Embedded_ extends UniffiEnum {
5252
+ const SoftBindingSource = (() => {
5253
+ /**
5254
+ * This SDK's own engine for `alg`, run over the asset.
5255
+ */
5256
+ class Builtin_ extends UniffiEnum {
5125
5257
  /**
5126
5258
  * @private
5127
5259
  * This field is private and should not be used, use `tag` instead.
5128
5260
  */
5129
- [uniffiTypeNameSymbol] = "StreamDelivery";
5130
- tag = "Embedded";
5261
+ [uniffiTypeNameSymbol] = "SoftBindingSource";
5262
+ tag = "Builtin";
5131
5263
  inner;
5132
5264
  constructor(inner) {
5133
- super("StreamDelivery", "Embedded");
5265
+ super("SoftBindingSource", "Builtin");
5134
5266
  this.inner = Object.freeze(inner);
5135
5267
  }
5136
5268
  static new(inner) {
5137
- return new Embedded_(inner);
5269
+ return new Builtin_(inner);
5138
5270
  }
5139
5271
  static instanceOf(obj) {
5140
- return obj.tag === "Embedded";
5272
+ return obj.tag === "Builtin";
5141
5273
  }
5142
5274
  }
5143
- class Remote_ extends UniffiEnum {
5275
+ /**
5276
+ * Values already held, declared as they are; nothing reads the asset for them.
5277
+ */
5278
+ class Held_ extends UniffiEnum {
5144
5279
  /**
5145
5280
  * @private
5146
5281
  * This field is private and should not be used, use `tag` instead.
5147
5282
  */
5148
- [uniffiTypeNameSymbol] = "StreamDelivery";
5149
- tag = "Remote";
5283
+ [uniffiTypeNameSymbol] = "SoftBindingSource";
5284
+ tag = "Held";
5150
5285
  inner;
5151
5286
  constructor(inner) {
5152
- super("StreamDelivery", "Remote");
5287
+ super("SoftBindingSource", "Held");
5153
5288
  this.inner = Object.freeze(inner);
5154
5289
  }
5155
5290
  static new(inner) {
5156
- return new Remote_(inner);
5291
+ return new Held_(inner);
5157
5292
  }
5158
5293
  static instanceOf(obj) {
5159
- return obj.tag === "Remote";
5294
+ return obj.tag === "Held";
5160
5295
  }
5161
5296
  }
5162
- class Both_ extends UniffiEnum {
5297
+ /**
5298
+ * Your engine, run over the asset.
5299
+ */
5300
+ class Custom_ extends UniffiEnum {
5163
5301
  /**
5164
5302
  * @private
5165
5303
  * This field is private and should not be used, use `tag` instead.
5166
5304
  */
5167
- [uniffiTypeNameSymbol] = "StreamDelivery";
5168
- tag = "Both";
5305
+ [uniffiTypeNameSymbol] = "SoftBindingSource";
5306
+ tag = "Custom";
5169
5307
  inner;
5170
5308
  constructor(inner) {
5171
- super("StreamDelivery", "Both");
5309
+ super("SoftBindingSource", "Custom");
5172
5310
  this.inner = Object.freeze(inner);
5173
5311
  }
5174
5312
  static new(inner) {
5175
- return new Both_(inner);
5313
+ return new Custom_(inner);
5176
5314
  }
5177
5315
  static instanceOf(obj) {
5178
- return obj.tag === "Both";
5316
+ return obj.tag === "Custom";
5179
5317
  }
5180
5318
  }
5181
5319
  function instanceOf(obj) {
5182
- return obj[uniffiTypeNameSymbol] === "StreamDelivery";
5320
+ return obj[uniffiTypeNameSymbol] === "SoftBindingSource";
5183
5321
  }
5184
5322
  return Object.freeze({
5185
5323
  instanceOf,
5186
- Embedded: Embedded_,
5187
- Remote: Remote_,
5188
- Both: Both_
5324
+ Builtin: Builtin_,
5325
+ Held: Held_,
5326
+ Custom: Custom_
5189
5327
  });
5190
5328
  })();
5191
- const FfiConverterTypeStreamDelivery = (() => {
5329
+ const FfiConverterTypeSoftBindingSource = (() => {
5192
5330
  class FFIConverter extends AbstractFfiConverterByteArray {
5193
5331
  readFromCursor(c) {
5194
5332
  switch (c.readI32()) {
5195
- case 1: return new StreamDelivery.Embedded({ binders: FfiConverterSequenceTypeBinder.readFromCursor(c) });
5196
- case 2: return new StreamDelivery.Remote({ binders: FfiConverterSequenceTypeBinder.readFromCursor(c) });
5197
- case 3: return new StreamDelivery.Both({ binders: FfiConverterSequenceTypeBinder.readFromCursor(c) });
5333
+ case 1: return new SoftBindingSource.Builtin({ alg: FfiConverterString.readFromCursor(c) });
5334
+ case 2: return new SoftBindingSource.Held({ binding: FfiConverterTypeSoftBinding.readFromCursor(c) });
5335
+ case 3: return new SoftBindingSource.Custom({ compute: FfiConverterTypeCompute.readFromCursor(c) });
5198
5336
  default: throw new UniffiInternalError.UnexpectedEnumCase();
5199
5337
  }
5200
5338
  }
5201
5339
  writeIntoCursor(value, c) {
5202
5340
  switch (value.tag) {
5203
- case "Embedded": {
5341
+ case "Builtin": {
5204
5342
  c.writeI32(1);
5205
5343
  const inner = value.inner;
5206
- FfiConverterSequenceTypeBinder.writeIntoCursor(inner.binders, c);
5344
+ FfiConverterString.writeIntoCursor(inner.alg, c);
5207
5345
  return;
5208
5346
  }
5209
- case "Remote": {
5347
+ case "Held": {
5210
5348
  c.writeI32(2);
5211
5349
  const inner = value.inner;
5212
- FfiConverterSequenceTypeBinder.writeIntoCursor(inner.binders, c);
5350
+ FfiConverterTypeSoftBinding.writeIntoCursor(inner.binding, c);
5213
5351
  return;
5214
5352
  }
5215
- case "Both": {
5353
+ case "Custom": {
5216
5354
  c.writeI32(3);
5217
5355
  const inner = value.inner;
5218
- FfiConverterSequenceTypeBinder.writeIntoCursor(inner.binders, c);
5356
+ FfiConverterTypeCompute.writeIntoCursor(inner.compute, c);
5219
5357
  return;
5220
5358
  }
5221
5359
  default: throw new UniffiInternalError.UnexpectedEnumCase();
@@ -5223,22 +5361,22 @@ const FfiConverterTypeStreamDelivery = (() => {
5223
5361
  }
5224
5362
  allocationSize(value) {
5225
5363
  switch (value.tag) {
5226
- case "Embedded": {
5364
+ case "Builtin": {
5227
5365
  const inner = value.inner;
5228
5366
  let size = 4;
5229
- size += FfiConverterSequenceTypeBinder.allocationSize(inner.binders);
5367
+ size += FfiConverterString.allocationSize(inner.alg);
5230
5368
  return size;
5231
5369
  }
5232
- case "Remote": {
5370
+ case "Held": {
5233
5371
  const inner = value.inner;
5234
5372
  let size = 4;
5235
- size += FfiConverterSequenceTypeBinder.allocationSize(inner.binders);
5373
+ size += FfiConverterTypeSoftBinding.allocationSize(inner.binding);
5236
5374
  return size;
5237
5375
  }
5238
- case "Both": {
5376
+ case "Custom": {
5239
5377
  const inner = value.inner;
5240
5378
  let size = 4;
5241
- size += FfiConverterSequenceTypeBinder.allocationSize(inner.binders);
5379
+ size += FfiConverterTypeCompute.allocationSize(inner.compute);
5242
5380
  return size;
5243
5381
  }
5244
5382
  default: throw new UniffiInternalError.UnexpectedEnumCase();
@@ -5248,42 +5386,10 @@ const FfiConverterTypeStreamDelivery = (() => {
5248
5386
  return new FFIConverter();
5249
5387
  })();
5250
5388
  /**
5251
- * Generated factory for {@link RotationPolicy} record objects.
5252
- */
5253
- const RotationPolicy = (() => {
5254
- const defaults = () => ({});
5255
- const create = (() => {
5256
- return uniffiCreateRecord(defaults);
5257
- })();
5258
- return Object.freeze({
5259
- create,
5260
- new: create,
5261
- defaults: () => Object.freeze(defaults())
5262
- });
5263
- })();
5264
- const FfiConverterTypeRotationPolicy = (() => {
5265
- class FFIConverter extends AbstractFfiConverterByteArray {
5266
- readFromCursor(c) {
5267
- return {
5268
- validityPeriodSecs: FfiConverterUInt32.readFromCursor(c),
5269
- refreshPercent: FfiConverterUInt8.readFromCursor(c)
5270
- };
5271
- }
5272
- writeIntoCursor(value, c) {
5273
- FfiConverterUInt32.writeIntoCursor(value.validityPeriodSecs, c);
5274
- FfiConverterUInt8.writeIntoCursor(value.refreshPercent, c);
5275
- }
5276
- allocationSize(value) {
5277
- return FfiConverterUInt32.allocationSize(value.validityPeriodSecs) + FfiConverterUInt8.allocationSize(value.refreshPercent);
5278
- }
5279
- }
5280
- return new FFIConverter();
5281
- })();
5282
- /**
5283
5389
  * Generated factory for {@link InitOptions} record objects.
5284
5390
  */
5285
5391
  const InitOptions = (() => {
5286
- const defaults = () => ({});
5392
+ const defaults = () => ({ softBindings: [] });
5287
5393
  const create = (() => {
5288
5394
  return uniffiCreateRecord(defaults);
5289
5395
  })();
@@ -5298,15 +5404,17 @@ const FfiConverterTypeInitOptions = (() => {
5298
5404
  readFromCursor(c) {
5299
5405
  return {
5300
5406
  delivery: FfiConverterTypeStreamDelivery.readFromCursor(c),
5301
- rotationPolicy: FfiConverterTypeRotationPolicy.readFromCursor(c)
5407
+ rotationPolicy: FfiConverterTypeRotationPolicy.readFromCursor(c),
5408
+ softBindings: FfiConverterSequenceTypeSoftBindingSource.readFromCursor(c)
5302
5409
  };
5303
5410
  }
5304
5411
  writeIntoCursor(value, c) {
5305
5412
  FfiConverterTypeStreamDelivery.writeIntoCursor(value.delivery, c);
5306
5413
  FfiConverterTypeRotationPolicy.writeIntoCursor(value.rotationPolicy, c);
5414
+ FfiConverterSequenceTypeSoftBindingSource.writeIntoCursor(value.softBindings, c);
5307
5415
  }
5308
5416
  allocationSize(value) {
5309
- return FfiConverterTypeStreamDelivery.allocationSize(value.delivery) + FfiConverterTypeRotationPolicy.allocationSize(value.rotationPolicy);
5417
+ return FfiConverterTypeStreamDelivery.allocationSize(value.delivery) + FfiConverterTypeRotationPolicy.allocationSize(value.rotationPolicy) + FfiConverterSequenceTypeSoftBindingSource.allocationSize(value.softBindings);
5310
5418
  }
5311
5419
  }
5312
5420
  return new FFIConverter();
@@ -5329,16 +5437,16 @@ const FfiConverterTypeInitOutcome = (() => {
5329
5437
  class FFIConverter extends AbstractFfiConverterByteArray {
5330
5438
  readFromCursor(c) {
5331
5439
  return {
5332
- signedInitBytes: FfiConverterArrayBuffer.readFromCursor(c),
5333
- validUntilEpochSecs: FfiConverterInt64.readFromCursor(c)
5440
+ bytes: FfiConverterArrayBuffer.readFromCursor(c),
5441
+ validUntil: FfiConverterTimestamp.readFromCursor(c)
5334
5442
  };
5335
5443
  }
5336
5444
  writeIntoCursor(value, c) {
5337
- FfiConverterArrayBuffer.writeIntoCursor(value.signedInitBytes, c);
5338
- FfiConverterInt64.writeIntoCursor(value.validUntilEpochSecs, c);
5445
+ FfiConverterArrayBuffer.writeIntoCursor(value.bytes, c);
5446
+ FfiConverterTimestamp.writeIntoCursor(value.validUntil, c);
5339
5447
  }
5340
5448
  allocationSize(value) {
5341
- return FfiConverterArrayBuffer.allocationSize(value.signedInitBytes) + FfiConverterInt64.allocationSize(value.validUntilEpochSecs);
5449
+ return FfiConverterArrayBuffer.allocationSize(value.bytes) + FfiConverterTimestamp.allocationSize(value.validUntil);
5342
5450
  }
5343
5451
  }
5344
5452
  return new FFIConverter();
@@ -5347,7 +5455,10 @@ const FfiConverterTypeInitOutcome = (() => {
5347
5455
  * Generated factory for {@link MarkOptions} record objects.
5348
5456
  */
5349
5457
  const MarkOptions = (() => {
5350
- const defaults = () => ({});
5458
+ const defaults = () => ({
5459
+ format: void 0,
5460
+ algorithms: []
5461
+ });
5351
5462
  const create = (() => {
5352
5463
  return uniffiCreateRecord(defaults);
5353
5464
  })();
@@ -5361,18 +5472,16 @@ const FfiConverterTypeMarkOptions = (() => {
5361
5472
  class FFIConverter extends AbstractFfiConverterByteArray {
5362
5473
  readFromCursor(c) {
5363
5474
  return {
5364
- format: FfiConverterTypeAssetFormat.readFromCursor(c),
5365
- fileName: FfiConverterString.readFromCursor(c),
5366
- signpost: FfiConverterBool.readFromCursor(c)
5475
+ format: FfiConverterOptionalString.readFromCursor(c),
5476
+ algorithms: FfiConverterSequenceString.readFromCursor(c)
5367
5477
  };
5368
5478
  }
5369
5479
  writeIntoCursor(value, c) {
5370
- FfiConverterTypeAssetFormat.writeIntoCursor(value.format, c);
5371
- FfiConverterString.writeIntoCursor(value.fileName, c);
5372
- FfiConverterBool.writeIntoCursor(value.signpost, c);
5480
+ FfiConverterOptionalString.writeIntoCursor(value.format, c);
5481
+ FfiConverterSequenceString.writeIntoCursor(value.algorithms, c);
5373
5482
  }
5374
5483
  allocationSize(value) {
5375
- return FfiConverterTypeAssetFormat.allocationSize(value.format) + FfiConverterString.allocationSize(value.fileName) + FfiConverterBool.allocationSize(value.signpost);
5484
+ return FfiConverterOptionalString.allocationSize(value.format) + FfiConverterSequenceString.allocationSize(value.algorithms);
5376
5485
  }
5377
5486
  }
5378
5487
  return new FFIConverter();
@@ -5395,28 +5504,24 @@ const FfiConverterTypeMarkOutcome = (() => {
5395
5504
  class FFIConverter extends AbstractFfiConverterByteArray {
5396
5505
  readFromCursor(c) {
5397
5506
  return {
5398
- bytes: FfiConverterArrayBuffer.readFromCursor(c),
5399
5507
  format: FfiConverterString.readFromCursor(c),
5400
- fileName: FfiConverterString.readFromCursor(c),
5401
5508
  actions: FfiConverterSequenceTypeAction.readFromCursor(c)
5402
5509
  };
5403
5510
  }
5404
5511
  writeIntoCursor(value, c) {
5405
- FfiConverterArrayBuffer.writeIntoCursor(value.bytes, c);
5406
5512
  FfiConverterString.writeIntoCursor(value.format, c);
5407
- FfiConverterString.writeIntoCursor(value.fileName, c);
5408
5513
  FfiConverterSequenceTypeAction.writeIntoCursor(value.actions, c);
5409
5514
  }
5410
5515
  allocationSize(value) {
5411
- return FfiConverterArrayBuffer.allocationSize(value.bytes) + FfiConverterString.allocationSize(value.format) + FfiConverterString.allocationSize(value.fileName) + FfiConverterSequenceTypeAction.allocationSize(value.actions);
5516
+ return FfiConverterString.allocationSize(value.format) + FfiConverterSequenceTypeAction.allocationSize(value.actions);
5412
5517
  }
5413
5518
  }
5414
5519
  return new FFIConverter();
5415
5520
  })();
5416
5521
  /**
5417
- * Generated factory for {@link Region} record objects.
5522
+ * Generated factory for {@link MintRequest} record objects.
5418
5523
  */
5419
- const Region = (() => {
5524
+ const MintRequest = (() => {
5420
5525
  const defaults = () => ({});
5421
5526
  const create = (() => {
5422
5527
  return uniffiCreateRecord(defaults);
@@ -5427,20 +5532,16 @@ const Region = (() => {
5427
5532
  defaults: () => Object.freeze(defaults())
5428
5533
  });
5429
5534
  })();
5430
- const FfiConverterTypeRegion = (() => {
5535
+ const FfiConverterTypeMintRequest = (() => {
5431
5536
  class FFIConverter extends AbstractFfiConverterByteArray {
5432
5537
  readFromCursor(c) {
5433
- return {
5434
- offset: FfiConverterUInt64.readFromCursor(c),
5435
- length: FfiConverterUInt64.readFromCursor(c)
5436
- };
5538
+ return { validityPeriod: FfiConverterDuration.readFromCursor(c) };
5437
5539
  }
5438
5540
  writeIntoCursor(value, c) {
5439
- FfiConverterUInt64.writeIntoCursor(value.offset, c);
5440
- FfiConverterUInt64.writeIntoCursor(value.length, c);
5541
+ FfiConverterDuration.writeIntoCursor(value.validityPeriod, c);
5441
5542
  }
5442
5543
  allocationSize(value) {
5443
- return FfiConverterUInt64.allocationSize(value.offset) + FfiConverterUInt64.allocationSize(value.length);
5544
+ return FfiConverterDuration.allocationSize(value.validityPeriod);
5444
5545
  }
5445
5546
  }
5446
5547
  return new FFIConverter();
@@ -5465,16 +5566,48 @@ const FfiConverterTypeSegmentOutcome = (() => {
5465
5566
  return {
5466
5567
  bytes: FfiConverterArrayBuffer.readFromCursor(c),
5467
5568
  rotationDue: FfiConverterBool.readFromCursor(c),
5468
- validUntilEpochSecs: FfiConverterInt64.readFromCursor(c)
5569
+ validUntil: FfiConverterTimestamp.readFromCursor(c)
5469
5570
  };
5470
5571
  }
5471
5572
  writeIntoCursor(value, c) {
5472
5573
  FfiConverterArrayBuffer.writeIntoCursor(value.bytes, c);
5473
5574
  FfiConverterBool.writeIntoCursor(value.rotationDue, c);
5474
- FfiConverterInt64.writeIntoCursor(value.validUntilEpochSecs, c);
5575
+ FfiConverterTimestamp.writeIntoCursor(value.validUntil, c);
5576
+ }
5577
+ allocationSize(value) {
5578
+ return FfiConverterArrayBuffer.allocationSize(value.bytes) + FfiConverterBool.allocationSize(value.rotationDue) + FfiConverterTimestamp.allocationSize(value.validUntil);
5579
+ }
5580
+ }
5581
+ return new FFIConverter();
5582
+ })();
5583
+ /**
5584
+ * Generated factory for {@link SessionKey} record objects.
5585
+ */
5586
+ const SessionKey = (() => {
5587
+ const defaults = () => ({});
5588
+ const create = (() => {
5589
+ return uniffiCreateRecord(defaults);
5590
+ })();
5591
+ return Object.freeze({
5592
+ create,
5593
+ new: create,
5594
+ defaults: () => Object.freeze(defaults())
5595
+ });
5596
+ })();
5597
+ const FfiConverterTypeSessionKey = (() => {
5598
+ class FFIConverter extends AbstractFfiConverterByteArray {
5599
+ readFromCursor(c) {
5600
+ return {
5601
+ kid: FfiConverterArrayBuffer.readFromCursor(c),
5602
+ publicKey: FfiConverterArrayBuffer.readFromCursor(c)
5603
+ };
5604
+ }
5605
+ writeIntoCursor(value, c) {
5606
+ FfiConverterArrayBuffer.writeIntoCursor(value.kid, c);
5607
+ FfiConverterArrayBuffer.writeIntoCursor(value.publicKey, c);
5475
5608
  }
5476
5609
  allocationSize(value) {
5477
- return FfiConverterArrayBuffer.allocationSize(value.bytes) + FfiConverterBool.allocationSize(value.rotationDue) + FfiConverterInt64.allocationSize(value.validUntilEpochSecs);
5610
+ return FfiConverterArrayBuffer.allocationSize(value.kid) + FfiConverterArrayBuffer.allocationSize(value.publicKey);
5478
5611
  }
5479
5612
  }
5480
5613
  return new FFIConverter();
@@ -5681,10 +5814,9 @@ let SignOutput_Tags = /* @__PURE__ */ function(SignOutput_Tags) {
5681
5814
  return SignOutput_Tags;
5682
5815
  }({});
5683
5816
  /**
5684
- * What a `sign` hands back beyond the sidecar it always returns: the sidecar alone, or the
5685
- * signed asset written through `into` in the same call. See the core
5686
- * [`SignOutput`](crate::manifest::spec::SignOutput) for what pointing `into` at the asset's own
5687
- * storage means.
5817
+ * What a `sign` hands back beyond the sidecar it always returns: the sidecar alone, or the whole
5818
+ * signed asset written into `into` in the same call, replacing what it held. See the core
5819
+ * [`SignOutput`](core::SignOutput) for what pointing `into` at the asset's own storage means.
5688
5820
  */
5689
5821
  const SignOutput = (() => {
5690
5822
  class Sidecar_ extends UniffiEnum {
@@ -5773,16 +5905,15 @@ const FfiConverterTypeSignOutput = (() => {
5773
5905
  let AssetDelivery_Tags = /* @__PURE__ */ function(AssetDelivery_Tags) {
5774
5906
  AssetDelivery_Tags["Embedded"] = "Embedded";
5775
5907
  AssetDelivery_Tags["Remote"] = "Remote";
5776
- AssetDelivery_Tags["Both"] = "Both";
5908
+ AssetDelivery_Tags["EmbeddedAndRemote"] = "EmbeddedAndRemote";
5777
5909
  return AssetDelivery_Tags;
5778
5910
  }({});
5779
5911
  /**
5780
- * How a static asset's manifest is delivered, which binders it declares, and what comes back.
5912
+ * Where a static asset's manifest lives and, when it is in the asset, what comes back.
5781
5913
  *
5782
- * Embedded manifests may still need bindings, for example to describe a bound watermark, but
5783
- * are not indexed. Remote needs at least one resolved binding, from a binder or a bound
5784
- * watermark action, and never touches the asset, so it names no output; both is recoverable
5785
- * through its embedded manifest and permits an empty strategy list.
5914
+ * Embedded manifests are not indexed, so a watermark on one is refused: it could never lead back
5915
+ * to the manifest. Remote needs a soft binding the deployment resolves and never touches the
5916
+ * asset, so it names no output.
5786
5917
  */
5787
5918
  const AssetDelivery = (() => {
5788
5919
  class Embedded_ extends UniffiEnum {
@@ -5811,35 +5942,33 @@ const AssetDelivery = (() => {
5811
5942
  */
5812
5943
  [uniffiTypeNameSymbol] = "AssetDelivery";
5813
5944
  tag = "Remote";
5814
- inner;
5815
- constructor(inner) {
5945
+ constructor() {
5816
5946
  super("AssetDelivery", "Remote");
5817
- this.inner = Object.freeze(inner);
5818
5947
  }
5819
- static new(inner) {
5820
- return new Remote_(inner);
5948
+ static new() {
5949
+ return new Remote_();
5821
5950
  }
5822
5951
  static instanceOf(obj) {
5823
5952
  return obj.tag === "Remote";
5824
5953
  }
5825
5954
  }
5826
- class Both_ extends UniffiEnum {
5955
+ class EmbeddedAndRemote_ extends UniffiEnum {
5827
5956
  /**
5828
5957
  * @private
5829
5958
  * This field is private and should not be used, use `tag` instead.
5830
5959
  */
5831
5960
  [uniffiTypeNameSymbol] = "AssetDelivery";
5832
- tag = "Both";
5961
+ tag = "EmbeddedAndRemote";
5833
5962
  inner;
5834
5963
  constructor(inner) {
5835
- super("AssetDelivery", "Both");
5964
+ super("AssetDelivery", "EmbeddedAndRemote");
5836
5965
  this.inner = Object.freeze(inner);
5837
5966
  }
5838
5967
  static new(inner) {
5839
- return new Both_(inner);
5968
+ return new EmbeddedAndRemote_(inner);
5840
5969
  }
5841
5970
  static instanceOf(obj) {
5842
- return obj.tag === "Both";
5971
+ return obj.tag === "EmbeddedAndRemote";
5843
5972
  }
5844
5973
  }
5845
5974
  function instanceOf(obj) {
@@ -5849,22 +5978,16 @@ const AssetDelivery = (() => {
5849
5978
  instanceOf,
5850
5979
  Embedded: Embedded_,
5851
5980
  Remote: Remote_,
5852
- Both: Both_
5981
+ EmbeddedAndRemote: EmbeddedAndRemote_
5853
5982
  });
5854
5983
  })();
5855
5984
  const FfiConverterTypeAssetDelivery = (() => {
5856
5985
  class FFIConverter extends AbstractFfiConverterByteArray {
5857
5986
  readFromCursor(c) {
5858
5987
  switch (c.readI32()) {
5859
- case 1: return new AssetDelivery.Embedded({
5860
- binders: FfiConverterSequenceTypeBinder.readFromCursor(c),
5861
- output: FfiConverterTypeSignOutput.readFromCursor(c)
5862
- });
5863
- case 2: return new AssetDelivery.Remote({ binders: FfiConverterSequenceTypeBinder.readFromCursor(c) });
5864
- case 3: return new AssetDelivery.Both({
5865
- binders: FfiConverterSequenceTypeBinder.readFromCursor(c),
5866
- output: FfiConverterTypeSignOutput.readFromCursor(c)
5867
- });
5988
+ case 1: return new AssetDelivery.Embedded({ output: FfiConverterTypeSignOutput.readFromCursor(c) });
5989
+ case 2: return new AssetDelivery.Remote();
5990
+ case 3: return new AssetDelivery.EmbeddedAndRemote({ output: FfiConverterTypeSignOutput.readFromCursor(c) });
5868
5991
  default: throw new UniffiInternalError.UnexpectedEnumCase();
5869
5992
  }
5870
5993
  }
@@ -5873,20 +5996,15 @@ const FfiConverterTypeAssetDelivery = (() => {
5873
5996
  case "Embedded": {
5874
5997
  c.writeI32(1);
5875
5998
  const inner = value.inner;
5876
- FfiConverterSequenceTypeBinder.writeIntoCursor(inner.binders, c);
5877
5999
  FfiConverterTypeSignOutput.writeIntoCursor(inner.output, c);
5878
6000
  return;
5879
6001
  }
5880
- case "Remote": {
6002
+ case "Remote":
5881
6003
  c.writeI32(2);
5882
- const inner = value.inner;
5883
- FfiConverterSequenceTypeBinder.writeIntoCursor(inner.binders, c);
5884
6004
  return;
5885
- }
5886
- case "Both": {
6005
+ case "EmbeddedAndRemote": {
5887
6006
  c.writeI32(3);
5888
6007
  const inner = value.inner;
5889
- FfiConverterSequenceTypeBinder.writeIntoCursor(inner.binders, c);
5890
6008
  FfiConverterTypeSignOutput.writeIntoCursor(inner.output, c);
5891
6009
  return;
5892
6010
  }
@@ -5898,20 +6016,13 @@ const FfiConverterTypeAssetDelivery = (() => {
5898
6016
  case "Embedded": {
5899
6017
  const inner = value.inner;
5900
6018
  let size = 4;
5901
- size += FfiConverterSequenceTypeBinder.allocationSize(inner.binders);
5902
6019
  size += FfiConverterTypeSignOutput.allocationSize(inner.output);
5903
6020
  return size;
5904
6021
  }
5905
- case "Remote": {
5906
- const inner = value.inner;
5907
- let size = 4;
5908
- size += FfiConverterSequenceTypeBinder.allocationSize(inner.binders);
5909
- return size;
5910
- }
5911
- case "Both": {
6022
+ case "Remote": return 4;
6023
+ case "EmbeddedAndRemote": {
5912
6024
  const inner = value.inner;
5913
6025
  let size = 4;
5914
- size += FfiConverterSequenceTypeBinder.allocationSize(inner.binders);
5915
6026
  size += FfiConverterTypeSignOutput.allocationSize(inner.output);
5916
6027
  return size;
5917
6028
  }
@@ -5925,7 +6036,11 @@ const FfiConverterTypeAssetDelivery = (() => {
5925
6036
  * Generated factory for {@link SignOptions} record objects.
5926
6037
  */
5927
6038
  const SignOptions = (() => {
5928
- const defaults = () => ({ thumbnail: void 0 });
6039
+ const defaults = () => ({
6040
+ format: void 0,
6041
+ thumbnail: void 0,
6042
+ softBindings: []
6043
+ });
5929
6044
  const create = (() => {
5930
6045
  return uniffiCreateRecord(defaults);
5931
6046
  })();
@@ -5940,17 +6055,19 @@ const FfiConverterTypeSignOptions = (() => {
5940
6055
  readFromCursor(c) {
5941
6056
  return {
5942
6057
  delivery: FfiConverterTypeAssetDelivery.readFromCursor(c),
5943
- format: FfiConverterTypeAssetFormat.readFromCursor(c),
5944
- thumbnail: FfiConverterOptionalTypeThumbnail.readFromCursor(c)
6058
+ format: FfiConverterOptionalString.readFromCursor(c),
6059
+ thumbnail: FfiConverterOptionalTypeThumbnail.readFromCursor(c),
6060
+ softBindings: FfiConverterSequenceTypeSoftBindingSource.readFromCursor(c)
5945
6061
  };
5946
6062
  }
5947
6063
  writeIntoCursor(value, c) {
5948
6064
  FfiConverterTypeAssetDelivery.writeIntoCursor(value.delivery, c);
5949
- FfiConverterTypeAssetFormat.writeIntoCursor(value.format, c);
6065
+ FfiConverterOptionalString.writeIntoCursor(value.format, c);
5950
6066
  FfiConverterOptionalTypeThumbnail.writeIntoCursor(value.thumbnail, c);
6067
+ FfiConverterSequenceTypeSoftBindingSource.writeIntoCursor(value.softBindings, c);
5951
6068
  }
5952
6069
  allocationSize(value) {
5953
- return FfiConverterTypeAssetDelivery.allocationSize(value.delivery) + FfiConverterTypeAssetFormat.allocationSize(value.format) + FfiConverterOptionalTypeThumbnail.allocationSize(value.thumbnail);
6070
+ return FfiConverterTypeAssetDelivery.allocationSize(value.delivery) + FfiConverterOptionalString.allocationSize(value.format) + FfiConverterOptionalTypeThumbnail.allocationSize(value.thumbnail) + FfiConverterSequenceTypeSoftBindingSource.allocationSize(value.softBindings);
5954
6071
  }
5955
6072
  }
5956
6073
  return new FFIConverter();
@@ -5987,25 +6104,25 @@ const FfiConverterTypeSignOutcome = (() => {
5987
6104
  }
5988
6105
  return new FFIConverter();
5989
6106
  })();
5990
- let Origin_Tags = /* @__PURE__ */ function(Origin_Tags) {
5991
- Origin_Tags["Created"] = "Created";
5992
- Origin_Tags["Opened"] = "Opened";
5993
- return Origin_Tags;
6107
+ let StreamOrigin_Tags = /* @__PURE__ */ function(StreamOrigin_Tags) {
6108
+ StreamOrigin_Tags["Created"] = "Created";
6109
+ StreamOrigin_Tags["Opened"] = "Opened";
6110
+ return StreamOrigin_Tags;
5994
6111
  }({});
5995
6112
  /**
5996
- * An origin a live stream states; see the core [`provenance::Origin`].
6113
+ * An origin a stream states; see the core [`provenance::StreamOrigin`].
5997
6114
  */
5998
- const Origin = (() => {
6115
+ const StreamOrigin = (() => {
5999
6116
  class Created_ extends UniffiEnum {
6000
6117
  /**
6001
6118
  * @private
6002
6119
  * This field is private and should not be used, use `tag` instead.
6003
6120
  */
6004
- [uniffiTypeNameSymbol] = "Origin";
6121
+ [uniffiTypeNameSymbol] = "StreamOrigin";
6005
6122
  tag = "Created";
6006
6123
  inner;
6007
6124
  constructor(v0) {
6008
- super("Origin", "Created");
6125
+ super("StreamOrigin", "Created");
6009
6126
  this.inner = Object.freeze([v0]);
6010
6127
  }
6011
6128
  static new(v0) {
@@ -6020,11 +6137,11 @@ const Origin = (() => {
6020
6137
  * @private
6021
6138
  * This field is private and should not be used, use `tag` instead.
6022
6139
  */
6023
- [uniffiTypeNameSymbol] = "Origin";
6140
+ [uniffiTypeNameSymbol] = "StreamOrigin";
6024
6141
  tag = "Opened";
6025
6142
  inner;
6026
6143
  constructor(v0) {
6027
- super("Origin", "Opened");
6144
+ super("StreamOrigin", "Opened");
6028
6145
  this.inner = Object.freeze([v0]);
6029
6146
  }
6030
6147
  static new(v0) {
@@ -6035,7 +6152,7 @@ const Origin = (() => {
6035
6152
  }
6036
6153
  }
6037
6154
  function instanceOf(obj) {
6038
- return obj[uniffiTypeNameSymbol] === "Origin";
6155
+ return obj[uniffiTypeNameSymbol] === "StreamOrigin";
6039
6156
  }
6040
6157
  return Object.freeze({
6041
6158
  instanceOf,
@@ -6043,12 +6160,12 @@ const Origin = (() => {
6043
6160
  Opened: Opened_
6044
6161
  });
6045
6162
  })();
6046
- const FfiConverterTypeOrigin = (() => {
6163
+ const FfiConverterTypeStreamOrigin = (() => {
6047
6164
  class FFIConverter extends AbstractFfiConverterByteArray {
6048
6165
  readFromCursor(c) {
6049
6166
  switch (c.readI32()) {
6050
- case 1: return new Origin.Created(FfiConverterTypeCreatedOrigin.readFromCursor(c));
6051
- case 2: return new Origin.Opened(FfiConverterTypeOpenedOrigin.readFromCursor(c));
6167
+ case 1: return new StreamOrigin.Created(FfiConverterTypeCreatedOrigin.readFromCursor(c));
6168
+ case 2: return new StreamOrigin.Opened(FfiConverterTypeOpenedOrigin.readFromCursor(c));
6052
6169
  default: throw new UniffiInternalError.UnexpectedEnumCase();
6053
6170
  }
6054
6171
  }
@@ -6095,7 +6212,10 @@ const FfiConverterTypeOrigin = (() => {
6095
6212
  const StreamManifestSpec = (() => {
6096
6213
  const defaults = () => ({
6097
6214
  title: void 0,
6098
- identity: void 0
6215
+ actions: [],
6216
+ identity: void 0,
6217
+ assertions: [],
6218
+ components: /* @__PURE__ */ new Map()
6099
6219
  });
6100
6220
  const create = (() => {
6101
6221
  return uniffiCreateRecord(defaults);
@@ -6111,33 +6231,34 @@ const FfiConverterTypeStreamManifestSpec = (() => {
6111
6231
  readFromCursor(c) {
6112
6232
  return {
6113
6233
  title: FfiConverterOptionalString.readFromCursor(c),
6114
- origin: FfiConverterTypeOrigin.readFromCursor(c),
6234
+ origin: FfiConverterTypeStreamOrigin.readFromCursor(c),
6115
6235
  actions: FfiConverterSequenceTypeAction.readFromCursor(c),
6116
6236
  identity: FfiConverterOptionalTypeIdentity.readFromCursor(c),
6117
6237
  assertions: FfiConverterSequenceTypeAssertion.readFromCursor(c),
6118
- components: FfiConverterSequenceTypeComponent.readFromCursor(c)
6238
+ components: FfiConverterMapStringTypeComponent.readFromCursor(c)
6119
6239
  };
6120
6240
  }
6121
6241
  writeIntoCursor(value, c) {
6122
6242
  FfiConverterOptionalString.writeIntoCursor(value.title, c);
6123
- FfiConverterTypeOrigin.writeIntoCursor(value.origin, c);
6243
+ FfiConverterTypeStreamOrigin.writeIntoCursor(value.origin, c);
6124
6244
  FfiConverterSequenceTypeAction.writeIntoCursor(value.actions, c);
6125
6245
  FfiConverterOptionalTypeIdentity.writeIntoCursor(value.identity, c);
6126
6246
  FfiConverterSequenceTypeAssertion.writeIntoCursor(value.assertions, c);
6127
- FfiConverterSequenceTypeComponent.writeIntoCursor(value.components, c);
6247
+ FfiConverterMapStringTypeComponent.writeIntoCursor(value.components, c);
6128
6248
  }
6129
6249
  allocationSize(value) {
6130
- return FfiConverterOptionalString.allocationSize(value.title) + FfiConverterTypeOrigin.allocationSize(value.origin) + FfiConverterSequenceTypeAction.allocationSize(value.actions) + FfiConverterOptionalTypeIdentity.allocationSize(value.identity) + FfiConverterSequenceTypeAssertion.allocationSize(value.assertions) + FfiConverterSequenceTypeComponent.allocationSize(value.components);
6250
+ return FfiConverterOptionalString.allocationSize(value.title) + FfiConverterTypeStreamOrigin.allocationSize(value.origin) + FfiConverterSequenceTypeAction.allocationSize(value.actions) + FfiConverterOptionalTypeIdentity.allocationSize(value.identity) + FfiConverterSequenceTypeAssertion.allocationSize(value.assertions) + FfiConverterMapStringTypeComponent.allocationSize(value.components);
6131
6251
  }
6132
6252
  }
6133
6253
  return new FFIConverter();
6134
6254
  })();
6135
6255
  /**
6136
- * One live stream, from `init` to `stop`.
6256
+ * One stream, from `init` to `stop` or `rotate`.
6137
6257
  *
6138
- * Carries the whole per-stream state, so it cannot be mistyped, reused after `stop`, or
6139
- * confused with another stream's: every call after `init` goes through the handle that started
6140
- * it, and nothing about the stream ever appears in a caller's argument list again.
6258
+ * Carries the whole per-stream state, so it cannot be mistyped or confused with another
6259
+ * stream's: every call after `init` goes through the handle that started it, and nothing about
6260
+ * the stream ever appears in a caller's argument list again. Once `stop` or a `rotate` succeeds
6261
+ * it refuses every call.
6141
6262
  */
6142
6263
  var StreamSession = class extends UniffiAbstractObject {
6143
6264
  [uniffiTypeNameSymbol] = "StreamSession";
@@ -6151,17 +6272,18 @@ var StreamSession = class extends UniffiAbstractObject {
6151
6272
  /**
6152
6273
  * Sign one media (moof) segment from a [`RangeSource`]. Does not touch the signer channel;
6153
6274
  * works through a signer outage. `rotation_due` flips when the key validity threshold
6154
- * passes; re-`init` on the issuer to rotate.
6275
+ * passes; then call `StreamIssuer.rotate` with this session.
6155
6276
  *
6156
6277
  * # Errors
6157
6278
  *
6158
- * Fails on a vault error, or a segment that isn't a BMFF media segment.
6279
+ * Fails on a vault error, a segment that isn't a BMFF media segment, or with
6280
+ * `FAILED_PRECONDITION` (`SESSION_ENDED`) after `stop` or a `rotate`.
6159
6281
  */
6160
- async sign(body, asyncOpts_) {
6282
+ async sign(source, asyncOpts_) {
6161
6283
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
6162
6284
  try {
6163
6285
  return await uniffiRustCallAsync(uniffiCaller, () => {
6164
- return getter().uniffi_trylimbo_sdk_issuer_fn_method_streamsession_sign(uniffiTypeStreamSessionObjectFactory.clonePointer(this), FfiConverterTypeRangeSource.lower(body, getter().rustbuffer_alloc));
6286
+ return getter().uniffi_trylimbo_sdk_issuer_fn_method_streamsession_sign(uniffiTypeStreamSessionObjectFactory.clonePointer(this), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc));
6165
6287
  }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
6166
6288
  try {
6167
6289
  return FfiConverterTypeSegmentOutcome.lift(__rb);
@@ -6175,11 +6297,13 @@ var StreamSession = class extends UniffiAbstractObject {
6175
6297
  }
6176
6298
  }
6177
6299
  /**
6178
- * End the stream: forget its session key, so nothing can sign under it again.
6300
+ * End the stream: forget its session key, so nothing can sign under it again. Idempotent:
6301
+ * stopping an ended session succeeds. A failed stop can be retried.
6179
6302
  *
6180
6303
  * # Errors
6181
6304
  *
6182
- * Fails on a vault error.
6305
+ * Fails on a vault error, or with `FAILED_PRECONDITION` (`SESSION_ENDED`) with another
6306
+ * `stop` or `rotate` in flight.
6183
6307
  */
6184
6308
  async stop(asyncOpts_) {
6185
6309
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
@@ -6278,40 +6402,8 @@ const FfiConverterTypeStreamStart = (() => {
6278
6402
  return new FFIConverter();
6279
6403
  })();
6280
6404
  /**
6281
- * Generated factory for {@link VaultPublicKey} record objects.
6282
- */
6283
- const VaultPublicKey = (() => {
6284
- const defaults = () => ({});
6285
- const create = (() => {
6286
- return uniffiCreateRecord(defaults);
6287
- })();
6288
- return Object.freeze({
6289
- create,
6290
- new: create,
6291
- defaults: () => Object.freeze(defaults())
6292
- });
6293
- })();
6294
- const FfiConverterTypeVaultPublicKey = (() => {
6295
- class FFIConverter extends AbstractFfiConverterByteArray {
6296
- readFromCursor(c) {
6297
- return {
6298
- kid: FfiConverterArrayBuffer.readFromCursor(c),
6299
- publicKeySec1: FfiConverterArrayBuffer.readFromCursor(c)
6300
- };
6301
- }
6302
- writeIntoCursor(value, c) {
6303
- FfiConverterArrayBuffer.writeIntoCursor(value.kid, c);
6304
- FfiConverterArrayBuffer.writeIntoCursor(value.publicKeySec1, c);
6305
- }
6306
- allocationSize(value) {
6307
- return FfiConverterArrayBuffer.allocationSize(value.kid) + FfiConverterArrayBuffer.allocationSize(value.publicKeySec1);
6308
- }
6309
- }
6310
- return new FFIConverter();
6311
- })();
6312
- /**
6313
- * Whether a fragmented-MP4 segment is the init (moov) or a media (moof) segment: which
6314
- * [`StreamIssuer`](stream::StreamIssuer) entrypoint (`init` vs `sign`) a segment belongs to.
6405
+ * Whether a fragmented-MP4 segment is the init (moov) or a media (moof) segment: whether it goes
6406
+ * to `StreamIssuer.init` or `StreamSession.sign`.
6315
6407
  */
6316
6408
  let SegmentKind = /* @__PURE__ */ function(SegmentKind) {
6317
6409
  SegmentKind[SegmentKind["Init"] = 0] = "Init";
@@ -6358,9 +6450,9 @@ const uniffiCallbackInterfacePluginAuthor = {
6358
6450
  uniffiTraitInterfaceCallWithError(uniffiMakeCall, uniffiHandleSuccess, uniffiHandleError, SdkError.instanceOf, FfiConverterTypeSdkError.lower.bind(FfiConverterTypeSdkError), FfiConverterString.lower.bind(FfiConverterString), getter().rustbuffer_alloc);
6359
6451
  return uniffiResult;
6360
6452
  },
6361
- sniff: (uniffiHandle, src, uniffiFutureCallback, uniffiCallbackData) => {
6453
+ sniff: (uniffiHandle, source, uniffiFutureCallback, uniffiCallbackData) => {
6362
6454
  const uniffiMakeCall = async (signal) => {
6363
- return await FfiConverterTypePluginAuthor.lift(uniffiHandle).sniff(FfiConverterTypeRangeSource.lift(src), { signal });
6455
+ return await FfiConverterTypePluginAuthor.lift(uniffiHandle).sniff(FfiConverterTypeRangeSource.lift(source), { signal });
6364
6456
  };
6365
6457
  const uniffiHandleSuccess = (returnValue) => {
6366
6458
  uniffiFutureCallback.call(uniffiFutureCallback, uniffiCallbackData, {
@@ -6376,13 +6468,13 @@ const uniffiCallbackInterfacePluginAuthor = {
6376
6468
  };
6377
6469
  return uniffiTraitInterfaceCallAsyncWithError(uniffiMakeCall, uniffiHandleSuccess, uniffiHandleError, SdkError.instanceOf, FfiConverterTypeSdkError.lower.bind(FfiConverterTypeSdkError), FfiConverterString.lower.bind(FfiConverterString), getter().rustbuffer_alloc);
6378
6470
  },
6379
- locate: (uniffiHandle, src, uniffiFutureCallback, uniffiCallbackData) => {
6471
+ locate: (uniffiHandle, source, uniffiFutureCallback, uniffiCallbackData) => {
6380
6472
  const uniffiMakeCall = async (signal) => {
6381
- return await FfiConverterTypePluginAuthor.lift(uniffiHandle).locate(FfiConverterTypeRangeSource.lift(src), { signal });
6473
+ return await FfiConverterTypePluginAuthor.lift(uniffiHandle).locate(FfiConverterTypeRangeSource.lift(source), { signal });
6382
6474
  };
6383
6475
  const uniffiHandleSuccess = (returnValue) => {
6384
6476
  uniffiFutureCallback.call(uniffiFutureCallback, uniffiCallbackData, {
6385
- return_value: FfiConverterSequenceTypeRegion.lower(returnValue, getter().rustbuffer_alloc),
6477
+ return_value: FfiConverterSequenceTypeByteRange.lower(returnValue, getter().rustbuffer_alloc),
6386
6478
  call_status: uniffiCaller.createCallStatus()
6387
6479
  });
6388
6480
  };
@@ -6394,13 +6486,13 @@ const uniffiCallbackInterfacePluginAuthor = {
6394
6486
  };
6395
6487
  return uniffiTraitInterfaceCallAsyncWithError(uniffiMakeCall, uniffiHandleSuccess, uniffiHandleError, SdkError.instanceOf, FfiConverterTypeSdkError.lower.bind(FfiConverterTypeSdkError), FfiConverterString.lower.bind(FfiConverterString), getter().rustbuffer_alloc);
6396
6488
  },
6397
- reserve_slot: (uniffiHandle, dst, reserve, uniffiFutureCallback, uniffiCallbackData) => {
6489
+ reserve_slot: (uniffiHandle, sink, reserve, uniffiFutureCallback, uniffiCallbackData) => {
6398
6490
  const uniffiMakeCall = async (signal) => {
6399
- return await FfiConverterTypePluginAuthor.lift(uniffiHandle).reserveSlot(FfiConverterTypeRangeSink.lift(dst), FfiConverterUInt64.lift(reserve), { signal });
6491
+ return await FfiConverterTypePluginAuthor.lift(uniffiHandle).reserveSlot(FfiConverterTypeRangeSink.lift(sink), FfiConverterUInt64.lift(reserve), { signal });
6400
6492
  };
6401
6493
  const uniffiHandleSuccess = (returnValue) => {
6402
6494
  uniffiFutureCallback.call(uniffiFutureCallback, uniffiCallbackData, {
6403
- return_value: FfiConverterSequenceTypeRegion.lower(returnValue, getter().rustbuffer_alloc),
6495
+ return_value: FfiConverterSequenceTypeByteRange.lower(returnValue, getter().rustbuffer_alloc),
6404
6496
  call_status: uniffiCaller.createCallStatus()
6405
6497
  });
6406
6498
  };
@@ -6446,18 +6538,16 @@ var AssetIssuer = class extends UniffiAbstractObject {
6446
6538
  }, FfiConverterString.lift.bind(FfiConverterString)));
6447
6539
  }
6448
6540
  /**
6449
- * Sign an asset from a [`RangeSource`], returning the sidecar plus the registry
6450
- * `manifest_id`. `options.delivery` selects where the manifest lives, its binders and,
6451
- * through its output, the sink the signed asset is written through. `options.format` is
6452
- * how the asset's format is known. `plugins` resolves a non-c2pa format (e.g. MXF); see the
6453
- * module docs for the dispatch.
6541
+ * Sign an asset from a [`RangeSource`], returning the sidecar and the active manifest's id.
6542
+ * `options.delivery` says where the manifest lives and, through its output, where the signed
6543
+ * asset is written. `plugins` resolves a non-c2pa format (e.g. MXF); see the module docs.
6454
6544
  *
6455
6545
  * # Errors
6456
6546
  *
6457
- * Fails on RPC failure, a hashing error, an authoring error, a protocol violation,
6458
- * or when the format can't be inferred and none was given.
6547
+ * A format that is no media type, that the bytes contradict or that neither names; an RPC,
6548
+ * hashing, authoring or protocol failure.
6459
6549
  */
6460
- async sign(source, manifest, options, plugins, asyncOpts_) {
6550
+ async sign(source, manifest, options, plugins = [], asyncOpts_) {
6461
6551
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
6462
6552
  try {
6463
6553
  return await uniffiRustCallAsync(uniffiCaller, () => {
@@ -6528,11 +6618,10 @@ const uniffiTypeAssetIssuerObjectFactory = (() => {
6528
6618
  })();
6529
6619
  const FfiConverterTypeAssetIssuer = new FfiConverterObject(uniffiTypeAssetIssuerObjectFactory);
6530
6620
  /**
6531
- * Applies invisible watermarks through the deployment's marking service.
6621
+ * Inserts invisible watermarks through the deployment's marking route.
6532
6622
  *
6533
6623
  * Separate from [`AssetIssuer`] because marking is a content edit, not a signing step: it
6534
- * changes pixels, it happens before signing, and it returns the provenance facts it created
6535
- * rather than leaving anything downstream to infer them.
6624
+ * happens before signing, and it returns the actions it owes the manifest.
6536
6625
  */
6537
6626
  var AssetMarker = class extends UniffiAbstractObject {
6538
6627
  [uniffiTypeNameSymbol] = "AssetMarker";
@@ -6552,19 +6641,21 @@ var AssetMarker = class extends UniffiAbstractObject {
6552
6641
  }, FfiConverterString.lift.bind(FfiConverterString)));
6553
6642
  }
6554
6643
  /**
6555
- * Mark an image from a [`RangeSource`] and return it with the actions the marking created,
6556
- * each bound one carrying its binding.
6644
+ * Mark an asset from a [`RangeSource`], writing the marked asset into `into` in place of
6645
+ * what it held, and return one `c2pa.watermarked.*` action per mark, in the order inserted.
6646
+ * Sign what `into` holds.
6557
6647
  *
6558
6648
  * # Errors
6559
6649
  *
6560
- * Fails when the format can't be resolved, the asset is above the upload ceiling, the HTTP
6561
- * request fails, or the service response is malformed.
6650
+ * An unlisted algorithm, a format that is no media type or that the bytes contradict, an
6651
+ * asset above the upload ceiling, a source or sink that fails, or a marking route that
6652
+ * refused or answered out of contract.
6562
6653
  */
6563
- async mark(source, options, asyncOpts_) {
6654
+ async mark(source, into, options, asyncOpts_) {
6564
6655
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
6565
6656
  try {
6566
6657
  return await uniffiRustCallAsync(uniffiCaller, () => {
6567
- return getter().uniffi_trylimbo_sdk_issuer_fn_method_assetmarker_mark(uniffiTypeAssetMarkerObjectFactory.clonePointer(this), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterTypeMarkOptions.lower(options, getter().rustbuffer_alloc));
6658
+ return getter().uniffi_trylimbo_sdk_issuer_fn_method_assetmarker_mark(uniffiTypeAssetMarkerObjectFactory.clonePointer(this), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterTypeRangeSink.lower(into, getter().rustbuffer_alloc), FfiConverterTypeMarkOptions.lower(options, getter().rustbuffer_alloc));
6568
6659
  }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
6569
6660
  try {
6570
6661
  return FfiConverterTypeMarkOutcome.lift(__rb);
@@ -6642,10 +6733,6 @@ const FfiConverterTypeAssetMarker = new FfiConverterObject(uniffiTypeAssetMarker
6642
6733
  * That is what makes [`MemorySink`]'s ceiling stop applying: there is no byte array to count in an
6643
6734
  * `i32` and nothing resident, so a multi-GB master is signed at the disk's speed rather than the
6644
6735
  * host thread's, and `bytes()` is not something anyone has to call.
6645
- *
6646
- * No lock. A positioned write to a file is one `pwrite`, which the OS already makes atomic per
6647
- * call, and [`RangeWriter`] takes a shared borrow precisely so a backend like this pays nothing
6648
- * for being shared.
6649
6736
  */
6650
6737
  var FileSink = class extends UniffiAbstractObject {
6651
6738
  [uniffiTypeNameSymbol] = "FileSink";
@@ -6657,8 +6744,8 @@ var FileSink = class extends UniffiAbstractObject {
6657
6744
  this[destructorGuardSymbol] = uniffiTypeFileSinkObjectFactory.bless(pointer);
6658
6745
  }
6659
6746
  /**
6660
- * Create `path`, or truncate it if it is already there. What `embed` wants: it composes a
6661
- * whole asset, so the sink starts empty and grows.
6747
+ * Create `path`, or truncate it if it is already there. What a `sign` output wants: the
6748
+ * signed asset is written into it whole.
6662
6749
  *
6663
6750
  * # Errors
6664
6751
  *
@@ -6670,9 +6757,9 @@ var FileSink = class extends UniffiAbstractObject {
6670
6757
  }, FfiConverterString.lift.bind(FfiConverterString)));
6671
6758
  }
6672
6759
  /**
6673
- * Open an existing `path` for reading and writing, keeping what is in it. What a fixed-slot
6674
- * patch wants: the asset is already there and only its reserved range changes, so truncating
6675
- * it would destroy the very thing being signed.
6760
+ * Open an existing `path` for reading and writing, keeping what is in it. What `embed` wants:
6761
+ * the asset is already there and the manifest is written into it, so truncating it would
6762
+ * destroy the very thing being signed.
6676
6763
  *
6677
6764
  * # Errors
6678
6765
  *
@@ -6905,188 +6992,8 @@ const uniffiTypeFileSourceObjectFactory = (() => {
6905
6992
  })();
6906
6993
  const FfiConverterTypeFileSource = new FfiConverterObject(uniffiTypeFileSourceObjectFactory);
6907
6994
  /**
6908
- * A binding you already hold, such as an out-of-band video ISCC. Reads nothing.
6909
- */
6910
- var HeldBinder = class extends UniffiAbstractObject {
6911
- [uniffiTypeNameSymbol] = "HeldBinder";
6912
- [destructorGuardSymbol];
6913
- [pointerLiteralSymbol];
6914
- /**
6915
- * # Errors
6916
- *
6917
- * A binding with an empty algorithm or value.
6918
- */
6919
- constructor(binding) {
6920
- super();
6921
- const pointer = uniffiCaller.rustCallWithError(FfiConverterTypeSdkError.lift.bind(FfiConverterTypeSdkError), (callStatus) => {
6922
- return getter().uniffi_trylimbo_sdk_issuer_fn_constructor_heldbinder_new(FfiConverterTypeSoftBinding.lower(binding, getter().rustbuffer_alloc), callStatus);
6923
- }, FfiConverterString.lift.bind(FfiConverterString));
6924
- this[pointerLiteralSymbol] = pointer;
6925
- this[destructorGuardSymbol] = uniffiTypeHeldBinderObjectFactory.bless(pointer);
6926
- }
6927
- async derive(source, options, asyncOpts_) {
6928
- const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
6929
- try {
6930
- return await uniffiRustCallAsync(uniffiCaller, () => {
6931
- return getter().uniffi_trylimbo_sdk_issuer_fn_method_heldbinder_derive(uniffiTypeHeldBinderObjectFactory.clonePointer(this), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterTypeDeriveOptions.lower(options, getter().rustbuffer_alloc));
6932
- }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
6933
- try {
6934
- return FfiConverterOptionalTypeSoftBinding.lift(__rb);
6935
- } finally {
6936
- getter().rustbuffer_free(__rb);
6937
- }
6938
- }, FfiConverterString.lift.bind(FfiConverterString), asyncOpts_, FfiConverterTypeSdkError.lift.bind(FfiConverterTypeSdkError));
6939
- } catch (__error) {
6940
- if (uniffiIsDebug && __error instanceof Error) __error.stack = __stack;
6941
- throw __error;
6942
- }
6943
- }
6944
- uniffiDestroy() {
6945
- const ptr = this[destructorGuardSymbol];
6946
- if (ptr !== void 0) {
6947
- const pointer = uniffiTypeHeldBinderObjectFactory.pointer(this);
6948
- uniffiTypeHeldBinderObjectFactory.freePointer(pointer);
6949
- uniffiTypeHeldBinderObjectFactory.unbless(ptr);
6950
- delete this[destructorGuardSymbol];
6951
- }
6952
- }
6953
- static instanceOf(obj_) {
6954
- return uniffiTypeHeldBinderObjectFactory.isConcreteType(obj_);
6955
- }
6956
- };
6957
- const uniffiTypeHeldBinderObjectFactory = (() => {
6958
- const registry = typeof FinalizationRegistry !== "undefined" ? new FinalizationRegistry((heldValue) => {
6959
- uniffiTypeHeldBinderObjectFactory.freePointer(heldValue);
6960
- }) : null;
6961
- return {
6962
- create(pointer) {
6963
- const instance = Object.create(HeldBinder.prototype);
6964
- instance[pointerLiteralSymbol] = pointer;
6965
- instance[destructorGuardSymbol] = this.bless(pointer);
6966
- instance[uniffiTypeNameSymbol] = "HeldBinder";
6967
- return instance;
6968
- },
6969
- bless(p) {
6970
- const ptr = {
6971
- p,
6972
- markDestroyed: () => void 0
6973
- };
6974
- if (registry) registry.register(ptr, p, ptr);
6975
- return ptr;
6976
- },
6977
- unbless(ptr_) {
6978
- if (registry) registry.unregister(ptr_);
6979
- },
6980
- pointer(obj_) {
6981
- if (obj_[destructorGuardSymbol] === void 0) throw new UniffiInternalError.UnexpectedNullPointer();
6982
- return obj_[pointerLiteralSymbol];
6983
- },
6984
- clonePointer(obj_) {
6985
- const pointer = this.pointer(obj_);
6986
- return uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_clone_heldbinder(pointer, callStatus), FfiConverterString.lift);
6987
- },
6988
- freePointer(pointer) {
6989
- uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_free_heldbinder(pointer, callStatus), FfiConverterString.lift);
6990
- },
6991
- isConcreteType(obj_) {
6992
- return obj_[destructorGuardSymbol] && obj_[uniffiTypeNameSymbol] === "HeldBinder";
6993
- }
6994
- };
6995
- })();
6996
- const FfiConverterTypeHeldBinder = new FfiConverterObject(uniffiTypeHeldBinderObjectFactory);
6997
- /**
6998
- * Local ISCC Image-Code for supported image formats.
6999
- */
7000
- var IsccBinder = class extends UniffiAbstractObject {
7001
- [uniffiTypeNameSymbol] = "IsccBinder";
7002
- [destructorGuardSymbol];
7003
- [pointerLiteralSymbol];
7004
- constructor() {
7005
- super();
7006
- const pointer = uniffiCaller.rustCall((callStatus) => {
7007
- return getter().uniffi_trylimbo_sdk_issuer_fn_constructor_isccbinder_new(callStatus);
7008
- }, FfiConverterString.lift.bind(FfiConverterString));
7009
- this[pointerLiteralSymbol] = pointer;
7010
- this[destructorGuardSymbol] = uniffiTypeIsccBinderObjectFactory.bless(pointer);
7011
- }
7012
- async derive(source, options, asyncOpts_) {
7013
- const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
7014
- try {
7015
- return await uniffiRustCallAsync(uniffiCaller, () => {
7016
- return getter().uniffi_trylimbo_sdk_issuer_fn_method_isccbinder_derive(uniffiTypeIsccBinderObjectFactory.clonePointer(this), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterTypeDeriveOptions.lower(options, getter().rustbuffer_alloc));
7017
- }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
7018
- try {
7019
- return FfiConverterOptionalTypeSoftBinding.lift(__rb);
7020
- } finally {
7021
- getter().rustbuffer_free(__rb);
7022
- }
7023
- }, FfiConverterString.lift.bind(FfiConverterString), asyncOpts_, FfiConverterTypeSdkError.lift.bind(FfiConverterTypeSdkError));
7024
- } catch (__error) {
7025
- if (uniffiIsDebug && __error instanceof Error) __error.stack = __stack;
7026
- throw __error;
7027
- }
7028
- }
7029
- uniffiDestroy() {
7030
- const ptr = this[destructorGuardSymbol];
7031
- if (ptr !== void 0) {
7032
- const pointer = uniffiTypeIsccBinderObjectFactory.pointer(this);
7033
- uniffiTypeIsccBinderObjectFactory.freePointer(pointer);
7034
- uniffiTypeIsccBinderObjectFactory.unbless(ptr);
7035
- delete this[destructorGuardSymbol];
7036
- }
7037
- }
7038
- static instanceOf(obj_) {
7039
- return uniffiTypeIsccBinderObjectFactory.isConcreteType(obj_);
7040
- }
7041
- };
7042
- const uniffiTypeIsccBinderObjectFactory = (() => {
7043
- const registry = typeof FinalizationRegistry !== "undefined" ? new FinalizationRegistry((heldValue) => {
7044
- uniffiTypeIsccBinderObjectFactory.freePointer(heldValue);
7045
- }) : null;
7046
- return {
7047
- create(pointer) {
7048
- const instance = Object.create(IsccBinder.prototype);
7049
- instance[pointerLiteralSymbol] = pointer;
7050
- instance[destructorGuardSymbol] = this.bless(pointer);
7051
- instance[uniffiTypeNameSymbol] = "IsccBinder";
7052
- return instance;
7053
- },
7054
- bless(p) {
7055
- const ptr = {
7056
- p,
7057
- markDestroyed: () => void 0
7058
- };
7059
- if (registry) registry.register(ptr, p, ptr);
7060
- return ptr;
7061
- },
7062
- unbless(ptr_) {
7063
- if (registry) registry.unregister(ptr_);
7064
- },
7065
- pointer(obj_) {
7066
- if (obj_[destructorGuardSymbol] === void 0) throw new UniffiInternalError.UnexpectedNullPointer();
7067
- return obj_[pointerLiteralSymbol];
7068
- },
7069
- clonePointer(obj_) {
7070
- const pointer = this.pointer(obj_);
7071
- return uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_clone_isccbinder(pointer, callStatus), FfiConverterString.lift);
7072
- },
7073
- freePointer(pointer) {
7074
- uniffiCaller.rustCall((callStatus) => getter().uniffi_trylimbo_sdk_issuer_fn_free_isccbinder(pointer, callStatus), FfiConverterString.lift);
7075
- },
7076
- isConcreteType(obj_) {
7077
- return obj_[destructorGuardSymbol] && obj_[uniffiTypeNameSymbol] === "IsccBinder";
7078
- }
7079
- };
7080
- })();
7081
- const FfiConverterTypeIsccBinder = new FfiConverterObject(uniffiTypeIsccBinderObjectFactory);
7082
- /**
7083
- * An in-memory [`RangeSink`], for a caller that wants `embed`'s composed result back
7084
- * without writing a custom sink. A **native** implementation of a `with_foreign`
7085
- * interface (`#[uniffi::export]` on the trait impl, not the foreign callback path), so
7086
- * a Python caller writes no subclass: `sink = MemorySink(data)`, pass it to `embed`,
7087
- * then read `sink.bytes()` back. `&self`-only methods need interior mutability, so the
7088
- * buffer is `Mutex`-guarded (contention is a non-issue: the SDK calls it from one task
7089
- * at a time per sink).
6995
+ * An in-memory [`RangeSink`] for a caller that wants `embed`'s composed result back:
6996
+ * `sink = MemorySink(data)`, pass it to `embed`, then read `sink.bytes()`.
7090
6997
  *
7091
6998
  * # Size ceiling
7092
6999
  *
@@ -7098,9 +7005,8 @@ const FfiConverterTypeIsccBinder = new FfiConverterObject(uniffiTypeIsccBinderOb
7098
7005
  * [`RangeSink`] over a file (or any store that seeks) for anything approaching that: the SDK
7099
7006
  * writes ranges straight through it and never holds the asset.
7100
7007
  *
7101
- * Construction and `bytes()` each copy the whole asset, on the calling thread: together with a
7102
- * `MemorySource` over the same asset that is about 12ms for 10 MB and 1.2s for 500 MB. A ranged
7103
- * sink pays none of it.
7008
+ * Construction and `bytes()` each move the whole asset across the boundary once, on the calling
7009
+ * thread. A ranged sink pays neither.
7104
7010
  */
7105
7011
  var MemorySink = class extends UniffiAbstractObject {
7106
7012
  [uniffiTypeNameSymbol] = "MemorySink";
@@ -7241,11 +7147,8 @@ const uniffiTypeMemorySinkObjectFactory = (() => {
7241
7147
  })();
7242
7148
  const FfiConverterTypeMemorySink = new FfiConverterObject(uniffiTypeMemorySinkObjectFactory);
7243
7149
  /**
7244
- * An in-memory [`RangeSource`], for a caller that already holds the whole asset as
7245
- * bytes and doesn't want to write a custom source. A **native** implementation of a
7246
- * `with_foreign` interface (`#[uniffi::export]` on the trait impl, not the foreign
7247
- * callback path), so the generated binding is a plain constructible object and a Python
7248
- * caller writes no subclass at all: `MemorySource(data)`.
7150
+ * An in-memory [`RangeSource`] for a caller that already holds the whole asset as bytes:
7151
+ * `MemorySource(data)`, no subclass.
7249
7152
  *
7250
7153
  * # Size ceiling
7251
7154
  *
@@ -7255,9 +7158,10 @@ const FfiConverterTypeMemorySink = new FfiConverterObject(uniffiTypeMemorySinkOb
7255
7158
  * [`RangeSource`] over a file handle for anything approaching that: the SDK only ever asks for
7256
7159
  * bounded ranges, so nothing else has to hold the asset.
7257
7160
  *
7258
- * Construction copies the whole asset across the boundary, on the calling thread: about 5ms for
7259
- * 10 MB, 315ms for 500 MB. That is the one part of a sign or verify the SDK cannot move off your
7260
- * thread, and neither a ranged source nor [`FileSource`] pays it.
7161
+ * Construction moves the whole asset across the boundary once, on the calling thread; the SDK
7162
+ * then holds what arrived and answers every read as a window into it. That crossing is the one
7163
+ * part of a sign or verify the SDK cannot move off your thread, and neither a ranged source nor
7164
+ * [`FileSource`] pays it.
7261
7165
  */
7262
7166
  var MemorySource = class extends UniffiAbstractObject {
7263
7167
  [uniffiTypeNameSymbol] = "MemorySource";
@@ -7379,7 +7283,7 @@ var SignerClient = class extends UniffiAbstractObject {
7379
7283
  * `options` is malformed. The channel connects lazily, so an unreachable Signer
7380
7284
  * surfaces on the first sign RPC instead.
7381
7285
  */
7382
- static async connect(endpoint, options, asyncOpts_) {
7286
+ static async connect(endpoint, options = ConnectOptions.create({}), asyncOpts_) {
7383
7287
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
7384
7288
  try {
7385
7289
  return await uniffiRustCallAsync(uniffiCaller, () => {
@@ -7444,7 +7348,7 @@ const uniffiTypeSignerClientObjectFactory = (() => {
7444
7348
  })();
7445
7349
  const FfiConverterTypeSignerClient = new FfiConverterObject(uniffiTypeSignerClientObjectFactory);
7446
7350
  /**
7447
- * A live-stream signer bound to a [`SignerClient`](super::client::SignerClient) and a
7351
+ * A stream signer bound to a [`SignerClient`](super::client::SignerClient) and a
7448
7352
  * [`SigningVault`]. Construct once with [`create`](Self::create), then `init` a session and
7449
7353
  * sign every segment through the [`StreamSession`] it returns.
7450
7354
  */
@@ -7466,22 +7370,21 @@ var StreamIssuer = class extends UniffiAbstractObject {
7466
7370
  }, FfiConverterString.lift.bind(FfiConverterString)));
7467
7371
  }
7468
7372
  /**
7469
- * Open the stream at `stream_id`: mint its first session key under
7470
- * `options.rotation_policy`, sign the init (moov) segment under `options.delivery`, and
7471
- * hand back a [`StreamSession`] to sign through.
7373
+ * Open the stream `id`: mint its first session key under `options.rotation_policy`, sign the
7374
+ * init (moov) segment `source` under `options.delivery`, and hand back a [`StreamSession`]
7375
+ * to sign through.
7472
7376
  *
7473
7377
  * On `rotation_due`, call [`StreamIssuer::rotate`], not this.
7474
7378
  *
7475
7379
  * # Errors
7476
7380
  *
7477
- * Fails on signer RPC failure, a vault error, or an `init_body` that isn't a BMFF init
7478
- * segment.
7381
+ * Fails on signer RPC failure, a vault error, or a `source` that isn't a BMFF init segment.
7479
7382
  */
7480
- async init(streamId, initBody, manifest, options, asyncOpts_) {
7383
+ async init(id, source, manifest, options, asyncOpts_) {
7481
7384
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
7482
7385
  try {
7483
7386
  return await uniffiRustCallAsync(uniffiCaller, () => {
7484
- return getter().uniffi_trylimbo_sdk_issuer_fn_method_streamissuer_init(uniffiTypeStreamIssuerObjectFactory.clonePointer(this), FfiConverterString.lower(streamId, getter().rustbuffer_alloc), FfiConverterTypeRangeSource.lower(initBody, getter().rustbuffer_alloc), FfiConverterTypeStreamManifestSpec.lower(manifest, getter().rustbuffer_alloc), FfiConverterTypeInitOptions.lower(options, getter().rustbuffer_alloc));
7387
+ return getter().uniffi_trylimbo_sdk_issuer_fn_method_streamissuer_init(uniffiTypeStreamIssuerObjectFactory.clonePointer(this), FfiConverterString.lower(id, getter().rustbuffer_alloc), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterTypeStreamManifestSpec.lower(manifest, getter().rustbuffer_alloc), FfiConverterTypeInitOptions.lower(options, getter().rustbuffer_alloc));
7485
7388
  }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
7486
7389
  try {
7487
7390
  return FfiConverterTypeStreamStart.lift(__rb);
@@ -7496,7 +7399,8 @@ var StreamIssuer = class extends UniffiAbstractObject {
7496
7399
  }
7497
7400
  /**
7498
7401
  * Succeed `session` on the stream it already names, signing a fresh init (moov) segment
7499
- * under a new key and forgetting the outgoing one.
7402
+ * under a new key and forgetting the outgoing one. Once this succeeds, `session` refuses to
7403
+ * sign; until then it keeps signing, so a failed rotation can be retried.
7500
7404
  *
7501
7405
  * The stream id comes from `session`, so a rotation cannot be pointed at the wrong stream,
7502
7406
  * and the retired key cannot be left behind: it would still sign for the rest of its
@@ -7504,13 +7408,14 @@ var StreamIssuer = class extends UniffiAbstractObject {
7504
7408
  *
7505
7409
  * # Errors
7506
7410
  *
7507
- * As [`StreamIssuer::init`].
7411
+ * As [`StreamIssuer::init`], plus `FAILED_PRECONDITION` (`SESSION_ENDED`) for a session
7412
+ * already stopped or rotated, or with a `stop` or `rotate` in flight.
7508
7413
  */
7509
- async rotate(session, initBody, manifest, options, asyncOpts_) {
7414
+ async rotate(session, source, manifest, options, asyncOpts_) {
7510
7415
  const __stack = uniffiIsDebug ? (/* @__PURE__ */ new Error()).stack : void 0;
7511
7416
  try {
7512
7417
  return await uniffiRustCallAsync(uniffiCaller, () => {
7513
- return getter().uniffi_trylimbo_sdk_issuer_fn_method_streamissuer_rotate(uniffiTypeStreamIssuerObjectFactory.clonePointer(this), FfiConverterTypeStreamSession.lower(session, getter().rustbuffer_alloc), FfiConverterTypeRangeSource.lower(initBody, getter().rustbuffer_alloc), FfiConverterTypeStreamManifestSpec.lower(manifest, getter().rustbuffer_alloc), FfiConverterTypeInitOptions.lower(options, getter().rustbuffer_alloc));
7418
+ return getter().uniffi_trylimbo_sdk_issuer_fn_method_streamissuer_rotate(uniffiTypeStreamIssuerObjectFactory.clonePointer(this), FfiConverterTypeStreamSession.lower(session, getter().rustbuffer_alloc), FfiConverterTypeRangeSource.lower(source, getter().rustbuffer_alloc), FfiConverterTypeStreamManifestSpec.lower(manifest, getter().rustbuffer_alloc), FfiConverterTypeInitOptions.lower(options, getter().rustbuffer_alloc));
7514
7419
  }, getter().ffi_trylimbo_sdk_issuer_rust_future_poll_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_cancel_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_complete_rust_buffer, getter().ffi_trylimbo_sdk_issuer_rust_future_free_rust_buffer, (__rb) => {
7515
7420
  try {
7516
7421
  return FfiConverterTypeStreamStart.lift(__rb);
@@ -7578,13 +7483,13 @@ const uniffiTypeStreamIssuerObjectFactory = (() => {
7578
7483
  const FfiConverterTypeStreamIssuer = new FfiConverterObject(uniffiTypeStreamIssuerObjectFactory);
7579
7484
  const uniffiCallbackInterfaceSigningVault = {
7580
7485
  vtable: {
7581
- mint: (uniffiHandle, validityPeriodSecs, uniffiFutureCallback, uniffiCallbackData) => {
7486
+ mint: (uniffiHandle, request, uniffiFutureCallback, uniffiCallbackData) => {
7582
7487
  const uniffiMakeCall = async (signal) => {
7583
- return await FfiConverterTypeSigningVault.lift(uniffiHandle).mint(FfiConverterUInt64.lift(validityPeriodSecs), { signal });
7488
+ return await FfiConverterTypeSigningVault.lift(uniffiHandle).mint(FfiConverterTypeMintRequest.lift(request), { signal });
7584
7489
  };
7585
7490
  const uniffiHandleSuccess = (returnValue) => {
7586
7491
  uniffiFutureCallback.call(uniffiFutureCallback, uniffiCallbackData, {
7587
- return_value: FfiConverterTypeVaultPublicKey.lower(returnValue, getter().rustbuffer_alloc),
7492
+ return_value: FfiConverterTypeSessionKey.lower(returnValue, getter().rustbuffer_alloc),
7588
7493
  call_status: uniffiCaller.createCallStatus()
7589
7494
  });
7590
7495
  };
@@ -7638,23 +7543,25 @@ const uniffiCallbackInterfaceSigningVault = {
7638
7543
  }
7639
7544
  };
7640
7545
  const FfiConverterTypeSigningVault = new FfiConverterCallback();
7641
- const FfiConverterOptionalTypeTimestamp = new FfiConverterOptional(FfiConverterTypeTimestamp);
7546
+ const FfiConverterOptionalTimestamp = new FfiConverterOptional(FfiConverterTimestamp);
7547
+ const FfiConverterOptionalTypeSoftwareAgent = new FfiConverterOptional(FfiConverterTypeSoftwareAgent);
7642
7548
  const FfiConverterOptionalString = new FfiConverterOptional(FfiConverterString);
7643
7549
  const FfiConverterOptionalTypeUrl = new FfiConverterOptional(FfiConverterTypeUrl);
7644
- const FfiConverterOptionalTypeActionDetail = new FfiConverterOptional(FfiConverterTypeActionDetail);
7645
7550
  const FfiConverterMapStringString = new FfiConverterMap(FfiConverterString, FfiConverterString);
7646
7551
  const FfiConverterSequenceTypeFieldViolation = new FfiConverterArray(FfiConverterTypeFieldViolation);
7647
- const FfiConverterOptionalTypeThumbnail = new FfiConverterOptional(FfiConverterTypeThumbnail);
7648
7552
  const FfiConverterSequenceString = new FfiConverterArray(FfiConverterString);
7553
+ const FfiConverterOptionalTypeThumbnail = new FfiConverterOptional(FfiConverterTypeThumbnail);
7554
+ const FfiConverterOptionalTypeActionDetail = new FfiConverterOptional(FfiConverterTypeActionDetail);
7555
+ const FfiConverterOptionalTypeTimespan = new FfiConverterOptional(FfiConverterTypeTimespan);
7556
+ const FfiConverterSequenceTypeBlock = new FfiConverterArray(FfiConverterTypeBlock);
7649
7557
  const FfiConverterSequenceTypeAction = new FfiConverterArray(FfiConverterTypeAction);
7650
7558
  const FfiConverterSequenceTypeJsonValue = new FfiConverterArray(FfiConverterTypeJsonValue);
7651
7559
  const FfiConverterOptionalTypeIdentity = new FfiConverterOptional(FfiConverterTypeIdentity);
7652
7560
  const FfiConverterSequenceTypeAssertion = new FfiConverterArray(FfiConverterTypeAssertion);
7653
- const FfiConverterSequenceTypeComponent = new FfiConverterArray(FfiConverterTypeComponent);
7654
- const FfiConverterOptionalMapStringString = new FfiConverterOptional(FfiConverterMapStringString);
7655
- const FfiConverterOptionalTypeSoftBinding = new FfiConverterOptional(FfiConverterTypeSoftBinding);
7656
- const FfiConverterSequenceTypeBinder = new FfiConverterArray(FfiConverterTypeBinder);
7657
- const FfiConverterSequenceTypeRegion = new FfiConverterArray(FfiConverterTypeRegion);
7561
+ const FfiConverterMapStringTypeComponent = new FfiConverterMap(FfiConverterString, FfiConverterTypeComponent);
7562
+ const FfiConverterOptionalDuration = new FfiConverterOptional(FfiConverterDuration);
7563
+ const FfiConverterSequenceTypeSoftBindingSource = new FfiConverterArray(FfiConverterTypeSoftBindingSource);
7564
+ const FfiConverterSequenceTypeByteRange = new FfiConverterArray(FfiConverterTypeByteRange);
7658
7565
  const FfiConverterSequenceTypePluginAuthor = new FfiConverterArray(FfiConverterTypePluginAuthor);
7659
7566
  /**
7660
7567
  * This should be called before anything else.
@@ -7670,15 +7577,17 @@ function uniffiEnsureInitialized() {
7670
7577
  const bindingsContractVersion = 30;
7671
7578
  const scaffoldingContractVersion = getter().ffi_trylimbo_sdk_issuer_uniffi_contract_version();
7672
7579
  if (bindingsContractVersion !== scaffoldingContractVersion) throw new UniffiInternalError.ContractVersionMismatch(scaffoldingContractVersion, bindingsContractVersion);
7673
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_func_classify_segment() !== 34969) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_func_classify_segment");
7674
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_func_embed() !== 51357) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_func_embed");
7580
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_func_classify_segment() !== 38493) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_func_classify_segment");
7581
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_func_compute_soft_binding() !== 37972) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_func_compute_soft_binding");
7582
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_func_embed() !== 9865) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_func_embed");
7675
7583
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_assetissuer_create() !== 16073) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_assetissuer_create");
7676
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_assetissuer_sign() !== 7792) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_assetissuer_sign");
7584
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_assetissuer_sign() !== 30904) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_assetissuer_sign");
7677
7585
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_assetmarker_create() !== 41968) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_assetmarker_create");
7678
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_assetmarker_mark() !== 20563) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_assetmarker_mark");
7679
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_binder_derive() !== 34053) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_binder_derive");
7680
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_create() !== 64376) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_create");
7681
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_open() !== 23957) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_open");
7586
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_assetmarker_mark() !== 13493) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_assetmarker_mark");
7587
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_compute_alg() !== 35230) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_compute_alg");
7588
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_compute_compute() !== 21112) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_compute_compute");
7589
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_create() !== 38031) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_create");
7590
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_open() !== 5590) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_filesink_open");
7682
7591
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_filesink_length() !== 7317) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_filesink_length");
7683
7592
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_filesink_read_at() !== 17691) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_filesink_read_at");
7684
7593
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_filesink_set_length() !== 11187) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_filesink_set_length");
@@ -7686,10 +7595,6 @@ function uniffiEnsureInitialized() {
7686
7595
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_filesource_open() !== 55871) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_filesource_open");
7687
7596
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_filesource_length() !== 21779) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_filesource_length");
7688
7597
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_filesource_read_at() !== 16361) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_filesource_read_at");
7689
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_heldbinder_new() !== 3337) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_heldbinder_new");
7690
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_heldbinder_derive() !== 53022) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_heldbinder_derive");
7691
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_isccbinder_new() !== 37585) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_isccbinder_new");
7692
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_isccbinder_derive() !== 14860) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_isccbinder_derive");
7693
7598
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_memorysink_new() !== 24274) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_memorysink_new");
7694
7599
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_memorysink_bytes() !== 17480) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_memorysink_bytes");
7695
7600
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_memorysink_length() !== 47782) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_memorysink_length");
@@ -7705,14 +7610,14 @@ function uniffiEnsureInitialized() {
7705
7610
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_rangesink_set_length() !== 29967) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_rangesink_set_length");
7706
7611
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_rangesource_length() !== 47043) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_rangesource_length");
7707
7612
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_rangesource_read_at() !== 37877) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_rangesource_read_at");
7708
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_signerclient_connect() !== 46081) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_signerclient_connect");
7613
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_signerclient_connect() !== 43720) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_signerclient_connect");
7709
7614
  if (getter().uniffi_trylimbo_sdk_issuer_checksum_constructor_streamissuer_create() !== 59358) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_constructor_streamissuer_create");
7710
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_init() !== 26602) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_init");
7711
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_rotate() !== 23153) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_rotate");
7712
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_sign() !== 52745) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_sign");
7713
- if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_stop() !== 47039) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_stop");
7615
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_init() !== 53683) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_init");
7616
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_rotate() !== 34487) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamissuer_rotate");
7617
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_sign() !== 5858) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_sign");
7618
+ if (getter().uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_stop() !== 50071) throw new UniffiInternalError.ApiChecksumMismatch("uniffi_trylimbo_sdk_issuer_checksum_method_streamsession_stop");
7714
7619
  uniffiCallbackInterfaceRangeSource.register();
7715
- uniffiCallbackInterfaceBinder.register();
7620
+ uniffiCallbackInterfaceCompute.register();
7716
7621
  uniffiCallbackInterfaceRangeSink.register();
7717
7622
  uniffiCallbackInterfacePluginAuthor.register();
7718
7623
  uniffiCallbackInterfaceSigningVault.register();
@@ -7725,60 +7630,62 @@ var trylimbo_issuer_default = Object.freeze({
7725
7630
  FfiConverterTypeActionKind,
7726
7631
  FfiConverterTypeAssertion,
7727
7632
  FfiConverterTypeAssetDelivery,
7728
- FfiConverterTypeAssetFormat,
7729
7633
  FfiConverterTypeAssetIssuer,
7730
7634
  FfiConverterTypeAssetManifestSpec,
7731
7635
  FfiConverterTypeAssetMarker,
7732
7636
  FfiConverterTypeAssetOrigin,
7733
- FfiConverterTypeBinder,
7637
+ FfiConverterTypeBlock,
7638
+ FfiConverterTypeByteRange,
7734
7639
  FfiConverterTypeCode,
7735
7640
  FfiConverterTypeComponent,
7736
7641
  FfiConverterTypeComponentEvent,
7642
+ FfiConverterTypeCompute,
7643
+ FfiConverterTypeComputeRequest,
7737
7644
  FfiConverterTypeConnectOptions,
7738
7645
  FfiConverterTypeCreatedOrigin,
7739
7646
  FfiConverterTypeCustomAction,
7740
- FfiConverterTypeDeriveOptions,
7741
7647
  FfiConverterTypeEmbedOptions,
7742
7648
  FfiConverterTypeFieldViolation,
7743
7649
  FfiConverterTypeFileSink,
7744
7650
  FfiConverterTypeFileSource,
7745
- FfiConverterTypeHeldBinder,
7746
7651
  FfiConverterTypeIdentity,
7747
7652
  FfiConverterTypeIngredient,
7748
- FfiConverterTypeIngredientSource,
7653
+ FfiConverterTypeIngredientKind,
7749
7654
  FfiConverterTypeInitOptions,
7750
7655
  FfiConverterTypeInitOutcome,
7751
- FfiConverterTypeIsccBinder,
7752
7656
  FfiConverterTypeJsonObject,
7753
7657
  FfiConverterTypeJsonValue,
7754
7658
  FfiConverterTypeMarkOptions,
7755
7659
  FfiConverterTypeMarkOutcome,
7756
7660
  FfiConverterTypeMemorySink,
7757
7661
  FfiConverterTypeMemorySource,
7662
+ FfiConverterTypeMintRequest,
7758
7663
  FfiConverterTypeOpenedOrigin,
7759
- FfiConverterTypeOrigin,
7760
7664
  FfiConverterTypeRangeSink,
7761
7665
  FfiConverterTypeRangeSource,
7762
- FfiConverterTypeRegion,
7763
7666
  FfiConverterTypeRotationPolicy,
7667
+ FfiConverterTypeScope,
7764
7668
  FfiConverterTypeSdkError,
7765
7669
  FfiConverterTypeSegmentKind,
7766
7670
  FfiConverterTypeSegmentOutcome,
7671
+ FfiConverterTypeSessionKey,
7767
7672
  FfiConverterTypeSignOptions,
7768
7673
  FfiConverterTypeSignOutcome,
7769
7674
  FfiConverterTypeSignOutput,
7770
7675
  FfiConverterTypeSignerClient,
7771
7676
  FfiConverterTypeSoftBinding,
7677
+ FfiConverterTypeSoftBindingSource,
7678
+ FfiConverterTypeSoftwareAgent,
7772
7679
  FfiConverterTypeStandardAction,
7773
7680
  FfiConverterTypeStreamDelivery,
7774
7681
  FfiConverterTypeStreamIssuer,
7775
7682
  FfiConverterTypeStreamManifestSpec,
7683
+ FfiConverterTypeStreamOrigin,
7776
7684
  FfiConverterTypeStreamSession,
7777
7685
  FfiConverterTypeStreamStart,
7778
7686
  FfiConverterTypeThumbnail,
7779
- FfiConverterTypeTimestamp,
7780
- FfiConverterTypeUrl,
7781
- FfiConverterTypeVaultPublicKey
7687
+ FfiConverterTypeTimespan,
7688
+ FfiConverterTypeUrl
7782
7689
  }
7783
7690
  });
7784
7691
  //#endregion
@@ -7791,4 +7698,4 @@ if (!initialized) {
7791
7698
  async function uniffiInitAsync() {}
7792
7699
  var ffi_trylimbo_sdk_issuer_default = { trylimbo_issuer: trylimbo_issuer_exports };
7793
7700
  //#endregion
7794
- export { Action, ActionDetail, ActionKind, ActionKind_Tags, Action_Tags, Assertion, AssetDelivery, AssetDelivery_Tags, AssetFormat, AssetFormat_Tags, AssetIssuer, AssetManifestSpec, AssetMarker, AssetOrigin, AssetOrigin_Tags, BinderImpl, Code, Component, ComponentEvent, ComponentEvent_Tags, ConnectOptions, CreatedOrigin, CustomAction, DeriveOptions, EmbedOptions, FieldViolation, FileSink, FileSource, HeldBinder, Identity, Ingredient, IngredientSource, IngredientSource_Tags, InitOptions, InitOutcome, IsccBinder, MarkOptions, MarkOutcome, MemorySink, MemorySource, OpenedOrigin, Origin, Origin_Tags, RangeSinkImpl, RangeSourceImpl, Region, RotationPolicy, SdkError, SdkError_Tags, SegmentKind, SegmentOutcome, SignOptions, SignOutcome, SignOutput, SignOutput_Tags, SignerClient, SoftBinding, StandardAction, StreamDelivery, StreamDelivery_Tags, StreamIssuer, StreamManifestSpec, StreamSession, StreamStart, Thumbnail, VaultPublicKey, classifySegment, ffi_trylimbo_sdk_issuer_default as default, embed, uniffiInitAsync };
7701
+ export { Action, ActionDetail, ActionKind, ActionKind_Tags, Action_Tags, Assertion, AssetDelivery, AssetDelivery_Tags, AssetIssuer, AssetManifestSpec, AssetMarker, AssetOrigin, AssetOrigin_Tags, Block, ByteRange, Code, Component, ComponentEvent, ComponentEvent_Tags, ComputeImpl, ComputeRequest, ConnectOptions, CreatedOrigin, CustomAction, EmbedOptions, FieldViolation, FileSink, FileSource, Identity, Ingredient, IngredientKind, IngredientKind_Tags, InitOptions, InitOutcome, MarkOptions, MarkOutcome, MemorySink, MemorySource, MintRequest, OpenedOrigin, RangeSinkImpl, RangeSourceImpl, RotationPolicy, Scope, SdkError, SdkError_Tags, SegmentKind, SegmentOutcome, SessionKey, SignOptions, SignOutcome, SignOutput, SignOutput_Tags, SignerClient, SoftBinding, SoftBindingSource, SoftBindingSource_Tags, SoftwareAgent, StandardAction, StreamDelivery, StreamIssuer, StreamManifestSpec, StreamOrigin, StreamOrigin_Tags, StreamSession, StreamStart, Thumbnail, Timespan, classifySegment, computeSoftBinding, ffi_trylimbo_sdk_issuer_default as default, embed, uniffiInitAsync };