@trylimbo/sdk-issuer 0.2.25 → 0.3.0-canary.41
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.d.ts +675 -733
- package/gen/ffi/index.js +907 -902
- package/gen/grpc/buf/validate/validate_pb.d.ts +30 -24
- package/gen/grpc/buf/validate/validate_pb.js +2 -2
- package/gen/grpc/trylimbo/signer/v2/signer_pb.d.ts +829 -764
- package/gen/grpc/trylimbo/signer/v2/signer_pb.js +214 -182
- package/package.json +3 -3
- package/gen/grpc/trylimbo/version/v1/version_pb.d.ts +0 -59
- package/gen/grpc/trylimbo/version/v1/version_pb.js +0 -32
package/gen/ffi/index.d.ts
CHANGED
|
@@ -181,13 +181,12 @@ declare const pointerLiteralSymbol: unique symbol;
|
|
|
181
181
|
*/
|
|
182
182
|
declare const uniffiTypeNameSymbol: unique symbol;
|
|
183
183
|
declare namespace trylimbo_issuer_d_exports {
|
|
184
|
-
export { Action, ActionDetail, ActionKind, ActionKind_Tags, Action_Tags, Assertion, AssetDelivery, AssetDelivery_Tags,
|
|
184
|
+
export { Action, ActionDetail, ActionKind, ActionKind_Tags, Action_Tags, Assertion, AssetDelivery, AssetDelivery_Tags, AssetIssuer, AssetIssuerInterface, AssetIssuerLike, AssetManifestSpec, AssetMarker, AssetMarkerInterface, AssetMarkerLike, AssetOrigin, AssetOrigin_Tags, Block, ByteRange, Code, Component, ComponentEvent, ComponentEvent_Tags, Compute, ComputeImpl, ComputeRequest, ConnectOptions, CreatedOrigin, CustomAction, EmbedOptions, FieldViolation, FileSink, FileSinkInterface, FileSinkLike, FileSource, FileSourceInterface, FileSourceLike, Identity, Ingredient, IngredientKind, IngredientKind_Tags, InitOptions, InitOutcome, JsonObject, JsonValue, MarkOptions, MarkOutcome, MemorySink, MemorySinkInterface, MemorySinkLike, MemorySource, MemorySourceInterface, MemorySourceLike, MintRequest, OpenedOrigin, PluginAuthor, RangeSink, RangeSinkImpl, RangeSource, RangeSourceImpl, RotationPolicy, Scope, SdkError, SdkError_Tags, SegmentKind, SegmentOutcome, SessionKey, SignOptions, SignOutcome, SignOutput, SignOutput_Tags, SignerClient, SignerClientInterface, SignerClientLike, SigningVault, SoftBinding, SoftBindingSource, SoftBindingSource_Tags, SoftwareAgent, StandardAction, StreamDelivery, StreamIssuer, StreamIssuerInterface, StreamIssuerLike, StreamManifestSpec, StreamOrigin, StreamOrigin_Tags, StreamSession, StreamSessionInterface, StreamSessionLike, StreamStart, Thumbnail, Timespan, Url, classifySegment, computeSoftBinding, _default$1 as default, embed };
|
|
185
185
|
}
|
|
186
186
|
/**
|
|
187
|
-
* Classify a fragmented-MP4 segment
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
* [`StreamSession::sign`](stream::StreamSession::sign) without hand-parsing ISOBMFF itself.
|
|
187
|
+
* Classify a fragmented-MP4 segment as init, media or unknown (`moov` vs `moof`), so a streaming
|
|
188
|
+
* consumer routes each segment to `StreamIssuer.init` or `StreamSession.sign` without parsing
|
|
189
|
+
* ISOBMFF itself.
|
|
191
190
|
*
|
|
192
191
|
* Async because it reads, and reading is the caller's storage: the two windows below may each
|
|
193
192
|
* be a round trip. It stays off the island, uniquely among the read-path entry points, because
|
|
@@ -202,22 +201,22 @@ export declare function classifySegment(source: RangeSource, asyncOpts_?: {
|
|
|
202
201
|
signal: AbortSignal;
|
|
203
202
|
}): Promise<SegmentKind>;
|
|
204
203
|
/**
|
|
205
|
-
*
|
|
206
|
-
*
|
|
207
|
-
* order, resolved the same way [`AssetIssuer::sign`](asset::AssetIssuer::sign) resolves
|
|
208
|
-
* them, per [the `plugins` contract](crate::asset#the-plugins-contract): the write lands on a
|
|
209
|
-
* bounded region for a plugin match, on the whole (small) asset otherwise; an empty list is
|
|
210
|
-
* a c2pa-native embed. `format` overrides the sniffed format. Pure local byte-wrangling: no
|
|
211
|
-
* signer round-trip.
|
|
204
|
+
* The values this SDK computes for `alg` over an asset, `[]` when it finds none. `format` is
|
|
205
|
+
* the asset's media type; omitted, the bytes name it.
|
|
212
206
|
*
|
|
213
|
-
* #
|
|
207
|
+
* # Errors
|
|
214
208
|
*
|
|
215
|
-
*
|
|
216
|
-
*
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
209
|
+
* An algorithm this SDK computes no value of, a `format` that is no media type or that the bytes
|
|
210
|
+
* contradict, an unreadable source, or no trustworthy answer.
|
|
211
|
+
*/
|
|
212
|
+
export declare function computeSoftBinding(alg: string, source: RangeSource, format?: string | undefined, asyncOpts_?: {
|
|
213
|
+
signal: AbortSignal;
|
|
214
|
+
}): Promise<Array<Block>>;
|
|
215
|
+
/**
|
|
216
|
+
* Embed `sidecar`, the signed manifest a sign returned, into the asset `sink` holds, writing the
|
|
217
|
+
* composed result back through `sink`.
|
|
218
|
+
* `plugins` resolve a caller-written format as `AssetIssuer.sign` resolves them; none is a
|
|
219
|
+
* c2pa-native embed. No signer round trip.
|
|
221
220
|
*
|
|
222
221
|
* # Errors
|
|
223
222
|
*
|
|
@@ -225,31 +224,37 @@ export declare function classifySegment(source: RangeSource, asyncOpts_?: {
|
|
|
225
224
|
* authoring/`locate` disagrees after the write, or the c2pa handler can't
|
|
226
225
|
* parse/splice the asset.
|
|
227
226
|
*/
|
|
228
|
-
export declare function embed(sink: RangeSink,
|
|
227
|
+
export declare function embed(sink: RangeSink, sidecar: ArrayBuffer, options: EmbedOptions, plugins?: Array<PluginAuthor>, asyncOpts_?: {
|
|
229
228
|
signal: AbortSignal;
|
|
230
229
|
}): Promise<void>;
|
|
231
230
|
/**
|
|
232
|
-
*
|
|
233
|
-
* is needed because the UDL type name is used in function/method signatures.
|
|
231
|
+
* The tool that performed an action (a C2PA `generator-info-map`).
|
|
234
232
|
*/
|
|
235
|
-
export type
|
|
233
|
+
export type SoftwareAgent = {
|
|
234
|
+
name: string;
|
|
235
|
+
};
|
|
236
|
+
/**
|
|
237
|
+
* Generated factory for {@link SoftwareAgent} record objects.
|
|
238
|
+
*/
|
|
239
|
+
export declare const SoftwareAgent: Readonly<{
|
|
240
|
+
create: (partial: Partial<SoftwareAgent> & Required<Omit<SoftwareAgent, never>>) => SoftwareAgent;
|
|
241
|
+
new: (partial: Partial<SoftwareAgent> & Required<Omit<SoftwareAgent, never>>) => SoftwareAgent;
|
|
242
|
+
defaults: () => Partial<SoftwareAgent>;
|
|
243
|
+
}>;
|
|
236
244
|
/**
|
|
237
245
|
* Typealias from the type name used in the UDL file to the builtin type. This
|
|
238
246
|
* is needed because the UDL type name is used in function/method signatures.
|
|
239
247
|
*/
|
|
240
248
|
export type Url = string;
|
|
241
249
|
/**
|
|
242
|
-
*
|
|
250
|
+
* Facts recorded on an action.
|
|
243
251
|
*/
|
|
244
252
|
export type ActionDetail = {
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
*/
|
|
248
|
-
when?: Timestamp;
|
|
249
|
-
softwareAgent?: string;
|
|
253
|
+
when?: Date;
|
|
254
|
+
softwareAgent?: SoftwareAgent;
|
|
250
255
|
description?: string;
|
|
251
256
|
/**
|
|
252
|
-
* The URI
|
|
257
|
+
* The URI of an IPTC or C2PA term, e.g.
|
|
253
258
|
* `http://cv.iptc.org/newscodes/digitalsourcetype/digitalCapture`.
|
|
254
259
|
*/
|
|
255
260
|
sourceType?: Url;
|
|
@@ -287,30 +292,28 @@ export declare const Assertion: Readonly<{
|
|
|
287
292
|
defaults: () => Partial<Assertion>;
|
|
288
293
|
}>;
|
|
289
294
|
/**
|
|
290
|
-
* The asset is an original; the signer derives `c2pa.created
|
|
295
|
+
* The asset is an original; the signer derives `c2pa.created` from these facts.
|
|
291
296
|
*/
|
|
292
297
|
export type CreatedOrigin = {
|
|
293
298
|
/**
|
|
294
|
-
* The URI
|
|
299
|
+
* The URI of an IPTC or C2PA term, e.g.
|
|
295
300
|
* `http://cv.iptc.org/newscodes/digitalsourcetype/digitalCapture`.
|
|
296
301
|
*/
|
|
297
302
|
sourceType: Url;
|
|
298
|
-
|
|
303
|
+
when?: Date;
|
|
304
|
+
softwareAgent?: SoftwareAgent;
|
|
305
|
+
description?: string;
|
|
299
306
|
};
|
|
300
307
|
/**
|
|
301
308
|
* Generated factory for {@link CreatedOrigin} record objects.
|
|
302
309
|
*/
|
|
303
310
|
export declare const CreatedOrigin: Readonly<{
|
|
304
|
-
create: (partial: Partial<CreatedOrigin> & Required<Omit<CreatedOrigin, "
|
|
305
|
-
new: (partial: Partial<CreatedOrigin> & Required<Omit<CreatedOrigin, "
|
|
311
|
+
create: (partial: Partial<CreatedOrigin> & Required<Omit<CreatedOrigin, "description" | "softwareAgent" | "when">>) => CreatedOrigin;
|
|
312
|
+
new: (partial: Partial<CreatedOrigin> & Required<Omit<CreatedOrigin, "description" | "softwareAgent" | "when">>) => CreatedOrigin;
|
|
306
313
|
defaults: () => Partial<CreatedOrigin>;
|
|
307
314
|
}>;
|
|
308
315
|
/**
|
|
309
316
|
* A canonical gRPC/Connect status code: the coarse, closed failure class.
|
|
310
|
-
*
|
|
311
|
-
* The wasm lane projects this as a camelCase string like every other tagged value
|
|
312
|
-
* there, so a consumer narrows on `err.code === "resourceExhausted"`; the native lane
|
|
313
|
-
* projects an enum.
|
|
314
317
|
*/
|
|
315
318
|
export declare enum Code {
|
|
316
319
|
Canceled = 0,
|
|
@@ -335,7 +338,9 @@ export declare enum Code {
|
|
|
335
338
|
*/
|
|
336
339
|
export type FieldViolation = {
|
|
337
340
|
/**
|
|
338
|
-
*
|
|
341
|
+
* The offending field: rooted at the call's argument when an SDK refuses it
|
|
342
|
+
* (`options.soft_bindings[1].alg`), at the request when a service does
|
|
343
|
+
* (`provenance.actions[0].label`).
|
|
339
344
|
*/
|
|
340
345
|
field: string;
|
|
341
346
|
/**
|
|
@@ -343,7 +348,7 @@ export type FieldViolation = {
|
|
|
343
348
|
*/
|
|
344
349
|
description: string;
|
|
345
350
|
/**
|
|
346
|
-
* The
|
|
351
|
+
* The rule that failed, such as `string.min_len` or `alg.unlisted`: the stable branch key.
|
|
347
352
|
*/
|
|
348
353
|
reason: string;
|
|
349
354
|
};
|
|
@@ -754,122 +759,56 @@ export declare class RangeSourceImpl extends UniffiAbstractObject implements Ran
|
|
|
754
759
|
uniffiDestroy(): void;
|
|
755
760
|
static instanceOf(obj_: any): obj_ is RangeSourceImpl;
|
|
756
761
|
}
|
|
757
|
-
export declare enum
|
|
758
|
-
Sniff = "Sniff",
|
|
759
|
-
Declared = "Declared"
|
|
760
|
-
}
|
|
761
|
-
/**
|
|
762
|
-
* The format of the asset a call is handed. Stated, never defaulted: sniffing is a choice the
|
|
763
|
-
* caller makes by name, not what happens when they say nothing.
|
|
764
|
-
*/
|
|
765
|
-
export declare const AssetFormat: Readonly<{
|
|
766
|
-
instanceOf: (obj: any) => obj is AssetFormat;
|
|
767
|
-
Sniff: {
|
|
768
|
-
new (): {
|
|
769
|
-
/**
|
|
770
|
-
* @private
|
|
771
|
-
* This field is private and should not be used, use `tag` instead.
|
|
772
|
-
*/
|
|
773
|
-
readonly [uniffiTypeNameSymbol]: "AssetFormat";
|
|
774
|
-
readonly tag: AssetFormat_Tags.Sniff;
|
|
775
|
-
};
|
|
776
|
-
"new"(): {
|
|
777
|
-
/**
|
|
778
|
-
* @private
|
|
779
|
-
* This field is private and should not be used, use `tag` instead.
|
|
780
|
-
*/
|
|
781
|
-
readonly [uniffiTypeNameSymbol]: "AssetFormat";
|
|
782
|
-
readonly tag: AssetFormat_Tags.Sniff;
|
|
783
|
-
};
|
|
784
|
-
instanceOf(obj: any): obj is {
|
|
785
|
-
/**
|
|
786
|
-
* @private
|
|
787
|
-
* This field is private and should not be used, use `tag` instead.
|
|
788
|
-
*/
|
|
789
|
-
readonly [uniffiTypeNameSymbol]: "AssetFormat";
|
|
790
|
-
readonly tag: AssetFormat_Tags.Sniff;
|
|
791
|
-
};
|
|
792
|
-
};
|
|
793
|
-
Declared: {
|
|
794
|
-
new (inner: {
|
|
795
|
-
mediaType: string;
|
|
796
|
-
}): {
|
|
797
|
-
/**
|
|
798
|
-
* @private
|
|
799
|
-
* This field is private and should not be used, use `tag` instead.
|
|
800
|
-
*/
|
|
801
|
-
readonly [uniffiTypeNameSymbol]: "AssetFormat";
|
|
802
|
-
readonly tag: AssetFormat_Tags.Declared;
|
|
803
|
-
readonly inner: Readonly<{
|
|
804
|
-
mediaType: string;
|
|
805
|
-
}>;
|
|
806
|
-
};
|
|
807
|
-
"new"(inner: {
|
|
808
|
-
mediaType: string;
|
|
809
|
-
}): {
|
|
810
|
-
/**
|
|
811
|
-
* @private
|
|
812
|
-
* This field is private and should not be used, use `tag` instead.
|
|
813
|
-
*/
|
|
814
|
-
readonly [uniffiTypeNameSymbol]: "AssetFormat";
|
|
815
|
-
readonly tag: AssetFormat_Tags.Declared;
|
|
816
|
-
readonly inner: Readonly<{
|
|
817
|
-
mediaType: string;
|
|
818
|
-
}>;
|
|
819
|
-
};
|
|
820
|
-
instanceOf(obj: any): obj is {
|
|
821
|
-
/**
|
|
822
|
-
* @private
|
|
823
|
-
* This field is private and should not be used, use `tag` instead.
|
|
824
|
-
*/
|
|
825
|
-
readonly [uniffiTypeNameSymbol]: "AssetFormat";
|
|
826
|
-
readonly tag: AssetFormat_Tags.Declared;
|
|
827
|
-
readonly inner: Readonly<{
|
|
828
|
-
mediaType: string;
|
|
829
|
-
}>;
|
|
830
|
-
};
|
|
831
|
-
};
|
|
832
|
-
}>;
|
|
833
|
-
/**
|
|
834
|
-
* The format of the asset a call is handed. Stated, never defaulted: sniffing is a choice the
|
|
835
|
-
* caller makes by name, not what happens when they say nothing.
|
|
836
|
-
*/
|
|
837
|
-
export type AssetFormat = InstanceType<typeof AssetFormat['Sniff' | 'Declared']>;
|
|
838
|
-
export declare enum IngredientSource_Tags {
|
|
762
|
+
export declare enum IngredientKind_Tags {
|
|
839
763
|
Asset = "Asset",
|
|
840
764
|
Descriptor = "Descriptor"
|
|
841
765
|
}
|
|
842
|
-
|
|
843
|
-
|
|
766
|
+
/**
|
|
767
|
+
* What an ingredient is: an asset whose manifest is read, or a description.
|
|
768
|
+
*/
|
|
769
|
+
export declare const IngredientKind: Readonly<{
|
|
770
|
+
instanceOf: (obj: any) => obj is IngredientKind;
|
|
844
771
|
Asset: {
|
|
845
772
|
new (inner: {
|
|
846
773
|
source: RangeSource;
|
|
847
|
-
format
|
|
774
|
+
format?: string;
|
|
775
|
+
discoveredBy: Array<string>;
|
|
848
776
|
}): {
|
|
849
777
|
/**
|
|
850
778
|
* @private
|
|
851
779
|
* This field is private and should not be used, use `tag` instead.
|
|
852
780
|
*/
|
|
853
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
854
|
-
readonly tag:
|
|
781
|
+
readonly [uniffiTypeNameSymbol]: "IngredientKind";
|
|
782
|
+
readonly tag: IngredientKind_Tags.Asset;
|
|
855
783
|
readonly inner: Readonly<{
|
|
856
784
|
source: RangeSource;
|
|
857
|
-
format
|
|
785
|
+
format?: string;
|
|
786
|
+
discoveredBy: Array<string>;
|
|
858
787
|
}>;
|
|
859
788
|
};
|
|
860
|
-
|
|
789
|
+
new: (partial: Parameters<(partial: Partial<{
|
|
861
790
|
source: RangeSource;
|
|
862
|
-
format
|
|
863
|
-
|
|
791
|
+
format?: string;
|
|
792
|
+
discoveredBy: Array<string>;
|
|
793
|
+
}> & Required<Omit<{
|
|
794
|
+
source: RangeSource;
|
|
795
|
+
format?: string;
|
|
796
|
+
discoveredBy: Array<string>;
|
|
797
|
+
}, "discoveredBy" | "format">>) => {
|
|
798
|
+
source: RangeSource;
|
|
799
|
+
format?: string;
|
|
800
|
+
discoveredBy: Array<string>;
|
|
801
|
+
}>[0]) => {
|
|
864
802
|
/**
|
|
865
803
|
* @private
|
|
866
804
|
* This field is private and should not be used, use `tag` instead.
|
|
867
805
|
*/
|
|
868
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
869
|
-
readonly tag:
|
|
806
|
+
readonly [uniffiTypeNameSymbol]: "IngredientKind";
|
|
807
|
+
readonly tag: IngredientKind_Tags.Asset;
|
|
870
808
|
readonly inner: Readonly<{
|
|
871
809
|
source: RangeSource;
|
|
872
|
-
format
|
|
810
|
+
format?: string;
|
|
811
|
+
discoveredBy: Array<string>;
|
|
873
812
|
}>;
|
|
874
813
|
};
|
|
875
814
|
instanceOf(obj: any): obj is {
|
|
@@ -877,43 +816,40 @@ export declare const IngredientSource: Readonly<{
|
|
|
877
816
|
* @private
|
|
878
817
|
* This field is private and should not be used, use `tag` instead.
|
|
879
818
|
*/
|
|
880
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
881
|
-
readonly tag:
|
|
819
|
+
readonly [uniffiTypeNameSymbol]: "IngredientKind";
|
|
820
|
+
readonly tag: IngredientKind_Tags.Asset;
|
|
882
821
|
readonly inner: Readonly<{
|
|
883
822
|
source: RangeSource;
|
|
884
|
-
format
|
|
823
|
+
format?: string;
|
|
824
|
+
discoveredBy: Array<string>;
|
|
885
825
|
}>;
|
|
886
826
|
};
|
|
887
827
|
};
|
|
888
828
|
Descriptor: {
|
|
889
829
|
new (inner: {
|
|
890
|
-
format
|
|
830
|
+
format: string;
|
|
891
831
|
}): {
|
|
892
832
|
/**
|
|
893
833
|
* @private
|
|
894
834
|
* This field is private and should not be used, use `tag` instead.
|
|
895
835
|
*/
|
|
896
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
897
|
-
readonly tag:
|
|
836
|
+
readonly [uniffiTypeNameSymbol]: "IngredientKind";
|
|
837
|
+
readonly tag: IngredientKind_Tags.Descriptor;
|
|
898
838
|
readonly inner: Readonly<{
|
|
899
|
-
format
|
|
839
|
+
format: string;
|
|
900
840
|
}>;
|
|
901
841
|
};
|
|
902
|
-
new
|
|
903
|
-
format
|
|
904
|
-
}
|
|
905
|
-
format?: string;
|
|
906
|
-
}, "format">>) => {
|
|
907
|
-
format?: string;
|
|
908
|
-
}>[0]) => {
|
|
842
|
+
"new"(inner: {
|
|
843
|
+
format: string;
|
|
844
|
+
}): {
|
|
909
845
|
/**
|
|
910
846
|
* @private
|
|
911
847
|
* This field is private and should not be used, use `tag` instead.
|
|
912
848
|
*/
|
|
913
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
914
|
-
readonly tag:
|
|
849
|
+
readonly [uniffiTypeNameSymbol]: "IngredientKind";
|
|
850
|
+
readonly tag: IngredientKind_Tags.Descriptor;
|
|
915
851
|
readonly inner: Readonly<{
|
|
916
|
-
format
|
|
852
|
+
format: string;
|
|
917
853
|
}>;
|
|
918
854
|
};
|
|
919
855
|
instanceOf(obj: any): obj is {
|
|
@@ -921,15 +857,18 @@ export declare const IngredientSource: Readonly<{
|
|
|
921
857
|
* @private
|
|
922
858
|
* This field is private and should not be used, use `tag` instead.
|
|
923
859
|
*/
|
|
924
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
925
|
-
readonly tag:
|
|
860
|
+
readonly [uniffiTypeNameSymbol]: "IngredientKind";
|
|
861
|
+
readonly tag: IngredientKind_Tags.Descriptor;
|
|
926
862
|
readonly inner: Readonly<{
|
|
927
|
-
format
|
|
863
|
+
format: string;
|
|
928
864
|
}>;
|
|
929
865
|
};
|
|
930
866
|
};
|
|
931
867
|
}>;
|
|
932
|
-
|
|
868
|
+
/**
|
|
869
|
+
* What an ingredient is: an asset whose manifest is read, or a description.
|
|
870
|
+
*/
|
|
871
|
+
export type IngredientKind = InstanceType<typeof IngredientKind['Asset' | 'Descriptor']>;
|
|
933
872
|
/**
|
|
934
873
|
* A pre-rendered thumbnail, attached to the manifest as its `c2pa.thumbnail.claim` resource or
|
|
935
874
|
* to an ingredient as its `c2pa.thumbnail.ingredient`. The split-signer has no asset bytes to
|
|
@@ -939,24 +878,23 @@ export type IngredientSource = InstanceType<typeof IngredientSource['Asset' | 'D
|
|
|
939
878
|
export type Thumbnail = {
|
|
940
879
|
data: ArrayBuffer;
|
|
941
880
|
/**
|
|
942
|
-
*
|
|
943
|
-
*
|
|
881
|
+
* Its media type, judged against `data` as an asset's is; `None` reads it from `data`.
|
|
882
|
+
* `image/jpeg` and `image/png` are the ones consumer verifiers render.
|
|
944
883
|
*/
|
|
945
|
-
format
|
|
884
|
+
format?: string;
|
|
946
885
|
};
|
|
947
886
|
/**
|
|
948
887
|
* Generated factory for {@link Thumbnail} record objects.
|
|
949
888
|
*/
|
|
950
889
|
export declare const Thumbnail: Readonly<{
|
|
951
|
-
create: (partial: Partial<Thumbnail> & Required<Omit<Thumbnail,
|
|
952
|
-
new: (partial: Partial<Thumbnail> & Required<Omit<Thumbnail,
|
|
890
|
+
create: (partial: Partial<Thumbnail> & Required<Omit<Thumbnail, "format">>) => Thumbnail;
|
|
891
|
+
new: (partial: Partial<Thumbnail> & Required<Omit<Thumbnail, "format">>) => Thumbnail;
|
|
953
892
|
defaults: () => Partial<Thumbnail>;
|
|
954
893
|
}>;
|
|
955
894
|
export type Ingredient = {
|
|
956
|
-
|
|
895
|
+
kind: IngredientKind;
|
|
957
896
|
title?: string;
|
|
958
897
|
thumbnail?: Thumbnail;
|
|
959
|
-
discoveredBy: Array<string>;
|
|
960
898
|
};
|
|
961
899
|
/**
|
|
962
900
|
* Generated factory for {@link Ingredient} record objects.
|
|
@@ -1094,15 +1032,15 @@ export type AssetOrigin = InstanceType<typeof AssetOrigin['Created' | 'Opened' |
|
|
|
1094
1032
|
*/
|
|
1095
1033
|
export type JsonObject = string;
|
|
1096
1034
|
/**
|
|
1097
|
-
* An entity-namespaced action
|
|
1098
|
-
*
|
|
1035
|
+
* An entity-namespaced action: a reverse-DNS `label` outside `c2pa.` and `cawg.`, which are
|
|
1036
|
+
* refused in any case. A C2PA action is a [`StandardAction`].
|
|
1099
1037
|
*/
|
|
1100
1038
|
export type CustomAction = {
|
|
1101
1039
|
label: string;
|
|
1102
|
-
|
|
1040
|
+
parameters: JsonObject;
|
|
1103
1041
|
detail?: ActionDetail;
|
|
1104
1042
|
/**
|
|
1105
|
-
* `
|
|
1043
|
+
* The `components` keys this action acted on.
|
|
1106
1044
|
*/
|
|
1107
1045
|
componentIds: Array<string>;
|
|
1108
1046
|
};
|
|
@@ -1110,13 +1048,62 @@ export type CustomAction = {
|
|
|
1110
1048
|
* Generated factory for {@link CustomAction} record objects.
|
|
1111
1049
|
*/
|
|
1112
1050
|
export declare const CustomAction: Readonly<{
|
|
1113
|
-
create: (partial: Partial<CustomAction> & Required<Omit<CustomAction, "detail">>) => CustomAction;
|
|
1114
|
-
new: (partial: Partial<CustomAction> & Required<Omit<CustomAction, "detail">>) => CustomAction;
|
|
1051
|
+
create: (partial: Partial<CustomAction> & Required<Omit<CustomAction, "componentIds" | "detail">>) => CustomAction;
|
|
1052
|
+
new: (partial: Partial<CustomAction> & Required<Omit<CustomAction, "componentIds" | "detail">>) => CustomAction;
|
|
1115
1053
|
defaults: () => Partial<CustomAction>;
|
|
1116
1054
|
}>;
|
|
1055
|
+
/**
|
|
1056
|
+
* A `soft-binding-timespan-map`: where the range starts in the media and how long it lasts, in
|
|
1057
|
+
* whole milliseconds.
|
|
1058
|
+
*/
|
|
1059
|
+
export type Timespan = {
|
|
1060
|
+
start: number;
|
|
1061
|
+
duration: number;
|
|
1062
|
+
};
|
|
1063
|
+
/**
|
|
1064
|
+
* Generated factory for {@link Timespan} record objects.
|
|
1065
|
+
*/
|
|
1066
|
+
export declare const Timespan: Readonly<{
|
|
1067
|
+
create: (partial: Partial<Timespan> & Required<Omit<Timespan, never>>) => Timespan;
|
|
1068
|
+
new: (partial: Partial<Timespan> & Required<Omit<Timespan, never>>) => Timespan;
|
|
1069
|
+
defaults: () => Partial<Timespan>;
|
|
1070
|
+
}>;
|
|
1071
|
+
/**
|
|
1072
|
+
* A `soft-binding-scope-map`: where in the content a value applies. Empty is the whole content.
|
|
1073
|
+
*/
|
|
1074
|
+
export type Scope = {
|
|
1075
|
+
timespan?: Timespan;
|
|
1076
|
+
};
|
|
1077
|
+
/**
|
|
1078
|
+
* Generated factory for {@link Scope} record objects.
|
|
1079
|
+
*/
|
|
1080
|
+
export declare const Scope: Readonly<{
|
|
1081
|
+
create: (partial: Partial<Scope> & Required<Omit<Scope, "timespan">>) => Scope;
|
|
1082
|
+
new: (partial: Partial<Scope> & Required<Omit<Scope, "timespan">>) => Scope;
|
|
1083
|
+
defaults: () => Partial<Scope>;
|
|
1084
|
+
}>;
|
|
1085
|
+
/**
|
|
1086
|
+
* A `soft-binding-block-map`.
|
|
1087
|
+
*/
|
|
1088
|
+
export type Block = {
|
|
1089
|
+
value: ArrayBuffer;
|
|
1090
|
+
scope: Scope;
|
|
1091
|
+
};
|
|
1092
|
+
/**
|
|
1093
|
+
* Generated factory for {@link Block} record objects.
|
|
1094
|
+
*/
|
|
1095
|
+
export declare const Block: Readonly<{
|
|
1096
|
+
create: (partial: Partial<Block> & Required<Omit<Block, "scope">>) => Block;
|
|
1097
|
+
new: (partial: Partial<Block> & Required<Omit<Block, "scope">>) => Block;
|
|
1098
|
+
defaults: () => Partial<Block>;
|
|
1099
|
+
}>;
|
|
1100
|
+
/**
|
|
1101
|
+
* One `c2pa.soft-binding` assertion (C2PA 2.4 18.10.3): a listed algorithm and its values, one
|
|
1102
|
+
* per block.
|
|
1103
|
+
*/
|
|
1117
1104
|
export type SoftBinding = {
|
|
1118
1105
|
alg: string;
|
|
1119
|
-
|
|
1106
|
+
blocks: Array<Block>;
|
|
1120
1107
|
};
|
|
1121
1108
|
/**
|
|
1122
1109
|
* Generated factory for {@link SoftBinding} record objects.
|
|
@@ -1149,13 +1136,12 @@ export declare enum ActionKind_Tags {
|
|
|
1149
1136
|
ResizedProportional = "ResizedProportional",
|
|
1150
1137
|
Transcoded = "Transcoded",
|
|
1151
1138
|
Trimmed = "Trimmed",
|
|
1152
|
-
Unknown = "Unknown",
|
|
1153
1139
|
WatermarkedBound = "WatermarkedBound",
|
|
1154
1140
|
WatermarkedUnbound = "WatermarkedUnbound"
|
|
1155
1141
|
}
|
|
1156
1142
|
/**
|
|
1157
|
-
* The C2PA 2.
|
|
1158
|
-
* Mirrored for the one variant that carries a binding, which crosses as the
|
|
1143
|
+
* The C2PA 2.4 workflow actions; see the core [`provenance::ActionKind`] for what each is.
|
|
1144
|
+
* Mirrored for the one variant that carries a binding, which crosses as the FFI record.
|
|
1159
1145
|
*/
|
|
1160
1146
|
export declare const ActionKind: Readonly<{
|
|
1161
1147
|
instanceOf: (obj: any) => obj is ActionKind;
|
|
@@ -1731,32 +1717,6 @@ export declare const ActionKind: Readonly<{
|
|
|
1731
1717
|
readonly tag: ActionKind_Tags.Trimmed;
|
|
1732
1718
|
};
|
|
1733
1719
|
};
|
|
1734
|
-
Unknown: {
|
|
1735
|
-
new (): {
|
|
1736
|
-
/**
|
|
1737
|
-
* @private
|
|
1738
|
-
* This field is private and should not be used, use `tag` instead.
|
|
1739
|
-
*/
|
|
1740
|
-
readonly [uniffiTypeNameSymbol]: "ActionKind";
|
|
1741
|
-
readonly tag: ActionKind_Tags.Unknown;
|
|
1742
|
-
};
|
|
1743
|
-
"new"(): {
|
|
1744
|
-
/**
|
|
1745
|
-
* @private
|
|
1746
|
-
* This field is private and should not be used, use `tag` instead.
|
|
1747
|
-
*/
|
|
1748
|
-
readonly [uniffiTypeNameSymbol]: "ActionKind";
|
|
1749
|
-
readonly tag: ActionKind_Tags.Unknown;
|
|
1750
|
-
};
|
|
1751
|
-
instanceOf(obj: any): obj is {
|
|
1752
|
-
/**
|
|
1753
|
-
* @private
|
|
1754
|
-
* This field is private and should not be used, use `tag` instead.
|
|
1755
|
-
*/
|
|
1756
|
-
readonly [uniffiTypeNameSymbol]: "ActionKind";
|
|
1757
|
-
readonly tag: ActionKind_Tags.Unknown;
|
|
1758
|
-
};
|
|
1759
|
-
};
|
|
1760
1720
|
WatermarkedBound: {
|
|
1761
1721
|
new (inner: {
|
|
1762
1722
|
binding: SoftBinding;
|
|
@@ -1824,12 +1784,13 @@ export declare const ActionKind: Readonly<{
|
|
|
1824
1784
|
};
|
|
1825
1785
|
}>;
|
|
1826
1786
|
/**
|
|
1827
|
-
* The C2PA 2.
|
|
1828
|
-
* Mirrored for the one variant that carries a binding, which crosses as the
|
|
1787
|
+
* The C2PA 2.4 workflow actions; see the core [`provenance::ActionKind`] for what each is.
|
|
1788
|
+
* Mirrored for the one variant that carries a binding, which crosses as the FFI record.
|
|
1829
1789
|
*/
|
|
1830
|
-
export type ActionKind = InstanceType<typeof ActionKind['AddedText' | 'AdjustedColor' | 'ChangedSpeed' | 'Converted' | 'Cropped' | 'Deleted' | 'Drawing' | 'Dubbed' | 'Edited' | 'EditedMetadata' | 'Enhanced' | 'Filtered' | 'Mastered' | 'Mixed' | 'Orientation' | 'Published' | 'Remixed' | 'Repackaged' | 'Resized' | 'ResizedProportional' | 'Transcoded' | 'Trimmed' | '
|
|
1790
|
+
export type ActionKind = InstanceType<typeof ActionKind['AddedText' | 'AdjustedColor' | 'ChangedSpeed' | 'Converted' | 'Cropped' | 'Deleted' | 'Drawing' | 'Dubbed' | 'Edited' | 'EditedMetadata' | 'Enhanced' | 'Filtered' | 'Mastered' | 'Mixed' | 'Orientation' | 'Published' | 'Remixed' | 'Repackaged' | 'Resized' | 'ResizedProportional' | 'Transcoded' | 'Trimmed' | 'WatermarkedBound' | 'WatermarkedUnbound']>;
|
|
1831
1791
|
export type StandardAction = {
|
|
1832
1792
|
kind: ActionKind;
|
|
1793
|
+
parameters: JsonObject;
|
|
1833
1794
|
detail?: ActionDetail;
|
|
1834
1795
|
componentIds: Array<string>;
|
|
1835
1796
|
};
|
|
@@ -1837,8 +1798,8 @@ export type StandardAction = {
|
|
|
1837
1798
|
* Generated factory for {@link StandardAction} record objects.
|
|
1838
1799
|
*/
|
|
1839
1800
|
export declare const StandardAction: Readonly<{
|
|
1840
|
-
create: (partial: Partial<StandardAction> & Required<Omit<StandardAction, "detail">>) => StandardAction;
|
|
1841
|
-
new: (partial: Partial<StandardAction> & Required<Omit<StandardAction, "detail">>) => StandardAction;
|
|
1801
|
+
create: (partial: Partial<StandardAction> & Required<Omit<StandardAction, "componentIds" | "detail" | "parameters">>) => StandardAction;
|
|
1802
|
+
new: (partial: Partial<StandardAction> & Required<Omit<StandardAction, "componentIds" | "detail" | "parameters">>) => StandardAction;
|
|
1842
1803
|
defaults: () => Partial<StandardAction>;
|
|
1843
1804
|
}>;
|
|
1844
1805
|
export declare enum Action_Tags {
|
|
@@ -1908,8 +1869,7 @@ export declare const Action: Readonly<{
|
|
|
1908
1869
|
}>;
|
|
1909
1870
|
export type Action = InstanceType<typeof Action['Custom' | 'Standard']>;
|
|
1910
1871
|
/**
|
|
1911
|
-
*
|
|
1912
|
-
* one CAWG `VerifiedIdentity` object.
|
|
1872
|
+
* A CAWG identity assertion: each of `identities` is one CAWG `verifiedIdentities` entry.
|
|
1913
1873
|
*/
|
|
1914
1874
|
export type Identity = {
|
|
1915
1875
|
roles: Array<string>;
|
|
@@ -1919,8 +1879,8 @@ export type Identity = {
|
|
|
1919
1879
|
* Generated factory for {@link Identity} record objects.
|
|
1920
1880
|
*/
|
|
1921
1881
|
export declare const Identity: Readonly<{
|
|
1922
|
-
create: (partial: Partial<Identity> & Required<Omit<Identity,
|
|
1923
|
-
new: (partial: Partial<Identity> & Required<Omit<Identity,
|
|
1882
|
+
create: (partial: Partial<Identity> & Required<Omit<Identity, "roles">>) => Identity;
|
|
1883
|
+
new: (partial: Partial<Identity> & Required<Omit<Identity, "roles">>) => Identity;
|
|
1924
1884
|
defaults: () => Partial<Identity>;
|
|
1925
1885
|
}>;
|
|
1926
1886
|
export declare enum ComponentEvent_Tags {
|
|
@@ -1982,6 +1942,7 @@ export declare const ComponentEvent: Readonly<{
|
|
|
1982
1942
|
};
|
|
1983
1943
|
Removed: {
|
|
1984
1944
|
new (inner: {
|
|
1945
|
+
label: string;
|
|
1985
1946
|
detail?: ActionDetail;
|
|
1986
1947
|
}): {
|
|
1987
1948
|
/**
|
|
@@ -1991,14 +1952,18 @@ export declare const ComponentEvent: Readonly<{
|
|
|
1991
1952
|
readonly [uniffiTypeNameSymbol]: "ComponentEvent";
|
|
1992
1953
|
readonly tag: ComponentEvent_Tags.Removed;
|
|
1993
1954
|
readonly inner: Readonly<{
|
|
1955
|
+
label: string;
|
|
1994
1956
|
detail?: ActionDetail;
|
|
1995
1957
|
}>;
|
|
1996
1958
|
};
|
|
1997
1959
|
new: (partial: Parameters<(partial: Partial<{
|
|
1960
|
+
label: string;
|
|
1998
1961
|
detail?: ActionDetail;
|
|
1999
1962
|
}> & Required<Omit<{
|
|
1963
|
+
label: string;
|
|
2000
1964
|
detail?: ActionDetail;
|
|
2001
1965
|
}, "detail">>) => {
|
|
1966
|
+
label: string;
|
|
2002
1967
|
detail?: ActionDetail;
|
|
2003
1968
|
}>[0]) => {
|
|
2004
1969
|
/**
|
|
@@ -2008,6 +1973,7 @@ export declare const ComponentEvent: Readonly<{
|
|
|
2008
1973
|
readonly [uniffiTypeNameSymbol]: "ComponentEvent";
|
|
2009
1974
|
readonly tag: ComponentEvent_Tags.Removed;
|
|
2010
1975
|
readonly inner: Readonly<{
|
|
1976
|
+
label: string;
|
|
2011
1977
|
detail?: ActionDetail;
|
|
2012
1978
|
}>;
|
|
2013
1979
|
};
|
|
@@ -2019,6 +1985,7 @@ export declare const ComponentEvent: Readonly<{
|
|
|
2019
1985
|
readonly [uniffiTypeNameSymbol]: "ComponentEvent";
|
|
2020
1986
|
readonly tag: ComponentEvent_Tags.Removed;
|
|
2021
1987
|
readonly inner: Readonly<{
|
|
1988
|
+
label: string;
|
|
2022
1989
|
detail?: ActionDetail;
|
|
2023
1990
|
}>;
|
|
2024
1991
|
};
|
|
@@ -2058,8 +2025,10 @@ export declare const ComponentEvent: Readonly<{
|
|
|
2058
2025
|
* to be folded into and the variant has none.
|
|
2059
2026
|
*/
|
|
2060
2027
|
export type ComponentEvent = InstanceType<typeof ComponentEvent['Placed' | 'Removed' | 'InputTo']>;
|
|
2028
|
+
/**
|
|
2029
|
+
* An ingredient other than the parent; see the core [`provenance::Component`].
|
|
2030
|
+
*/
|
|
2061
2031
|
export type Component = {
|
|
2062
|
-
id: string;
|
|
2063
2032
|
asset: Ingredient;
|
|
2064
2033
|
event: ComponentEvent;
|
|
2065
2034
|
};
|
|
@@ -2074,160 +2043,205 @@ export declare const Component: Readonly<{
|
|
|
2074
2043
|
export type AssetManifestSpec = {
|
|
2075
2044
|
title?: string;
|
|
2076
2045
|
origin: AssetOrigin;
|
|
2046
|
+
/**
|
|
2047
|
+
* Every action performed on the asset; the manifest states the list is complete (C2PA
|
|
2048
|
+
* `allActionsIncluded`).
|
|
2049
|
+
*/
|
|
2077
2050
|
actions: Array<Action>;
|
|
2078
2051
|
identity?: Identity;
|
|
2079
2052
|
assertions: Array<Assertion>;
|
|
2080
|
-
|
|
2053
|
+
/**
|
|
2054
|
+
* Keyed by the handle actions name them by.
|
|
2055
|
+
*/
|
|
2056
|
+
components: Map<string, Component>;
|
|
2081
2057
|
};
|
|
2082
2058
|
/**
|
|
2083
2059
|
* Generated factory for {@link AssetManifestSpec} record objects.
|
|
2084
2060
|
*/
|
|
2085
2061
|
export declare const AssetManifestSpec: Readonly<{
|
|
2086
|
-
create: (partial: Partial<AssetManifestSpec> & Required<Omit<AssetManifestSpec, "identity" | "title">>) => AssetManifestSpec;
|
|
2087
|
-
new: (partial: Partial<AssetManifestSpec> & Required<Omit<AssetManifestSpec, "identity" | "title">>) => AssetManifestSpec;
|
|
2062
|
+
create: (partial: Partial<AssetManifestSpec> & Required<Omit<AssetManifestSpec, "actions" | "assertions" | "components" | "identity" | "title">>) => AssetManifestSpec;
|
|
2063
|
+
new: (partial: Partial<AssetManifestSpec> & Required<Omit<AssetManifestSpec, "actions" | "assertions" | "components" | "identity" | "title">>) => AssetManifestSpec;
|
|
2088
2064
|
defaults: () => Partial<AssetManifestSpec>;
|
|
2089
2065
|
}>;
|
|
2090
2066
|
/**
|
|
2091
|
-
*
|
|
2092
|
-
*
|
|
2093
|
-
*
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
*
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2067
|
+
* A byte range holding a bare C2PA manifest store, or reserved for one. A record of
|
|
2068
|
+
* primitives, so a plugin in its OWN UniFFI namespace declares a structurally identical
|
|
2069
|
+
* one and the two cross the boundary without sharing a Rust type.
|
|
2070
|
+
*/
|
|
2071
|
+
export type ByteRange = {
|
|
2072
|
+
offset: bigint;
|
|
2073
|
+
length: bigint;
|
|
2074
|
+
};
|
|
2075
|
+
/**
|
|
2076
|
+
* Generated factory for {@link ByteRange} record objects.
|
|
2077
|
+
*/
|
|
2078
|
+
export declare const ByteRange: Readonly<{
|
|
2079
|
+
create: (partial: Partial<ByteRange> & Required<Omit<ByteRange, never>>) => ByteRange;
|
|
2080
|
+
new: (partial: Partial<ByteRange> & Required<Omit<ByteRange, never>>) => ByteRange;
|
|
2081
|
+
defaults: () => Partial<ByteRange>;
|
|
2082
|
+
}>;
|
|
2083
|
+
/**
|
|
2084
|
+
* What one [`Compute::compute`] is asked: the asset and its media type.
|
|
2085
|
+
*/
|
|
2086
|
+
export type ComputeRequest = {
|
|
2087
|
+
source: RangeSource;
|
|
2088
|
+
format: string;
|
|
2089
|
+
};
|
|
2090
|
+
/**
|
|
2091
|
+
* Generated factory for {@link ComputeRequest} record objects.
|
|
2092
|
+
*/
|
|
2093
|
+
export declare const ComputeRequest: Readonly<{
|
|
2094
|
+
create: (partial: Partial<ComputeRequest> & Required<Omit<ComputeRequest, never>>) => ComputeRequest;
|
|
2095
|
+
new: (partial: Partial<ComputeRequest> & Required<Omit<ComputeRequest, never>>) => ComputeRequest;
|
|
2096
|
+
defaults: () => Partial<ComputeRequest>;
|
|
2097
|
+
}>;
|
|
2098
|
+
/**
|
|
2099
|
+
* The signer connection. Neither deadline bounds the hash, which runs client side between the
|
|
2100
|
+
* two RPCs.
|
|
2107
2101
|
*/
|
|
2108
2102
|
export type ConnectOptions = {
|
|
2109
|
-
headers?: Map<string, string>;
|
|
2110
2103
|
/**
|
|
2111
|
-
*
|
|
2104
|
+
* Sent on every request, names lower-cased; two names that differ only by case are refused.
|
|
2112
2105
|
*/
|
|
2113
|
-
|
|
2106
|
+
headers: Map<string, string>;
|
|
2114
2107
|
/**
|
|
2115
|
-
* Bounds
|
|
2116
|
-
*
|
|
2108
|
+
* Bounds one signer RPC, or how long a mark may wait for the next byte; the service's own
|
|
2109
|
+
* limit bounds a whole mark. Default 30 s.
|
|
2117
2110
|
*/
|
|
2118
|
-
|
|
2111
|
+
rpcTimeout?: number;
|
|
2112
|
+
/**
|
|
2113
|
+
* Bounds opening the connection. Default 5 s.
|
|
2114
|
+
*/
|
|
2115
|
+
connectTimeout?: number;
|
|
2119
2116
|
};
|
|
2120
2117
|
/**
|
|
2121
2118
|
* Generated factory for {@link ConnectOptions} record objects.
|
|
2122
2119
|
*/
|
|
2123
2120
|
export declare const ConnectOptions: Readonly<{
|
|
2124
|
-
create: (partial: Partial<ConnectOptions> & Required<Omit<ConnectOptions, "headers">>) => ConnectOptions;
|
|
2125
|
-
new: (partial: Partial<ConnectOptions> & Required<Omit<ConnectOptions, "headers">>) => ConnectOptions;
|
|
2121
|
+
create: (partial: Partial<ConnectOptions> & Required<Omit<ConnectOptions, "connectTimeout" | "headers" | "rpcTimeout">>) => ConnectOptions;
|
|
2122
|
+
new: (partial: Partial<ConnectOptions> & Required<Omit<ConnectOptions, "connectTimeout" | "headers" | "rpcTimeout">>) => ConnectOptions;
|
|
2126
2123
|
defaults: () => Partial<ConnectOptions>;
|
|
2127
2124
|
}>;
|
|
2128
2125
|
/**
|
|
2129
|
-
*
|
|
2126
|
+
* What one [`embed`] is told beyond the sink, the sidecar and the plugins.
|
|
2130
2127
|
*/
|
|
2131
|
-
export type
|
|
2132
|
-
|
|
2128
|
+
export type EmbedOptions = {
|
|
2129
|
+
/**
|
|
2130
|
+
* The asset's media type; `None` reads it from the sink's leading bytes.
|
|
2131
|
+
*/
|
|
2132
|
+
format?: string;
|
|
2133
|
+
/**
|
|
2134
|
+
* Optional native format libraries, loaded before composition.
|
|
2135
|
+
*/
|
|
2136
|
+
modules: Array<string>;
|
|
2133
2137
|
};
|
|
2134
2138
|
/**
|
|
2135
|
-
* Generated factory for {@link
|
|
2139
|
+
* Generated factory for {@link EmbedOptions} record objects.
|
|
2136
2140
|
*/
|
|
2137
|
-
export declare const
|
|
2138
|
-
create: (partial: Partial<
|
|
2139
|
-
new: (partial: Partial<
|
|
2140
|
-
defaults: () => Partial<
|
|
2141
|
+
export declare const EmbedOptions: Readonly<{
|
|
2142
|
+
create: (partial: Partial<EmbedOptions> & Required<Omit<EmbedOptions, "format" | "modules">>) => EmbedOptions;
|
|
2143
|
+
new: (partial: Partial<EmbedOptions> & Required<Omit<EmbedOptions, "format" | "modules">>) => EmbedOptions;
|
|
2144
|
+
defaults: () => Partial<EmbedOptions>;
|
|
2141
2145
|
}>;
|
|
2142
2146
|
/**
|
|
2143
|
-
*
|
|
2144
|
-
*
|
|
2147
|
+
* Where a stream's init manifest lives. The init segment always carries it, so there is no
|
|
2148
|
+
* remote-only delivery, and the segment comes back as bytes, so there is no output to name.
|
|
2145
2149
|
*/
|
|
2146
|
-
export
|
|
2147
|
-
|
|
2150
|
+
export declare enum StreamDelivery {
|
|
2151
|
+
Embedded = 0,
|
|
2152
|
+
EmbeddedAndRemote = 1
|
|
2153
|
+
}
|
|
2154
|
+
/**
|
|
2155
|
+
* How long a session key signs, and when to rotate it.
|
|
2156
|
+
*/
|
|
2157
|
+
export type RotationPolicy = {
|
|
2158
|
+
/**
|
|
2159
|
+
* From the key's creation, in whole seconds (C2PA `validityPeriod`); the verifier refuses
|
|
2160
|
+
* a segment signed after it.
|
|
2161
|
+
*/
|
|
2162
|
+
validityPeriod: number;
|
|
2163
|
+
/**
|
|
2164
|
+
* The share of `validity_period`, 1 to 100, after which `rotation_due` is set.
|
|
2165
|
+
*/
|
|
2166
|
+
refreshPercent: number;
|
|
2148
2167
|
};
|
|
2149
2168
|
/**
|
|
2150
|
-
* Generated factory for {@link
|
|
2169
|
+
* Generated factory for {@link RotationPolicy} record objects.
|
|
2151
2170
|
*/
|
|
2152
|
-
export declare const
|
|
2153
|
-
create: (partial: Partial<
|
|
2154
|
-
new: (partial: Partial<
|
|
2155
|
-
defaults: () => Partial<
|
|
2171
|
+
export declare const RotationPolicy: Readonly<{
|
|
2172
|
+
create: (partial: Partial<RotationPolicy> & Required<Omit<RotationPolicy, never>>) => RotationPolicy;
|
|
2173
|
+
new: (partial: Partial<RotationPolicy> & Required<Omit<RotationPolicy, never>>) => RotationPolicy;
|
|
2174
|
+
defaults: () => Partial<RotationPolicy>;
|
|
2156
2175
|
}>;
|
|
2157
2176
|
/**
|
|
2158
|
-
*
|
|
2159
|
-
*
|
|
2160
|
-
*
|
|
2161
|
-
* [`IsccBinder`] and [`HeldBinder`].
|
|
2162
|
-
*
|
|
2163
|
-
* `derive` answers this binder's binding for `source`, or `None` when there is none.
|
|
2164
|
-
* `options.format` is how the asset's format is known. `None` and an error
|
|
2165
|
-
* mean different things: `None` is "no binding here", an error is "the question could not be
|
|
2166
|
-
* answered", so a binder that failed never reads as an unmarked asset.
|
|
2177
|
+
* Computes one soft-binding algorithm's values from an asset (a fingerprint calculated, a
|
|
2178
|
+
* watermark detected). `[]` is "no value here"; an error is "no trustworthy answer", so a failed
|
|
2179
|
+
* engine never reads as an unmarked asset.
|
|
2167
2180
|
*/
|
|
2168
|
-
export interface
|
|
2169
|
-
|
|
2181
|
+
export interface Compute {
|
|
2182
|
+
/**
|
|
2183
|
+
* The C2PA soft-binding algorithm list label, e.g. `io.iscc.v0`.
|
|
2184
|
+
*/
|
|
2185
|
+
alg(): string;
|
|
2186
|
+
compute(request: ComputeRequest, asyncOpts_?: {
|
|
2170
2187
|
signal: AbortSignal;
|
|
2171
|
-
}): Promise<
|
|
2188
|
+
}): Promise<Array<Block>>;
|
|
2172
2189
|
}
|
|
2173
2190
|
/**
|
|
2174
|
-
*
|
|
2175
|
-
*
|
|
2176
|
-
*
|
|
2177
|
-
* [`IsccBinder`] and [`HeldBinder`].
|
|
2178
|
-
*
|
|
2179
|
-
* `derive` answers this binder's binding for `source`, or `None` when there is none.
|
|
2180
|
-
* `options.format` is how the asset's format is known. `None` and an error
|
|
2181
|
-
* mean different things: `None` is "no binding here", an error is "the question could not be
|
|
2182
|
-
* answered", so a binder that failed never reads as an unmarked asset.
|
|
2191
|
+
* Computes one soft-binding algorithm's values from an asset (a fingerprint calculated, a
|
|
2192
|
+
* watermark detected). `[]` is "no value here"; an error is "no trustworthy answer", so a failed
|
|
2193
|
+
* engine never reads as an unmarked asset.
|
|
2183
2194
|
*/
|
|
2184
|
-
export declare class
|
|
2185
|
-
readonly [uniffiTypeNameSymbol] = "
|
|
2195
|
+
export declare class ComputeImpl extends UniffiAbstractObject implements Compute {
|
|
2196
|
+
readonly [uniffiTypeNameSymbol] = "ComputeImpl";
|
|
2186
2197
|
readonly [destructorGuardSymbol]: UniffiGcObject;
|
|
2187
2198
|
readonly [pointerLiteralSymbol]: UniffiHandle;
|
|
2188
2199
|
private constructor();
|
|
2189
|
-
|
|
2200
|
+
/**
|
|
2201
|
+
* The C2PA soft-binding algorithm list label, e.g. `io.iscc.v0`.
|
|
2202
|
+
*/
|
|
2203
|
+
alg(): string;
|
|
2204
|
+
compute(request: ComputeRequest, asyncOpts_?: {
|
|
2190
2205
|
signal: AbortSignal;
|
|
2191
|
-
}): Promise<
|
|
2206
|
+
}): Promise<Array<Block>>;
|
|
2192
2207
|
uniffiDestroy(): void;
|
|
2193
|
-
static instanceOf(obj_: any): obj_ is
|
|
2208
|
+
static instanceOf(obj_: any): obj_ is ComputeImpl;
|
|
2194
2209
|
}
|
|
2195
|
-
export declare enum
|
|
2196
|
-
|
|
2197
|
-
|
|
2198
|
-
|
|
2210
|
+
export declare enum SoftBindingSource_Tags {
|
|
2211
|
+
Builtin = "Builtin",
|
|
2212
|
+
Held = "Held",
|
|
2213
|
+
Custom = "Custom"
|
|
2199
2214
|
}
|
|
2200
2215
|
/**
|
|
2201
|
-
*
|
|
2202
|
-
* returns its signed init segment as bytes, so there is no output to name.
|
|
2216
|
+
* Where one assertion's values come from.
|
|
2203
2217
|
*/
|
|
2204
|
-
export declare const
|
|
2205
|
-
instanceOf: (obj: any) => obj is
|
|
2206
|
-
|
|
2218
|
+
export declare const SoftBindingSource: Readonly<{
|
|
2219
|
+
instanceOf: (obj: any) => obj is SoftBindingSource;
|
|
2220
|
+
Builtin: {
|
|
2207
2221
|
new (inner: {
|
|
2208
|
-
|
|
2222
|
+
alg: string;
|
|
2209
2223
|
}): {
|
|
2210
2224
|
/**
|
|
2211
2225
|
* @private
|
|
2212
2226
|
* This field is private and should not be used, use `tag` instead.
|
|
2213
2227
|
*/
|
|
2214
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2215
|
-
readonly tag:
|
|
2228
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2229
|
+
readonly tag: SoftBindingSource_Tags.Builtin;
|
|
2216
2230
|
readonly inner: Readonly<{
|
|
2217
|
-
|
|
2231
|
+
alg: string;
|
|
2218
2232
|
}>;
|
|
2219
2233
|
};
|
|
2220
2234
|
"new"(inner: {
|
|
2221
|
-
|
|
2235
|
+
alg: string;
|
|
2222
2236
|
}): {
|
|
2223
2237
|
/**
|
|
2224
2238
|
* @private
|
|
2225
2239
|
* This field is private and should not be used, use `tag` instead.
|
|
2226
2240
|
*/
|
|
2227
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2228
|
-
readonly tag:
|
|
2241
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2242
|
+
readonly tag: SoftBindingSource_Tags.Builtin;
|
|
2229
2243
|
readonly inner: Readonly<{
|
|
2230
|
-
|
|
2244
|
+
alg: string;
|
|
2231
2245
|
}>;
|
|
2232
2246
|
};
|
|
2233
2247
|
instanceOf(obj: any): obj is {
|
|
@@ -2235,38 +2249,38 @@ export declare const StreamDelivery: Readonly<{
|
|
|
2235
2249
|
* @private
|
|
2236
2250
|
* This field is private and should not be used, use `tag` instead.
|
|
2237
2251
|
*/
|
|
2238
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2239
|
-
readonly tag:
|
|
2252
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2253
|
+
readonly tag: SoftBindingSource_Tags.Builtin;
|
|
2240
2254
|
readonly inner: Readonly<{
|
|
2241
|
-
|
|
2255
|
+
alg: string;
|
|
2242
2256
|
}>;
|
|
2243
2257
|
};
|
|
2244
2258
|
};
|
|
2245
|
-
|
|
2259
|
+
Held: {
|
|
2246
2260
|
new (inner: {
|
|
2247
|
-
|
|
2261
|
+
binding: SoftBinding;
|
|
2248
2262
|
}): {
|
|
2249
2263
|
/**
|
|
2250
2264
|
* @private
|
|
2251
2265
|
* This field is private and should not be used, use `tag` instead.
|
|
2252
2266
|
*/
|
|
2253
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2254
|
-
readonly tag:
|
|
2267
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2268
|
+
readonly tag: SoftBindingSource_Tags.Held;
|
|
2255
2269
|
readonly inner: Readonly<{
|
|
2256
|
-
|
|
2270
|
+
binding: SoftBinding;
|
|
2257
2271
|
}>;
|
|
2258
2272
|
};
|
|
2259
2273
|
"new"(inner: {
|
|
2260
|
-
|
|
2274
|
+
binding: SoftBinding;
|
|
2261
2275
|
}): {
|
|
2262
2276
|
/**
|
|
2263
2277
|
* @private
|
|
2264
2278
|
* This field is private and should not be used, use `tag` instead.
|
|
2265
2279
|
*/
|
|
2266
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2267
|
-
readonly tag:
|
|
2280
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2281
|
+
readonly tag: SoftBindingSource_Tags.Held;
|
|
2268
2282
|
readonly inner: Readonly<{
|
|
2269
|
-
|
|
2283
|
+
binding: SoftBinding;
|
|
2270
2284
|
}>;
|
|
2271
2285
|
};
|
|
2272
2286
|
instanceOf(obj: any): obj is {
|
|
@@ -2274,38 +2288,38 @@ export declare const StreamDelivery: Readonly<{
|
|
|
2274
2288
|
* @private
|
|
2275
2289
|
* This field is private and should not be used, use `tag` instead.
|
|
2276
2290
|
*/
|
|
2277
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2278
|
-
readonly tag:
|
|
2291
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2292
|
+
readonly tag: SoftBindingSource_Tags.Held;
|
|
2279
2293
|
readonly inner: Readonly<{
|
|
2280
|
-
|
|
2294
|
+
binding: SoftBinding;
|
|
2281
2295
|
}>;
|
|
2282
2296
|
};
|
|
2283
2297
|
};
|
|
2284
|
-
|
|
2298
|
+
Custom: {
|
|
2285
2299
|
new (inner: {
|
|
2286
|
-
|
|
2300
|
+
compute: Compute;
|
|
2287
2301
|
}): {
|
|
2288
2302
|
/**
|
|
2289
2303
|
* @private
|
|
2290
2304
|
* This field is private and should not be used, use `tag` instead.
|
|
2291
2305
|
*/
|
|
2292
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2293
|
-
readonly tag:
|
|
2306
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2307
|
+
readonly tag: SoftBindingSource_Tags.Custom;
|
|
2294
2308
|
readonly inner: Readonly<{
|
|
2295
|
-
|
|
2309
|
+
compute: Compute;
|
|
2296
2310
|
}>;
|
|
2297
2311
|
};
|
|
2298
2312
|
"new"(inner: {
|
|
2299
|
-
|
|
2313
|
+
compute: Compute;
|
|
2300
2314
|
}): {
|
|
2301
2315
|
/**
|
|
2302
2316
|
* @private
|
|
2303
2317
|
* This field is private and should not be used, use `tag` instead.
|
|
2304
2318
|
*/
|
|
2305
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2306
|
-
readonly tag:
|
|
2319
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2320
|
+
readonly tag: SoftBindingSource_Tags.Custom;
|
|
2307
2321
|
readonly inner: Readonly<{
|
|
2308
|
-
|
|
2322
|
+
compute: Compute;
|
|
2309
2323
|
}>;
|
|
2310
2324
|
};
|
|
2311
2325
|
instanceOf(obj: any): obj is {
|
|
@@ -2313,63 +2327,42 @@ export declare const StreamDelivery: Readonly<{
|
|
|
2313
2327
|
* @private
|
|
2314
2328
|
* This field is private and should not be used, use `tag` instead.
|
|
2315
2329
|
*/
|
|
2316
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2317
|
-
readonly tag:
|
|
2330
|
+
readonly [uniffiTypeNameSymbol]: "SoftBindingSource";
|
|
2331
|
+
readonly tag: SoftBindingSource_Tags.Custom;
|
|
2318
2332
|
readonly inner: Readonly<{
|
|
2319
|
-
|
|
2333
|
+
compute: Compute;
|
|
2320
2334
|
}>;
|
|
2321
2335
|
};
|
|
2322
2336
|
};
|
|
2323
2337
|
}>;
|
|
2324
2338
|
/**
|
|
2325
|
-
*
|
|
2326
|
-
* returns its signed init segment as bytes, so there is no output to name.
|
|
2339
|
+
* Where one assertion's values come from.
|
|
2327
2340
|
*/
|
|
2328
|
-
export type
|
|
2341
|
+
export type SoftBindingSource = InstanceType<typeof SoftBindingSource['Builtin' | 'Held' | 'Custom']>;
|
|
2329
2342
|
/**
|
|
2330
|
-
* `
|
|
2331
|
-
*
|
|
2332
|
-
* (plus skew tolerance).
|
|
2333
|
-
*
|
|
2334
|
-
* `refresh_percent` is 0..=100; once this percentage of
|
|
2335
|
-
* `validity_period_secs` elapses, `sign` returns `rotation_due: true`
|
|
2336
|
-
* so the consumer can rotate before verifier-side expiry.
|
|
2337
|
-
*/
|
|
2338
|
-
export type RotationPolicy = {
|
|
2339
|
-
validityPeriodSecs: number;
|
|
2340
|
-
refreshPercent: number;
|
|
2341
|
-
};
|
|
2342
|
-
/**
|
|
2343
|
-
* Generated factory for {@link RotationPolicy} record objects.
|
|
2344
|
-
*/
|
|
2345
|
-
export declare const RotationPolicy: Readonly<{
|
|
2346
|
-
create: (partial: Partial<RotationPolicy> & Required<Omit<RotationPolicy, never>>) => RotationPolicy;
|
|
2347
|
-
new: (partial: Partial<RotationPolicy> & Required<Omit<RotationPolicy, never>>) => RotationPolicy;
|
|
2348
|
-
defaults: () => Partial<RotationPolicy>;
|
|
2349
|
-
}>;
|
|
2350
|
-
/**
|
|
2351
|
-
* Options for a stream's `init` and `rotate`: where the init manifest lives and the binders
|
|
2352
|
-
* run over the init segment for it, and the session-key validity window.
|
|
2343
|
+
* Options for a stream's `init` and `rotate`: where the init manifest lives, the session-key
|
|
2344
|
+
* validity window, and the soft bindings declared for the init segment.
|
|
2353
2345
|
*/
|
|
2354
2346
|
export type InitOptions = {
|
|
2355
2347
|
delivery: StreamDelivery;
|
|
2356
2348
|
rotationPolicy: RotationPolicy;
|
|
2349
|
+
softBindings: Array<SoftBindingSource>;
|
|
2357
2350
|
};
|
|
2358
2351
|
/**
|
|
2359
2352
|
* Generated factory for {@link InitOptions} record objects.
|
|
2360
2353
|
*/
|
|
2361
2354
|
export declare const InitOptions: Readonly<{
|
|
2362
|
-
create: (partial: Partial<InitOptions> & Required<Omit<InitOptions,
|
|
2363
|
-
new: (partial: Partial<InitOptions> & Required<Omit<InitOptions,
|
|
2355
|
+
create: (partial: Partial<InitOptions> & Required<Omit<InitOptions, "softBindings">>) => InitOptions;
|
|
2356
|
+
new: (partial: Partial<InitOptions> & Required<Omit<InitOptions, "softBindings">>) => InitOptions;
|
|
2364
2357
|
defaults: () => Partial<InitOptions>;
|
|
2365
2358
|
}>;
|
|
2366
2359
|
/**
|
|
2367
|
-
* Result of [`StreamIssuer::init`](super::StreamIssuer::init)
|
|
2368
|
-
*
|
|
2360
|
+
* Result of [`StreamIssuer::init`](super::StreamIssuer::init): the signed init segment, and when
|
|
2361
|
+
* its session key stops signing.
|
|
2369
2362
|
*/
|
|
2370
2363
|
export type InitOutcome = {
|
|
2371
|
-
|
|
2372
|
-
|
|
2364
|
+
bytes: ArrayBuffer;
|
|
2365
|
+
validUntil: Date;
|
|
2373
2366
|
};
|
|
2374
2367
|
/**
|
|
2375
2368
|
* Generated factory for {@link InitOutcome} record objects.
|
|
@@ -2380,52 +2373,39 @@ export declare const InitOutcome: Readonly<{
|
|
|
2380
2373
|
defaults: () => Partial<InitOutcome>;
|
|
2381
2374
|
}>;
|
|
2382
2375
|
/**
|
|
2383
|
-
*
|
|
2376
|
+
* What one [`AssetMarker::mark`] is told beyond the asset.
|
|
2384
2377
|
*/
|
|
2385
2378
|
export type MarkOptions = {
|
|
2386
2379
|
/**
|
|
2387
|
-
*
|
|
2380
|
+
* The asset's media type; `None` reads it from the leading bytes.
|
|
2388
2381
|
*/
|
|
2389
|
-
format
|
|
2382
|
+
format?: string;
|
|
2390
2383
|
/**
|
|
2391
|
-
*
|
|
2384
|
+
* The watermarks to insert, as algorithm list labels; `[]` inserts every one the
|
|
2385
|
+
* deployment offers, in its order.
|
|
2392
2386
|
*/
|
|
2393
|
-
|
|
2394
|
-
/**
|
|
2395
|
-
* Whether the signposting layer is applied beside the marks that resolve back to the
|
|
2396
|
-
* manifest; `false` applies only those.
|
|
2397
|
-
*/
|
|
2398
|
-
signpost: boolean;
|
|
2387
|
+
algorithms: Array<string>;
|
|
2399
2388
|
};
|
|
2400
2389
|
/**
|
|
2401
2390
|
* Generated factory for {@link MarkOptions} record objects.
|
|
2402
2391
|
*/
|
|
2403
2392
|
export declare const MarkOptions: Readonly<{
|
|
2404
|
-
create: (partial: Partial<MarkOptions> & Required<Omit<MarkOptions,
|
|
2405
|
-
new: (partial: Partial<MarkOptions> & Required<Omit<MarkOptions,
|
|
2393
|
+
create: (partial: Partial<MarkOptions> & Required<Omit<MarkOptions, "algorithms" | "format">>) => MarkOptions;
|
|
2394
|
+
new: (partial: Partial<MarkOptions> & Required<Omit<MarkOptions, "algorithms" | "format">>) => MarkOptions;
|
|
2406
2395
|
defaults: () => Partial<MarkOptions>;
|
|
2407
2396
|
}>;
|
|
2408
2397
|
/**
|
|
2409
|
-
* Result of [`AssetMarker::mark`](super::AssetMarker::mark)
|
|
2410
|
-
*
|
|
2411
|
-
* asset as [`Bytes`].
|
|
2398
|
+
* Result of [`AssetMarker::mark`](super::AssetMarker::mark), whose marked asset went into its
|
|
2399
|
+
* sink.
|
|
2412
2400
|
*/
|
|
2413
2401
|
export type MarkOutcome = {
|
|
2414
2402
|
/**
|
|
2415
|
-
* The marked asset
|
|
2416
|
-
*/
|
|
2417
|
-
bytes: ArrayBuffer;
|
|
2418
|
-
/**
|
|
2419
|
-
* The marked asset's media type, which a marker may change by re-encoding.
|
|
2403
|
+
* The marked asset's media type, which a watermark service may change by re-encoding.
|
|
2420
2404
|
*/
|
|
2421
2405
|
format: string;
|
|
2422
2406
|
/**
|
|
2423
|
-
*
|
|
2424
|
-
|
|
2425
|
-
fileName: string;
|
|
2426
|
-
/**
|
|
2427
|
-
* One `c2pa.watermarked.bound` or `.unbound` per mark, in the order applied, a bound one
|
|
2428
|
-
* carrying the binding it resolves through. Append to the manifest's `actions`.
|
|
2407
|
+
* One `c2pa.watermarked.bound` or `.unbound` per mark, in the order inserted. Append them to
|
|
2408
|
+
* the manifest's `actions`.
|
|
2429
2409
|
*/
|
|
2430
2410
|
actions: Array<Action>;
|
|
2431
2411
|
};
|
|
@@ -2438,32 +2418,28 @@ export declare const MarkOutcome: Readonly<{
|
|
|
2438
2418
|
defaults: () => Partial<MarkOutcome>;
|
|
2439
2419
|
}>;
|
|
2440
2420
|
/**
|
|
2441
|
-
*
|
|
2442
|
-
*
|
|
2443
|
-
* one and the two cross the boundary without sharing a Rust type.
|
|
2421
|
+
* What a [`SigningVault::mint`] is asked: how long the key will be signed under, so the vault can
|
|
2422
|
+
* give it that lifetime and expire it itself; a key no `forget` reaches then dies where it is held.
|
|
2444
2423
|
*/
|
|
2445
|
-
export type
|
|
2446
|
-
|
|
2447
|
-
length: bigint;
|
|
2424
|
+
export type MintRequest = {
|
|
2425
|
+
validityPeriod: number;
|
|
2448
2426
|
};
|
|
2449
2427
|
/**
|
|
2450
|
-
* Generated factory for {@link
|
|
2428
|
+
* Generated factory for {@link MintRequest} record objects.
|
|
2451
2429
|
*/
|
|
2452
|
-
export declare const
|
|
2453
|
-
create: (partial: Partial<
|
|
2454
|
-
new: (partial: Partial<
|
|
2455
|
-
defaults: () => Partial<
|
|
2430
|
+
export declare const MintRequest: Readonly<{
|
|
2431
|
+
create: (partial: Partial<MintRequest> & Required<Omit<MintRequest, never>>) => MintRequest;
|
|
2432
|
+
new: (partial: Partial<MintRequest> & Required<Omit<MintRequest, never>>) => MintRequest;
|
|
2433
|
+
defaults: () => Partial<MintRequest>;
|
|
2456
2434
|
}>;
|
|
2457
2435
|
/**
|
|
2458
|
-
* Result of [`StreamSession::sign`](super::StreamSession::sign). `
|
|
2459
|
-
*
|
|
2460
|
-
* per segment so callers can schedule rotation precisely instead of reacting only to the
|
|
2461
|
-
* flag.
|
|
2436
|
+
* Result of [`StreamSession::sign`](super::StreamSession::sign). `valid_until` repeats per
|
|
2437
|
+
* segment so a caller can schedule the rotation rather than only react to `rotation_due`.
|
|
2462
2438
|
*/
|
|
2463
2439
|
export type SegmentOutcome = {
|
|
2464
2440
|
bytes: ArrayBuffer;
|
|
2465
2441
|
rotationDue: boolean;
|
|
2466
|
-
|
|
2442
|
+
validUntil: Date;
|
|
2467
2443
|
};
|
|
2468
2444
|
/**
|
|
2469
2445
|
* Generated factory for {@link SegmentOutcome} record objects.
|
|
@@ -2473,6 +2449,23 @@ export declare const SegmentOutcome: Readonly<{
|
|
|
2473
2449
|
new: (partial: Partial<SegmentOutcome> & Required<Omit<SegmentOutcome, never>>) => SegmentOutcome;
|
|
2474
2450
|
defaults: () => Partial<SegmentOutcome>;
|
|
2475
2451
|
}>;
|
|
2452
|
+
/**
|
|
2453
|
+
* A minted session key's public half. `kid` is the vault's handle for it (typically SHA-256 of
|
|
2454
|
+
* the public key); `public_key` is the uncompressed SEC1 point (65 bytes from `0x04` for ES256),
|
|
2455
|
+
* which the SDK wraps as a `COSE_Key` (C2PA 2.4 19.4.4).
|
|
2456
|
+
*/
|
|
2457
|
+
export type SessionKey = {
|
|
2458
|
+
kid: ArrayBuffer;
|
|
2459
|
+
publicKey: ArrayBuffer;
|
|
2460
|
+
};
|
|
2461
|
+
/**
|
|
2462
|
+
* Generated factory for {@link SessionKey} record objects.
|
|
2463
|
+
*/
|
|
2464
|
+
export declare const SessionKey: Readonly<{
|
|
2465
|
+
create: (partial: Partial<SessionKey> & Required<Omit<SessionKey, never>>) => SessionKey;
|
|
2466
|
+
new: (partial: Partial<SessionKey> & Required<Omit<SessionKey, never>>) => SessionKey;
|
|
2467
|
+
defaults: () => Partial<SessionKey>;
|
|
2468
|
+
}>;
|
|
2476
2469
|
/**
|
|
2477
2470
|
* A ranged read+write backend for embedding. All four methods are first-class (UniFFI
|
|
2478
2471
|
* has no trait inheritance for foreign callbacks, so the read half is duplicated from
|
|
@@ -2534,10 +2527,9 @@ export declare enum SignOutput_Tags {
|
|
|
2534
2527
|
Asset = "Asset"
|
|
2535
2528
|
}
|
|
2536
2529
|
/**
|
|
2537
|
-
* What a `sign` hands back beyond the sidecar it always returns: the sidecar alone, or the
|
|
2538
|
-
* signed asset written
|
|
2539
|
-
* [`SignOutput`](
|
|
2540
|
-
* storage means.
|
|
2530
|
+
* What a `sign` hands back beyond the sidecar it always returns: the sidecar alone, or the whole
|
|
2531
|
+
* signed asset written into `into` in the same call, replacing what it held. See the core
|
|
2532
|
+
* [`SignOutput`](core::SignOutput) for what pointing `into` at the asset's own storage means.
|
|
2541
2533
|
*/
|
|
2542
2534
|
export declare const SignOutput: Readonly<{
|
|
2543
2535
|
instanceOf: (obj: any) => obj is SignOutput;
|
|
@@ -2608,30 +2600,27 @@ export declare const SignOutput: Readonly<{
|
|
|
2608
2600
|
};
|
|
2609
2601
|
}>;
|
|
2610
2602
|
/**
|
|
2611
|
-
* What a `sign` hands back beyond the sidecar it always returns: the sidecar alone, or the
|
|
2612
|
-
* signed asset written
|
|
2613
|
-
* [`SignOutput`](
|
|
2614
|
-
* storage means.
|
|
2603
|
+
* What a `sign` hands back beyond the sidecar it always returns: the sidecar alone, or the whole
|
|
2604
|
+
* signed asset written into `into` in the same call, replacing what it held. See the core
|
|
2605
|
+
* [`SignOutput`](core::SignOutput) for what pointing `into` at the asset's own storage means.
|
|
2615
2606
|
*/
|
|
2616
2607
|
export type SignOutput = InstanceType<typeof SignOutput['Sidecar' | 'Asset']>;
|
|
2617
2608
|
export declare enum AssetDelivery_Tags {
|
|
2618
2609
|
Embedded = "Embedded",
|
|
2619
2610
|
Remote = "Remote",
|
|
2620
|
-
|
|
2611
|
+
EmbeddedAndRemote = "EmbeddedAndRemote"
|
|
2621
2612
|
}
|
|
2622
2613
|
/**
|
|
2623
|
-
*
|
|
2614
|
+
* Where a static asset's manifest lives and, when it is in the asset, what comes back.
|
|
2624
2615
|
*
|
|
2625
|
-
* Embedded manifests
|
|
2626
|
-
*
|
|
2627
|
-
*
|
|
2628
|
-
* through its embedded manifest and permits an empty strategy list.
|
|
2616
|
+
* Embedded manifests are not indexed, so a watermark on one is refused: it could never lead back
|
|
2617
|
+
* to the manifest. Remote needs a soft binding the deployment resolves and never touches the
|
|
2618
|
+
* asset, so it names no output.
|
|
2629
2619
|
*/
|
|
2630
2620
|
export declare const AssetDelivery: Readonly<{
|
|
2631
2621
|
instanceOf: (obj: any) => obj is AssetDelivery;
|
|
2632
2622
|
Embedded: {
|
|
2633
2623
|
new (inner: {
|
|
2634
|
-
binders: Array<Binder>;
|
|
2635
2624
|
output: SignOutput;
|
|
2636
2625
|
}): {
|
|
2637
2626
|
/**
|
|
@@ -2641,12 +2630,10 @@ export declare const AssetDelivery: Readonly<{
|
|
|
2641
2630
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2642
2631
|
readonly tag: AssetDelivery_Tags.Embedded;
|
|
2643
2632
|
readonly inner: Readonly<{
|
|
2644
|
-
binders: Array<Binder>;
|
|
2645
2633
|
output: SignOutput;
|
|
2646
2634
|
}>;
|
|
2647
2635
|
};
|
|
2648
2636
|
"new"(inner: {
|
|
2649
|
-
binders: Array<Binder>;
|
|
2650
2637
|
output: SignOutput;
|
|
2651
2638
|
}): {
|
|
2652
2639
|
/**
|
|
@@ -2656,7 +2643,6 @@ export declare const AssetDelivery: Readonly<{
|
|
|
2656
2643
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2657
2644
|
readonly tag: AssetDelivery_Tags.Embedded;
|
|
2658
2645
|
readonly inner: Readonly<{
|
|
2659
|
-
binders: Array<Binder>;
|
|
2660
2646
|
output: SignOutput;
|
|
2661
2647
|
}>;
|
|
2662
2648
|
};
|
|
@@ -2668,37 +2654,26 @@ export declare const AssetDelivery: Readonly<{
|
|
|
2668
2654
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2669
2655
|
readonly tag: AssetDelivery_Tags.Embedded;
|
|
2670
2656
|
readonly inner: Readonly<{
|
|
2671
|
-
binders: Array<Binder>;
|
|
2672
2657
|
output: SignOutput;
|
|
2673
2658
|
}>;
|
|
2674
2659
|
};
|
|
2675
2660
|
};
|
|
2676
2661
|
Remote: {
|
|
2677
|
-
new (
|
|
2678
|
-
binders: Array<Binder>;
|
|
2679
|
-
}): {
|
|
2662
|
+
new (): {
|
|
2680
2663
|
/**
|
|
2681
2664
|
* @private
|
|
2682
2665
|
* This field is private and should not be used, use `tag` instead.
|
|
2683
2666
|
*/
|
|
2684
2667
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2685
2668
|
readonly tag: AssetDelivery_Tags.Remote;
|
|
2686
|
-
readonly inner: Readonly<{
|
|
2687
|
-
binders: Array<Binder>;
|
|
2688
|
-
}>;
|
|
2689
2669
|
};
|
|
2690
|
-
"new"(
|
|
2691
|
-
binders: Array<Binder>;
|
|
2692
|
-
}): {
|
|
2670
|
+
"new"(): {
|
|
2693
2671
|
/**
|
|
2694
2672
|
* @private
|
|
2695
2673
|
* This field is private and should not be used, use `tag` instead.
|
|
2696
2674
|
*/
|
|
2697
2675
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2698
2676
|
readonly tag: AssetDelivery_Tags.Remote;
|
|
2699
|
-
readonly inner: Readonly<{
|
|
2700
|
-
binders: Array<Binder>;
|
|
2701
|
-
}>;
|
|
2702
2677
|
};
|
|
2703
2678
|
instanceOf(obj: any): obj is {
|
|
2704
2679
|
/**
|
|
@@ -2707,14 +2682,10 @@ export declare const AssetDelivery: Readonly<{
|
|
|
2707
2682
|
*/
|
|
2708
2683
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2709
2684
|
readonly tag: AssetDelivery_Tags.Remote;
|
|
2710
|
-
readonly inner: Readonly<{
|
|
2711
|
-
binders: Array<Binder>;
|
|
2712
|
-
}>;
|
|
2713
2685
|
};
|
|
2714
2686
|
};
|
|
2715
|
-
|
|
2687
|
+
EmbeddedAndRemote: {
|
|
2716
2688
|
new (inner: {
|
|
2717
|
-
binders: Array<Binder>;
|
|
2718
2689
|
output: SignOutput;
|
|
2719
2690
|
}): {
|
|
2720
2691
|
/**
|
|
@@ -2722,14 +2693,12 @@ export declare const AssetDelivery: Readonly<{
|
|
|
2722
2693
|
* This field is private and should not be used, use `tag` instead.
|
|
2723
2694
|
*/
|
|
2724
2695
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2725
|
-
readonly tag: AssetDelivery_Tags.
|
|
2696
|
+
readonly tag: AssetDelivery_Tags.EmbeddedAndRemote;
|
|
2726
2697
|
readonly inner: Readonly<{
|
|
2727
|
-
binders: Array<Binder>;
|
|
2728
2698
|
output: SignOutput;
|
|
2729
2699
|
}>;
|
|
2730
2700
|
};
|
|
2731
2701
|
"new"(inner: {
|
|
2732
|
-
binders: Array<Binder>;
|
|
2733
2702
|
output: SignOutput;
|
|
2734
2703
|
}): {
|
|
2735
2704
|
/**
|
|
@@ -2737,9 +2706,8 @@ export declare const AssetDelivery: Readonly<{
|
|
|
2737
2706
|
* This field is private and should not be used, use `tag` instead.
|
|
2738
2707
|
*/
|
|
2739
2708
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2740
|
-
readonly tag: AssetDelivery_Tags.
|
|
2709
|
+
readonly tag: AssetDelivery_Tags.EmbeddedAndRemote;
|
|
2741
2710
|
readonly inner: Readonly<{
|
|
2742
|
-
binders: Array<Binder>;
|
|
2743
2711
|
output: SignOutput;
|
|
2744
2712
|
}>;
|
|
2745
2713
|
};
|
|
@@ -2749,48 +2717,51 @@ export declare const AssetDelivery: Readonly<{
|
|
|
2749
2717
|
* This field is private and should not be used, use `tag` instead.
|
|
2750
2718
|
*/
|
|
2751
2719
|
readonly [uniffiTypeNameSymbol]: "AssetDelivery";
|
|
2752
|
-
readonly tag: AssetDelivery_Tags.
|
|
2720
|
+
readonly tag: AssetDelivery_Tags.EmbeddedAndRemote;
|
|
2753
2721
|
readonly inner: Readonly<{
|
|
2754
|
-
binders: Array<Binder>;
|
|
2755
2722
|
output: SignOutput;
|
|
2756
2723
|
}>;
|
|
2757
2724
|
};
|
|
2758
2725
|
};
|
|
2759
2726
|
}>;
|
|
2760
2727
|
/**
|
|
2761
|
-
*
|
|
2728
|
+
* Where a static asset's manifest lives and, when it is in the asset, what comes back.
|
|
2762
2729
|
*
|
|
2763
|
-
* Embedded manifests
|
|
2764
|
-
*
|
|
2765
|
-
*
|
|
2766
|
-
* through its embedded manifest and permits an empty strategy list.
|
|
2730
|
+
* Embedded manifests are not indexed, so a watermark on one is refused: it could never lead back
|
|
2731
|
+
* to the manifest. Remote needs a soft binding the deployment resolves and never touches the
|
|
2732
|
+
* asset, so it names no output.
|
|
2767
2733
|
*/
|
|
2768
|
-
export type AssetDelivery = InstanceType<typeof AssetDelivery['Embedded' | 'Remote' | '
|
|
2734
|
+
export type AssetDelivery = InstanceType<typeof AssetDelivery['Embedded' | 'Remote' | 'EmbeddedAndRemote']>;
|
|
2769
2735
|
/**
|
|
2770
|
-
*
|
|
2771
|
-
* back; the format is how the asset's is known, stated or sniffed; the thumbnail is the claim
|
|
2772
|
-
* thumbnail the caller rendered, since the split-signer never sees the asset.
|
|
2736
|
+
* What one `sign` is told beyond the asset, its manifest and the plugins.
|
|
2773
2737
|
*/
|
|
2774
2738
|
export type SignOptions = {
|
|
2775
2739
|
delivery: AssetDelivery;
|
|
2776
|
-
|
|
2740
|
+
/**
|
|
2741
|
+
* The asset's media type; `None` reads it from the leading bytes.
|
|
2742
|
+
*/
|
|
2743
|
+
format?: string;
|
|
2744
|
+
/**
|
|
2745
|
+
* The claim thumbnail, rendered by the caller: the split signer never sees the asset.
|
|
2746
|
+
*/
|
|
2777
2747
|
thumbnail?: Thumbnail;
|
|
2748
|
+
softBindings: Array<SoftBindingSource>;
|
|
2778
2749
|
};
|
|
2779
2750
|
/**
|
|
2780
2751
|
* Generated factory for {@link SignOptions} record objects.
|
|
2781
2752
|
*/
|
|
2782
2753
|
export declare const SignOptions: Readonly<{
|
|
2783
|
-
create: (partial: Partial<SignOptions> & Required<Omit<SignOptions, "thumbnail">>) => SignOptions;
|
|
2784
|
-
new: (partial: Partial<SignOptions> & Required<Omit<SignOptions, "thumbnail">>) => SignOptions;
|
|
2754
|
+
create: (partial: Partial<SignOptions> & Required<Omit<SignOptions, "format" | "softBindings" | "thumbnail">>) => SignOptions;
|
|
2755
|
+
new: (partial: Partial<SignOptions> & Required<Omit<SignOptions, "format" | "softBindings" | "thumbnail">>) => SignOptions;
|
|
2785
2756
|
defaults: () => Partial<SignOptions>;
|
|
2786
2757
|
}>;
|
|
2787
2758
|
/**
|
|
2788
2759
|
* Result of [`AssetIssuer::sign`](super::AssetIssuer::sign): the sidecar to embed plus its active
|
|
2789
|
-
* C2PA manifest id. Remote and
|
|
2760
|
+
* C2PA manifest id. `Remote` and `EmbeddedAndRemote` persist that id; `Embedded` does not.
|
|
2790
2761
|
*/
|
|
2791
2762
|
export type SignOutcome = {
|
|
2792
2763
|
/**
|
|
2793
|
-
* The manifest sidecar to embed into the asset (see
|
|
2764
|
+
* The manifest sidecar to embed into the asset (see `embed`).
|
|
2794
2765
|
*/
|
|
2795
2766
|
sidecar: ArrayBuffer;
|
|
2796
2767
|
/**
|
|
@@ -2806,23 +2777,23 @@ export declare const SignOutcome: Readonly<{
|
|
|
2806
2777
|
new: (partial: Partial<SignOutcome> & Required<Omit<SignOutcome, never>>) => SignOutcome;
|
|
2807
2778
|
defaults: () => Partial<SignOutcome>;
|
|
2808
2779
|
}>;
|
|
2809
|
-
export declare enum
|
|
2780
|
+
export declare enum StreamOrigin_Tags {
|
|
2810
2781
|
Created = "Created",
|
|
2811
2782
|
Opened = "Opened"
|
|
2812
2783
|
}
|
|
2813
2784
|
/**
|
|
2814
|
-
* An origin a
|
|
2785
|
+
* An origin a stream states; see the core [`provenance::StreamOrigin`].
|
|
2815
2786
|
*/
|
|
2816
|
-
export declare const
|
|
2817
|
-
instanceOf: (obj: any) => obj is
|
|
2787
|
+
export declare const StreamOrigin: Readonly<{
|
|
2788
|
+
instanceOf: (obj: any) => obj is StreamOrigin;
|
|
2818
2789
|
Created: {
|
|
2819
2790
|
new (v0: CreatedOrigin): {
|
|
2820
2791
|
/**
|
|
2821
2792
|
* @private
|
|
2822
2793
|
* This field is private and should not be used, use `tag` instead.
|
|
2823
2794
|
*/
|
|
2824
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2825
|
-
readonly tag:
|
|
2795
|
+
readonly [uniffiTypeNameSymbol]: "StreamOrigin";
|
|
2796
|
+
readonly tag: StreamOrigin_Tags.Created;
|
|
2826
2797
|
readonly inner: Readonly<[CreatedOrigin]>;
|
|
2827
2798
|
};
|
|
2828
2799
|
"new"(v0: CreatedOrigin): {
|
|
@@ -2830,8 +2801,8 @@ export declare const Origin: Readonly<{
|
|
|
2830
2801
|
* @private
|
|
2831
2802
|
* This field is private and should not be used, use `tag` instead.
|
|
2832
2803
|
*/
|
|
2833
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2834
|
-
readonly tag:
|
|
2804
|
+
readonly [uniffiTypeNameSymbol]: "StreamOrigin";
|
|
2805
|
+
readonly tag: StreamOrigin_Tags.Created;
|
|
2835
2806
|
readonly inner: Readonly<[CreatedOrigin]>;
|
|
2836
2807
|
};
|
|
2837
2808
|
instanceOf(obj: any): obj is {
|
|
@@ -2839,8 +2810,8 @@ export declare const Origin: Readonly<{
|
|
|
2839
2810
|
* @private
|
|
2840
2811
|
* This field is private and should not be used, use `tag` instead.
|
|
2841
2812
|
*/
|
|
2842
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2843
|
-
readonly tag:
|
|
2813
|
+
readonly [uniffiTypeNameSymbol]: "StreamOrigin";
|
|
2814
|
+
readonly tag: StreamOrigin_Tags.Created;
|
|
2844
2815
|
readonly inner: Readonly<[CreatedOrigin]>;
|
|
2845
2816
|
};
|
|
2846
2817
|
};
|
|
@@ -2850,8 +2821,8 @@ export declare const Origin: Readonly<{
|
|
|
2850
2821
|
* @private
|
|
2851
2822
|
* This field is private and should not be used, use `tag` instead.
|
|
2852
2823
|
*/
|
|
2853
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2854
|
-
readonly tag:
|
|
2824
|
+
readonly [uniffiTypeNameSymbol]: "StreamOrigin";
|
|
2825
|
+
readonly tag: StreamOrigin_Tags.Opened;
|
|
2855
2826
|
readonly inner: Readonly<[OpenedOrigin]>;
|
|
2856
2827
|
};
|
|
2857
2828
|
"new"(v0: OpenedOrigin): {
|
|
@@ -2859,8 +2830,8 @@ export declare const Origin: Readonly<{
|
|
|
2859
2830
|
* @private
|
|
2860
2831
|
* This field is private and should not be used, use `tag` instead.
|
|
2861
2832
|
*/
|
|
2862
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2863
|
-
readonly tag:
|
|
2833
|
+
readonly [uniffiTypeNameSymbol]: "StreamOrigin";
|
|
2834
|
+
readonly tag: StreamOrigin_Tags.Opened;
|
|
2864
2835
|
readonly inner: Readonly<[OpenedOrigin]>;
|
|
2865
2836
|
};
|
|
2866
2837
|
instanceOf(obj: any): obj is {
|
|
@@ -2868,62 +2839,73 @@ export declare const Origin: Readonly<{
|
|
|
2868
2839
|
* @private
|
|
2869
2840
|
* This field is private and should not be used, use `tag` instead.
|
|
2870
2841
|
*/
|
|
2871
|
-
readonly [uniffiTypeNameSymbol]: "
|
|
2872
|
-
readonly tag:
|
|
2842
|
+
readonly [uniffiTypeNameSymbol]: "StreamOrigin";
|
|
2843
|
+
readonly tag: StreamOrigin_Tags.Opened;
|
|
2873
2844
|
readonly inner: Readonly<[OpenedOrigin]>;
|
|
2874
2845
|
};
|
|
2875
2846
|
};
|
|
2876
2847
|
}>;
|
|
2877
2848
|
/**
|
|
2878
|
-
* An origin a
|
|
2849
|
+
* An origin a stream states; see the core [`provenance::StreamOrigin`].
|
|
2879
2850
|
*/
|
|
2880
|
-
export type
|
|
2851
|
+
export type StreamOrigin = InstanceType<typeof StreamOrigin['Created' | 'Opened']>;
|
|
2881
2852
|
/**
|
|
2882
|
-
* The manifest a
|
|
2883
|
-
*
|
|
2853
|
+
* The manifest a stream's init segment is signed with: the asset spec's twin whose origin is a
|
|
2854
|
+
* [`StreamOrigin`], since an init segment has no store the SDK opens as the parent.
|
|
2884
2855
|
*/
|
|
2885
2856
|
export type StreamManifestSpec = {
|
|
2886
2857
|
title?: string;
|
|
2887
|
-
origin:
|
|
2858
|
+
origin: StreamOrigin;
|
|
2859
|
+
/**
|
|
2860
|
+
* Every action performed on the asset; the manifest states the list is complete (C2PA
|
|
2861
|
+
* `allActionsIncluded`).
|
|
2862
|
+
*/
|
|
2888
2863
|
actions: Array<Action>;
|
|
2889
2864
|
identity?: Identity;
|
|
2890
2865
|
assertions: Array<Assertion>;
|
|
2891
|
-
|
|
2866
|
+
/**
|
|
2867
|
+
* Keyed by the handle actions name them by.
|
|
2868
|
+
*/
|
|
2869
|
+
components: Map<string, Component>;
|
|
2892
2870
|
};
|
|
2893
2871
|
/**
|
|
2894
2872
|
* Generated factory for {@link StreamManifestSpec} record objects.
|
|
2895
2873
|
*/
|
|
2896
2874
|
export declare const StreamManifestSpec: Readonly<{
|
|
2897
|
-
create: (partial: Partial<StreamManifestSpec> & Required<Omit<StreamManifestSpec, "identity" | "title">>) => StreamManifestSpec;
|
|
2898
|
-
new: (partial: Partial<StreamManifestSpec> & Required<Omit<StreamManifestSpec, "identity" | "title">>) => StreamManifestSpec;
|
|
2875
|
+
create: (partial: Partial<StreamManifestSpec> & Required<Omit<StreamManifestSpec, "actions" | "assertions" | "components" | "identity" | "title">>) => StreamManifestSpec;
|
|
2876
|
+
new: (partial: Partial<StreamManifestSpec> & Required<Omit<StreamManifestSpec, "actions" | "assertions" | "components" | "identity" | "title">>) => StreamManifestSpec;
|
|
2899
2877
|
defaults: () => Partial<StreamManifestSpec>;
|
|
2900
2878
|
}>;
|
|
2901
2879
|
/**
|
|
2902
|
-
* One
|
|
2880
|
+
* One stream, from `init` to `stop` or `rotate`.
|
|
2903
2881
|
*
|
|
2904
|
-
* Carries the whole per-stream state, so it cannot be mistyped
|
|
2905
|
-
*
|
|
2906
|
-
*
|
|
2882
|
+
* Carries the whole per-stream state, so it cannot be mistyped or confused with another
|
|
2883
|
+
* stream's: every call after `init` goes through the handle that started it, and nothing about
|
|
2884
|
+
* the stream ever appears in a caller's argument list again. Once `stop` or a `rotate` succeeds
|
|
2885
|
+
* it refuses every call.
|
|
2907
2886
|
*/
|
|
2908
2887
|
export interface StreamSessionLike {
|
|
2909
2888
|
/**
|
|
2910
2889
|
* Sign one media (moof) segment from a [`RangeSource`]. Does not touch the signer channel;
|
|
2911
2890
|
* works through a signer outage. `rotation_due` flips when the key validity threshold
|
|
2912
|
-
* passes;
|
|
2891
|
+
* passes; then call `StreamIssuer.rotate` with this session.
|
|
2913
2892
|
*
|
|
2914
2893
|
* # Errors
|
|
2915
2894
|
*
|
|
2916
|
-
* Fails on a vault error,
|
|
2895
|
+
* Fails on a vault error, a segment that isn't a BMFF media segment, or with
|
|
2896
|
+
* `FAILED_PRECONDITION` (`SESSION_ENDED`) after `stop` or a `rotate`.
|
|
2917
2897
|
*/
|
|
2918
|
-
sign(
|
|
2898
|
+
sign(source: RangeSource, asyncOpts_?: {
|
|
2919
2899
|
signal: AbortSignal;
|
|
2920
2900
|
}): Promise<SegmentOutcome>;
|
|
2921
2901
|
/**
|
|
2922
|
-
* End the stream: forget its session key, so nothing can sign under it again.
|
|
2902
|
+
* End the stream: forget its session key, so nothing can sign under it again. Idempotent:
|
|
2903
|
+
* stopping an ended session succeeds. A failed stop can be retried.
|
|
2923
2904
|
*
|
|
2924
2905
|
* # Errors
|
|
2925
2906
|
*
|
|
2926
|
-
* Fails on a vault error
|
|
2907
|
+
* Fails on a vault error, or with `FAILED_PRECONDITION` (`SESSION_ENDED`) with another
|
|
2908
|
+
* `stop` or `rotate` in flight.
|
|
2927
2909
|
*/
|
|
2928
2910
|
stop(asyncOpts_?: {
|
|
2929
2911
|
signal: AbortSignal;
|
|
@@ -2934,11 +2916,12 @@ export interface StreamSessionLike {
|
|
|
2934
2916
|
*/
|
|
2935
2917
|
export type StreamSessionInterface = StreamSessionLike;
|
|
2936
2918
|
/**
|
|
2937
|
-
* One
|
|
2919
|
+
* One stream, from `init` to `stop` or `rotate`.
|
|
2938
2920
|
*
|
|
2939
|
-
* Carries the whole per-stream state, so it cannot be mistyped
|
|
2940
|
-
*
|
|
2941
|
-
*
|
|
2921
|
+
* Carries the whole per-stream state, so it cannot be mistyped or confused with another
|
|
2922
|
+
* stream's: every call after `init` goes through the handle that started it, and nothing about
|
|
2923
|
+
* the stream ever appears in a caller's argument list again. Once `stop` or a `rotate` succeeds
|
|
2924
|
+
* it refuses every call.
|
|
2942
2925
|
*/
|
|
2943
2926
|
export declare class StreamSession extends UniffiAbstractObject implements StreamSessionLike {
|
|
2944
2927
|
readonly [uniffiTypeNameSymbol] = "StreamSession";
|
|
@@ -2948,21 +2931,24 @@ export declare class StreamSession extends UniffiAbstractObject implements Strea
|
|
|
2948
2931
|
/**
|
|
2949
2932
|
* Sign one media (moof) segment from a [`RangeSource`]. Does not touch the signer channel;
|
|
2950
2933
|
* works through a signer outage. `rotation_due` flips when the key validity threshold
|
|
2951
|
-
* passes;
|
|
2934
|
+
* passes; then call `StreamIssuer.rotate` with this session.
|
|
2952
2935
|
*
|
|
2953
2936
|
* # Errors
|
|
2954
2937
|
*
|
|
2955
|
-
* Fails on a vault error,
|
|
2938
|
+
* Fails on a vault error, a segment that isn't a BMFF media segment, or with
|
|
2939
|
+
* `FAILED_PRECONDITION` (`SESSION_ENDED`) after `stop` or a `rotate`.
|
|
2956
2940
|
*/
|
|
2957
|
-
sign(
|
|
2941
|
+
sign(source: RangeSource, asyncOpts_?: {
|
|
2958
2942
|
signal: AbortSignal;
|
|
2959
2943
|
}): Promise<SegmentOutcome>;
|
|
2960
2944
|
/**
|
|
2961
|
-
* End the stream: forget its session key, so nothing can sign under it again.
|
|
2945
|
+
* End the stream: forget its session key, so nothing can sign under it again. Idempotent:
|
|
2946
|
+
* stopping an ended session succeeds. A failed stop can be retried.
|
|
2962
2947
|
*
|
|
2963
2948
|
* # Errors
|
|
2964
2949
|
*
|
|
2965
|
-
* Fails on a vault error
|
|
2950
|
+
* Fails on a vault error, or with `FAILED_PRECONDITION` (`SESSION_ENDED`) with another
|
|
2951
|
+
* `stop` or `rotate` in flight.
|
|
2966
2952
|
*/
|
|
2967
2953
|
stop(asyncOpts_?: {
|
|
2968
2954
|
signal: AbortSignal;
|
|
@@ -2993,25 +2979,8 @@ export declare const StreamStart: Readonly<{
|
|
|
2993
2979
|
defaults: () => Partial<StreamStart>;
|
|
2994
2980
|
}>;
|
|
2995
2981
|
/**
|
|
2996
|
-
*
|
|
2997
|
-
* `
|
|
2998
|
-
* for ES256); the SDK rewraps as `COSE_Key` for §19.4.4.
|
|
2999
|
-
*/
|
|
3000
|
-
export type VaultPublicKey = {
|
|
3001
|
-
kid: ArrayBuffer;
|
|
3002
|
-
publicKeySec1: ArrayBuffer;
|
|
3003
|
-
};
|
|
3004
|
-
/**
|
|
3005
|
-
* Generated factory for {@link VaultPublicKey} record objects.
|
|
3006
|
-
*/
|
|
3007
|
-
export declare const VaultPublicKey: Readonly<{
|
|
3008
|
-
create: (partial: Partial<VaultPublicKey> & Required<Omit<VaultPublicKey, never>>) => VaultPublicKey;
|
|
3009
|
-
new: (partial: Partial<VaultPublicKey> & Required<Omit<VaultPublicKey, never>>) => VaultPublicKey;
|
|
3010
|
-
defaults: () => Partial<VaultPublicKey>;
|
|
3011
|
-
}>;
|
|
3012
|
-
/**
|
|
3013
|
-
* Whether a fragmented-MP4 segment is the init (moov) or a media (moof) segment: which
|
|
3014
|
-
* [`StreamIssuer`](stream::StreamIssuer) entrypoint (`init` vs `sign`) a segment belongs to.
|
|
2982
|
+
* Whether a fragmented-MP4 segment is the init (moov) or a media (moof) segment: whether it goes
|
|
2983
|
+
* to `StreamIssuer.init` or `StreamSession.sign`.
|
|
3015
2984
|
*/
|
|
3016
2985
|
export declare enum SegmentKind {
|
|
3017
2986
|
Init = 0,
|
|
@@ -3034,25 +3003,25 @@ export interface PluginAuthor {
|
|
|
3034
3003
|
* Implement it correctly anyway, since the verify side dispatches on it and whatever
|
|
3035
3004
|
* signs a format is eventually verified by it.
|
|
3036
3005
|
*/
|
|
3037
|
-
sniff(
|
|
3006
|
+
sniff(source: RangeSource, asyncOpts_?: {
|
|
3038
3007
|
signal: AbortSignal;
|
|
3039
3008
|
}): Promise<string | undefined>;
|
|
3040
3009
|
/**
|
|
3041
3010
|
* The manifest window(s), or empty when none is present. MUST be byte-identical
|
|
3042
3011
|
* regardless of slot contents; the sign driver enforces that with a round-trip.
|
|
3043
3012
|
*/
|
|
3044
|
-
locate(
|
|
3013
|
+
locate(source: RangeSource, asyncOpts_?: {
|
|
3045
3014
|
signal: AbortSignal;
|
|
3046
|
-
}): Promise<Array<
|
|
3015
|
+
}): Promise<Array<ByteRange>>;
|
|
3047
3016
|
/**
|
|
3048
3017
|
* Reserve `reserve` bytes of manifest slot by writing container structure through
|
|
3049
|
-
* `
|
|
3050
|
-
* content hash and writes the signed manifest into them,
|
|
3051
|
-
*
|
|
3018
|
+
* `sink`, and return exactly where it landed. The core excludes those regions from the
|
|
3019
|
+
* content hash and writes the signed manifest into them, then checks that `locate`
|
|
3020
|
+
* still reports the same regions.
|
|
3052
3021
|
*/
|
|
3053
|
-
reserveSlot(
|
|
3022
|
+
reserveSlot(sink: RangeSink, reserve: bigint, asyncOpts_?: {
|
|
3054
3023
|
signal: AbortSignal;
|
|
3055
|
-
}): Promise<Array<
|
|
3024
|
+
}): Promise<Array<ByteRange>>;
|
|
3056
3025
|
}
|
|
3057
3026
|
/**
|
|
3058
3027
|
* A C2PA asset signer bound to a [`SignerClient`](super::client::SignerClient).
|
|
@@ -3060,16 +3029,14 @@ export interface PluginAuthor {
|
|
|
3060
3029
|
*/
|
|
3061
3030
|
export interface AssetIssuerLike {
|
|
3062
3031
|
/**
|
|
3063
|
-
* Sign an asset from a [`RangeSource`], returning the sidecar
|
|
3064
|
-
* `
|
|
3065
|
-
*
|
|
3066
|
-
* how the asset's format is known. `plugins` resolves a non-c2pa format (e.g. MXF); see the
|
|
3067
|
-
* module docs for the dispatch.
|
|
3032
|
+
* Sign an asset from a [`RangeSource`], returning the sidecar and the active manifest's id.
|
|
3033
|
+
* `options.delivery` says where the manifest lives and, through its output, where the signed
|
|
3034
|
+
* asset is written. `plugins` resolves a caller-written format; see the module docs.
|
|
3068
3035
|
*
|
|
3069
3036
|
* # Errors
|
|
3070
3037
|
*
|
|
3071
|
-
*
|
|
3072
|
-
*
|
|
3038
|
+
* A format that is no media type, that the bytes contradict or that neither names; an RPC,
|
|
3039
|
+
* hashing, authoring or protocol failure.
|
|
3073
3040
|
*/
|
|
3074
3041
|
sign(source: RangeSource, manifest: AssetManifestSpec, options: SignOptions, plugins: Array<PluginAuthor>, asyncOpts_?: {
|
|
3075
3042
|
signal: AbortSignal;
|
|
@@ -3091,43 +3058,42 @@ export declare class AssetIssuer extends UniffiAbstractObject implements AssetIs
|
|
|
3091
3058
|
/**
|
|
3092
3059
|
* Build a signer over an existing signer connection.
|
|
3093
3060
|
*/
|
|
3094
|
-
static create(client: SignerClientLike): AssetIssuerLike;
|
|
3061
|
+
static create(client: SignerClientLike, modules?: Array<string>): AssetIssuerLike;
|
|
3095
3062
|
/**
|
|
3096
|
-
* Sign an asset from a [`RangeSource`], returning the sidecar
|
|
3097
|
-
* `
|
|
3098
|
-
*
|
|
3099
|
-
* how the asset's format is known. `plugins` resolves a non-c2pa format (e.g. MXF); see the
|
|
3100
|
-
* module docs for the dispatch.
|
|
3063
|
+
* Sign an asset from a [`RangeSource`], returning the sidecar and the active manifest's id.
|
|
3064
|
+
* `options.delivery` says where the manifest lives and, through its output, where the signed
|
|
3065
|
+
* asset is written. `plugins` resolves a caller-written format; see the module docs.
|
|
3101
3066
|
*
|
|
3102
3067
|
* # Errors
|
|
3103
3068
|
*
|
|
3104
|
-
*
|
|
3105
|
-
*
|
|
3069
|
+
* A format that is no media type, that the bytes contradict or that neither names; an RPC,
|
|
3070
|
+
* hashing, authoring or protocol failure.
|
|
3106
3071
|
*/
|
|
3107
|
-
sign(source: RangeSource, manifest: AssetManifestSpec, options: SignOptions, plugins
|
|
3072
|
+
sign(source: RangeSource, manifest: AssetManifestSpec, options: SignOptions, plugins?: Array<PluginAuthor>, asyncOpts_?: {
|
|
3108
3073
|
signal: AbortSignal;
|
|
3109
3074
|
}): Promise<SignOutcome>;
|
|
3110
3075
|
uniffiDestroy(): void;
|
|
3111
3076
|
static instanceOf(obj_: any): obj_ is AssetIssuer;
|
|
3112
3077
|
}
|
|
3113
3078
|
/**
|
|
3114
|
-
*
|
|
3079
|
+
* Inserts invisible watermarks through the deployment's marking route.
|
|
3115
3080
|
*
|
|
3116
3081
|
* Separate from [`AssetIssuer`] because marking is a content edit, not a signing step: it
|
|
3117
|
-
*
|
|
3118
|
-
* rather than leaving anything downstream to infer them.
|
|
3082
|
+
* happens before signing, and it returns the actions it owes the manifest.
|
|
3119
3083
|
*/
|
|
3120
3084
|
export interface AssetMarkerLike {
|
|
3121
3085
|
/**
|
|
3122
|
-
* Mark an
|
|
3123
|
-
*
|
|
3086
|
+
* Mark an asset from a [`RangeSource`], writing the marked asset into `into` in place of
|
|
3087
|
+
* what it held, and return one `c2pa.watermarked.*` action per mark, in the order inserted.
|
|
3088
|
+
* Sign what `into` holds.
|
|
3124
3089
|
*
|
|
3125
3090
|
* # Errors
|
|
3126
3091
|
*
|
|
3127
|
-
*
|
|
3128
|
-
*
|
|
3092
|
+
* An unlisted algorithm, a format that is no media type or that the bytes contradict, an
|
|
3093
|
+
* asset above the upload ceiling, a source or sink that fails, or a marking route that
|
|
3094
|
+
* refused or answered out of contract.
|
|
3129
3095
|
*/
|
|
3130
|
-
mark(source: RangeSource, options: MarkOptions, asyncOpts_?: {
|
|
3096
|
+
mark(source: RangeSource, into: RangeSink, options: MarkOptions, asyncOpts_?: {
|
|
3131
3097
|
signal: AbortSignal;
|
|
3132
3098
|
}): Promise<MarkOutcome>;
|
|
3133
3099
|
}
|
|
@@ -3136,11 +3102,10 @@ export interface AssetMarkerLike {
|
|
|
3136
3102
|
*/
|
|
3137
3103
|
export type AssetMarkerInterface = AssetMarkerLike;
|
|
3138
3104
|
/**
|
|
3139
|
-
*
|
|
3105
|
+
* Inserts invisible watermarks through the deployment's marking route.
|
|
3140
3106
|
*
|
|
3141
3107
|
* Separate from [`AssetIssuer`] because marking is a content edit, not a signing step: it
|
|
3142
|
-
*
|
|
3143
|
-
* rather than leaving anything downstream to infer them.
|
|
3108
|
+
* happens before signing, and it returns the actions it owes the manifest.
|
|
3144
3109
|
*/
|
|
3145
3110
|
export declare class AssetMarker extends UniffiAbstractObject implements AssetMarkerLike {
|
|
3146
3111
|
readonly [uniffiTypeNameSymbol] = "AssetMarker";
|
|
@@ -3152,15 +3117,17 @@ export declare class AssetMarker extends UniffiAbstractObject implements AssetMa
|
|
|
3152
3117
|
*/
|
|
3153
3118
|
static create(client: SignerClientLike): AssetMarkerLike;
|
|
3154
3119
|
/**
|
|
3155
|
-
* Mark an
|
|
3156
|
-
*
|
|
3120
|
+
* Mark an asset from a [`RangeSource`], writing the marked asset into `into` in place of
|
|
3121
|
+
* what it held, and return one `c2pa.watermarked.*` action per mark, in the order inserted.
|
|
3122
|
+
* Sign what `into` holds.
|
|
3157
3123
|
*
|
|
3158
3124
|
* # Errors
|
|
3159
3125
|
*
|
|
3160
|
-
*
|
|
3161
|
-
*
|
|
3126
|
+
* An unlisted algorithm, a format that is no media type or that the bytes contradict, an
|
|
3127
|
+
* asset above the upload ceiling, a source or sink that fails, or a marking route that
|
|
3128
|
+
* refused or answered out of contract.
|
|
3162
3129
|
*/
|
|
3163
|
-
mark(source: RangeSource, options: MarkOptions, asyncOpts_?: {
|
|
3130
|
+
mark(source: RangeSource, into: RangeSink, options: MarkOptions, asyncOpts_?: {
|
|
3164
3131
|
signal: AbortSignal;
|
|
3165
3132
|
}): Promise<MarkOutcome>;
|
|
3166
3133
|
uniffiDestroy(): void;
|
|
@@ -3178,10 +3145,6 @@ export declare class AssetMarker extends UniffiAbstractObject implements AssetMa
|
|
|
3178
3145
|
* That is what makes [`MemorySink`]'s ceiling stop applying: there is no byte array to count in an
|
|
3179
3146
|
* `i32` and nothing resident, so a multi-GB master is signed at the disk's speed rather than the
|
|
3180
3147
|
* host thread's, and `bytes()` is not something anyone has to call.
|
|
3181
|
-
*
|
|
3182
|
-
* No lock. A positioned write to a file is one `pwrite`, which the OS already makes atomic per
|
|
3183
|
-
* call, and [`RangeWriter`] takes a shared borrow precisely so a backend like this pays nothing
|
|
3184
|
-
* for being shared.
|
|
3185
3148
|
*/
|
|
3186
3149
|
export interface FileSinkLike {
|
|
3187
3150
|
length(asyncOpts_?: {
|
|
@@ -3213,10 +3176,6 @@ export type FileSinkInterface = FileSinkLike;
|
|
|
3213
3176
|
* That is what makes [`MemorySink`]'s ceiling stop applying: there is no byte array to count in an
|
|
3214
3177
|
* `i32` and nothing resident, so a multi-GB master is signed at the disk's speed rather than the
|
|
3215
3178
|
* host thread's, and `bytes()` is not something anyone has to call.
|
|
3216
|
-
*
|
|
3217
|
-
* No lock. A positioned write to a file is one `pwrite`, which the OS already makes atomic per
|
|
3218
|
-
* call, and [`RangeWriter`] takes a shared borrow precisely so a backend like this pays nothing
|
|
3219
|
-
* for being shared.
|
|
3220
3179
|
*/
|
|
3221
3180
|
export declare class FileSink extends UniffiAbstractObject implements FileSinkLike {
|
|
3222
3181
|
readonly [uniffiTypeNameSymbol] = "FileSink";
|
|
@@ -3224,8 +3183,8 @@ export declare class FileSink extends UniffiAbstractObject implements FileSinkLi
|
|
|
3224
3183
|
readonly [pointerLiteralSymbol]: UniffiHandle;
|
|
3225
3184
|
private constructor();
|
|
3226
3185
|
/**
|
|
3227
|
-
* Create `path`, or truncate it if it is already there. What `
|
|
3228
|
-
*
|
|
3186
|
+
* Create `path`, or truncate it if it is already there. What a `sign` output wants: the
|
|
3187
|
+
* signed asset is written into it whole.
|
|
3229
3188
|
*
|
|
3230
3189
|
* # Errors
|
|
3231
3190
|
*
|
|
@@ -3233,9 +3192,9 @@ export declare class FileSink extends UniffiAbstractObject implements FileSinkLi
|
|
|
3233
3192
|
*/
|
|
3234
3193
|
static create(path: string): FileSinkLike;
|
|
3235
3194
|
/**
|
|
3236
|
-
* Open an existing `path` for reading and writing, keeping what is in it. What
|
|
3237
|
-
*
|
|
3238
|
-
*
|
|
3195
|
+
* Open an existing `path` for reading and writing, keeping what is in it. What `embed` wants:
|
|
3196
|
+
* the asset is already there and the manifest is written into it, so truncating it would
|
|
3197
|
+
* destroy the very thing being signed.
|
|
3239
3198
|
*
|
|
3240
3199
|
* # Errors
|
|
3241
3200
|
*
|
|
@@ -3324,70 +3283,8 @@ export declare class FileSource extends UniffiAbstractObject implements FileSour
|
|
|
3324
3283
|
static instanceOf(obj_: any): obj_ is FileSource;
|
|
3325
3284
|
}
|
|
3326
3285
|
/**
|
|
3327
|
-
*
|
|
3328
|
-
|
|
3329
|
-
export interface HeldBinderLike {
|
|
3330
|
-
derive(source: RangeSource, options: DeriveOptions, asyncOpts_?: {
|
|
3331
|
-
signal: AbortSignal;
|
|
3332
|
-
}): Promise<SoftBinding | undefined>;
|
|
3333
|
-
}
|
|
3334
|
-
/**
|
|
3335
|
-
* @deprecated Use `HeldBinderLike` instead.
|
|
3336
|
-
*/
|
|
3337
|
-
export type HeldBinderInterface = HeldBinderLike;
|
|
3338
|
-
/**
|
|
3339
|
-
* A binding you already hold, such as an out-of-band video ISCC. Reads nothing.
|
|
3340
|
-
*/
|
|
3341
|
-
export declare class HeldBinder extends UniffiAbstractObject implements HeldBinderLike {
|
|
3342
|
-
readonly [uniffiTypeNameSymbol] = "HeldBinder";
|
|
3343
|
-
readonly [destructorGuardSymbol]: UniffiGcObject;
|
|
3344
|
-
readonly [pointerLiteralSymbol]: UniffiHandle;
|
|
3345
|
-
/**
|
|
3346
|
-
* # Errors
|
|
3347
|
-
*
|
|
3348
|
-
* A binding with an empty algorithm or value.
|
|
3349
|
-
*/
|
|
3350
|
-
constructor(binding: SoftBinding);
|
|
3351
|
-
derive(source: RangeSource, options: DeriveOptions, asyncOpts_?: {
|
|
3352
|
-
signal: AbortSignal;
|
|
3353
|
-
}): Promise<SoftBinding | undefined>;
|
|
3354
|
-
uniffiDestroy(): void;
|
|
3355
|
-
static instanceOf(obj_: any): obj_ is HeldBinder;
|
|
3356
|
-
}
|
|
3357
|
-
/**
|
|
3358
|
-
* Local ISCC Image-Code for supported image formats.
|
|
3359
|
-
*/
|
|
3360
|
-
export interface IsccBinderLike {
|
|
3361
|
-
derive(source: RangeSource, options: DeriveOptions, asyncOpts_?: {
|
|
3362
|
-
signal: AbortSignal;
|
|
3363
|
-
}): Promise<SoftBinding | undefined>;
|
|
3364
|
-
}
|
|
3365
|
-
/**
|
|
3366
|
-
* @deprecated Use `IsccBinderLike` instead.
|
|
3367
|
-
*/
|
|
3368
|
-
export type IsccBinderInterface = IsccBinderLike;
|
|
3369
|
-
/**
|
|
3370
|
-
* Local ISCC Image-Code for supported image formats.
|
|
3371
|
-
*/
|
|
3372
|
-
export declare class IsccBinder extends UniffiAbstractObject implements IsccBinderLike {
|
|
3373
|
-
readonly [uniffiTypeNameSymbol] = "IsccBinder";
|
|
3374
|
-
readonly [destructorGuardSymbol]: UniffiGcObject;
|
|
3375
|
-
readonly [pointerLiteralSymbol]: UniffiHandle;
|
|
3376
|
-
constructor();
|
|
3377
|
-
derive(source: RangeSource, options: DeriveOptions, asyncOpts_?: {
|
|
3378
|
-
signal: AbortSignal;
|
|
3379
|
-
}): Promise<SoftBinding | undefined>;
|
|
3380
|
-
uniffiDestroy(): void;
|
|
3381
|
-
static instanceOf(obj_: any): obj_ is IsccBinder;
|
|
3382
|
-
}
|
|
3383
|
-
/**
|
|
3384
|
-
* An in-memory [`RangeSink`], for a caller that wants `embed`'s composed result back
|
|
3385
|
-
* without writing a custom sink. A **native** implementation of a `with_foreign`
|
|
3386
|
-
* interface (`#[uniffi::export]` on the trait impl, not the foreign callback path), so
|
|
3387
|
-
* a Python caller writes no subclass: `sink = MemorySink(data)`, pass it to `embed`,
|
|
3388
|
-
* then read `sink.bytes()` back. `&self`-only methods need interior mutability, so the
|
|
3389
|
-
* buffer is `Mutex`-guarded (contention is a non-issue: the SDK calls it from one task
|
|
3390
|
-
* at a time per sink).
|
|
3286
|
+
* An in-memory [`RangeSink`] for a caller that wants `embed`'s composed result back:
|
|
3287
|
+
* `sink = MemorySink(data)`, pass it to `embed`, then read `sink.bytes()`.
|
|
3391
3288
|
*
|
|
3392
3289
|
* # Size ceiling
|
|
3393
3290
|
*
|
|
@@ -3399,9 +3296,14 @@ export declare class IsccBinder extends UniffiAbstractObject implements IsccBind
|
|
|
3399
3296
|
* [`RangeSink`] over a file (or any store that seeks) for anything approaching that: the SDK
|
|
3400
3297
|
* writes ranges straight through it and never holds the asset.
|
|
3401
3298
|
*
|
|
3402
|
-
* Construction and `bytes()` each
|
|
3403
|
-
*
|
|
3404
|
-
*
|
|
3299
|
+
* Construction and `bytes()` each move the whole asset across the boundary once, on the calling
|
|
3300
|
+
* thread. A ranged sink pays neither.
|
|
3301
|
+
*
|
|
3302
|
+
* # Capacity
|
|
3303
|
+
*
|
|
3304
|
+
* The buffer never grows past its capacity: [`MemorySink::new`] allows 2 GiB, and
|
|
3305
|
+
* [`MemorySink::with_capacity`] names another. A write or `set_length` that would exceed it fails
|
|
3306
|
+
* `ResourceExhausted` without allocating.
|
|
3405
3307
|
*/
|
|
3406
3308
|
export interface MemorySinkLike {
|
|
3407
3309
|
/**
|
|
@@ -3431,13 +3333,8 @@ export interface MemorySinkLike {
|
|
|
3431
3333
|
*/
|
|
3432
3334
|
export type MemorySinkInterface = MemorySinkLike;
|
|
3433
3335
|
/**
|
|
3434
|
-
* An in-memory [`RangeSink`]
|
|
3435
|
-
*
|
|
3436
|
-
* interface (`#[uniffi::export]` on the trait impl, not the foreign callback path), so
|
|
3437
|
-
* a Python caller writes no subclass: `sink = MemorySink(data)`, pass it to `embed`,
|
|
3438
|
-
* then read `sink.bytes()` back. `&self`-only methods need interior mutability, so the
|
|
3439
|
-
* buffer is `Mutex`-guarded (contention is a non-issue: the SDK calls it from one task
|
|
3440
|
-
* at a time per sink).
|
|
3336
|
+
* An in-memory [`RangeSink`] for a caller that wants `embed`'s composed result back:
|
|
3337
|
+
* `sink = MemorySink(data)`, pass it to `embed`, then read `sink.bytes()`.
|
|
3441
3338
|
*
|
|
3442
3339
|
* # Size ceiling
|
|
3443
3340
|
*
|
|
@@ -3449,9 +3346,14 @@ export type MemorySinkInterface = MemorySinkLike;
|
|
|
3449
3346
|
* [`RangeSink`] over a file (or any store that seeks) for anything approaching that: the SDK
|
|
3450
3347
|
* writes ranges straight through it and never holds the asset.
|
|
3451
3348
|
*
|
|
3452
|
-
* Construction and `bytes()` each
|
|
3453
|
-
*
|
|
3454
|
-
*
|
|
3349
|
+
* Construction and `bytes()` each move the whole asset across the boundary once, on the calling
|
|
3350
|
+
* thread. A ranged sink pays neither.
|
|
3351
|
+
*
|
|
3352
|
+
* # Capacity
|
|
3353
|
+
*
|
|
3354
|
+
* The buffer never grows past its capacity: [`MemorySink::new`] allows 2 GiB, and
|
|
3355
|
+
* [`MemorySink::with_capacity`] names another. A write or `set_length` that would exceed it fails
|
|
3356
|
+
* `ResourceExhausted` without allocating.
|
|
3455
3357
|
*/
|
|
3456
3358
|
export declare class MemorySink extends UniffiAbstractObject implements MemorySinkLike {
|
|
3457
3359
|
readonly [uniffiTypeNameSymbol] = "MemorySink";
|
|
@@ -3463,6 +3365,15 @@ export declare class MemorySink extends UniffiAbstractObject implements MemorySi
|
|
|
3463
3365
|
* The buffer is at or above the 2 GiB a byte array can be counted in.
|
|
3464
3366
|
*/
|
|
3465
3367
|
constructor(data: ArrayBuffer);
|
|
3368
|
+
/**
|
|
3369
|
+
* A sink that refuses to grow past `capacity` bytes.
|
|
3370
|
+
*
|
|
3371
|
+
* # Errors
|
|
3372
|
+
*
|
|
3373
|
+
* The buffer is already larger than `capacity`, or at or above the 2 GiB a byte array can
|
|
3374
|
+
* be counted in.
|
|
3375
|
+
*/
|
|
3376
|
+
static withCapacity(data: ArrayBuffer, capacity: bigint): MemorySinkLike;
|
|
3466
3377
|
/**
|
|
3467
3378
|
* The buffer's current contents, e.g. after passing this sink through `embed`. A copy.
|
|
3468
3379
|
*
|
|
@@ -3488,11 +3399,8 @@ export declare class MemorySink extends UniffiAbstractObject implements MemorySi
|
|
|
3488
3399
|
static instanceOf(obj_: any): obj_ is MemorySink;
|
|
3489
3400
|
}
|
|
3490
3401
|
/**
|
|
3491
|
-
* An in-memory [`RangeSource`]
|
|
3492
|
-
*
|
|
3493
|
-
* `with_foreign` interface (`#[uniffi::export]` on the trait impl, not the foreign
|
|
3494
|
-
* callback path), so the generated binding is a plain constructible object and a Python
|
|
3495
|
-
* caller writes no subclass at all: `MemorySource(data)`.
|
|
3402
|
+
* An in-memory [`RangeSource`] for a caller that already holds the whole asset as bytes:
|
|
3403
|
+
* `MemorySource(data)`, no subclass.
|
|
3496
3404
|
*
|
|
3497
3405
|
* # Size ceiling
|
|
3498
3406
|
*
|
|
@@ -3502,9 +3410,10 @@ export declare class MemorySink extends UniffiAbstractObject implements MemorySi
|
|
|
3502
3410
|
* [`RangeSource`] over a file handle for anything approaching that: the SDK only ever asks for
|
|
3503
3411
|
* bounded ranges, so nothing else has to hold the asset.
|
|
3504
3412
|
*
|
|
3505
|
-
* Construction
|
|
3506
|
-
*
|
|
3507
|
-
* thread, and neither a ranged source nor
|
|
3413
|
+
* Construction moves the whole asset across the boundary once, on the calling thread; the SDK
|
|
3414
|
+
* then holds what arrived and answers every read as a window into it. That crossing is the one
|
|
3415
|
+
* part of a sign or verify the SDK cannot move off your thread, and neither a ranged source nor
|
|
3416
|
+
* [`FileSource`] pays it.
|
|
3508
3417
|
*/
|
|
3509
3418
|
export interface MemorySourceLike {
|
|
3510
3419
|
length(asyncOpts_?: {
|
|
@@ -3519,11 +3428,8 @@ export interface MemorySourceLike {
|
|
|
3519
3428
|
*/
|
|
3520
3429
|
export type MemorySourceInterface = MemorySourceLike;
|
|
3521
3430
|
/**
|
|
3522
|
-
* An in-memory [`RangeSource`]
|
|
3523
|
-
*
|
|
3524
|
-
* `with_foreign` interface (`#[uniffi::export]` on the trait impl, not the foreign
|
|
3525
|
-
* callback path), so the generated binding is a plain constructible object and a Python
|
|
3526
|
-
* caller writes no subclass at all: `MemorySource(data)`.
|
|
3431
|
+
* An in-memory [`RangeSource`] for a caller that already holds the whole asset as bytes:
|
|
3432
|
+
* `MemorySource(data)`, no subclass.
|
|
3527
3433
|
*
|
|
3528
3434
|
* # Size ceiling
|
|
3529
3435
|
*
|
|
@@ -3533,9 +3439,10 @@ export type MemorySourceInterface = MemorySourceLike;
|
|
|
3533
3439
|
* [`RangeSource`] over a file handle for anything approaching that: the SDK only ever asks for
|
|
3534
3440
|
* bounded ranges, so nothing else has to hold the asset.
|
|
3535
3441
|
*
|
|
3536
|
-
* Construction
|
|
3537
|
-
*
|
|
3538
|
-
* thread, and neither a ranged source nor
|
|
3442
|
+
* Construction moves the whole asset across the boundary once, on the calling thread; the SDK
|
|
3443
|
+
* then holds what arrived and answers every read as a window into it. That crossing is the one
|
|
3444
|
+
* part of a sign or verify the SDK cannot move off your thread, and neither a ranged source nor
|
|
3445
|
+
* [`FileSource`] pays it.
|
|
3539
3446
|
*/
|
|
3540
3447
|
export declare class MemorySource extends UniffiAbstractObject implements MemorySourceLike {
|
|
3541
3448
|
readonly [uniffiTypeNameSymbol] = "MemorySource";
|
|
@@ -3583,36 +3490,36 @@ export declare class SignerClient extends UniffiAbstractObject implements Signer
|
|
|
3583
3490
|
* `options` is malformed. The channel connects lazily, so an unreachable Signer
|
|
3584
3491
|
* surfaces on the first sign RPC instead.
|
|
3585
3492
|
*/
|
|
3586
|
-
static connect(endpoint: string, options
|
|
3493
|
+
static connect(endpoint: string, options?: ConnectOptions, asyncOpts_?: {
|
|
3587
3494
|
signal: AbortSignal;
|
|
3588
3495
|
}): Promise<SignerClientLike>;
|
|
3589
3496
|
uniffiDestroy(): void;
|
|
3590
3497
|
static instanceOf(obj_: any): obj_ is SignerClient;
|
|
3591
3498
|
}
|
|
3592
3499
|
/**
|
|
3593
|
-
* A
|
|
3500
|
+
* A stream signer bound to a [`SignerClient`](super::client::SignerClient) and a
|
|
3594
3501
|
* [`SigningVault`]. Construct once with [`create`](Self::create), then `init` a session and
|
|
3595
3502
|
* sign every segment through the [`StreamSession`] it returns.
|
|
3596
3503
|
*/
|
|
3597
3504
|
export interface StreamIssuerLike {
|
|
3598
3505
|
/**
|
|
3599
|
-
* Open the stream
|
|
3600
|
-
*
|
|
3601
|
-
*
|
|
3506
|
+
* Open the stream `id`: mint its first session key under `options.rotation_policy`, sign the
|
|
3507
|
+
* init (moov) segment `source` under `options.delivery`, and hand back a [`StreamSession`]
|
|
3508
|
+
* to sign through.
|
|
3602
3509
|
*
|
|
3603
3510
|
* On `rotation_due`, call [`StreamIssuer::rotate`], not this.
|
|
3604
3511
|
*
|
|
3605
3512
|
* # Errors
|
|
3606
3513
|
*
|
|
3607
|
-
* Fails on signer RPC failure, a vault error, or
|
|
3608
|
-
* segment.
|
|
3514
|
+
* Fails on signer RPC failure, a vault error, or a `source` that isn't a BMFF init segment.
|
|
3609
3515
|
*/
|
|
3610
|
-
init(
|
|
3516
|
+
init(id: string, source: RangeSource, manifest: StreamManifestSpec, options: InitOptions, asyncOpts_?: {
|
|
3611
3517
|
signal: AbortSignal;
|
|
3612
3518
|
}): Promise<StreamStart>;
|
|
3613
3519
|
/**
|
|
3614
3520
|
* Succeed `session` on the stream it already names, signing a fresh init (moov) segment
|
|
3615
|
-
* under a new key and forgetting the outgoing one.
|
|
3521
|
+
* under a new key and forgetting the outgoing one. Once this succeeds, `session` refuses to
|
|
3522
|
+
* sign; until then it keeps signing, so a failed rotation can be retried.
|
|
3616
3523
|
*
|
|
3617
3524
|
* The stream id comes from `session`, so a rotation cannot be pointed at the wrong stream,
|
|
3618
3525
|
* and the retired key cannot be left behind: it would still sign for the rest of its
|
|
@@ -3620,9 +3527,10 @@ export interface StreamIssuerLike {
|
|
|
3620
3527
|
*
|
|
3621
3528
|
* # Errors
|
|
3622
3529
|
*
|
|
3623
|
-
* As [`StreamIssuer::init`]
|
|
3530
|
+
* As [`StreamIssuer::init`], plus `FAILED_PRECONDITION` (`SESSION_ENDED`) for a session
|
|
3531
|
+
* already stopped or rotated, or with a `stop` or `rotate` in flight.
|
|
3624
3532
|
*/
|
|
3625
|
-
rotate(session: StreamSessionLike,
|
|
3533
|
+
rotate(session: StreamSessionLike, source: RangeSource, manifest: StreamManifestSpec, options: InitOptions, asyncOpts_?: {
|
|
3626
3534
|
signal: AbortSignal;
|
|
3627
3535
|
}): Promise<StreamStart>;
|
|
3628
3536
|
}
|
|
@@ -3631,7 +3539,7 @@ export interface StreamIssuerLike {
|
|
|
3631
3539
|
*/
|
|
3632
3540
|
export type StreamIssuerInterface = StreamIssuerLike;
|
|
3633
3541
|
/**
|
|
3634
|
-
* A
|
|
3542
|
+
* A stream signer bound to a [`SignerClient`](super::client::SignerClient) and a
|
|
3635
3543
|
* [`SigningVault`]. Construct once with [`create`](Self::create), then `init` a session and
|
|
3636
3544
|
* sign every segment through the [`StreamSession`] it returns.
|
|
3637
3545
|
*/
|
|
@@ -3645,23 +3553,23 @@ export declare class StreamIssuer extends UniffiAbstractObject implements Stream
|
|
|
3645
3553
|
*/
|
|
3646
3554
|
static create(client: SignerClientLike, vault: SigningVault): StreamIssuerLike;
|
|
3647
3555
|
/**
|
|
3648
|
-
* Open the stream
|
|
3649
|
-
*
|
|
3650
|
-
*
|
|
3556
|
+
* Open the stream `id`: mint its first session key under `options.rotation_policy`, sign the
|
|
3557
|
+
* init (moov) segment `source` under `options.delivery`, and hand back a [`StreamSession`]
|
|
3558
|
+
* to sign through.
|
|
3651
3559
|
*
|
|
3652
3560
|
* On `rotation_due`, call [`StreamIssuer::rotate`], not this.
|
|
3653
3561
|
*
|
|
3654
3562
|
* # Errors
|
|
3655
3563
|
*
|
|
3656
|
-
* Fails on signer RPC failure, a vault error, or
|
|
3657
|
-
* segment.
|
|
3564
|
+
* Fails on signer RPC failure, a vault error, or a `source` that isn't a BMFF init segment.
|
|
3658
3565
|
*/
|
|
3659
|
-
init(
|
|
3566
|
+
init(id: string, source: RangeSource, manifest: StreamManifestSpec, options: InitOptions, asyncOpts_?: {
|
|
3660
3567
|
signal: AbortSignal;
|
|
3661
3568
|
}): Promise<StreamStart>;
|
|
3662
3569
|
/**
|
|
3663
3570
|
* Succeed `session` on the stream it already names, signing a fresh init (moov) segment
|
|
3664
|
-
* under a new key and forgetting the outgoing one.
|
|
3571
|
+
* under a new key and forgetting the outgoing one. Once this succeeds, `session` refuses to
|
|
3572
|
+
* sign; until then it keeps signing, so a failed rotation can be retried.
|
|
3665
3573
|
*
|
|
3666
3574
|
* The stream id comes from `session`, so a rotation cannot be pointed at the wrong stream,
|
|
3667
3575
|
* and the retired key cannot be left behind: it would still sign for the rest of its
|
|
@@ -3669,24 +3577,26 @@ export declare class StreamIssuer extends UniffiAbstractObject implements Stream
|
|
|
3669
3577
|
*
|
|
3670
3578
|
* # Errors
|
|
3671
3579
|
*
|
|
3672
|
-
* As [`StreamIssuer::init`]
|
|
3580
|
+
* As [`StreamIssuer::init`], plus `FAILED_PRECONDITION` (`SESSION_ENDED`) for a session
|
|
3581
|
+
* already stopped or rotated, or with a `stop` or `rotate` in flight.
|
|
3673
3582
|
*/
|
|
3674
|
-
rotate(session: StreamSessionLike,
|
|
3583
|
+
rotate(session: StreamSessionLike, source: RangeSource, manifest: StreamManifestSpec, options: InitOptions, asyncOpts_?: {
|
|
3675
3584
|
signal: AbortSignal;
|
|
3676
3585
|
}): Promise<StreamStart>;
|
|
3677
3586
|
uniffiDestroy(): void;
|
|
3678
3587
|
static instanceOf(obj_: any): obj_ is StreamIssuer;
|
|
3679
3588
|
}
|
|
3680
3589
|
/**
|
|
3681
|
-
* A per-session ECDSA key store, implemented by the host. `mint` returns a fresh
|
|
3682
|
-
*
|
|
3683
|
-
*
|
|
3684
|
-
*
|
|
3590
|
+
* A per-session ECDSA key store, implemented by the host. `mint` returns a fresh key that will be
|
|
3591
|
+
* signed under for the request's `validity_period`, so give it that lifetime and let the store
|
|
3592
|
+
* expire it; a new input to minting arrives as a field of `MintRequest`. `sign` produces the raw
|
|
3593
|
+
* ECDSA signature over `payload` with the key `kid` names (the SDK frames it into COSE);
|
|
3594
|
+
* `forget` drops a retired key. Every method may raise to abort.
|
|
3685
3595
|
*/
|
|
3686
3596
|
export interface SigningVault {
|
|
3687
|
-
mint(
|
|
3597
|
+
mint(request: MintRequest, asyncOpts_?: {
|
|
3688
3598
|
signal: AbortSignal;
|
|
3689
|
-
}): Promise<
|
|
3599
|
+
}): Promise<SessionKey>;
|
|
3690
3600
|
sign(kid: ArrayBuffer, payload: ArrayBuffer, asyncOpts_?: {
|
|
3691
3601
|
signal: AbortSignal;
|
|
3692
3602
|
}): Promise<ArrayBuffer>;
|
|
@@ -3743,13 +3653,6 @@ declare const _default$1: Readonly<{
|
|
|
3743
3653
|
lift(value: UniffiByteArray): AssetDelivery;
|
|
3744
3654
|
lower(value: AssetDelivery, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3745
3655
|
};
|
|
3746
|
-
FfiConverterTypeAssetFormat: {
|
|
3747
|
-
readFromCursor(c: Cursor): AssetFormat;
|
|
3748
|
-
writeIntoCursor(value: AssetFormat, c: Cursor): void;
|
|
3749
|
-
allocationSize(value: AssetFormat): number;
|
|
3750
|
-
lift(value: UniffiByteArray): AssetFormat;
|
|
3751
|
-
lower(value: AssetFormat, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3752
|
-
};
|
|
3753
3656
|
FfiConverterTypeAssetIssuer: FfiConverterObject<AssetIssuerLike>;
|
|
3754
3657
|
FfiConverterTypeAssetManifestSpec: {
|
|
3755
3658
|
readFromCursor(c: Cursor): AssetManifestSpec;
|
|
@@ -3766,7 +3669,20 @@ declare const _default$1: Readonly<{
|
|
|
3766
3669
|
lift(value: UniffiByteArray): AssetOrigin;
|
|
3767
3670
|
lower(value: AssetOrigin, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3768
3671
|
};
|
|
3769
|
-
|
|
3672
|
+
FfiConverterTypeBlock: {
|
|
3673
|
+
readFromCursor(c: Cursor): Block;
|
|
3674
|
+
writeIntoCursor(value: Block, c: Cursor): void;
|
|
3675
|
+
allocationSize(value: Block): number;
|
|
3676
|
+
lift(value: UniffiByteArray): Block;
|
|
3677
|
+
lower(value: Block, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3678
|
+
};
|
|
3679
|
+
FfiConverterTypeByteRange: {
|
|
3680
|
+
readFromCursor(c: Cursor): ByteRange;
|
|
3681
|
+
writeIntoCursor(value: ByteRange, c: Cursor): void;
|
|
3682
|
+
allocationSize(value: ByteRange): number;
|
|
3683
|
+
lift(value: UniffiByteArray): ByteRange;
|
|
3684
|
+
lower(value: ByteRange, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3685
|
+
};
|
|
3770
3686
|
FfiConverterTypeCode: {
|
|
3771
3687
|
readFromCursor(c: Cursor): Code;
|
|
3772
3688
|
writeIntoCursor(value: Code, c: Cursor): void;
|
|
@@ -3788,6 +3704,14 @@ declare const _default$1: Readonly<{
|
|
|
3788
3704
|
lift(value: UniffiByteArray): ComponentEvent;
|
|
3789
3705
|
lower(value: ComponentEvent, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3790
3706
|
};
|
|
3707
|
+
FfiConverterTypeCompute: FfiConverterObjectWithCallbacks<Compute>;
|
|
3708
|
+
FfiConverterTypeComputeRequest: {
|
|
3709
|
+
readFromCursor(c: Cursor): ComputeRequest;
|
|
3710
|
+
writeIntoCursor(value: ComputeRequest, c: Cursor): void;
|
|
3711
|
+
allocationSize(value: ComputeRequest): number;
|
|
3712
|
+
lift(value: UniffiByteArray): ComputeRequest;
|
|
3713
|
+
lower(value: ComputeRequest, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3714
|
+
};
|
|
3791
3715
|
FfiConverterTypeConnectOptions: {
|
|
3792
3716
|
readFromCursor(c: Cursor): ConnectOptions;
|
|
3793
3717
|
writeIntoCursor(value: ConnectOptions, c: Cursor): void;
|
|
@@ -3809,13 +3733,6 @@ declare const _default$1: Readonly<{
|
|
|
3809
3733
|
lift(value: UniffiByteArray): CustomAction;
|
|
3810
3734
|
lower(value: CustomAction, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3811
3735
|
};
|
|
3812
|
-
FfiConverterTypeDeriveOptions: {
|
|
3813
|
-
readFromCursor(c: Cursor): DeriveOptions;
|
|
3814
|
-
writeIntoCursor(value: DeriveOptions, c: Cursor): void;
|
|
3815
|
-
allocationSize(value: DeriveOptions): number;
|
|
3816
|
-
lift(value: UniffiByteArray): DeriveOptions;
|
|
3817
|
-
lower(value: DeriveOptions, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3818
|
-
};
|
|
3819
3736
|
FfiConverterTypeEmbedOptions: {
|
|
3820
3737
|
readFromCursor(c: Cursor): EmbedOptions;
|
|
3821
3738
|
writeIntoCursor(value: EmbedOptions, c: Cursor): void;
|
|
@@ -3832,7 +3749,6 @@ declare const _default$1: Readonly<{
|
|
|
3832
3749
|
};
|
|
3833
3750
|
FfiConverterTypeFileSink: FfiConverterObject<FileSinkLike>;
|
|
3834
3751
|
FfiConverterTypeFileSource: FfiConverterObject<FileSourceLike>;
|
|
3835
|
-
FfiConverterTypeHeldBinder: FfiConverterObject<HeldBinderLike>;
|
|
3836
3752
|
FfiConverterTypeIdentity: {
|
|
3837
3753
|
readFromCursor(c: Cursor): Identity;
|
|
3838
3754
|
writeIntoCursor(value: Identity, c: Cursor): void;
|
|
@@ -3847,12 +3763,12 @@ declare const _default$1: Readonly<{
|
|
|
3847
3763
|
lift(value: UniffiByteArray): Ingredient;
|
|
3848
3764
|
lower(value: Ingredient, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3849
3765
|
};
|
|
3850
|
-
|
|
3851
|
-
readFromCursor(c: Cursor):
|
|
3852
|
-
writeIntoCursor(value:
|
|
3853
|
-
allocationSize(value:
|
|
3854
|
-
lift(value: UniffiByteArray):
|
|
3855
|
-
lower(value:
|
|
3766
|
+
FfiConverterTypeIngredientKind: {
|
|
3767
|
+
readFromCursor(c: Cursor): IngredientKind;
|
|
3768
|
+
writeIntoCursor(value: IngredientKind, c: Cursor): void;
|
|
3769
|
+
allocationSize(value: IngredientKind): number;
|
|
3770
|
+
lift(value: UniffiByteArray): IngredientKind;
|
|
3771
|
+
lower(value: IngredientKind, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3856
3772
|
};
|
|
3857
3773
|
FfiConverterTypeInitOptions: {
|
|
3858
3774
|
readFromCursor(c: Cursor): InitOptions;
|
|
@@ -3868,7 +3784,6 @@ declare const _default$1: Readonly<{
|
|
|
3868
3784
|
lift(value: UniffiByteArray): InitOutcome;
|
|
3869
3785
|
lower(value: InitOutcome, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3870
3786
|
};
|
|
3871
|
-
FfiConverterTypeIsccBinder: FfiConverterObject<IsccBinderLike>;
|
|
3872
3787
|
FfiConverterTypeJsonObject: FfiConverter<UniffiByteArray, string>;
|
|
3873
3788
|
FfiConverterTypeJsonValue: FfiConverter<UniffiByteArray, string>;
|
|
3874
3789
|
FfiConverterTypeMarkOptions: {
|
|
@@ -3887,6 +3802,13 @@ declare const _default$1: Readonly<{
|
|
|
3887
3802
|
};
|
|
3888
3803
|
FfiConverterTypeMemorySink: FfiConverterObject<MemorySinkLike>;
|
|
3889
3804
|
FfiConverterTypeMemorySource: FfiConverterObject<MemorySourceLike>;
|
|
3805
|
+
FfiConverterTypeMintRequest: {
|
|
3806
|
+
readFromCursor(c: Cursor): MintRequest;
|
|
3807
|
+
writeIntoCursor(value: MintRequest, c: Cursor): void;
|
|
3808
|
+
allocationSize(value: MintRequest): number;
|
|
3809
|
+
lift(value: UniffiByteArray): MintRequest;
|
|
3810
|
+
lower(value: MintRequest, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3811
|
+
};
|
|
3890
3812
|
FfiConverterTypeOpenedOrigin: {
|
|
3891
3813
|
readFromCursor(c: Cursor): OpenedOrigin;
|
|
3892
3814
|
writeIntoCursor(value: OpenedOrigin, c: Cursor): void;
|
|
@@ -3894,22 +3816,8 @@ declare const _default$1: Readonly<{
|
|
|
3894
3816
|
lift(value: UniffiByteArray): OpenedOrigin;
|
|
3895
3817
|
lower(value: OpenedOrigin, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3896
3818
|
};
|
|
3897
|
-
FfiConverterTypeOrigin: {
|
|
3898
|
-
readFromCursor(c: Cursor): Origin;
|
|
3899
|
-
writeIntoCursor(value: Origin, c: Cursor): void;
|
|
3900
|
-
allocationSize(value: Origin): number;
|
|
3901
|
-
lift(value: UniffiByteArray): Origin;
|
|
3902
|
-
lower(value: Origin, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3903
|
-
};
|
|
3904
3819
|
FfiConverterTypeRangeSink: FfiConverterObjectWithCallbacks<RangeSink>;
|
|
3905
3820
|
FfiConverterTypeRangeSource: FfiConverterObjectWithCallbacks<RangeSource>;
|
|
3906
|
-
FfiConverterTypeRegion: {
|
|
3907
|
-
readFromCursor(c: Cursor): Region;
|
|
3908
|
-
writeIntoCursor(value: Region, c: Cursor): void;
|
|
3909
|
-
allocationSize(value: Region): number;
|
|
3910
|
-
lift(value: UniffiByteArray): Region;
|
|
3911
|
-
lower(value: Region, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3912
|
-
};
|
|
3913
3821
|
FfiConverterTypeRotationPolicy: {
|
|
3914
3822
|
readFromCursor(c: Cursor): RotationPolicy;
|
|
3915
3823
|
writeIntoCursor(value: RotationPolicy, c: Cursor): void;
|
|
@@ -3917,6 +3825,13 @@ declare const _default$1: Readonly<{
|
|
|
3917
3825
|
lift(value: UniffiByteArray): RotationPolicy;
|
|
3918
3826
|
lower(value: RotationPolicy, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3919
3827
|
};
|
|
3828
|
+
FfiConverterTypeScope: {
|
|
3829
|
+
readFromCursor(c: Cursor): Scope;
|
|
3830
|
+
writeIntoCursor(value: Scope, c: Cursor): void;
|
|
3831
|
+
allocationSize(value: Scope): number;
|
|
3832
|
+
lift(value: UniffiByteArray): Scope;
|
|
3833
|
+
lower(value: Scope, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3834
|
+
};
|
|
3920
3835
|
FfiConverterTypeSdkError: {
|
|
3921
3836
|
readFromCursor(c: Cursor): SdkError;
|
|
3922
3837
|
writeIntoCursor(value: SdkError, c: Cursor): void;
|
|
@@ -3938,6 +3853,13 @@ declare const _default$1: Readonly<{
|
|
|
3938
3853
|
lift(value: UniffiByteArray): SegmentOutcome;
|
|
3939
3854
|
lower(value: SegmentOutcome, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3940
3855
|
};
|
|
3856
|
+
FfiConverterTypeSessionKey: {
|
|
3857
|
+
readFromCursor(c: Cursor): SessionKey;
|
|
3858
|
+
writeIntoCursor(value: SessionKey, c: Cursor): void;
|
|
3859
|
+
allocationSize(value: SessionKey): number;
|
|
3860
|
+
lift(value: UniffiByteArray): SessionKey;
|
|
3861
|
+
lower(value: SessionKey, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3862
|
+
};
|
|
3941
3863
|
FfiConverterTypeSignOptions: {
|
|
3942
3864
|
readFromCursor(c: Cursor): SignOptions;
|
|
3943
3865
|
writeIntoCursor(value: SignOptions, c: Cursor): void;
|
|
@@ -3967,6 +3889,20 @@ declare const _default$1: Readonly<{
|
|
|
3967
3889
|
lift(value: UniffiByteArray): SoftBinding;
|
|
3968
3890
|
lower(value: SoftBinding, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3969
3891
|
};
|
|
3892
|
+
FfiConverterTypeSoftBindingSource: {
|
|
3893
|
+
readFromCursor(c: Cursor): SoftBindingSource;
|
|
3894
|
+
writeIntoCursor(value: SoftBindingSource, c: Cursor): void;
|
|
3895
|
+
allocationSize(value: SoftBindingSource): number;
|
|
3896
|
+
lift(value: UniffiByteArray): SoftBindingSource;
|
|
3897
|
+
lower(value: SoftBindingSource, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3898
|
+
};
|
|
3899
|
+
FfiConverterTypeSoftwareAgent: {
|
|
3900
|
+
readFromCursor(c: Cursor): SoftwareAgent;
|
|
3901
|
+
writeIntoCursor(value: SoftwareAgent, c: Cursor): void;
|
|
3902
|
+
allocationSize(value: SoftwareAgent): number;
|
|
3903
|
+
lift(value: UniffiByteArray): SoftwareAgent;
|
|
3904
|
+
lower(value: SoftwareAgent, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3905
|
+
};
|
|
3970
3906
|
FfiConverterTypeStandardAction: {
|
|
3971
3907
|
readFromCursor(c: Cursor): StandardAction;
|
|
3972
3908
|
writeIntoCursor(value: StandardAction, c: Cursor): void;
|
|
@@ -3989,6 +3925,13 @@ declare const _default$1: Readonly<{
|
|
|
3989
3925
|
lift(value: UniffiByteArray): StreamManifestSpec;
|
|
3990
3926
|
lower(value: StreamManifestSpec, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3991
3927
|
};
|
|
3928
|
+
FfiConverterTypeStreamOrigin: {
|
|
3929
|
+
readFromCursor(c: Cursor): StreamOrigin;
|
|
3930
|
+
writeIntoCursor(value: StreamOrigin, c: Cursor): void;
|
|
3931
|
+
allocationSize(value: StreamOrigin): number;
|
|
3932
|
+
lift(value: UniffiByteArray): StreamOrigin;
|
|
3933
|
+
lower(value: StreamOrigin, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3934
|
+
};
|
|
3992
3935
|
FfiConverterTypeStreamSession: FfiConverterObject<StreamSessionLike>;
|
|
3993
3936
|
FfiConverterTypeStreamStart: {
|
|
3994
3937
|
readFromCursor(c: Cursor): StreamStart;
|
|
@@ -4004,15 +3947,14 @@ declare const _default$1: Readonly<{
|
|
|
4004
3947
|
lift(value: UniffiByteArray): Thumbnail;
|
|
4005
3948
|
lower(value: Thumbnail, alloc: RustBufferAllocator): UniffiByteArray;
|
|
4006
3949
|
};
|
|
4007
|
-
|
|
4008
|
-
|
|
4009
|
-
|
|
4010
|
-
|
|
4011
|
-
|
|
4012
|
-
|
|
4013
|
-
lift(value: UniffiByteArray): VaultPublicKey;
|
|
4014
|
-
lower(value: VaultPublicKey, alloc: RustBufferAllocator): UniffiByteArray;
|
|
3950
|
+
FfiConverterTypeTimespan: {
|
|
3951
|
+
readFromCursor(c: Cursor): Timespan;
|
|
3952
|
+
writeIntoCursor(value: Timespan, c: Cursor): void;
|
|
3953
|
+
allocationSize(value: Timespan): number;
|
|
3954
|
+
lift(value: UniffiByteArray): Timespan;
|
|
3955
|
+
lower(value: Timespan, alloc: RustBufferAllocator): UniffiByteArray;
|
|
4015
3956
|
};
|
|
3957
|
+
FfiConverterTypeUrl: FfiConverter<UniffiByteArray, string>;
|
|
4016
3958
|
};
|
|
4017
3959
|
}>;
|
|
4018
3960
|
//#endregion
|