@nvisy/sdk 0.40.0 → 0.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5967,6 +5967,94 @@ interface paths {
5967
5967
  patch?: never;
5968
5968
  trace?: never;
5969
5969
  };
5970
+ "/workspaces/{workspaceSlug}/detections/{detectionId}/intermediates/": {
5971
+ parameters: {
5972
+ query?: never;
5973
+ header?: never;
5974
+ path?: never;
5975
+ cookie?: never;
5976
+ };
5977
+ /**
5978
+ * Get detection intermediates
5979
+ * @description Returns the detection's enrichment intermediates — an image's OCR layout, an audio clip's transcript, or tokenized text — as an object with a `parts` list, each part carrying its path `id`, `modality`, and the extracted `artifact`, so a client can search the content and add entities the analysis missed. A detection whose analysis ran no enricher has no intermediates (404).
5980
+ */
5981
+ get: {
5982
+ parameters: {
5983
+ query?: never;
5984
+ header?: never;
5985
+ path: {
5986
+ /** @description URL-safe workspace identifier. */
5987
+ workspaceSlug: string;
5988
+ /** @description Opaque identifier of the detection. */
5989
+ detectionId: components["schemas"]["DetectionId"];
5990
+ };
5991
+ cookie?: never;
5992
+ };
5993
+ requestBody?: never;
5994
+ responses: {
5995
+ 200: {
5996
+ headers: {
5997
+ [name: string]: unknown;
5998
+ };
5999
+ content: {
6000
+ "application/json": components["schemas"]["ArtifactSet"];
6001
+ };
6002
+ };
6003
+ /**
6004
+ * @description HTTP error response representation with security-conscious design.
6005
+ *
6006
+ * This struct contains all the information needed to serialize an error
6007
+ * response, including the error name, message, HTTP status code, resource
6008
+ * information, and user-friendly messages.
6009
+ */
6010
+ 401: {
6011
+ headers: {
6012
+ [name: string]: unknown;
6013
+ };
6014
+ content: {
6015
+ "application/json": components["schemas"]["ErrorResponse"];
6016
+ };
6017
+ };
6018
+ /**
6019
+ * @description HTTP error response representation with security-conscious design.
6020
+ *
6021
+ * This struct contains all the information needed to serialize an error
6022
+ * response, including the error name, message, HTTP status code, resource
6023
+ * information, and user-friendly messages.
6024
+ */
6025
+ 403: {
6026
+ headers: {
6027
+ [name: string]: unknown;
6028
+ };
6029
+ content: {
6030
+ "application/json": components["schemas"]["ErrorResponse"];
6031
+ };
6032
+ };
6033
+ /**
6034
+ * @description HTTP error response representation with security-conscious design.
6035
+ *
6036
+ * This struct contains all the information needed to serialize an error
6037
+ * response, including the error name, message, HTTP status code, resource
6038
+ * information, and user-friendly messages.
6039
+ */
6040
+ 404: {
6041
+ headers: {
6042
+ [name: string]: unknown;
6043
+ };
6044
+ content: {
6045
+ "application/json": components["schemas"]["ErrorResponse"];
6046
+ };
6047
+ };
6048
+ };
6049
+ };
6050
+ put?: never;
6051
+ post?: never;
6052
+ delete?: never;
6053
+ options?: never;
6054
+ head?: never;
6055
+ patch?: never;
6056
+ trace?: never;
6057
+ };
5970
6058
  "/workspaces/{workspaceSlug}/redactions/{redactionId}/review": {
5971
6059
  parameters: {
5972
6060
  query?: never;
@@ -9452,11 +9540,34 @@ interface components {
9452
9540
  /** @description The JWT token string (only shown once on creation). */
9453
9541
  token: string;
9454
9542
  };
9543
+ ArtifactSet: {
9544
+ parts: ({
9545
+ artifact: components["schemas"]["Tokens"];
9546
+ id: string[];
9547
+ /** @constant */
9548
+ modality: "text";
9549
+ } | {
9550
+ artifact: components["schemas"]["Layout"];
9551
+ id: string[];
9552
+ /** @constant */
9553
+ modality: "image";
9554
+ } | {
9555
+ artifact: components["schemas"]["Transcription"];
9556
+ id: string[];
9557
+ /** @constant */
9558
+ modality: "audio";
9559
+ } | {
9560
+ artifact: components["schemas"]["Tokens"];
9561
+ id: string[];
9562
+ /** @constant */
9563
+ modality: "tabular";
9564
+ })[];
9565
+ };
9455
9566
  /**
9456
9567
  * @description Author-supplied rationale for a redaction: *under what authority* it was made.
9457
9568
  *
9458
9569
  * Where the matched selection rule answers *which rule fired*, an
9459
- * `Attribution` answers *why the policy demanded it* a compliance clause, an
9570
+ * `Attribution` answers *why the policy demanded it*, a compliance clause, an
9460
9571
  * internal policy, a data-handling rule. A policy author attaches it to a
9461
9572
  * selection rule (`Rule::because` in `elide-redaction`); the anonymizer records
9462
9573
  * it on the entity's [`Redaction`] event so an audit can trace a change back to
@@ -9503,31 +9614,42 @@ interface components {
9503
9614
  /** @description What the reviewer says this is. */
9504
9615
  label: components["schemas"]["LabelRef"];
9505
9616
  /**
9506
- * @description Where it sits, in the coordinates of the group it joins.
9617
+ * @description Where it sits, in the coordinates of the part it joins.
9507
9618
  *
9508
- * For text in a container, that is the body's decoded stream —
9509
- * a DOCX's `word/document.xml` text *is* the body, not a part.
9510
- * A caller who has raw file bytes rather than a decoded offset
9511
- * (a reviewer selecting rendered text, say) leaves `range`
9512
- * empty and fills [`TextLocation::source`] instead, which the
9513
- * engine reverse-resolves.
9619
+ * Each medium addresses its own way: text a character range
9620
+ * over the decoded stream, images a bounding box, audio a time
9621
+ * span, tabular a row and column. A DOCX's
9622
+ * `word/document.xml` text belongs to the document part
9623
+ * itself, not to a nested one.
9514
9624
  *
9625
+ * For text specifically, a caller holding raw file bytes
9626
+ * rather than a decoded offset — a reviewer selecting rendered
9627
+ * text, say — leaves [`TextLocation::range`] empty and fills
9628
+ * [`TextLocation::source`] instead, which the engine
9629
+ * reverse-resolves. The other three have no such alternative:
9630
+ * their coordinates are the only way in.
9631
+ *
9632
+ * [`TextLocation::range`]: elide::modality::text::TextLocation::range
9515
9633
  * [`TextLocation::source`]: elide::modality::text::TextLocation::source
9516
9634
  */
9517
9635
  location: components["schemas"]["AudioLocation"];
9518
9636
  /**
9519
- * @description The container part this belongs to, e.g.
9520
- * `"word/media/image1.png"`. `None` puts it on the body.
9637
+ * @description The part this belongs to, as a path: `["report.docx"]` for
9638
+ * the document itself, `["report.docx", "word/media/image1.png"]`
9639
+ * for media it embeds. `None` means the request's sole
9640
+ * document, which is the common case and saves a caller
9641
+ * naming what it already sent.
9521
9642
  *
9522
- * For the media a container embeds, which the report holds as
9523
- * its own group: an image entity lives under its part, and an
9524
- * addition to one has nowhere to go without naming it.
9643
+ * Nested media needs this: the report holds an embedded image
9644
+ * as its own part, and an addition to one has nowhere to go
9645
+ * without naming it. Text usually does not where a span came
9646
+ * from is already in `TextLocation::source`, which carries the
9647
+ * part alongside the raw range.
9525
9648
  *
9526
- * Text does not need this. A container's text is its body, and
9527
- * where a span came from is already in `TextLocation::source`,
9528
- * which carries the part alongside the raw range.
9649
+ * `None` is an error when the request carried several
9650
+ * documents, since there is then no sole document to mean.
9529
9651
  */
9530
- part?: string;
9652
+ part?: string[];
9531
9653
  /** @description The rationale, when one was given. */
9532
9654
  reason?: string;
9533
9655
  };
@@ -9713,14 +9835,14 @@ interface components {
9713
9835
  *
9714
9836
  * Carries the encoded audio bytes; an optional filename aids diagnostics
9715
9837
  * and encoding inference (the container format a decoder should expect).
9716
- * The recognizable text a timestamped transcript is *not* held here;
9838
+ * The recognizable text, a timestamped transcript, is *not* held here;
9717
9839
  * a speech-to-text [`Enricher`] stamps it onto the call's
9718
- * [`artifacts`], keeping
9840
+ * [`artifact`], keeping
9719
9841
  * `AudioData` the codec's payload alone.
9720
9842
  *
9721
9843
  * [`Audio`]: super::Audio
9722
- * [`Enricher`]: crate::recognition::Enricher
9723
- * [`artifacts`]: crate::recognition::RecognizerContext::artifacts
9844
+ * [`Enricher`]: crate::enrichment::Enricher
9845
+ * [`artifact`]: crate::recognition::RecognizerContext::artifact
9724
9846
  */
9725
9847
  AudioData: {
9726
9848
  /** @description Original filename, when known. */
@@ -9773,7 +9895,7 @@ interface components {
9773
9895
  * @description Tamper-evident audit trail: every contributing detection, the fusion
9774
9896
  * event if any, and the redaction that hid it, as a hash-linked DAG. It is
9775
9897
  * also the single source of truth for whether a reviewer
9776
- * [suppressed](Self::is_suppressed) the entity a suppression is a
9898
+ * [suppressed](Self::is_suppressed) the entity, a suppression is a
9777
9899
  * [`Manual`] event on this trail, not a separate flag.
9778
9900
  *
9779
9901
  * [`Manual`]: crate::entity::audit::AuditKind::Manual
@@ -9810,7 +9932,7 @@ interface components {
9810
9932
  location: components["schemas"]["AudioLocation"];
9811
9933
  /**
9812
9934
  * @description Byte range of the match in the *recognized text* it was found in (the
9813
- * OCR layout text, the audio transcript, or the text payload itself)
9935
+ * OCR layout text, the audio transcript, or the text payload itself),
9814
9936
  * the stable key back into that enrichment artifact, where the rich
9815
9937
  * context lives (which OCR block, which speaker) that the geometric
9816
9938
  * [`location`] cannot hold. `None` for entities not found via text
@@ -9826,11 +9948,11 @@ interface components {
9826
9948
  * for a nearby value.
9827
9949
  *
9828
9950
  * Out-of-band by nature: a hint is *not* a sub-span of the value it
9829
- * informs it lives elsewhere in the source (a table's column header, a
9951
+ * informs; it lives elsewhere in the source (a table's column header, a
9830
9952
  * JSON object key, a log field name). So `location` points at where the
9831
9953
  * hint text actually sits, and `data` is the hint text itself. Carrying
9832
9954
  * the location (rather than a bare string) lets a confidence boost record
9833
- * *which* hint lifted a score and *where* it came from provenance a
9955
+ * *which* hint lifted a score and *where* it came from, provenance a
9834
9956
  * review consumer can resolve back to the document.
9835
9957
  *
9836
9958
  * Mirrors [`Entity`]'s `location` + `data` shape, so the same
@@ -9864,7 +9986,7 @@ interface components {
9864
9986
  /**
9865
9987
  * @description A human override, outside automatic detection: an entity a reviewer added by
9866
9988
  * hand, or a detected one they marked to ignore. Its provenance is a person's
9867
- * decision, not a recognizer's so the trail records *why* (an
9989
+ * decision, not a recognizer's, so the trail records *why* (an
9868
9990
  * [`Attribution`], when supplied). *Who* made the override is the event's
9869
9991
  * [`source`], not a payload field.
9870
9992
  *
@@ -9880,7 +10002,7 @@ interface components {
9880
10002
  /**
9881
10003
  * @description Which human decision this records: including a missed entity, or
9882
10004
  * suppressing a detected one. This is the authority on whether the entity
9883
- * is redacted [`AuditLog::is_suppressed`] reads it, so there is no
10005
+ * is redacted, [`AuditLog::is_suppressed`] reads it, so there is no
9884
10006
  * separate flag to keep in sync.
9885
10007
  *
9886
10008
  * [`AuditLog::is_suppressed`]: crate::entity::audit::AuditLog::is_suppressed
@@ -10046,16 +10168,18 @@ interface components {
10046
10168
  */
10047
10169
  context: components["schemas"]["DocumentContext"];
10048
10170
  /**
10049
- * @description The detections: elide's own report, body and container
10050
- * parts, each entity carrying its provenance chain.
10171
+ * @description The detections: elide's own report, every document and the
10172
+ * parts nested in one, each entity carrying its provenance
10173
+ * chain.
10051
10174
  *
10052
- * Edit it through [`Report`]'s own API — [`include`],
10053
- * [`suppress`], [`entities`] — for the decisions elide models.
10175
+ * Edit it through [`Report`]'s own API — [`include_part`],
10176
+ * [`suppress_part`], [`part_entities`] — for the decisions
10177
+ * elide models.
10054
10178
  *
10055
10179
  * [`Report`]: elide::Report
10056
- * [`include`]: elide::Report::include
10057
- * [`suppress`]: elide::Report::suppress
10058
- * [`entities`]: elide::Report::entities
10180
+ * [`include_part`]: elide::Report::include_part
10181
+ * [`suppress_part`]: elide::Report::suppress_part
10182
+ * [`part_entities`]: elide::Report::part_entities
10059
10183
  */
10060
10184
  report: components["schemas"]["Report"];
10061
10185
  /**
@@ -10385,7 +10509,7 @@ interface components {
10385
10509
  ConfidenceThreshold: number;
10386
10510
  /**
10387
10511
  * @description A competing detection of a *different* label over the same span was resolved
10388
- * against this (winning) entity the loser is recorded, not dropped.
10512
+ * against this (winning) entity, the loser is recorded, not dropped.
10389
10513
  */
10390
10514
  Conflict: {
10391
10515
  /** @description The loser's confidence at resolution time. */
@@ -10801,7 +10925,7 @@ interface components {
10801
10925
  * @description The coarseness a [`GeneralizeDate`] reduces a date/timestamp to.
10802
10926
  *
10803
10927
  * Every rendering is an ISO-8601 form, so the output is locale-independent
10804
- * by construction no localized month names or week markers to configure.
10928
+ * by construction, no localized month names or week markers to configure.
10805
10929
  */
10806
10930
  DateGranularity: "year" | "year_month" | "hour";
10807
10931
  /**
@@ -11298,7 +11422,7 @@ interface components {
11298
11422
  * version chain (lineage); import origin (connection and remote key) lives in
11299
11423
  * the `workspace_file_imports` satellite.
11300
11424
  */
11301
- FileKind: "original" | "redacted" | "audit" | "review";
11425
+ FileKind: "original" | "redacted" | "audit" | "review" | "intermediate";
11302
11426
  /**
11303
11427
  * @description Generic paginated response wrapper.
11304
11428
  *
@@ -11480,31 +11604,42 @@ interface components {
11480
11604
  /** @description What the reviewer says this is. */
11481
11605
  label: components["schemas"]["LabelRef"];
11482
11606
  /**
11483
- * @description Where it sits, in the coordinates of the group it joins.
11607
+ * @description Where it sits, in the coordinates of the part it joins.
11608
+ *
11609
+ * Each medium addresses its own way: text a character range
11610
+ * over the decoded stream, images a bounding box, audio a time
11611
+ * span, tabular a row and column. A DOCX's
11612
+ * `word/document.xml` text belongs to the document part
11613
+ * itself, not to a nested one.
11484
11614
  *
11485
- * For text in a container, that is the body's decoded stream —
11486
- * a DOCX's `word/document.xml` text *is* the body, not a part.
11487
- * A caller who has raw file bytes rather than a decoded offset
11488
- * (a reviewer selecting rendered text, say) leaves `range`
11489
- * empty and fills [`TextLocation::source`] instead, which the
11490
- * engine reverse-resolves.
11615
+ * For text specifically, a caller holding raw file bytes
11616
+ * rather than a decoded offset a reviewer selecting rendered
11617
+ * text, say leaves [`TextLocation::range`] empty and fills
11618
+ * [`TextLocation::source`] instead, which the engine
11619
+ * reverse-resolves. The other three have no such alternative:
11620
+ * their coordinates are the only way in.
11491
11621
  *
11622
+ * [`TextLocation::range`]: elide::modality::text::TextLocation::range
11492
11623
  * [`TextLocation::source`]: elide::modality::text::TextLocation::source
11493
11624
  */
11494
11625
  location: components["schemas"]["ImageLocation"];
11495
11626
  /**
11496
- * @description The container part this belongs to, e.g.
11497
- * `"word/media/image1.png"`. `None` puts it on the body.
11627
+ * @description The part this belongs to, as a path: `["report.docx"]` for
11628
+ * the document itself, `["report.docx", "word/media/image1.png"]`
11629
+ * for media it embeds. `None` means the request's sole
11630
+ * document, which is the common case and saves a caller
11631
+ * naming what it already sent.
11498
11632
  *
11499
- * For the media a container embeds, which the report holds as
11500
- * its own group: an image entity lives under its part, and an
11501
- * addition to one has nowhere to go without naming it.
11633
+ * Nested media needs this: the report holds an embedded image
11634
+ * as its own part, and an addition to one has nowhere to go
11635
+ * without naming it. Text usually does not where a span came
11636
+ * from is already in `TextLocation::source`, which carries the
11637
+ * part alongside the raw range.
11502
11638
  *
11503
- * Text does not need this. A container's text is its body, and
11504
- * where a span came from is already in `TextLocation::source`,
11505
- * which carries the part alongside the raw range.
11639
+ * `None` is an error when the request carried several
11640
+ * documents, since there is then no sole document to mean.
11506
11641
  */
11507
- part?: string;
11642
+ part?: string[];
11508
11643
  /** @description The rationale, when one was given. */
11509
11644
  reason?: string;
11510
11645
  };
@@ -11748,7 +11883,7 @@ interface components {
11748
11883
  * @description Tamper-evident audit trail: every contributing detection, the fusion
11749
11884
  * event if any, and the redaction that hid it, as a hash-linked DAG. It is
11750
11885
  * also the single source of truth for whether a reviewer
11751
- * [suppressed](Self::is_suppressed) the entity a suppression is a
11886
+ * [suppressed](Self::is_suppressed) the entity, a suppression is a
11752
11887
  * [`Manual`] event on this trail, not a separate flag.
11753
11888
  *
11754
11889
  * [`Manual`]: crate::entity::audit::AuditKind::Manual
@@ -11785,7 +11920,7 @@ interface components {
11785
11920
  location: components["schemas"]["ImageLocation"];
11786
11921
  /**
11787
11922
  * @description Byte range of the match in the *recognized text* it was found in (the
11788
- * OCR layout text, the audio transcript, or the text payload itself)
11923
+ * OCR layout text, the audio transcript, or the text payload itself),
11789
11924
  * the stable key back into that enrichment artifact, where the rich
11790
11925
  * context lives (which OCR block, which speaker) that the geometric
11791
11926
  * [`location`] cannot hold. `None` for entities not found via text
@@ -11801,11 +11936,11 @@ interface components {
11801
11936
  * for a nearby value.
11802
11937
  *
11803
11938
  * Out-of-band by nature: a hint is *not* a sub-span of the value it
11804
- * informs it lives elsewhere in the source (a table's column header, a
11939
+ * informs; it lives elsewhere in the source (a table's column header, a
11805
11940
  * JSON object key, a log field name). So `location` points at where the
11806
11941
  * hint text actually sits, and `data` is the hint text itself. Carrying
11807
11942
  * the location (rather than a bare string) lets a confidence boost record
11808
- * *which* hint lifted a score and *where* it came from provenance a
11943
+ * *which* hint lifted a score and *where* it came from, provenance a
11809
11944
  * review consumer can resolve back to the document.
11810
11945
  *
11811
11946
  * Mirrors [`Entity`]'s `location` + `data` shape, so the same
@@ -11844,7 +11979,7 @@ interface components {
11844
11979
  /**
11845
11980
  * @description A human override, outside automatic detection: an entity a reviewer added by
11846
11981
  * hand, or a detected one they marked to ignore. Its provenance is a person's
11847
- * decision, not a recognizer's so the trail records *why* (an
11982
+ * decision, not a recognizer's, so the trail records *why* (an
11848
11983
  * [`Attribution`], when supplied). *Who* made the override is the event's
11849
11984
  * [`source`], not a payload field.
11850
11985
  *
@@ -11860,7 +11995,7 @@ interface components {
11860
11995
  /**
11861
11996
  * @description Which human decision this records: including a missed entity, or
11862
11997
  * suppressing a detected one. This is the authority on whether the entity
11863
- * is redacted [`AuditLog::is_suppressed`] reads it, so there is no
11998
+ * is redacted, [`AuditLog::is_suppressed`] reads it, so there is no
11864
11999
  * separate flag to keep in sync.
11865
12000
  *
11866
12001
  * [`AuditLog::is_suppressed`]: crate::entity::audit::AuditLog::is_suppressed
@@ -12129,7 +12264,7 @@ interface components {
12129
12264
  *
12130
12265
  * # Identity
12131
12266
  *
12132
- * Labels are identified by [`id`] a stable lowercase `snake_case`
12267
+ * Labels are identified by [`id`], a stable lowercase `snake_case`
12133
12268
  * string (`"phone_number"`), never localized, and the catalog key that a
12134
12269
  * [`LabelRef`] resolves through. Selectors match by id. Derived equality
12135
12270
  * is *structural*: two labels with the same id but different
@@ -12140,7 +12275,7 @@ interface components {
12140
12275
  * The display name and description are localized per [`LanguageTag`].
12141
12276
  * English (`"en"`) is required at construction and is the fallback when a
12142
12277
  * requested locale is absent, so [`localization`] always returns some
12143
- * text NER and LLM read the analysis language's name and description to
12278
+ * text, NER and LLM read the analysis language's name and description to
12144
12279
  * prompt the model, keyed by the stable id.
12145
12280
  *
12146
12281
  * # Category and tags
@@ -12150,7 +12285,7 @@ interface components {
12150
12285
  * labels ship with one; a custom label has none unless set.
12151
12286
  *
12152
12287
  * [`tags`] is a free-form list of *cross-cutting* markers a policy selector
12153
- * matches against sensitivity flags a label may carry several of (`pii`,
12288
+ * matches against, sensitivity flags a label may carry several of (`pii`,
12154
12289
  * `phi`, `pci`, `sad`, `secret`). Distinct from the category: a label has at
12155
12290
  * most one category but any number of tags. Custom labels can ship with zero
12156
12291
  * of either.
@@ -12197,7 +12332,7 @@ interface components {
12197
12332
  * @description A label's human-facing text in one language: a display name and an
12198
12333
  * optional fuller description.
12199
12334
  *
12200
- * The `name` is a short, natural-language phrase (`"phone number"`) the
12335
+ * The `name` is a short, natural-language phrase (`"phone number"`), the
12201
12336
  * label a zero-shot NER model like GLiNER matches on, and the primary
12202
12337
  * text an LLM prompt shows. The `description` is optional extra guidance
12203
12338
  * for backends that consume it (GLiNER-2.0's bi-encoder, an LLM); leave
@@ -12354,6 +12489,52 @@ interface components {
12354
12489
  * [`RecognizerContext`]: crate::recognition::RecognizerContext
12355
12490
  */
12356
12491
  Languages: components["schemas"]["Language"][];
12492
+ /**
12493
+ * @description An image's recognized text, laid out in space.
12494
+ *
12495
+ * An ordered set of [`LayoutBlock`]s (the recognized text regions). The flat
12496
+ * [`text`], the blocks joined, is what a recognizer
12497
+ * inspects; [`resolve`] maps a byte range of that text back
12498
+ * to the [`ImageLocation`] it occupies, using the blocks' (and their
12499
+ * words') bounding boxes. Empty when the backend recognized nothing.
12500
+ *
12501
+ * [`text`]: Self::text
12502
+ * [`resolve`]: Self::resolve
12503
+ */
12504
+ Layout: {
12505
+ /** @description Blocks in reading order. */
12506
+ blocks: components["schemas"]["LayoutBlock"][];
12507
+ /**
12508
+ * @description The blocks' text joined by [`BLOCK_SEPARATOR`], cached so recognition
12509
+ * and byte-range resolution share one flat string.
12510
+ */
12511
+ text: string;
12512
+ };
12513
+ /**
12514
+ * @description One recognized region of an image: its bounding box and text, optionally
12515
+ * broken into per-word boxes.
12516
+ */
12517
+ LayoutBlock: {
12518
+ /** @description Bounding region of the block in image coordinates. */
12519
+ region: components["schemas"]["ImageLocation"];
12520
+ /** @description Recognized text for this block. */
12521
+ text: string;
12522
+ /**
12523
+ * @description Per-word boxes within the block, when the backend emitted them.
12524
+ * Empty otherwise; resolution then falls back to the block region.
12525
+ * @default []
12526
+ */
12527
+ words?: components["schemas"]["LayoutWord"][];
12528
+ };
12529
+ /** @description One word within a [`LayoutBlock`], with its own bounding box. */
12530
+ LayoutWord: {
12531
+ /** @description Per-word confidence, when reported. */
12532
+ confidence?: components["schemas"]["Confidence"];
12533
+ /** @description Bounding region of the word in image coordinates. */
12534
+ region: components["schemas"]["ImageLocation"];
12535
+ /** @description The word text, as it appears in the block text. */
12536
+ text: string;
12537
+ };
12357
12538
  /**
12358
12539
  * @description What a redacted output leaks about the original it replaced.
12359
12540
  *
@@ -12361,7 +12542,7 @@ interface components {
12361
12542
  * < Partial < Irrecoverable`. Surfaced through
12362
12543
  * [`Operator::leak_profile`] for policy authoring and audit reporting.
12363
12544
  *
12364
- * [`Operator::leak_profile`]: crate::operator::Operator::leak_profile
12545
+ * [`Operator::leak_profile`]: crate::redaction::Operator::leak_profile
12365
12546
  */
12366
12547
  LeakProfile: "recoverable" | "partial" | "irrecoverable";
12367
12548
  /** @description Query parameters for listing files. */
@@ -12441,7 +12622,7 @@ interface components {
12441
12622
  *
12442
12623
  * The reusable mechanism behind any text that varies by language: a
12443
12624
  * [`Label`]'s display name and description, a redaction operator's bucket
12444
- * label, and so on. English (`"en"`) is the conventional anchor
12625
+ * label, and so on. English (`"en"`) is the conventional anchor,
12445
12626
  * constructors seed it, and [`resolve`] falls back to it (then to any
12446
12627
  * entry) when a requested locale is absent, so a caller that supplied
12447
12628
  * English always gets *some* value.
@@ -12471,7 +12652,7 @@ interface components {
12471
12652
  rememberMe?: boolean;
12472
12653
  };
12473
12654
  /**
12474
- * @description Which human decision a [`Manual`] event records the reviewer actions on a
12655
+ * @description Which human decision a [`Manual`] event records, the reviewer actions on a
12475
12656
  * finding: [`Flag`](ManualIntent::Flag) a miss, [`Suppress`](ManualIntent::Suppress)
12476
12657
  * a false positive, or [`Amend`](ManualIntent::Amend) an existing finding.
12477
12658
  */
@@ -12584,9 +12765,9 @@ interface components {
12584
12765
  version?: string;
12585
12766
  };
12586
12767
  /**
12587
- * @description Model detail for a model-backed recognizer or enricher: which model it
12588
- * called and the tokens that cost. Absent from a pure-CPU component (a
12589
- * pattern recognizer, a language enricher).
12768
+ * @description The model a model-backed recognizer or enricher called, and its token cost.
12769
+ *
12770
+ * Absent from a pure-CPU component (a pattern recognizer, a language enricher).
12590
12771
  */
12591
12772
  ModelUsage: {
12592
12773
  /** @description Model name the backend called (e.g. `"gpt-4o"`, `"gliner-multi"`). */
@@ -13660,42 +13841,27 @@ interface components {
13660
13841
  acceptInvite: boolean;
13661
13842
  };
13662
13843
  Report: {
13663
- body: ({
13844
+ parts: ({
13664
13845
  entities: components["schemas"]["TextEntity"][];
13846
+ id: string[];
13665
13847
  /** @constant */
13666
13848
  modality: "text";
13667
13849
  } | {
13668
13850
  entities: components["schemas"]["ImageEntity"][];
13851
+ id: string[];
13669
13852
  /** @constant */
13670
13853
  modality: "image";
13671
13854
  } | {
13672
13855
  entities: components["schemas"]["AudioEntity"][];
13856
+ id: string[];
13673
13857
  /** @constant */
13674
13858
  modality: "audio";
13675
13859
  } | {
13676
13860
  entities: components["schemas"]["TabularEntity"][];
13861
+ id: string[];
13677
13862
  /** @constant */
13678
13863
  modality: "tabular";
13679
- }) | null;
13680
- parts: {
13681
- [key: string]: {
13682
- entities: components["schemas"]["TextEntity"][];
13683
- /** @constant */
13684
- modality: "text";
13685
- } | {
13686
- entities: components["schemas"]["ImageEntity"][];
13687
- /** @constant */
13688
- modality: "image";
13689
- } | {
13690
- entities: components["schemas"]["AudioEntity"][];
13691
- /** @constant */
13692
- modality: "audio";
13693
- } | {
13694
- entities: components["schemas"]["TabularEntity"][];
13695
- /** @constant */
13696
- modality: "tabular";
13697
- };
13698
- };
13864
+ })[];
13699
13865
  usage?: components["schemas"]["UsageReport"];
13700
13866
  };
13701
13867
  /**
@@ -13730,6 +13896,8 @@ interface components {
13730
13896
  RetentionOverride: {
13731
13897
  /** @description Overrides audit-blob retention when set. */
13732
13898
  auditLogs?: components["schemas"]["Retention"];
13899
+ /** @description Overrides enrichment-intermediate retention when set. */
13900
+ intermediates?: components["schemas"]["Retention"];
13733
13901
  /** @description Overrides redacted-document retention when set. */
13734
13902
  redactedDocuments?: components["schemas"]["Retention"];
13735
13903
  };
@@ -13745,6 +13913,13 @@ interface components {
13745
13913
  * }
13746
13914
  */
13747
13915
  auditLogs?: components["schemas"]["Retention"];
13916
+ /**
13917
+ * @description Retention for enrichment intermediates (OCR layout, transcript).
13918
+ * @default {
13919
+ * "mode": "forever"
13920
+ * }
13921
+ */
13922
+ intermediates?: components["schemas"]["Retention"];
13748
13923
  /**
13749
13924
  * @description Retention for uploaded/imported source documents.
13750
13925
  * @default {
@@ -13762,7 +13937,7 @@ interface components {
13762
13937
  };
13763
13938
  /**
13764
13939
  * @description A serializable summary of *which selection rule* bound an operator to an
13765
- * entity the automatic "why" behind a redaction.
13940
+ * entity, the automatic "why" behind a redaction.
13766
13941
  *
13767
13942
  * The anonymizer selects an operator by walking an ordered rule list and
13768
13943
  * taking the first match. That decision is recorded on the [`Redaction`]
@@ -13814,8 +13989,8 @@ interface components {
13814
13989
  * Built once with the `with_*` chain and passed by reference to the
13815
13990
  * analyzer, which borrows it into a fresh [`RecognizerContext`] per
13816
13991
  * payload. It holds only what the *caller* asserts about the analysis as a
13817
- * whole languages, jurisdictions, document labels, the target catalog, a
13818
- * correlation id none of which depends on the medium, so one [`Scope`]
13992
+ * whole, languages, jurisdictions, document labels, the target catalog, a
13993
+ * correlation id, none of which depends on the medium, so one [`Scope`]
13819
13994
  * drives a text, image, or audio analysis alike.
13820
13995
  *
13821
13996
  * Per-medium regions (caller-supplied inclusions and exclusions, which are
@@ -13829,7 +14004,7 @@ interface components {
13829
14004
  * the *request* driving it.
13830
14005
  *
13831
14006
  * Three axes of opaque classification strings elide neither ships nor
13832
- * interprets a downstream policy layer chooses what `"medical"` or
14007
+ * interprets, a downstream policy layer chooses what `"medical"` or
13833
14008
  * `"fraud_detection"` or `"auditor"` mean. They are read in two places: a
13834
14009
  * recognizer may bias its detection on them (the LLM prompt lists them so the
13835
14010
  * model attends to the right terms), and a scope-aware operator predicate may
@@ -13839,7 +14014,7 @@ interface components {
13839
14014
  * - [`tags`] classify the *document* (`"medical"`, `"gdpr-request"`).
13840
14015
  * - [`purpose`] is why the request exists (`"fraud_detection"`).
13841
14016
  * - [`audience`] is who the redacted output is for (`"support_agent"`,
13842
- * `"auditor"`) the axis PCI-style "same document, two masks" branches on.
14017
+ * `"auditor"`), the axis PCI-style "same document, two masks" branches on.
13843
14018
  *
13844
14019
  * [`tags`]: Self::tags
13845
14020
  * [`purpose`]: Self::purpose
@@ -13877,7 +14052,7 @@ interface components {
13877
14052
  tags?: string[];
13878
14053
  };
13879
14054
  /**
13880
- * @description An operator was *picked* to hide the entity the redaction decision,
14055
+ * @description An operator was *picked* to hide the entity, the redaction decision,
13881
14056
  * recorded before it is applied so it can be reviewed (and the entity edited)
13882
14057
  * first. The [`Redaction`] event that follows records the operator actually
13883
14058
  * run.
@@ -13895,7 +14070,7 @@ interface components {
13895
14070
  matched_by: components["schemas"]["RuleMatch"];
13896
14071
  /**
13897
14072
  * @description Identity (name + version) of the operator picked. Its *config* is not
13898
- * recorded it lives in the policy that will run it, so apply re-resolves
14073
+ * recorded; it lives in the policy that will run it, so apply re-resolves
13899
14074
  * the configured operator rather than reading it here.
13900
14075
  */
13901
14076
  operator: components["schemas"]["OperatorId"];
@@ -13953,8 +14128,8 @@ interface components {
13953
14128
  /** @description Sort order direction. */
13954
14129
  SortOrder: "asc" | "desc";
13955
14130
  /**
13956
- * @description A reference back to the original source: a byte range, and for a container
13957
- * whose body spans several files which part that range indexes.
14131
+ * @description A reference back to the original source: a byte range, and, for a container
14132
+ * whose body spans several files, which part that range indexes.
13958
14133
  *
13959
14134
  * [`TextLocation`]'s `range` indexes the *decoded* text stream a codec hands
13960
14135
  * the pipeline (entities resolved, container parts concatenated). A `SourceRef`
@@ -14159,31 +14334,42 @@ interface components {
14159
14334
  /** @description What the reviewer says this is. */
14160
14335
  label: components["schemas"]["LabelRef"];
14161
14336
  /**
14162
- * @description Where it sits, in the coordinates of the group it joins.
14337
+ * @description Where it sits, in the coordinates of the part it joins.
14163
14338
  *
14164
- * For text in a container, that is the body's decoded stream —
14165
- * a DOCX's `word/document.xml` text *is* the body, not a part.
14166
- * A caller who has raw file bytes rather than a decoded offset
14167
- * (a reviewer selecting rendered text, say) leaves `range`
14168
- * empty and fills [`TextLocation::source`] instead, which the
14169
- * engine reverse-resolves.
14339
+ * Each medium addresses its own way: text a character range
14340
+ * over the decoded stream, images a bounding box, audio a time
14341
+ * span, tabular a row and column. A DOCX's
14342
+ * `word/document.xml` text belongs to the document part
14343
+ * itself, not to a nested one.
14170
14344
  *
14345
+ * For text specifically, a caller holding raw file bytes
14346
+ * rather than a decoded offset — a reviewer selecting rendered
14347
+ * text, say — leaves [`TextLocation::range`] empty and fills
14348
+ * [`TextLocation::source`] instead, which the engine
14349
+ * reverse-resolves. The other three have no such alternative:
14350
+ * their coordinates are the only way in.
14351
+ *
14352
+ * [`TextLocation::range`]: elide::modality::text::TextLocation::range
14171
14353
  * [`TextLocation::source`]: elide::modality::text::TextLocation::source
14172
14354
  */
14173
14355
  location: components["schemas"]["TabularLocation"];
14174
14356
  /**
14175
- * @description The container part this belongs to, e.g.
14176
- * `"word/media/image1.png"`. `None` puts it on the body.
14357
+ * @description The part this belongs to, as a path: `["report.docx"]` for
14358
+ * the document itself, `["report.docx", "word/media/image1.png"]`
14359
+ * for media it embeds. `None` means the request's sole
14360
+ * document, which is the common case and saves a caller
14361
+ * naming what it already sent.
14177
14362
  *
14178
- * For the media a container embeds, which the report holds as
14179
- * its own group: an image entity lives under its part, and an
14180
- * addition to one has nowhere to go without naming it.
14363
+ * Nested media needs this: the report holds an embedded image
14364
+ * as its own part, and an addition to one has nowhere to go
14365
+ * without naming it. Text usually does not where a span came
14366
+ * from is already in `TextLocation::source`, which carries the
14367
+ * part alongside the raw range.
14181
14368
  *
14182
- * Text does not need this. A container's text is its body, and
14183
- * where a span came from is already in `TextLocation::source`,
14184
- * which carries the part alongside the raw range.
14369
+ * `None` is an error when the request carried several
14370
+ * documents, since there is then no sole document to mean.
14185
14371
  */
14186
- part?: string;
14372
+ part?: string[];
14187
14373
  /** @description The rationale, when one was given. */
14188
14374
  reason?: string;
14189
14375
  };
@@ -14411,7 +14597,7 @@ interface components {
14411
14597
  * @description Tamper-evident audit trail: every contributing detection, the fusion
14412
14598
  * event if any, and the redaction that hid it, as a hash-linked DAG. It is
14413
14599
  * also the single source of truth for whether a reviewer
14414
- * [suppressed](Self::is_suppressed) the entity a suppression is a
14600
+ * [suppressed](Self::is_suppressed) the entity, a suppression is a
14415
14601
  * [`Manual`] event on this trail, not a separate flag.
14416
14602
  *
14417
14603
  * [`Manual`]: crate::entity::audit::AuditKind::Manual
@@ -14448,7 +14634,7 @@ interface components {
14448
14634
  location: components["schemas"]["TabularLocation"];
14449
14635
  /**
14450
14636
  * @description Byte range of the match in the *recognized text* it was found in (the
14451
- * OCR layout text, the audio transcript, or the text payload itself)
14637
+ * OCR layout text, the audio transcript, or the text payload itself),
14452
14638
  * the stable key back into that enrichment artifact, where the rich
14453
14639
  * context lives (which OCR block, which speaker) that the geometric
14454
14640
  * [`location`] cannot hold. `None` for entities not found via text
@@ -14464,11 +14650,11 @@ interface components {
14464
14650
  * for a nearby value.
14465
14651
  *
14466
14652
  * Out-of-band by nature: a hint is *not* a sub-span of the value it
14467
- * informs it lives elsewhere in the source (a table's column header, a
14653
+ * informs; it lives elsewhere in the source (a table's column header, a
14468
14654
  * JSON object key, a log field name). So `location` points at where the
14469
14655
  * hint text actually sits, and `data` is the hint text itself. Carrying
14470
14656
  * the location (rather than a bare string) lets a confidence boost record
14471
- * *which* hint lifted a score and *where* it came from provenance a
14657
+ * *which* hint lifted a score and *where* it came from, provenance a
14472
14658
  * review consumer can resolve back to the document.
14473
14659
  *
14474
14660
  * Mirrors [`Entity`]'s `location` + `data` shape, so the same
@@ -14532,7 +14718,7 @@ interface components {
14532
14718
  /**
14533
14719
  * @description A human override, outside automatic detection: an entity a reviewer added by
14534
14720
  * hand, or a detected one they marked to ignore. Its provenance is a person's
14535
- * decision, not a recognizer's so the trail records *why* (an
14721
+ * decision, not a recognizer's, so the trail records *why* (an
14536
14722
  * [`Attribution`], when supplied). *Who* made the override is the event's
14537
14723
  * [`source`], not a payload field.
14538
14724
  *
@@ -14548,7 +14734,7 @@ interface components {
14548
14734
  /**
14549
14735
  * @description Which human decision this records: including a missed entity, or
14550
14736
  * suppressing a detected one. This is the authority on whether the entity
14551
- * is redacted [`AuditLog::is_suppressed`] reads it, so there is no
14737
+ * is redacted, [`AuditLog::is_suppressed`] reads it, so there is no
14552
14738
  * separate flag to keep in sync.
14553
14739
  *
14554
14740
  * [`AuditLog::is_suppressed`]: crate::entity::audit::AuditLog::is_suppressed
@@ -14753,31 +14939,42 @@ interface components {
14753
14939
  /** @description What the reviewer says this is. */
14754
14940
  label: components["schemas"]["LabelRef"];
14755
14941
  /**
14756
- * @description Where it sits, in the coordinates of the group it joins.
14942
+ * @description Where it sits, in the coordinates of the part it joins.
14943
+ *
14944
+ * Each medium addresses its own way: text a character range
14945
+ * over the decoded stream, images a bounding box, audio a time
14946
+ * span, tabular a row and column. A DOCX's
14947
+ * `word/document.xml` text belongs to the document part
14948
+ * itself, not to a nested one.
14757
14949
  *
14758
- * For text in a container, that is the body's decoded stream —
14759
- * a DOCX's `word/document.xml` text *is* the body, not a part.
14760
- * A caller who has raw file bytes rather than a decoded offset
14761
- * (a reviewer selecting rendered text, say) leaves `range`
14762
- * empty and fills [`TextLocation::source`] instead, which the
14763
- * engine reverse-resolves.
14950
+ * For text specifically, a caller holding raw file bytes
14951
+ * rather than a decoded offset a reviewer selecting rendered
14952
+ * text, say leaves [`TextLocation::range`] empty and fills
14953
+ * [`TextLocation::source`] instead, which the engine
14954
+ * reverse-resolves. The other three have no such alternative:
14955
+ * their coordinates are the only way in.
14764
14956
  *
14957
+ * [`TextLocation::range`]: elide::modality::text::TextLocation::range
14765
14958
  * [`TextLocation::source`]: elide::modality::text::TextLocation::source
14766
14959
  */
14767
14960
  location: components["schemas"]["TextLocation"];
14768
14961
  /**
14769
- * @description The container part this belongs to, e.g.
14770
- * `"word/media/image1.png"`. `None` puts it on the body.
14962
+ * @description The part this belongs to, as a path: `["report.docx"]` for
14963
+ * the document itself, `["report.docx", "word/media/image1.png"]`
14964
+ * for media it embeds. `None` means the request's sole
14965
+ * document, which is the common case and saves a caller
14966
+ * naming what it already sent.
14771
14967
  *
14772
- * For the media a container embeds, which the report holds as
14773
- * its own group: an image entity lives under its part, and an
14774
- * addition to one has nowhere to go without naming it.
14968
+ * Nested media needs this: the report holds an embedded image
14969
+ * as its own part, and an addition to one has nowhere to go
14970
+ * without naming it. Text usually does not where a span came
14971
+ * from is already in `TextLocation::source`, which carries the
14972
+ * part alongside the raw range.
14775
14973
  *
14776
- * Text does not need this. A container's text is its body, and
14777
- * where a span came from is already in `TextLocation::source`,
14778
- * which carries the part alongside the raw range.
14974
+ * `None` is an error when the request carried several
14975
+ * documents, since there is then no sole document to mean.
14779
14976
  */
14780
- part?: string;
14977
+ part?: string[];
14781
14978
  /** @description The rationale, when one was given. */
14782
14979
  reason?: string;
14783
14980
  };
@@ -15016,7 +15213,7 @@ interface components {
15016
15213
  * @description Tamper-evident audit trail: every contributing detection, the fusion
15017
15214
  * event if any, and the redaction that hid it, as a hash-linked DAG. It is
15018
15215
  * also the single source of truth for whether a reviewer
15019
- * [suppressed](Self::is_suppressed) the entity a suppression is a
15216
+ * [suppressed](Self::is_suppressed) the entity, a suppression is a
15020
15217
  * [`Manual`] event on this trail, not a separate flag.
15021
15218
  *
15022
15219
  * [`Manual`]: crate::entity::audit::AuditKind::Manual
@@ -15053,7 +15250,7 @@ interface components {
15053
15250
  location: components["schemas"]["TextLocation"];
15054
15251
  /**
15055
15252
  * @description Byte range of the match in the *recognized text* it was found in (the
15056
- * OCR layout text, the audio transcript, or the text payload itself)
15253
+ * OCR layout text, the audio transcript, or the text payload itself),
15057
15254
  * the stable key back into that enrichment artifact, where the rich
15058
15255
  * context lives (which OCR block, which speaker) that the geometric
15059
15256
  * [`location`] cannot hold. `None` for entities not found via text
@@ -15069,11 +15266,11 @@ interface components {
15069
15266
  * for a nearby value.
15070
15267
  *
15071
15268
  * Out-of-band by nature: a hint is *not* a sub-span of the value it
15072
- * informs it lives elsewhere in the source (a table's column header, a
15269
+ * informs; it lives elsewhere in the source (a table's column header, a
15073
15270
  * JSON object key, a log field name). So `location` points at where the
15074
15271
  * hint text actually sits, and `data` is the hint text itself. Carrying
15075
15272
  * the location (rather than a bare string) lets a confidence boost record
15076
- * *which* hint lifted a score and *where* it came from provenance a
15273
+ * *which* hint lifted a score and *where* it came from, provenance a
15077
15274
  * review consumer can resolve back to the document.
15078
15275
  *
15079
15276
  * Mirrors [`Entity`]'s `location` + `data` shape, so the same
@@ -15117,7 +15314,7 @@ interface components {
15117
15314
  /**
15118
15315
  * @description A human override, outside automatic detection: an entity a reviewer added by
15119
15316
  * hand, or a detected one they marked to ignore. Its provenance is a person's
15120
- * decision, not a recognizer's so the trail records *why* (an
15317
+ * decision, not a recognizer's, so the trail records *why* (an
15121
15318
  * [`Attribution`], when supplied). *Who* made the override is the event's
15122
15319
  * [`source`], not a payload field.
15123
15320
  *
@@ -15133,7 +15330,7 @@ interface components {
15133
15330
  /**
15134
15331
  * @description Which human decision this records: including a missed entity, or
15135
15332
  * suppressing a detected one. This is the authority on whether the entity
15136
- * is redacted [`AuditLog::is_suppressed`] reads it, so there is no
15333
+ * is redacted, [`AuditLog::is_suppressed`] reads it, so there is no
15137
15334
  * separate flag to keep in sync.
15138
15335
  *
15139
15336
  * [`AuditLog::is_suppressed`]: crate::entity::audit::AuditLog::is_suppressed
@@ -15390,8 +15587,35 @@ interface components {
15390
15587
  start_us: number;
15391
15588
  };
15392
15589
  /**
15393
- * @description Token counts a model reported, each optional because providers differ in
15394
- * what they return — some give only a total, some none at all.
15590
+ * @description One token produced by an upstream tokenizer.
15591
+ *
15592
+ * `lemma` falls back to `text` when the producer has no lemmatizer, so callers
15593
+ * that want lemma-aware matching can read `token.lemma` uniformly without
15594
+ * checking which engine produced the artifact.
15595
+ */
15596
+ Token: {
15597
+ /** @description Producer-asserted punctuation flag. */
15598
+ is_punct: boolean;
15599
+ /**
15600
+ * @description Producer-asserted stopword flag (e.g. "the", "a", "of" for English).
15601
+ * Producers without a stopword list set this to `false`.
15602
+ */
15603
+ is_stop: boolean;
15604
+ /** @description Lemma when the producer emitted one; otherwise == [`text`](Self::text). */
15605
+ lemma: string;
15606
+ /**
15607
+ * @description Byte range this token occupies in the source text. Use this to map back
15608
+ * to substrings of the original input.
15609
+ */
15610
+ offset: components["schemas"]["Range_of_uint"];
15611
+ /** @description Surface form as it appears in the source text. */
15612
+ text: string;
15613
+ };
15614
+ /**
15615
+ * @description The token counts a model reported.
15616
+ *
15617
+ * Each is optional because providers differ in what they return: some give
15618
+ * only a total, some none at all.
15395
15619
  */
15396
15620
  TokenCounts: {
15397
15621
  /**
@@ -15406,7 +15630,7 @@ interface components {
15406
15630
  output?: number;
15407
15631
  /**
15408
15632
  * Format: uint64
15409
- * @description Total tokens may be reported even when the input/output split is not.
15633
+ * @description Total tokens, may be reported even when the input/output split is not.
15410
15634
  */
15411
15635
  total?: number;
15412
15636
  };
@@ -15425,6 +15649,81 @@ interface components {
15425
15649
  */
15426
15650
  tokenId: string;
15427
15651
  };
15652
+ /**
15653
+ * @description Owning token sequence: the [`Text`](super::Text) modality's enrichment
15654
+ * artifact, produced by a tokenizing enricher and read by a context enhancer.
15655
+ *
15656
+ * Tokens are sorted by `offset.start` (producers should emit them in order;
15657
+ * consumer-side code assumes this). A context enhancer borrows the underlying
15658
+ * slice via [`as_slice`](Tokens::as_slice) and walks it by count when scoring an
15659
+ * entity's neighbourhood. Empty ([`Default`]) until a tokenizing enricher fills
15660
+ * it, the enhancer then tokenizes on demand instead.
15661
+ */
15662
+ Tokens: components["schemas"]["Token"][];
15663
+ /**
15664
+ * @description One segment of a [`Transcription`]: a span of audio and the text
15665
+ * recognised within it, with optional diarization, language, confidence,
15666
+ * and per-word timings.
15667
+ *
15668
+ * `speaker_id` is populated only by backends with diarization;
15669
+ * `language` by backends that emit per-segment language detection;
15670
+ * `confidence` when the backend reports one; `words` when it emits a
15671
+ * word-level breakdown (which is what lets a sub-segment range resolve to
15672
+ * a tighter span than the whole segment).
15673
+ */
15674
+ TranscriptSegment: {
15675
+ /** @description Backend confidence in the segment, when reported. */
15676
+ confidence?: components["schemas"]["Confidence"];
15677
+ /** @description Detected language for this segment, when the backend reported one. */
15678
+ language?: string;
15679
+ /** @description Time span the segment covers within the stream. */
15680
+ span: components["schemas"]["TimeSpan"];
15681
+ /** @description Diarization speaker label, when the backend assigned one. */
15682
+ speaker_id?: string;
15683
+ /** @description Recognised text for this segment. */
15684
+ text: string;
15685
+ /**
15686
+ * @description Per-word timings within the segment, when the backend emitted them.
15687
+ * Empty otherwise; resolution then falls back to the segment span.
15688
+ * @default []
15689
+ */
15690
+ words?: components["schemas"]["TranscriptWord"][];
15691
+ };
15692
+ /** @description One word within a [`TranscriptSegment`], with its own time span. */
15693
+ TranscriptWord: {
15694
+ /** @description Per-word confidence, when reported. */
15695
+ confidence?: components["schemas"]["Confidence"];
15696
+ /** @description Time span the word covers within the stream. */
15697
+ span: components["schemas"]["TimeSpan"];
15698
+ /** @description The word text, as it appears in the segment text. */
15699
+ text: string;
15700
+ };
15701
+ /**
15702
+ * @description Timestamped transcript of an audio stream.
15703
+ *
15704
+ * An ordered set of [`TranscriptSegment`]s. The flat
15705
+ * [`text`], the segments joined, is what a recognizer
15706
+ * inspects; [`resolve`] maps a byte range of that text back
15707
+ * to the [`TimeSpan`] it occupies, using the segments' (and their words')
15708
+ * timings. Empty when the backend produced nothing (silence, or a no-op
15709
+ * backend).
15710
+ *
15711
+ * [`text`]: Self::text
15712
+ * [`resolve`]: Self::resolve
15713
+ */
15714
+ Transcription: {
15715
+ /** @description Segments in stream order. */
15716
+ segments: components["schemas"]["TranscriptSegment"][];
15717
+ /**
15718
+ * @description The segments' text joined by [`SEGMENT_SEPARATOR`], cached so
15719
+ * recognition and byte-range resolution share one flat string. Each
15720
+ * segment's text begins at a known offset within it (see
15721
+ * [`segment_offsets`]).
15722
+ *
15723
+ * [`segment_offsets`]: Self::segment_offsets
15724
+ */
15725
+ text: string;
15726
+ };
15428
15727
  /**
15429
15728
  * @description An account's current unread-notification count, broadcast on the account's
15430
15729
  * core-NATS unread subject.
@@ -15957,6 +16256,9 @@ interface components {
15957
16256
  * "auditLogs": {
15958
16257
  * "mode": "forever"
15959
16258
  * },
16259
+ * "intermediates": {
16260
+ * "mode": "forever"
16261
+ * },
15960
16262
  * "originalDocuments": {
15961
16263
  * "mode": "forever"
15962
16264
  * },
@@ -15988,60 +16290,72 @@ interface components {
15988
16290
  }
15989
16291
  //#endregion
15990
16292
  //#region src/datatypes/account.d.ts
15991
- type Schemas$22 = components["schemas"];
15992
- type Handle = Schemas$22["Handle"];
15993
- type Account = Schemas$22["Account"];
15994
- type PublicAccount = Schemas$22["PublicAccount"];
15995
- type UpdateAccount = Schemas$22["UpdateAccount"];
15996
- type PasswordChange = Schemas$22["PasswordChange"];
15997
- type AccountRef = Schemas$22["AccountRef"];
16293
+ type Schemas$23 = components["schemas"];
16294
+ type Handle = Schemas$23["Handle"];
16295
+ type Account = Schemas$23["Account"];
16296
+ type PublicAccount = Schemas$23["PublicAccount"];
16297
+ type UpdateAccount = Schemas$23["UpdateAccount"];
16298
+ type PasswordChange = Schemas$23["PasswordChange"];
16299
+ type AccountRef = Schemas$23["AccountRef"];
15998
16300
  //#endregion
15999
16301
  //#region src/datatypes/activity.d.ts
16000
- type Schemas$21 = components["schemas"];
16001
- type Activity = Schemas$21["Activity"];
16002
- type ActivityPage = Schemas$21["ActivityPage"];
16003
- type ActivityType = Schemas$21["ActivityType"];
16004
- type ActivityFilterQuery = Schemas$21["ActivityFilterQuery"];
16005
- type ActivityExportOptions = Schemas$21["ActivityExportOptions"];
16006
- type ActivityPayload = Schemas$21["ActivityPayload"];
16007
- type WorkspaceActivityParams = Schemas$21["WorkspaceActivityParams"];
16008
- type MemberActivityParams = Schemas$21["MemberActivityParams"];
16009
- type InviteActivityParams = Schemas$21["InviteActivityParams"];
16010
- type ConnectionActivityParams = Schemas$21["ConnectionActivityParams"];
16011
- type PipelineActivityParams = Schemas$21["PipelineActivityParams"];
16012
- type DetectionActivityParams = Schemas$21["DetectionActivityParams"];
16013
- type RedactionActivityParams = Schemas$21["RedactionActivityParams"];
16014
- type PolicyActivityParams = Schemas$21["PolicyActivityParams"];
16015
- type FileActivityParams = Schemas$21["FileActivityParams"];
16016
- type WebhookActivityParams = Schemas$21["WebhookActivityParams"];
16302
+ type Schemas$22 = components["schemas"];
16303
+ type Activity = Schemas$22["Activity"];
16304
+ type ActivityPage = Schemas$22["ActivityPage"];
16305
+ type ActivityType = Schemas$22["ActivityType"];
16306
+ type ActivityFilterQuery = Schemas$22["ActivityFilterQuery"];
16307
+ type ActivityExportOptions = Schemas$22["ActivityExportOptions"];
16308
+ type ActivityPayload = Schemas$22["ActivityPayload"];
16309
+ type WorkspaceActivityParams = Schemas$22["WorkspaceActivityParams"];
16310
+ type MemberActivityParams = Schemas$22["MemberActivityParams"];
16311
+ type InviteActivityParams = Schemas$22["InviteActivityParams"];
16312
+ type ConnectionActivityParams = Schemas$22["ConnectionActivityParams"];
16313
+ type PipelineActivityParams = Schemas$22["PipelineActivityParams"];
16314
+ type DetectionActivityParams = Schemas$22["DetectionActivityParams"];
16315
+ type RedactionActivityParams = Schemas$22["RedactionActivityParams"];
16316
+ type PolicyActivityParams = Schemas$22["PolicyActivityParams"];
16317
+ type FileActivityParams = Schemas$22["FileActivityParams"];
16318
+ type WebhookActivityParams = Schemas$22["WebhookActivityParams"];
16017
16319
  //#endregion
16018
16320
  //#region src/datatypes/analytics.d.ts
16019
- type Schemas$20 = components["schemas"];
16020
- type WorkspaceAnalytics = Schemas$20["WorkspaceAnalytics"];
16021
- type StorageAnalytics = Schemas$20["StorageAnalytics"];
16022
- type StorageKindEntry = Schemas$20["StorageKindEntry"];
16023
- type DetectionAnalytics = Schemas$20["DetectionAnalytics"];
16024
- type DetectionStatusEntry = Schemas$20["DetectionStatusEntry"];
16025
- type UsageAnalytics = Schemas$20["UsageAnalytics"];
16026
- type ModelUsage = Schemas$20["ModelUsage"];
16027
- type ModelUsageEntry = Schemas$20["ModelUsageEntry"];
16028
- type Usage = Schemas$20["Usage"];
16029
- type UsageReport = Schemas$20["UsageReport"];
16030
- type TokenCounts = Schemas$20["TokenCounts"];
16031
- type ProviderType = Schemas$20["ProviderType"];
16032
- type RecognizerId = Schemas$20["RecognizerId"];
16033
- type DetectionTimeSeries = Schemas$20["DetectionTimeSeries"];
16034
- type DetectionDayEntry = Schemas$20["DetectionDayEntry"];
16321
+ type Schemas$21 = components["schemas"];
16322
+ type WorkspaceAnalytics = Schemas$21["WorkspaceAnalytics"];
16323
+ type StorageAnalytics = Schemas$21["StorageAnalytics"];
16324
+ type StorageKindEntry = Schemas$21["StorageKindEntry"];
16325
+ type DetectionAnalytics = Schemas$21["DetectionAnalytics"];
16326
+ type DetectionStatusEntry = Schemas$21["DetectionStatusEntry"];
16327
+ type UsageAnalytics = Schemas$21["UsageAnalytics"];
16328
+ type ModelUsage = Schemas$21["ModelUsage"];
16329
+ type ModelUsageEntry = Schemas$21["ModelUsageEntry"];
16330
+ type Usage = Schemas$21["Usage"];
16331
+ type UsageReport = Schemas$21["UsageReport"];
16332
+ type TokenCounts = Schemas$21["TokenCounts"];
16333
+ type ProviderType = Schemas$21["ProviderType"];
16334
+ type RecognizerId = Schemas$21["RecognizerId"];
16335
+ type DetectionTimeSeries = Schemas$21["DetectionTimeSeries"];
16336
+ type DetectionDayEntry = Schemas$21["DetectionDayEntry"];
16035
16337
  //#endregion
16036
16338
  //#region src/datatypes/api-token.d.ts
16339
+ type Schemas$20 = components["schemas"];
16340
+ type ApiToken = Schemas$20["ApiToken"];
16341
+ type ApiTokenWithJWT = Schemas$20["ApiTokenWithJWT"];
16342
+ type ApiTokenType = Schemas$20["ApiTokenType"];
16343
+ type CreateApiToken = Schemas$20["CreateApiToken"];
16344
+ type UpdateApiToken = Schemas$20["UpdateApiToken"];
16345
+ type TokenExpiration = Schemas$20["TokenExpiration"];
16346
+ type ApiTokenPage = Schemas$20["ApiTokenPage"];
16347
+ //#endregion
16348
+ //#region src/datatypes/artifact.d.ts
16037
16349
  type Schemas$19 = components["schemas"];
16038
- type ApiToken = Schemas$19["ApiToken"];
16039
- type ApiTokenWithJWT = Schemas$19["ApiTokenWithJWT"];
16040
- type ApiTokenType = Schemas$19["ApiTokenType"];
16041
- type CreateApiToken = Schemas$19["CreateApiToken"];
16042
- type UpdateApiToken = Schemas$19["UpdateApiToken"];
16043
- type TokenExpiration = Schemas$19["TokenExpiration"];
16044
- type ApiTokenPage = Schemas$19["ApiTokenPage"];
16350
+ type ArtifactSet = Schemas$19["ArtifactSet"];
16351
+ type Layout = Schemas$19["Layout"];
16352
+ type LayoutBlock = Schemas$19["LayoutBlock"];
16353
+ type LayoutWord = Schemas$19["LayoutWord"];
16354
+ type Transcription = Schemas$19["Transcription"];
16355
+ type TranscriptSegment = Schemas$19["TranscriptSegment"];
16356
+ type TranscriptWord = Schemas$19["TranscriptWord"];
16357
+ type Tokens = Schemas$19["Tokens"];
16358
+ type Token = Schemas$19["Token"];
16045
16359
  //#endregion
16046
16360
  //#region src/datatypes/audit.d.ts
16047
16361
  type Schemas$18 = components["schemas"];
@@ -16367,5 +16681,5 @@ type Retention = Schemas["Retention"];
16367
16681
  type RetentionSettings = Schemas["RetentionSettings"];
16368
16682
  type RetentionOverride = Schemas["RetentionOverride"];
16369
16683
  //#endregion
16370
- export { PolicyRule as $, CreateApiToken as $i, SyncStatus as $n, ImageHint as $r, ReplyInvite as $t, Color as A, RedactionActivityParams as Aa, TabularModel as Ai, RedactionResultPage as An, Audit as Ar, NotificationPage as At, Label as B, TextEntity as Bi, ConnectionVerification as Bn, Dimensions as Br, MemberSortField as Bt, Language as C, ConnectionActivityParams as Ca, TabularAuditKind as Ci, DetectionPage as Cn, AudioHint as Cr, DetectionCompletedParams as Ct, ScopeMetadata as D, MemberActivityParams as Da, TabularHint as Di, RedactDetection as Dn, AudioPattern as Dr, MemberJoinedParams as Dt, Languages as E, InviteActivityParams as Ea, TabularEntity as Ei, PipelineDetectionsQuery as En, AudioModel as Er, MemberInvitedParams as Et, GdprArticle9Treatment as F, Handle as Fa, TextAuditEvent as Fi, ConnectionConfig as Fn, CitedAttribution as Fr, UnreadStatus as Ft, LanguageTag as G, TextPattern as Gi, OpenAiCredentials as Gn, FreeformAttribution as Gr, InviteCode as Gt, LabelLocale as H, TextLocation as Hi, CreateConnection as Hn, Dpi as Hr, CreateInvite as Ht, GdprSensitiveScope as I, PasswordChange as Ia, TextAuditKind as Ii, ConnectionId as In, CodecParams as Ir, UpdateNotificationSettings as It, PciDssPart as J, TimeSpan as Ji, SyncConnection as Jn, ImageAuditKind as Jr, InvitePreview as Jt, LocalizedText as K, TextRefinement as Ki, S3Credentials as Kn, ImageAdd as Kr, InviteExpiration as Kt, HipaaAccountNumbers as L, PublicAccount as La, TextAuditLog as Li, ConnectionPage as Ln, Conflict as Lr, ListMembers as Lt, CreatePolicy as M, WorkspaceActivityParams as Ma, TabularRefinement as Mi, AnthropicCredentials as Mn, BoundingBox as Mr, NotificationSettings as Mt, DateGranularity as N, Account as Na, TabularRetag as Ni, AzureCredentials as Nn, Calibration as Nr, RedactionCreatedParams as Nt, AudioRedaction as O, PipelineActivityParams as Oa, TabularLocation as Oi, RedactionId as On, AudioRefinement as Or, Notification as Ot, DateStyle as P, AccountRef as Pa, TextAdd as Pi, Connection as Pn, Category as Pr, UnreadCountEvent as Pt, PolicyDraft as Q, ApiTokenWithJWT as Qi, SyncScheduleInput as Qn, ImageEntity as Qr, ListInvites as Qt, HipaaDeidMethod as R, UpdateAccount as Ra, TextData as Ri, ConnectionSync as Rn, Contested as Rr, Member as Rt, CountryCode as S, ActivityType as Sa, TabularAuditEvent as Si, DetectionMetadata as Sn, AudioEntity as Sr, ConnectionSyncFailedParams as St, LanguageSpan as T, FileActivityParams as Ta, TabularEdit as Ti, DetectionStatusEvent as Tn, AudioManual as Tr, MarkedReadStatus as Tt, LabelRef as U, TextManual as Ui, GcsCredentials as Un, EditSet as Ur, GenerateInviteCode as Ut, LabelEntry as V, TextHint as Vi, ConnectionsQuery as Vn, DocumentContext as Vr, UpdateMember as Vt, LabelScope as W, TextModel as Wi, LlmConfig as Wn, EntityCoRef as Wr, Invite as Wt, Policy as X, ApiTokenPage as Xi, SyncMode as Xn, ImageData as Xr, InviteSortField as Xt, PciPanRender as Y, ApiToken as Yi, SyncDeletionPolicy as Yn, ImageAuditLog as Yr, InviteSent as Yt, PolicyDefinition as Z, ApiTokenType as Zi, SyncSchedule as Zn, ImageEdit as Zr, InviteStatus as Zt, WebhookId as _, Activity as _a, RuleMatch as _i, ErrorResponse as _n, AudioAuditEvent as _r, PipelineSummaryPage as _t, RetentionSettings as a, DetectionTimeSeries as aa, ImageRetag as ai, DeletedFiles as an, ChatSessionPage as ar, TabularRedaction as at, WebhookStatus as b, ActivityPage as ba, Suppress as bi, Detection as bn, AudioData as br, CursorPagination as bt, WorkspacePage as c, ProviderType as ca, ModelEvent as ci, FileKind as cn, SendChatMessage as cr, TextRedaction as ct, CreateWebhook as d, StorageKindEntry as da, Point as di, ListFiles as dn, RegisteredRecognizer as dr, CreatePipeline as dt, TokenExpiration as ea, ImageLocation as ei, SortOrder as en, SyncTriggerType as er, PolicySummary as et, TestWebhook as f, TokenCounts as fa, Polygon as fi, ModalityToken as fn, AuthToken as fr, Pipeline as ft, WebhookEvent as g, WorkspaceAnalytics as ga, Report as gi, ExportQuery as gn, AudioAdd as gr, PipelineSummary as gt, WebhookCreated as h, UsageReport as ha, Redaction as hi, ExportFormat as hn, Attribution as hr, PipelineStatus as ht, RetentionOverride as i, DetectionStatusEntry as ia, ImageRefinement as ii, DeleteFiles as in, ChatSession as ir, Sha2Algorithm as it, ConfidenceThreshold as j, WebhookActivityParams as ja, TabularPattern as ji, WorkspaceDetectionsQuery as jn, AuditHash as jr, NotificationPayload as jt, ClampBucket as k, PolicyActivityParams as ka, TabularManual as ki, RedactionResult as kn, AudioRetag as kr, NotificationEvent as kt, WorkspaceRole as l, RecognizerId as la, OperatorId as li, FilePage as ln, LabelCatalog as lr, UpdatePolicy as lt, Webhook as m, UsageAnalytics as ma, RasterMode as mi, DateWindow as mn, Signup as mr, PipelineFilter as mt, RasterPolicy as n, DetectionAnalytics as na, ImageModel as ni, Health as nn, ChatMessage as nr, PolicyTemplate as nt, UpdateWorkspace as o, ModelUsage as oa, LeakProfile as oi, File as on, ChatToken as or, TemplateOrigin as ot, UpdateWebhook as p, Usage as pa, RangeOfUint as pi, UpdateFile as pn, Login as pr, PipelineDefinition as pt, ModalityRedactions as q, TextRetag as qi, StorageConfig as qn, ImageAuditEvent as qr, InvitePage as qt, Retention as r, DetectionDayEntry as ra, ImagePattern as ri, HealthStatus as rn, ChatRole as rr, Predicate as rt, Workspace as s, ModelUsageEntry as sa, ManualIntent as si, FileHash as sn, CreateChatSession as sr, TerminalFallback as st, CreateWorkspace as t, UpdateApiToken as ta, ImageManual as ti, ComponentHealth as tn, UpdateConnection as tr, PolicySummaryPage as tt, WorkspaceSettings as u, StorageAnalytics as ua, PatternEvent as ui, FormatToken as un, RecognizerCatalog as ur, Waveform as ut, WebhookPage as v, ActivityExportOptions as va, Selection as vi, ValidationErrorDetail as vn, AudioAuditKind as vr, PipelineTriggerType as vt, LanguageProvenance as w, DetectionActivityParams as wa, TabularAuditLog as wi, DetectionStatus as wn, AudioLocation as wr, DetectionFailedParams as wt, Confidence as x, ActivityPayload as xa, TabularAdd as xi, DetectionId as xn, AudioEdit as xr, ConnectionSyncCompletedParams as xt, WebhookResult as y, ActivityFilterQuery as ya, SourceRef as yi, CreateDetection as yn, AudioAuditLog as yr, UpdatePipeline as yt, ImageRedaction as z, paths as za, TextEdit as zi, ConnectionSyncPage as zn, Deduplication as zr, MemberPage as zt };
16371
- //# sourceMappingURL=index-VL7c4kfR.d.ts.map
16684
+ export { PolicyRule as $, Token as $i, SyncStatus as $n, ImageHint as $r, ReplyInvite as $t, Color as A, ActivityPayload as Aa, TabularModel as Ai, RedactionResultPage as An, Audit as Ar, NotificationPage as At, Label as B, WebhookActivityParams as Ba, TextEntity as Bi, ConnectionVerification as Bn, Dimensions as Br, MemberSortField as Bt, Language as C, UsageAnalytics as Ca, TabularAuditKind as Ci, DetectionPage as Cn, AudioHint as Cr, DetectionCompletedParams as Ct, ScopeMetadata as D, ActivityExportOptions as Da, TabularHint as Di, RedactDetection as Dn, AudioPattern as Dr, MemberJoinedParams as Dt, Languages as E, Activity as Ea, TabularEntity as Ei, PipelineDetectionsQuery as En, AudioModel as Er, MemberInvitedParams as Et, GdprArticle9Treatment as F, InviteActivityParams as Fa, TextAuditEvent as Fi, ConnectionConfig as Fn, CitedAttribution as Fr, UnreadStatus as Ft, LanguageTag as G, PasswordChange as Ga, TextPattern as Gi, OpenAiCredentials as Gn, FreeformAttribution as Gr, InviteCode as Gt, LabelLocale as H, Account as Ha, TextLocation as Hi, CreateConnection as Hn, Dpi as Hr, CreateInvite as Ht, GdprSensitiveScope as I, MemberActivityParams as Ia, TextAuditKind as Ii, ConnectionId as In, CodecParams as Ir, UpdateNotificationSettings as It, PciDssPart as J, paths as Ja, TimeSpan as Ji, SyncConnection as Jn, ImageAuditKind as Jr, InvitePreview as Jt, LocalizedText as K, PublicAccount as Ka, TextRefinement as Ki, S3Credentials as Kn, ImageAdd as Kr, InviteExpiration as Kt, HipaaAccountNumbers as L, PipelineActivityParams as La, TextAuditLog as Li, ConnectionPage as Ln, Conflict as Lr, ListMembers as Lt, CreatePolicy as M, ConnectionActivityParams as Ma, TabularRefinement as Mi, AnthropicCredentials as Mn, BoundingBox as Mr, NotificationSettings as Mt, DateGranularity as N, DetectionActivityParams as Na, TabularRetag as Ni, AzureCredentials as Nn, Calibration as Nr, RedactionCreatedParams as Nt, AudioRedaction as O, ActivityFilterQuery as Oa, TabularLocation as Oi, RedactionId as On, AudioRefinement as Or, Notification as Ot, DateStyle as P, FileActivityParams as Pa, TextAdd as Pi, Connection as Pn, Category as Pr, UnreadCountEvent as Pt, PolicyDraft as Q, LayoutWord as Qi, SyncScheduleInput as Qn, ImageEntity as Qr, ListInvites as Qt, HipaaDeidMethod as R, PolicyActivityParams as Ra, TextData as Ri, ConnectionSync as Rn, Contested as Rr, Member as Rt, CountryCode as S, Usage as Sa, TabularAuditEvent as Si, DetectionMetadata as Sn, AudioEntity as Sr, ConnectionSyncFailedParams as St, LanguageSpan as T, WorkspaceAnalytics as Ta, TabularEdit as Ti, DetectionStatusEvent as Tn, AudioManual as Tr, MarkedReadStatus as Tt, LabelRef as U, AccountRef as Ua, TextManual as Ui, GcsCredentials as Un, EditSet as Ur, GenerateInviteCode as Ut, LabelEntry as V, WorkspaceActivityParams as Va, TextHint as Vi, ConnectionsQuery as Vn, DocumentContext as Vr, UpdateMember as Vt, LabelScope as W, Handle as Wa, TextModel as Wi, LlmConfig as Wn, EntityCoRef as Wr, Invite as Wt, Policy as X, Layout as Xi, SyncMode as Xn, ImageData as Xr, InviteSortField as Xt, PciPanRender as Y, ArtifactSet as Yi, SyncDeletionPolicy as Yn, ImageAuditLog as Yr, InviteSent as Yt, PolicyDefinition as Z, LayoutBlock as Zi, SyncSchedule as Zn, ImageEdit as Zr, InviteStatus as Zt, WebhookId as _, ProviderType as _a, RuleMatch as _i, ErrorResponse as _n, AudioAuditEvent as _r, PipelineSummaryPage as _t, RetentionSettings as a, ApiTokenPage as aa, ImageRetag as ai, DeletedFiles as an, ChatSessionPage as ar, TabularRedaction as at, WebhookStatus as b, StorageKindEntry as ba, Suppress as bi, Detection as bn, AudioData as br, CursorPagination as bt, WorkspacePage as c, CreateApiToken as ca, ModelEvent as ci, FileKind as cn, SendChatMessage as cr, TextRedaction as ct, CreateWebhook as d, DetectionAnalytics as da, Point as di, ListFiles as dn, RegisteredRecognizer as dr, CreatePipeline as dt, Tokens as ea, ImageLocation as ei, SortOrder as en, SyncTriggerType as er, PolicySummary as et, TestWebhook as f, DetectionDayEntry as fa, Polygon as fi, ModalityToken as fn, AuthToken as fr, Pipeline as ft, WebhookEvent as g, ModelUsageEntry as ga, Report as gi, ExportQuery as gn, AudioAdd as gr, PipelineSummary as gt, WebhookCreated as h, ModelUsage as ha, Redaction as hi, ExportFormat as hn, Attribution as hr, PipelineStatus as ht, RetentionOverride as i, ApiToken as ia, ImageRefinement as ii, DeleteFiles as in, ChatSession as ir, Sha2Algorithm as it, ConfidenceThreshold as j, ActivityType as ja, TabularPattern as ji, WorkspaceDetectionsQuery as jn, AuditHash as jr, NotificationPayload as jt, ClampBucket as k, ActivityPage as ka, TabularManual as ki, RedactionResult as kn, AudioRetag as kr, NotificationEvent as kt, WorkspaceRole as l, TokenExpiration as la, OperatorId as li, FilePage as ln, LabelCatalog as lr, UpdatePolicy as lt, Webhook as m, DetectionTimeSeries as ma, RasterMode as mi, DateWindow as mn, Signup as mr, PipelineFilter as mt, RasterPolicy as n, TranscriptWord as na, ImageModel as ni, Health as nn, ChatMessage as nr, PolicyTemplate as nt, UpdateWorkspace as o, ApiTokenType as oa, LeakProfile as oi, File as on, ChatToken as or, TemplateOrigin as ot, UpdateWebhook as p, DetectionStatusEntry as pa, RangeOfUint as pi, UpdateFile as pn, Login as pr, PipelineDefinition as pt, ModalityRedactions as q, UpdateAccount as qa, TextRetag as qi, StorageConfig as qn, ImageAuditEvent as qr, InvitePage as qt, Retention as r, Transcription as ra, ImagePattern as ri, HealthStatus as rn, ChatRole as rr, Predicate as rt, Workspace as s, ApiTokenWithJWT as sa, ManualIntent as si, FileHash as sn, CreateChatSession as sr, TerminalFallback as st, CreateWorkspace as t, TranscriptSegment as ta, ImageManual as ti, ComponentHealth as tn, UpdateConnection as tr, PolicySummaryPage as tt, WorkspaceSettings as u, UpdateApiToken as ua, PatternEvent as ui, FormatToken as un, RecognizerCatalog as ur, Waveform as ut, WebhookPage as v, RecognizerId as va, Selection as vi, ValidationErrorDetail as vn, AudioAuditKind as vr, PipelineTriggerType as vt, LanguageProvenance as w, UsageReport as wa, TabularAuditLog as wi, DetectionStatus as wn, AudioLocation as wr, DetectionFailedParams as wt, Confidence as x, TokenCounts as xa, TabularAdd as xi, DetectionId as xn, AudioEdit as xr, ConnectionSyncCompletedParams as xt, WebhookResult as y, StorageAnalytics as ya, SourceRef as yi, CreateDetection as yn, AudioAuditLog as yr, UpdatePipeline as yt, ImageRedaction as z, RedactionActivityParams as za, TextEdit as zi, ConnectionSyncPage as zn, Deduplication as zr, MemberPage as zt };
16685
+ //# sourceMappingURL=index-B42oglvJ.d.ts.map