@dereekb/dbx-web 13.33.0 → 13.35.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.
@@ -4,13 +4,13 @@ import * as _angular_core from '@angular/core';
4
4
  import { Signal, ElementRef, AfterViewInit, InjectionToken, Type, OnInit, OnDestroy, ViewContainerRef, Provider, Injector, TrackByFunction, OutputEmitterRef, OutputRef, EnvironmentProviders, TemplateRef, ComponentRef } from '@angular/core';
5
5
  import { ProgressBarMode } from '@angular/material/progress-bar';
6
6
  import * as _dereekb_util from '@dereekb/util';
7
- import { Maybe, ErrorInput, Milliseconds, GetterOrValue, Getter, CssClass, CharacterPrefixSuffixCleanString, DashPrefixString, CssStyleObject, CssToken, CssTokenVar, WebsiteUrlWithPrefix, WebsitePath, ArrayOrValue, Pixels, PixelsString, DecisionFunction, ModifierMap, Modifier, ModifierFunction, UniqueModel, CssClassesArray, PrimativeKey, SortCompareFunction, ModelKeyRef, HtmlHeaderLevel, Destroyable, UnitedStatesAddressWithContact, LabeledValue, GetterOrValueWithInput, Seconds, DestroyFunction, ReadableError, ReadableErrorWithCode, ServerError, ServerErrorResponseData, ServerErrorResponse, PromiseOrValue, SpaceSeparatedCssClasses, StringErrorCode, ModelKeyTypeNamePair, UnixDateTimeSecondsNumber, ModelKey, ModelTypeString, MimeTypeWithoutParameters, ContentTypeMimeType, ModelTypeDataPair, MapFunction, SlashPathDirectoryTreeNode, SlashPathDirectoryTreeNodeValue, SlashPathDirectoryTreeRoot, FileSize, MimeTypeWildcard, MimeTypeWithSubtypeWildcardWithoutParameters, SlashPathTypedFileSuffix, ModelIdFactory } from '@dereekb/util';
7
+ import { Maybe, ErrorInput, Milliseconds, GetterOrValue, Getter, CssClass, CharacterPrefixSuffixCleanString, DashPrefixString, CssStyleObject, CssToken, CssTokenVar, WebsiteUrlWithPrefix, WebsitePath, ArrayOrValue, Pixels, PixelsString, DecisionFunction, ModifierMap, Modifier, ModifierFunction, UniqueModel, CssClassesArray, PrimativeKey, SortCompareFunction, ModelKeyRef, HtmlHeaderLevel, Destroyable, UnitedStatesAddressWithContact, LabeledValue, GetterOrValueWithInput, Seconds, DestroyFunction, ReadableError, ReadableErrorWithCode, ServerError, ServerErrorResponseData, ServerErrorResponse, PromiseOrValue, SpaceSeparatedCssClasses, StringErrorCode, ModelKeyTypeNamePair, UnixDateTimeSecondsNumber, ModelKey, ModelTypeString, MimeTypeWithoutParameters, ContentTypeMimeType, ModelTypeDataPair, MapFunction, SlashPathDirectoryTreeNode, SlashPathDirectoryTreeNodeValue, SlashPathDirectoryTreeRoot, FileSize, MimeTypeWildcard, MimeTypeWithSubtypeWildcardWithoutParameters, SlashPathTypedFileSuffix, ISO8601DateString, ModelIdFactory } from '@dereekb/util';
8
8
  import { ProgressSpinnerMode } from '@angular/material/progress-spinner';
9
9
  import * as dist_packages_dbx_core_types_dereekb_dbx_core from 'dist/packages/dbx-core/types/dereekb-dbx-core';
10
10
  import * as rxjs from 'rxjs';
11
11
  import { Observable, BehaviorSubject, MonoTypeOperatorFunction, Subject } from 'rxjs';
12
12
  import * as _dereekb_rxjs from '@dereekb/rxjs';
13
- import { MaybeObservableOrValue, LoadingContext, LoadingContextEvent, LoadingState, LoadingStateType, ListLoadingState, ListLoadingStateContext, ObservableOrValue, LockSet, WorkUsingObservable, IsModifiedFunction, IsEqualFunction, FilterSource, PresetFilterSource, FilterSourceConnector, FilterWithPreset } from '@dereekb/rxjs';
13
+ import { MaybeObservableOrValue, LoadingContext, LoadingContextEvent, LoadingState, LoadingStateType, ListLoadingState, ListLoadingStateContext, ObservableOrValue, LockSet, WorkUsingObservable, IsModifiedFunction, IsEqualFunction, WorkUsingContext, FilterSource, PresetFilterSource, FilterSourceConnector, FilterWithPreset } from '@dereekb/rxjs';
14
14
  import { MatSnackBarConfig, MatSnackBarRef, MatSnackBar } from '@angular/material/snack-bar';
15
15
  import { MatDialogRef, MatDialog, MatDialogConfig } from '@angular/material/dialog';
16
16
  import { TransitionService, Transition, HookResult } from '@uirouter/core';
@@ -25,6 +25,7 @@ import * as _angular_platform_browser from '@angular/platform-browser';
25
25
  import { SafeResourceUrl, DomSanitizer } from '@angular/platform-browser';
26
26
  import { Clipboard } from '@angular/cdk/clipboard';
27
27
  import { Entry, ZipReader, FileEntry } from '@zip.js/zip.js';
28
+ import { PDFDocument, PDFPage } from '@cantoo/pdf-lib';
28
29
  import { ComponentStore } from '@ngrx/component-store';
29
30
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
30
31
  import { HorizontalConnectionPos, Overlay, FlexibleConnectedPositionStrategy, GlobalPositionStrategy } from '@angular/cdk/overlay';
@@ -9941,6 +9942,22 @@ declare const DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING: DbxPdfMergeEncryptedHand
9941
9942
  * Error message used when an encrypted entry is projected to the `error` status under {@link DbxPdfMergeEncryptedHandling} `'error'` mode.
9942
9943
  */
9943
9944
  declare const DBX_PDF_MERGE_ENCRYPTED_ERROR_MESSAGE = "Password-protected PDFs cannot be merged.";
9945
+ /**
9946
+ * Default value for {@link DbxPdfMergeEditorConfig.pageEditing}. Off, so the editor's default behavior is unchanged.
9947
+ */
9948
+ declare const DEFAULT_DBX_PDF_MERGE_PAGE_EDITING = false;
9949
+ /**
9950
+ * Default value for {@link DbxPdfMergeEditorConfig.sidecar}. Off, so merged output bytes are unchanged.
9951
+ */
9952
+ declare const DEFAULT_DBX_PDF_MERGE_SIDECAR = false;
9953
+ /**
9954
+ * Default value for {@link DbxPdfMergeEditorConfig.restoreImportOnClear}. On, so an editor the app populated programmatically is reset to that document by Clear rather than left empty.
9955
+ */
9956
+ declare const DEFAULT_DBX_PDF_MERGE_RESTORE_IMPORT_ON_CLEAR = true;
9957
+ /**
9958
+ * Message shown on an encrypted entry's row while page editing is enabled. Encrypted documents cannot be opened by `pdf-lib`, so their pages cannot be listed or edited — the entry stays a single opaque row.
9959
+ */
9960
+ declare const DBX_PDF_MERGE_ENCRYPTED_NOT_EDITABLE_MESSAGE = "Encrypted \u2014 pages cannot be edited.";
9944
9961
  /**
9945
9962
  * MIME types accepted by the PDF merge editor by default: PDF documents and PNG/JPEG images.
9946
9963
  */
@@ -10011,6 +10028,131 @@ interface PdfMergeEntryView extends PdfMergeEntry {
10011
10028
  */
10012
10029
  readonly ignored: boolean;
10013
10030
  }
10031
+ /**
10032
+ * Rotation the user has applied to a page, in degrees clockwise.
10033
+ */
10034
+ type PdfMergePageRotation = 0 | 90 | 180 | 270;
10035
+ /**
10036
+ * Group key used for pages whose source entry has no slot id.
10037
+ */
10038
+ declare const DEFAULT_PDF_MERGE_PAGE_GROUP_KEY = "_";
10039
+ /**
10040
+ * Returns the group key a page reorders within — its entry's slot id, or {@link DEFAULT_PDF_MERGE_PAGE_GROUP_KEY} when the entry is unslotted.
10041
+ *
10042
+ * @param slotId - Slot id of the owning entry, if any.
10043
+ * @returns The group key.
10044
+ * @__NO_SIDE_EFFECTS__
10045
+ */
10046
+ declare function pdfMergePageGroupKeyForSlotId(slotId: Maybe<string>): string;
10047
+ /**
10048
+ * Separator between the entry id and the page index inside a page id.
10049
+ */
10050
+ declare const PDF_MERGE_PAGE_ID_SEPARATOR = ":";
10051
+ /**
10052
+ * Builds the stable identifier for a page within the editor.
10053
+ *
10054
+ * @param entryId - Id of the owning {@link PdfMergeEntry}.
10055
+ * @param sourceIndex - Zero-based page index within that entry's source document.
10056
+ * @returns The page id.
10057
+ * @__NO_SIDE_EFFECTS__
10058
+ */
10059
+ declare function makePdfMergePageId(entryId: string, sourceIndex: number): string;
10060
+ /**
10061
+ * Returns the id of the entry a page id belongs to. Used to prune page state when an entry leaves the list.
10062
+ *
10063
+ * @param pageId - Page id produced by {@link makePdfMergePageId}.
10064
+ * @returns The owning entry's id.
10065
+ * @__NO_SIDE_EFFECTS__
10066
+ */
10067
+ declare function entryIdForPdfMergePageId(pageId: string): string;
10068
+ /**
10069
+ * Per-page metadata captured when a {@link PdfMergeEntry} is expanded for page editing. Read once per entry by the store's hydration pass and cached for as long as the entry stays in the list.
10070
+ */
10071
+ interface PdfMergePageMeta {
10072
+ /**
10073
+ * Zero-based index of this page within its source document.
10074
+ */
10075
+ readonly sourceIndex: number;
10076
+ /**
10077
+ * Page width in PDF points.
10078
+ */
10079
+ readonly width: number;
10080
+ /**
10081
+ * Page height in PDF points.
10082
+ */
10083
+ readonly height: number;
10084
+ /**
10085
+ * Rotation already baked into the source page, in degrees. User rotation composes on top of this at merge time rather than replacing it, so rotating an already-sideways scan behaves as the user expects.
10086
+ */
10087
+ readonly sourceRotation: number;
10088
+ }
10089
+ /**
10090
+ * A user's edits to a single page, held sparsely in {@link PdfMergeEditorState.pageOverrides}. Only pages the user has actually touched appear, so adding or removing an entry needs no page bookkeeping.
10091
+ */
10092
+ interface PdfMergePageOverride {
10093
+ readonly rotation: PdfMergePageRotation;
10094
+ readonly removed: boolean;
10095
+ }
10096
+ /**
10097
+ * A single page in the editor's page plan, derived by the store from the current entries plus any {@link PdfMergePageOverride}. Only produced while page editing is enabled.
10098
+ */
10099
+ interface PdfMergePageView {
10100
+ /**
10101
+ * Stable identifier — see {@link makePdfMergePageId}.
10102
+ */
10103
+ readonly id: string;
10104
+ /**
10105
+ * Id of the {@link PdfMergeEntry} this page came from.
10106
+ */
10107
+ readonly entryId: string;
10108
+ /**
10109
+ * Slot that owns the source entry, or `null` when unslotted.
10110
+ */
10111
+ readonly slotId: Maybe<string>;
10112
+ /**
10113
+ * Key of the group this page reorders within — see {@link pdfMergePageGroupKeyForSlotId}.
10114
+ */
10115
+ readonly groupKey: string;
10116
+ /**
10117
+ * Name of the source file the page came from.
10118
+ */
10119
+ readonly sourceName: string;
10120
+ /**
10121
+ * Whether the page came from a PDF or from an embedded image. Also determines how {@link PdfMergePageMeta} dimensions should be read — PDF pages are measured in points, image pages in pixels.
10122
+ */
10123
+ readonly kind: PdfMergeEntryKind;
10124
+ /**
10125
+ * Zero-based index of this page within its source document.
10126
+ */
10127
+ readonly sourceIndex: number;
10128
+ /**
10129
+ * Total page count of the source document. Drives the "page 2 of 3" label.
10130
+ */
10131
+ readonly sourcePageCount: number;
10132
+ /**
10133
+ * Metadata read from the source page.
10134
+ */
10135
+ readonly meta: PdfMergePageMeta;
10136
+ /**
10137
+ * User-applied rotation, composed with {@link PdfMergePageMeta.sourceRotation} at merge time.
10138
+ */
10139
+ readonly rotation: PdfMergePageRotation;
10140
+ /**
10141
+ * Whether the user marked this page for deletion. Marked pages stay visible in the list (struck through, restorable) but are excluded from the merge output.
10142
+ */
10143
+ readonly removed: boolean;
10144
+ }
10145
+ /**
10146
+ * A set of pages that reorder together — every page contributed by one slot's entries, or every unslotted page. Pages never move between groups: the page list renders one CDK drop list per group, and unconnected drop lists cannot accept each other's drags, so the rule is enforced by construction rather than by a guard.
10147
+ */
10148
+ interface PdfMergePageGroup {
10149
+ readonly groupKey: string;
10150
+ /**
10151
+ * Slot the group belongs to, or `null` for the unslotted group.
10152
+ */
10153
+ readonly slotId: Maybe<string>;
10154
+ readonly pages: readonly PdfMergePageView[];
10155
+ }
10014
10156
  /**
10015
10157
  * Validation delegate registered on the {@link DbxPdfMergeEditorStore}. Receives the live {@link PdfMergeEntry} stream and returns a stream of `boolean` values controlling whether the store may emit a merge result. Emitting `false` causes {@link DbxPdfMergeEditorStore.currentMergeOutput$} to emit `undefined` and prevents {@link DbxPdfMergeEditorStore.mergeOutput$} from emitting.
10016
10158
  */
@@ -10036,6 +10178,14 @@ interface PdfMergeEditorState {
10036
10178
  * Ordered list of entries the user has added. Order determines page order in the merged output.
10037
10179
  */
10038
10180
  readonly rawEntries: PdfMergeEntry[];
10181
+ /**
10182
+ * Sparse per-page edit overrides keyed by {@link PdfMergePageView.id}. Only pages the user has touched appear here. Overrides for pages that no longer resolve are ignored by the derived page stream and pruned when their owning entry leaves the list. Stays empty while page editing is disabled.
10183
+ */
10184
+ readonly pageOverrides: Record<string, PdfMergePageOverride>;
10185
+ /**
10186
+ * Explicit page ordering per group key, holding {@link PdfMergePageView.id} values. A group absent from this record uses natural order. Ids that no longer resolve are ignored, and pages missing from a stored list are appended in natural order — so the ordering self-heals as entries come and go. Stays empty while page editing is disabled.
10187
+ */
10188
+ readonly pageOrder: Record<string, string[]>;
10039
10189
  }
10040
10190
  /**
10041
10191
  * Index movement payload used by the editor's reorder updater.
@@ -10044,6 +10194,34 @@ interface PdfMergeEntryMove {
10044
10194
  readonly previousIndex: number;
10045
10195
  readonly currentIndex: number;
10046
10196
  }
10197
+ /**
10198
+ * Index movement payload used by the editor's page reorder updater. Indices are group-local — the positions the group's CDK drop list sees, not positions in the overall page plan.
10199
+ */
10200
+ interface PdfMergePageMove {
10201
+ readonly groupKey: string;
10202
+ /**
10203
+ * The group's page ids in the order they were rendered when the drag started.
10204
+ *
10205
+ * Supplied by the caller rather than recomputed by the store: the plan is derived state, so the store cannot see the exact order the user was looking at. Rewriting the array the component rendered keeps the stored order and the visible order in step.
10206
+ */
10207
+ readonly pageIds: readonly string[];
10208
+ readonly previousIndex: number;
10209
+ readonly currentIndex: number;
10210
+ }
10211
+ /**
10212
+ * Payload for setting a page's rotation.
10213
+ */
10214
+ interface PdfMergePageRotationChange {
10215
+ readonly pageId: string;
10216
+ readonly rotation: PdfMergePageRotation;
10217
+ }
10218
+ /**
10219
+ * Payload for marking a page as removed or restoring it.
10220
+ */
10221
+ interface PdfMergePageRemovedChange {
10222
+ readonly pageId: string;
10223
+ readonly removed: boolean;
10224
+ }
10047
10225
  /**
10048
10226
  * Output size limits enforced by {@link DbxPdfMergeEditorComponent} on its merged blob.
10049
10227
  */
@@ -10105,6 +10283,30 @@ interface DbxPdfMergeEditorConfig {
10105
10283
  * Strategy for how encrypted PDFs are handled — see {@link DbxPdfMergeEncryptedHandling}. Defaults to {@link DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING} (`'focus'`).
10106
10284
  */
10107
10285
  readonly encryptedHandling?: Maybe<DbxPdfMergeEncryptedHandling>;
10286
+ /**
10287
+ * Enables page editing mode. When `true`, the editor's list shows the individual pages of each uploaded PDF instead of one row per file, letting the user reorder, rotate, and mark pages for deletion with the merged output updating live.
10288
+ *
10289
+ * Pages reorder only within their own slot — a slot is one logical document, so letting a page cross slots would silently move content between documents.
10290
+ *
10291
+ * Defaults to {@link DEFAULT_DBX_PDF_MERGE_PAGE_EDITING} (`false`), in which case the editor behaves exactly as it does without this option: the page list is never instantiated and no source document is parsed.
10292
+ */
10293
+ readonly pageEditing?: Maybe<boolean>;
10294
+ /**
10295
+ * Embeds a sidecar manifest and per-page tags into the merged output, recording which pages came from which slot so downstream code can target them later via `readPdfMergeSidecar`. Independent of {@link pageEditing} — a plain slot merge benefits from the record too.
10296
+ *
10297
+ * Defaults to {@link DEFAULT_DBX_PDF_MERGE_SIDECAR} (`false`), in which case the output bytes are unchanged.
10298
+ */
10299
+ readonly sidecar?: Maybe<boolean>;
10300
+ /**
10301
+ * Overrides merged over the default confirmation shown before the editor's footer Clear button empties every entry. Set `autoConfirm: true` to clear without prompting, restoring the pre-confirmation behavior.
10302
+ */
10303
+ readonly clearConfirm?: Maybe<DbxActionConfirmConfig>;
10304
+ /**
10305
+ * Whether the footer Clear button resets a programmatically-supplied document to that document rather than discarding it. Defaults to `true`.
10306
+ *
10307
+ * See {@link DbxPdfMergeEditorStore.clearEntries} — the point is that an app that populated the editor via `importMergedPdf` (or `[source]`) never ends up looking at an empty editor it did not ask for. Set `false` for an editor whose Clear should empty everything, baseline included.
10308
+ */
10309
+ readonly restoreImportOnClear?: Maybe<boolean>;
10108
10310
  }
10109
10311
  /**
10110
10312
  * Injection token for a workspace-wide default {@link DbxPdfMergeEditorConfig}. Use {@link provideDbxPdfMergeEditorConfig} to register a value.
@@ -10129,6 +10331,204 @@ declare const DBX_PDF_MERGE_EDITOR_PRESERVE_ENTRIES_ON_SLOT_DESTROY: InjectionTo
10129
10331
  */
10130
10332
  declare function provideDbxPdfMergeEditorPreserveEntriesOnSlotDestroy(preserve?: boolean): Provider;
10131
10333
 
10334
+ /**
10335
+ * Name of the JSON manifest attached to a merged PDF that records which pages came from which slot.
10336
+ */
10337
+ declare const PDF_MERGE_SIDECAR_FILE_NAME = "dbx-pdf-merge.json";
10338
+ /**
10339
+ * Key set on each output page's dictionary holding that page's {@link PdfMergeSidecarPage.tag}.
10340
+ *
10341
+ * Custom page-dictionary keys travel with the page: they survive `copyPages` (including subsetting and reordering), a save/load round trip, and further edits. That is what makes tags — rather than the manifest's recorded indices — the authoritative record of which document a page belongs to.
10342
+ */
10343
+ declare const PDF_MERGE_PAGE_TAG_KEY = "DbxPageTag";
10344
+ /**
10345
+ * Schema version of the emitted {@link PdfMergeSidecar}.
10346
+ */
10347
+ declare const PDF_MERGE_SIDECAR_VERSION = 1;
10348
+ /**
10349
+ * Description recorded on the attached manifest.
10350
+ */
10351
+ declare const PDF_MERGE_SIDECAR_DESCRIPTION = "dbx-pdf-merge page manifest";
10352
+ /**
10353
+ * Record of a single page in the merged output.
10354
+ */
10355
+ interface PdfMergeSidecarPage {
10356
+ /**
10357
+ * Identifier written onto the page's own dictionary. Unique within the output document.
10358
+ */
10359
+ readonly tag: string;
10360
+ /**
10361
+ * Slot the page's source file was uploaded into, or `null` when unslotted.
10362
+ */
10363
+ readonly slotId: Maybe<string>;
10364
+ /**
10365
+ * Name of the source file the page came from.
10366
+ */
10367
+ readonly sourceName: string;
10368
+ /**
10369
+ * Zero-based index of the page within its source document.
10370
+ */
10371
+ readonly sourceIndex: number;
10372
+ /**
10373
+ * Total rotation applied to the page in the output, in degrees.
10374
+ */
10375
+ readonly rotation: number;
10376
+ /**
10377
+ * Position of the page in the output at the time the manifest was written.
10378
+ *
10379
+ * A hint only. Anything that reorders the document afterwards leaves this stale, so {@link readPdfMergeSidecar} resolves positions from page tags and falls back to this value only when a tag is missing.
10380
+ */
10381
+ readonly outputIndex: number;
10382
+ }
10383
+ /**
10384
+ * One logical document within the merged output — in practice, one editor slot.
10385
+ */
10386
+ interface PdfMergeSidecarDocument {
10387
+ /**
10388
+ * Slot id, or `null` for the unslotted group.
10389
+ */
10390
+ readonly slotId: Maybe<string>;
10391
+ /**
10392
+ * Tags of the pages belonging to this document, in output order at write time. This membership list is authoritative and survives reordering; resolve each tag to a current page index rather than trusting positions.
10393
+ */
10394
+ readonly pageTags: readonly string[];
10395
+ }
10396
+ /**
10397
+ * Manifest embedded in a merged PDF describing which pages came from which document.
10398
+ */
10399
+ interface PdfMergeSidecar {
10400
+ readonly version: number;
10401
+ readonly createdAt: ISO8601DateString;
10402
+ readonly documents: readonly PdfMergeSidecarDocument[];
10403
+ readonly pages: readonly PdfMergeSidecarPage[];
10404
+ }
10405
+ /**
10406
+ * A manifest page resolved against the document actually being read.
10407
+ */
10408
+ interface PdfMergeSidecarResolvedPage extends PdfMergeSidecarPage {
10409
+ /**
10410
+ * Current zero-based index of the page in the document being read.
10411
+ */
10412
+ readonly pageIndex: number;
10413
+ /**
10414
+ * Whether {@link pageIndex} came from the page's own tag (`true`) or fell back to the manifest's recorded {@link PdfMergeSidecarPage.outputIndex} because the tag was missing (`false`). A `false` here means something stripped the page tags — treat the position as best-effort.
10415
+ */
10416
+ readonly resolvedByTag: boolean;
10417
+ }
10418
+ /**
10419
+ * A manifest document resolved against the document actually being read.
10420
+ */
10421
+ interface PdfMergeSidecarResolvedDocument {
10422
+ readonly slotId: Maybe<string>;
10423
+ readonly pages: readonly PdfMergeSidecarResolvedPage[];
10424
+ }
10425
+ /**
10426
+ * Result of reading a merged PDF's embedded manifest.
10427
+ */
10428
+ interface PdfMergeSidecarReadResult {
10429
+ /**
10430
+ * The manifest exactly as it was embedded.
10431
+ */
10432
+ readonly sidecar: PdfMergeSidecar;
10433
+ /**
10434
+ * Documents with each page resolved to its current index in the file that was read.
10435
+ */
10436
+ readonly documents: readonly PdfMergeSidecarResolvedDocument[];
10437
+ /**
10438
+ * Tags listed in the manifest that could not be resolved to any page — the page was removed after the manifest was written, or its tag was stripped and no fallback index was usable.
10439
+ */
10440
+ readonly missingTags: readonly string[];
10441
+ /**
10442
+ * Number of pages in the document that carry no tag. Non-zero means pages were added outside the merge editor, or a third-party tool dropped the tags.
10443
+ */
10444
+ readonly untaggedPageCount: number;
10445
+ }
10446
+ /**
10447
+ * Builds the tag written onto an output page.
10448
+ *
10449
+ * @param slotId - Slot the page's source entry belongs to, or `null` when unslotted.
10450
+ * @param ordinal - Zero-based position of the page within its own slot's pages.
10451
+ * @returns A tag unique within the output document.
10452
+ * @__NO_SIDE_EFFECTS__
10453
+ */
10454
+ declare function makePdfMergeSidecarPageTag(slotId: Maybe<string>, ordinal: number): string;
10455
+ /**
10456
+ * Writes a page's tag onto its page dictionary so the association survives later reordering.
10457
+ *
10458
+ * @param page - Page in the output document.
10459
+ * @param tag - Tag to record.
10460
+ */
10461
+ declare function writePdfMergePageTag(page: PDFPage, tag: string): void;
10462
+ /**
10463
+ * Reads the tag previously written onto a page, if any.
10464
+ *
10465
+ * Uses `get` plus an instance check rather than a typed `lookup`, because `PDFDict.lookup(key, PDFString)` throws when the key is absent — which is the normal case for any PDF that did not come out of this editor.
10466
+ *
10467
+ * @param page - Page to inspect.
10468
+ * @returns The tag, or `null` when the page carries none.
10469
+ */
10470
+ declare function readPdfMergePageTag(page: PDFPage): Maybe<string>;
10471
+ /**
10472
+ * Attaches a manifest to the output document as an embedded JSON file.
10473
+ *
10474
+ * @param document - Output document being saved.
10475
+ * @param sidecar - Manifest to embed.
10476
+ */
10477
+ declare function attachPdfMergeSidecar(document: PDFDocument, sidecar: PdfMergeSidecar): Promise<void>;
10478
+ /**
10479
+ * Builds a {@link PdfMergeSidecar} from the pages written to an output document.
10480
+ *
10481
+ * @param pages - Page records in output order.
10482
+ * @returns The manifest, with one document per distinct slot in first-appearance order.
10483
+ * @__NO_SIDE_EFFECTS__
10484
+ */
10485
+ declare function makePdfMergeSidecar(pages: readonly PdfMergeSidecarPage[]): PdfMergeSidecar;
10486
+ /**
10487
+ * Source bytes accepted by {@link readPdfMergeSidecar}.
10488
+ */
10489
+ type PdfMergeSidecarReadInput = Blob | ArrayBuffer | Uint8Array;
10490
+ /**
10491
+ * Reads the manifest embedded in a merged PDF and resolves each recorded page to its current position in that file.
10492
+ *
10493
+ * Resolution prefers each page's own tag, which follows the page through reordering. The manifest's {@link PdfMergeSidecarPage.outputIndex} is used only as a fallback for pages whose tag has been stripped, and any index that no longer exists is reported through {@link PdfMergeSidecarReadResult.missingTags} instead.
10494
+ *
10495
+ * @param input - The merged PDF's bytes.
10496
+ * @returns The manifest and its resolved documents, or `null` when the file carries no manifest, is unreadable, or is encrypted.
10497
+ */
10498
+ declare function readPdfMergeSidecar(input: PdfMergeSidecarReadInput): Promise<Maybe<PdfMergeSidecarReadResult>>;
10499
+ /**
10500
+ * One logical document reconstructed out of a merged PDF as a standalone file.
10501
+ */
10502
+ interface PdfMergeSidecarDocumentFile {
10503
+ /**
10504
+ * Slot the document belongs to, or `null` for the unslotted group.
10505
+ */
10506
+ readonly slotId: Maybe<string>;
10507
+ /**
10508
+ * The document's pages extracted into their own PDF, in manifest order. Named after the source file recorded in the manifest so the original file name is restored.
10509
+ */
10510
+ readonly file: File;
10511
+ readonly pageCount: number;
10512
+ }
10513
+ /**
10514
+ * Result of splitting a merged PDF back into its constituent documents.
10515
+ */
10516
+ interface SplitPdfMergeSidecarResult {
10517
+ readonly sidecar: PdfMergeSidecar;
10518
+ readonly documents: readonly PdfMergeSidecarDocumentFile[];
10519
+ readonly missingTags: readonly string[];
10520
+ readonly untaggedPageCount: number;
10521
+ }
10522
+ /**
10523
+ * Splits a previously-merged PDF back into one file per document, using the embedded manifest to decide which pages belong to which slot.
10524
+ *
10525
+ * This is the inverse of a merge with `sidecar: true`, and is what lets a completed document be re-imported into the editor with its slots repopulated instead of arriving as one opaque file. Page order and any rotation baked in at merge time are preserved, and each document's pages are resolved by tag so a document that was reordered after export still splits correctly.
10526
+ *
10527
+ * @param input - Bytes of a merged PDF.
10528
+ * @returns One file per document plus the manifest, or `null` when the input carries no manifest, is unreadable, or is encrypted.
10529
+ */
10530
+ declare function splitPdfMergeSidecarDocuments(input: PdfMergeSidecarReadInput): Promise<Maybe<SplitPdfMergeSidecarResult>>;
10531
+
10132
10532
  /**
10133
10533
  * Formats a byte count as a short human-readable string (`B` / `KB` / `MB`). Used by the merge editor banner and entry rows.
10134
10534
  *
@@ -10137,6 +10537,16 @@ declare function provideDbxPdfMergeEditorPreserveEntriesOnSlotDestroy(preserve?:
10137
10537
  * @__NO_SIDE_EFFECTS__
10138
10538
  */
10139
10539
  declare function formatPdfMergeEntrySize(size: FileSize): string;
10540
+ /**
10541
+ * Normalizes a {@link Blob} into a {@link File} so it can become a {@link PdfMergeEntry}, which needs a name to display.
10542
+ *
10543
+ * A {@link File} passes through untouched unless an explicit `fileName` overrides it. A bare {@link Blob} is named from `fileName`, else from its MIME type (`document.pdf` / `image.png` / `image.jpg`), else `document.pdf` — the name only has to be plausible and correctly suffixed, since {@link classifyPdfMergeFile} falls back to the extension when a blob carries no type.
10544
+ *
10545
+ * @param input - Blob or File to normalize.
10546
+ * @param fileName - Optional name, overriding a File's own name and naming a bare Blob.
10547
+ * @returns A File carrying the resolved name.
10548
+ */
10549
+ declare function asPdfMergeFile(input: Blob | File, fileName?: Maybe<string>): File;
10140
10550
  /**
10141
10551
  * Returns the {@link PdfMergeEntryKind} for a file based on its MIME type, with a small fallback to file-extension matching when the browser provided no MIME type.
10142
10552
  *
@@ -10179,28 +10589,270 @@ declare function buildPdfMergeEntrySync(file: File, config?: Maybe<BuildPdfMerge
10179
10589
  */
10180
10590
  declare function buildPdfMergeEntry(file: File, config?: Maybe<BuildPdfMergeEntryConfig>): Promise<Maybe<PdfMergeEntry>>;
10181
10591
  /**
10182
- * Lightly inspects a file's bytes to confirm the entry can participate in a merge. PDFs are checked for the standard `%PDF-` header and the `%%EOF` marker. Encrypted PDFs (presence of `/Encrypt`) are still reported as `ok: true` with `encrypted: true` so the editor can decide whether to focus, ignore, or reject the entry — see {@link DbxPdfMergeEncryptedHandling}. Images are accepted as-is — the actual decode happens during merge.
10183
- *
10184
- * @param entry - Entry to validate.
10185
- * @returns Result indicating whether the entry can be merged, optional error message when validation fails, and whether the entry is encrypted.
10592
+ * Lightly inspects a file's bytes to confirm the entry can participate in a merge. PDFs are checked for the standard `%PDF-` header and the `%%EOF` marker. Encrypted PDFs (presence of `/Encrypt`) are still reported as `ok: true` with `encrypted: true` so the editor can decide whether to focus, ignore, or reject the entry — see {@link DbxPdfMergeEncryptedHandling}. Images are accepted as-is — the actual decode happens during merge.
10593
+ *
10594
+ * @param entry - Entry to validate.
10595
+ * @returns Result indicating whether the entry can be merged, optional error message when validation fails, and whether the entry is encrypted.
10596
+ */
10597
+ declare function validatePdfMergeEntry(entry: Omit<PdfMergeEntry, 'validation'>): Promise<PdfMergeEntryValidationResult>;
10598
+ /**
10599
+ * Reads per-page metadata from an entry's source document so the editor can list its pages individually.
10600
+ *
10601
+ * Only called while page editing is enabled — the normal upload path never parses the document, it only scans for the PDF header and markers (see {@link validatePdfMergeEntry}).
10602
+ *
10603
+ * @param entry - Entry to inspect.
10604
+ * @returns One {@link PdfMergePageMeta} per source page, or `null` when the entry is encrypted or cannot be parsed. Image entries report a single synthetic page.
10605
+ */
10606
+ declare function readPdfMergeEntryPageMetas(entry: PdfMergeEntry): Promise<Maybe<PdfMergePageMeta[]>>;
10607
+ /**
10608
+ * Why a call to {@link buildPdfMergeEntriesFromSidecar} could not produce entries.
10609
+ *
10610
+ * - `unreadable` — the bytes are not a PDF this library can open (corrupt, or encrypted).
10611
+ * - `no_sidecar` — a readable PDF that carries no manifest, so there is nothing to attribute its pages to. This is the expected outcome for any PDF that did not come out of a merge with `sidecar: true`.
10612
+ * - `no_documents` — a manifest is present but resolved to no pages at all.
10613
+ */
10614
+ type PdfMergeSidecarImportErrorReason = 'unreadable' | 'no_sidecar' | 'no_documents';
10615
+ /**
10616
+ * Outcome of importing a previously-exported merged PDF.
10617
+ */
10618
+ interface PdfMergeSidecarImportResult {
10619
+ /**
10620
+ * Entries reconstructed from the file, one per document, each tagged with the slot recorded in the manifest.
10621
+ */
10622
+ readonly entries: readonly PdfMergeEntry[];
10623
+ /**
10624
+ * The manifest that was read, or `null` when the file carried none and was imported through the {@link BuildPdfMergeEntriesFromSidecarConfig.allowWithoutSidecar} fallback. Check {@link fromSidecar} rather than testing this for null when the distinction matters.
10625
+ */
10626
+ readonly sidecar: Maybe<PdfMergeSidecar>;
10627
+ /**
10628
+ * Whether the entries came from an embedded manifest (`true`) or from the whole-file fallback (`false`). Everything derived from a manifest — per-slot attribution, {@link missingTags}, {@link untaggedPageCount} — is meaningless when this is `false`.
10629
+ */
10630
+ readonly fromSidecar: boolean;
10631
+ /**
10632
+ * Slot ids present in the imported file, in manifest order. `null` represents the unslotted group.
10633
+ */
10634
+ readonly slotIds: readonly Maybe<string>[];
10635
+ /**
10636
+ * Manifest tags that no longer resolve to a page — pages removed from the file after it was exported.
10637
+ */
10638
+ readonly missingTags: readonly string[];
10639
+ /**
10640
+ * Pages in the file carrying no tag, i.e. added outside the editor after export.
10641
+ */
10642
+ readonly untaggedPageCount: number;
10643
+ }
10644
+ /**
10645
+ * Config for {@link buildPdfMergeEntriesFromSidecar}.
10646
+ */
10647
+ interface BuildPdfMergeEntriesFromSidecarConfig extends BuildPdfMergeEntryConfig {
10648
+ /**
10649
+ * When `true`, a readable PDF carrying no manifest is imported as a single unslotted entry instead of failing with `no_sidecar`. Defaults to `false`.
10650
+ *
10651
+ * Intended for documents stored before the manifest existed: loading one as a whole still lets the user page-edit it (rotate or drop a bad page) rather than being turned away. It cannot recover per-slot attribution — there is nothing recorded to attribute.
10652
+ */
10653
+ readonly allowWithoutSidecar?: Maybe<boolean>;
10654
+ /**
10655
+ * File name given to the entry built by the {@link allowWithoutSidecar} fallback when `input` is a bare {@link Blob}. Ignored when `input` is a {@link File} (its own name wins) or when a manifest is present.
10656
+ */
10657
+ readonly fileName?: Maybe<string>;
10658
+ }
10659
+ /**
10660
+ * Reconstructs editor entries from a PDF previously exported with an embedded manifest.
10661
+ *
10662
+ * Each document recorded in the manifest becomes one entry carrying its original slot id, so dropping the result into the store repopulates the same slots the file was built from. This is the re-import half of the sidecar: without it a completed document can only come back as a single opaque file.
10663
+ *
10664
+ * @param input - Bytes of a merged PDF, typically the file the user just chose.
10665
+ * @param config - Optional entry-building config (id factory override, and the sidecar-less fallback).
10666
+ * @returns The reconstructed entries and manifest, or a reason when the file cannot be imported.
10667
+ */
10668
+ declare function buildPdfMergeEntriesFromSidecar(input: Blob, config?: Maybe<BuildPdfMergeEntriesFromSidecarConfig>): Promise<PdfMergeSidecarImportResult | {
10669
+ readonly error: PdfMergeSidecarImportErrorReason;
10670
+ }>;
10671
+ /**
10672
+ * Input for {@link buildPdfMergePagePlan}.
10673
+ */
10674
+ interface BuildPdfMergePagePlanInput {
10675
+ /**
10676
+ * Current entries, already projected by the store's encryption handling. Only `ready`, non-`ignored` entries contribute pages.
10677
+ */
10678
+ readonly entries: readonly PdfMergeEntryView[];
10679
+ /**
10680
+ * Hydrated page metadata keyed by entry id. A `null` value means the entry could not be expanded (encrypted, or unparseable) and contributes no pages.
10681
+ */
10682
+ readonly pageMetas: Record<string, Maybe<PdfMergePageMeta[]>>;
10683
+ /**
10684
+ * Sparse per-page edits keyed by page id.
10685
+ */
10686
+ readonly pageOverrides: Record<string, PdfMergePageOverride>;
10687
+ /**
10688
+ * Stored page ordering per group key.
10689
+ */
10690
+ readonly pageOrder: Record<string, string[]>;
10691
+ }
10692
+ /**
10693
+ * Builds the editor's page plan from the current entries plus the user's sparse edits.
10694
+ *
10695
+ * The result is self-healing: stored ordering ids that no longer resolve are dropped, pages the stored ordering does not mention are appended in natural order, and overrides for departed pages are ignored. That means entries can be added and removed without any page-level bookkeeping.
10696
+ *
10697
+ * Entries whose metadata is `null` contribute no pages — they are encrypted (which `pdf-lib` cannot open) or unparseable. Callers should surface those separately rather than letting them disappear silently.
10698
+ *
10699
+ * @param input - Entries, hydrated metadata, and the stored edits.
10700
+ * @returns The ordered page plan across every group.
10701
+ * @__NO_SIDE_EFFECTS__
10702
+ */
10703
+ declare function buildPdfMergePagePlan(input: BuildPdfMergePagePlanInput): PdfMergePageView[];
10704
+ /**
10705
+ * Options for {@link mergePdfMergeEntries}. Both are optional, and omitting them reproduces the original every-page-of-every-entry merge byte for byte.
10706
+ */
10707
+ interface MergePdfMergeEntriesOptions {
10708
+ /**
10709
+ * Explicit page plan driving the output. When supplied, only the plan's non-removed pages are emitted, in plan order, with each page's rotation composed onto its source rotation. When omitted, every page of every entry is emitted in entry order.
10710
+ */
10711
+ readonly pages?: Maybe<readonly PdfMergePageView[]>;
10712
+ /**
10713
+ * Whether to tag each output page and embed a manifest recording which pages came from which slot. See `readPdfMergeSidecar`.
10714
+ */
10715
+ readonly sidecar?: Maybe<boolean>;
10716
+ }
10717
+ /**
10718
+ * Merges every `ready` entry in the provided array order into a single PDF and returns it as a `Blob`. PDF entries contribute their full set of pages in order; image entries contribute one page sized to the image.
10719
+ *
10720
+ * Supplying {@link MergePdfMergeEntriesOptions.pages} replaces that default with an explicit page plan, so pages can be subsetted, reordered, and rotated. Supplying {@link MergePdfMergeEntriesOptions.sidecar} additionally embeds a manifest of which pages came from which slot.
10721
+ *
10722
+ * Special case: when the only `ready` entry is a single encrypted PDF, returns a passthrough `Blob` of its original bytes — `pdf-lib` cannot read encrypted PDFs even with `ignoreEncryption: true`, and downstream upload flows still need a usable blob. Neither the page plan nor the sidecar applies on that path, since the document cannot be opened.
10723
+ *
10724
+ * Throws if no `ready` entries are provided, if multiple encrypted entries are passed in (the editor only routes here under focus mode where it has narrowed to one), or if the page plan leaves no pages to emit.
10725
+ *
10726
+ * @param entries - Ordered entries to merge.
10727
+ * @param options - Optional page plan and sidecar switch.
10728
+ * @returns A Blob with `application/pdf` MIME type.
10729
+ */
10730
+ declare function mergePdfMergeEntries(entries: readonly PdfMergeEntry[], options?: Maybe<MergePdfMergeEntriesOptions>): Promise<Blob>;
10731
+
10732
+ /**
10733
+ * Initial state used by {@link DbxPdfMergeEditorStore} — no entries and no page edits.
10734
+ */
10735
+ declare const DBX_PDF_MERGE_EDITOR_INITIAL_STATE: PdfMergeEditorState;
10736
+ /**
10737
+ * Why a store-level import failed. Extends the parse-level reasons from {@link buildPdfMergeEntriesFromSidecar} with the store's own slot check.
10738
+ *
10739
+ * - `unexpected_slots` — the file's manifest names a section the caller said this editor does not have. The offending ids are on {@link DbxPdfMergeEditorImportState.unexpectedSlotIds}.
10740
+ */
10741
+ type DbxPdfMergeEditorImportErrorReason = PdfMergeSidecarImportErrorReason | 'unexpected_slots';
10742
+ /**
10743
+ * Result of a successful store-level import — the sidecar result plus what the caller's expectation did not cover.
10744
+ */
10745
+ interface DbxPdfMergeEditorImportResult extends PdfMergeSidecarImportResult {
10746
+ /**
10747
+ * Expected sections the imported file did not fill. Always empty when no `expectedSlotIds` was supplied. A non-empty list is informational, not a failure — the import still replaced the store's entries.
10748
+ */
10749
+ readonly missingSlotIds: readonly string[];
10750
+ }
10751
+ /**
10752
+ * Who initiated an import.
10753
+ *
10754
+ * - `programmatic` — app code called {@link DbxPdfMergeEditorStore.importMergedPdf} directly, or a blob was bound to `[source]` on {@link DbxPdfMergeEditorStoreDirective}. This is the editor's *baseline*: the document the surrounding app decided the editor should be showing.
10755
+ * - `user` — the person picked a file through {@link DbxPdfMergeImportComponent}. Discardable; the baseline is not.
10756
+ *
10757
+ * The distinction exists for {@link DbxPdfMergeEditorStore.clearEntries}: emptying a programmatically-supplied editor would leave it in a state the app never asked for and cannot easily detect, so a clear restores the baseline instead of destroying it.
10758
+ */
10759
+ type DbxPdfMergeEditorImportOrigin = 'programmatic' | 'user';
10760
+ /**
10761
+ * Lifecycle of the most recent {@link DbxPdfMergeEditorStore.importMergedPdf} call, exposed via {@link DbxPdfMergeEditorStore.importState$}.
10762
+ */
10763
+ interface DbxPdfMergeEditorImportState {
10764
+ readonly status: 'importing' | 'imported' | 'failed';
10765
+ /**
10766
+ * Who initiated this import. See {@link DbxPdfMergeEditorImportOrigin}.
10767
+ */
10768
+ readonly origin: DbxPdfMergeEditorImportOrigin;
10769
+ /**
10770
+ * Present with status `imported`.
10771
+ */
10772
+ readonly result?: Maybe<DbxPdfMergeEditorImportResult>;
10773
+ /**
10774
+ * Present with status `failed`.
10775
+ */
10776
+ readonly error?: Maybe<DbxPdfMergeEditorImportErrorReason>;
10777
+ /**
10778
+ * Sections the file named that the caller's `expectedSlotIds` did not allow. Present with error `unexpected_slots`; `null` entries represent unsectioned documents.
10779
+ */
10780
+ readonly unexpectedSlotIds?: readonly Maybe<string>[];
10781
+ }
10782
+ /**
10783
+ * Input for {@link DbxPdfMergeEditorStore.importMergedPdf}.
10784
+ */
10785
+ interface DbxPdfMergeEditorImportMergedPdfInput {
10786
+ /**
10787
+ * Bytes of a merged PDF previously exported from the editor.
10788
+ */
10789
+ readonly source: Blob;
10790
+ /**
10791
+ * Sections the file is allowed to name. **Omit to skip the check entirely** — the default for a programmatic import.
10792
+ *
10793
+ * The check is opt-in here rather than derived from {@link DbxPdfMergeEditorStore.registeredSlotIds$} because a programmatic import routinely runs before any slot exists (a store mounted on an `<ng-container>` whose editor only opens later in a dialog), where the registry is legitimately empty. Entries land in the store regardless and slots pick them up on mount, so importing early is safe; it is the caller who knows whether the document is trusted. {@link DbxPdfMergeImportComponent} passes its own resolved list, preserving the picker's behavior.
10794
+ */
10795
+ readonly expectedSlotIds?: Maybe<readonly string[]>;
10796
+ /**
10797
+ * When `true`, a readable PDF with no manifest is imported as one unslotted entry rather than failing with `no_sidecar`. Defaults to `false`. See {@link BuildPdfMergeEntriesFromSidecarConfig.allowWithoutSidecar}.
10798
+ */
10799
+ readonly allowWithoutSidecar?: Maybe<boolean>;
10800
+ /**
10801
+ * File name for the entry built by the `allowWithoutSidecar` fallback when `source` is a bare {@link Blob}.
10802
+ */
10803
+ readonly fileName?: Maybe<string>;
10804
+ /**
10805
+ * Who initiated this import. Defaults to `programmatic` — the picker passes `user` explicitly, so any other caller is app code by construction.
10806
+ *
10807
+ * A successful `programmatic` import becomes the editor's restore point for {@link DbxPdfMergeEditorStore.clearEntries}.
10808
+ */
10809
+ readonly origin?: Maybe<DbxPdfMergeEditorImportOrigin>;
10810
+ }
10811
+ /**
10812
+ * Input for {@link DbxPdfMergeEditorStore.clearEntries}.
10186
10813
  */
10187
- declare function validatePdfMergeEntry(entry: Omit<PdfMergeEntry, 'validation'>): Promise<PdfMergeEntryValidationResult>;
10814
+ interface DbxPdfMergeEditorClearEntriesInput {
10815
+ /**
10816
+ * Whether a programmatic import is restored rather than discarded. Defaults to `true`.
10817
+ *
10818
+ * Bind `false` for an editor whose clear really should empty everything, baseline included.
10819
+ */
10820
+ readonly restoreImport?: Maybe<boolean>;
10821
+ }
10188
10822
  /**
10189
- * Merges every `ready` entry in the provided array order into a single PDF and returns it as a `Blob`. PDF entries contribute their full set of pages in order; image entries contribute one page sized to the image.
10190
- *
10191
- * Special case: when the only `ready` entry is a single encrypted PDF, returns a passthrough `Blob` of its original bytes — `pdf-lib` cannot read encrypted PDFs even with `ignoreEncryption: true`, and downstream upload flows still need a usable blob.
10192
- *
10193
- * Throws if no `ready` entries are provided, or if multiple encrypted entries are passed in (the editor only routes here under focus mode where it has narrowed to one).
10194
- *
10195
- * @param entries - Ordered entries to merge.
10196
- * @returns A Blob with `application/pdf` MIME type.
10823
+ * Outcome of {@link DbxPdfMergeEditorStore.clearEntries}.
10197
10824
  */
10198
- declare function mergePdfMergeEntries(entries: readonly PdfMergeEntry[]): Promise<Blob>;
10199
-
10825
+ interface DbxPdfMergeEditorClearEntriesResult {
10826
+ /**
10827
+ * Whether the editor was reset to its programmatic baseline (`true`) or emptied (`false`).
10828
+ */
10829
+ readonly restored: boolean;
10830
+ /**
10831
+ * Terminal state of the restoring re-import. Only present when a restore was attempted.
10832
+ */
10833
+ readonly importState?: Maybe<DbxPdfMergeEditorImportState>;
10834
+ }
10200
10835
  /**
10201
- * Initial state used by {@link DbxPdfMergeEditorStore} — no entries.
10836
+ * Input for {@link DbxPdfMergeEditorStore.addFileToSlot}.
10202
10837
  */
10203
- declare const DBX_PDF_MERGE_EDITOR_INITIAL_STATE: PdfMergeEditorState;
10838
+ interface DbxPdfMergeEditorAddFileToSlotInput {
10839
+ /**
10840
+ * The document to add. A bare {@link Blob} is named via {@link fileName}.
10841
+ */
10842
+ readonly file: Blob | File;
10843
+ /**
10844
+ * Slot to attribute the entry to. Omit for an unslotted entry.
10845
+ */
10846
+ readonly slotId?: Maybe<string>;
10847
+ /**
10848
+ * Name for a bare {@link Blob}, or an override for a {@link File}'s own name.
10849
+ */
10850
+ readonly fileName?: Maybe<string>;
10851
+ /**
10852
+ * Image-compression override. Defaults to the store-level config set via {@link DbxPdfMergeEditorStore.setImageCompression}, matching what a slot uploader would apply to the same file.
10853
+ */
10854
+ readonly imageCompression?: Maybe<DbxImageCompressionConfig>;
10855
+ }
10204
10856
  /**
10205
10857
  * Input accepted by {@link DbxPdfMergeEditorStore.addFiles}: either a bare list of files (treated as unscoped, synchronously wrapped into entries) or `{ files, slotId }` to attribute the new entries to a slot. Callers that need client-side compression should construct entries via the async `buildPdfMergeEntry` and pass `{ entries }` instead.
10206
10858
  */
@@ -10218,6 +10870,22 @@ declare class DbxPdfMergeEditorStore extends ComponentStore<PdfMergeEditorState>
10218
10870
  private readonly _outputSizeLimit$;
10219
10871
  private readonly _imageCompression$;
10220
10872
  private readonly _encryptedHandling$;
10873
+ private readonly _pageEditing$;
10874
+ private readonly _sidecar$;
10875
+ /**
10876
+ * Per-entry page metadata, parsed at most once per entry. Keyed by entry id; a resolved `null` means the entry could not be expanded. Only populated while page editing is enabled.
10877
+ */
10878
+ private readonly _pageMetaCache;
10879
+ /**
10880
+ * Mount count per registered slot id. See {@link registerSlotId} for why this is a count rather than a set.
10881
+ */
10882
+ private readonly _slotIdCounts;
10883
+ private readonly _registeredSlotIds$;
10884
+ private readonly _importState$;
10885
+ /**
10886
+ * Input of the most recent successful `programmatic` import, replayed by {@link clearEntries} to reset the editor to the document the app supplied. `null` until one succeeds; a user's pick never overwrites it.
10887
+ */
10888
+ private _restorableImport;
10221
10889
  constructor();
10222
10890
  /**
10223
10891
  * Live entry list. Each raw entry's {@link PdfMergeEntry.validation} promise is mapped onto its status: while pending, the entry is emitted with status `validating`; once resolved, the entry is mutated to `ready`/`error` and re-emitted. Subsequent emissions of the underlying state pass already-resolved entries through unchanged.
@@ -10241,6 +10909,55 @@ declare class DbxPdfMergeEditorStore extends ComponentStore<PdfMergeEditorState>
10241
10909
  */
10242
10910
  readonly encryptedEntries$: Observable<PdfMergeEntry[]>;
10243
10911
  readonly hasReadyEntries$: Observable<boolean>;
10912
+ /**
10913
+ * Raw {@link DbxPdfMergeEditorConfig.pageEditing} value pushed onto the store, before defaulting. Consumed by the editor as the middle tier of its resolution chain (own `[config]` input → store → {@link DBX_PDF_MERGE_EDITOR_CONFIG} token), so a store-level default does not shadow the token.
10914
+ */
10915
+ readonly pageEditingSetting$: Observable<Maybe<boolean>>;
10916
+ /**
10917
+ * Whether page editing is active, defaulted to {@link DEFAULT_DBX_PDF_MERGE_PAGE_EDITING}. Every page-related stream is inert while this is `false`.
10918
+ */
10919
+ readonly pageEditing$: Observable<boolean>;
10920
+ /**
10921
+ * Raw {@link DbxPdfMergeEditorConfig.sidecar} value pushed onto the store, before defaulting.
10922
+ */
10923
+ readonly sidecarSetting$: Observable<Maybe<boolean>>;
10924
+ /**
10925
+ * Whether the merged output should carry an embedded manifest, defaulted to {@link DEFAULT_DBX_PDF_MERGE_SIDECAR}. Independent of {@link pageEditing$}.
10926
+ */
10927
+ readonly sidecar$: Observable<boolean>;
10928
+ /**
10929
+ * Hydrated page metadata keyed by entry id.
10930
+ *
10931
+ * Short-circuits to an empty record while page editing is off, so the default configuration never parses a source document — the upload path's cheap header scan stays the only inspection performed. Each entry is parsed at most once thanks to {@link _pageMetaCache}, and metadata for departed entries is pruned on each pass.
10932
+ */
10933
+ readonly pageMetas$: Observable<Record<string, Maybe<PdfMergePageMeta[]>>>;
10934
+ /**
10935
+ * The editor's ordered page plan, or `null` while page editing is disabled. Passing `null` through to the merge is what makes the default path emit every page of every entry exactly as it did before page editing existed.
10936
+ */
10937
+ readonly pages$: Observable<Maybe<PdfMergePageView[]>>;
10938
+ /**
10939
+ * The page plan split into the groups the UI renders, one per slot plus one for unslotted entries. Empty while page editing is disabled.
10940
+ */
10941
+ readonly pageGroups$: Observable<PdfMergePageGroup[]>;
10942
+ /**
10943
+ * Entries that are ready to merge but whose pages could not be listed — encrypted documents (which `pdf-lib` cannot open) and anything unparseable. Surfaced so the UI can explain why those rows are not expandable instead of letting them silently vanish from the page list. Always empty while page editing is disabled.
10944
+ */
10945
+ readonly unexpandableEntries$: Observable<PdfMergeEntryView[]>;
10946
+ /**
10947
+ * Number of pages that will reach the merged output — the plan minus anything marked for removal. Zero while page editing is disabled, where the count is not meaningful.
10948
+ */
10949
+ readonly mergeablePageCount$: Observable<number>;
10950
+ /**
10951
+ * Whether at least one page survives the user's edits. Emits `true` while page editing is disabled so it never gates the default path.
10952
+ */
10953
+ readonly hasMergeablePages$: Observable<boolean>;
10954
+ /**
10955
+ * Returns the pages belonging to one group, for a slot rendering its own pages inline.
10956
+ *
10957
+ * @param slotId - Slot identifier, or `null` for the unslotted group.
10958
+ * @returns Observable of that group's ordered pages.
10959
+ */
10960
+ pagesForSlotId$(slotId: Maybe<string>): Observable<PdfMergePageView[]>;
10244
10961
  /**
10245
10962
  * Emits `true` while any entry's validation promise has not yet resolved (i.e. one or more entries are still in `validating` status). Reads from {@link entries$} (not {@link displayEntries$}) so validation gating ignores the `ignored`/`error` projection done by encryption handling.
10246
10963
  */
@@ -10262,7 +10979,9 @@ declare class DbxPdfMergeEditorStore extends ComponentStore<PdfMergeEditorState>
10262
10979
  */
10263
10980
  readonly sizeLimitValid$: Observable<boolean>;
10264
10981
  /**
10265
- * Emits `true` while both the registered {@link DbxPdfMergeEditorValidator} delegate (if any) and the optional output-size limit are satisfied. {@link currentMergeOutput$} gates merge emissions on this stream.
10982
+ * Emits `true` while the registered {@link DbxPdfMergeEditorValidator} delegate (if any), the optional output-size limit, and the page plan are all satisfied. {@link currentMergeOutput$} gates merge emissions on this stream.
10983
+ *
10984
+ * The page-plan term is `true` whenever page editing is disabled, so this stream is unchanged on the default path. With page editing on it blocks the merge once the user has marked every page for deletion.
10266
10985
  */
10267
10986
  readonly isValid$: Observable<boolean>;
10268
10987
  /**
@@ -10281,6 +11000,90 @@ declare class DbxPdfMergeEditorStore extends ComponentStore<PdfMergeEditorState>
10281
11000
  * @returns Observable of entries whose `slotId` matches, enriched with the `ignored` flag.
10282
11001
  */
10283
11002
  entriesForSlotId$(slotId: string): Observable<PdfMergeEntryView[]>;
11003
+ /**
11004
+ * Slot ids currently mounted against this store, i.e. the sections this editor declares.
11005
+ *
11006
+ * This is what makes `<dbx-pdf-merge-import>` a zero-configuration drop-in: it derives the set of sections a re-imported file is allowed to name (and whether it renders at all) from the slots actually on screen, rather than from a hand-maintained list duplicating them.
11007
+ *
11008
+ * Emitted **sorted ascending**, which is deterministic but is NOT declaration order. Sorting is what lets the guard below collapse slot churn: a set cycling through `@if` (`['a','b']` → `['b']` → `['b','a']`) ends up equal to the array it started with, where registration order would emit a spuriously different array for an identical set.
11009
+ *
11010
+ * Registered by {@link DbxPdfMergeEditorFileUploadComponent} from its own lifecycle. Kept here rather than on the optional {@link DbxPdfMergeEditorFileUploadValidatorDirective} because it must be available whether or not a validator is present — and because a separately-provided registry could be provided at a different level than the store, letting slots register with one instance while a reader sees another.
11011
+ */
11012
+ readonly registeredSlotIds$: Observable<readonly string[]>;
11013
+ /**
11014
+ * Registers a slot id as mounted, adding it to {@link registeredSlotIds$}.
11015
+ *
11016
+ * Reference-counted rather than a set: the same `slotId` can legitimately be mounted twice at once — the PDF merge upload dialog hosts its slots against an ancestor store while inline slots may still exist under {@link DBX_PDF_MERGE_EDITOR_PRESERVE_ENTRIES_ON_SLOT_DESTROY} — and one unmount must not deregister a still-mounted id.
11017
+ *
11018
+ * @param slotId - Slot identifier being mounted.
11019
+ */
11020
+ registerSlotId(slotId: string): void;
11021
+ /**
11022
+ * Deregisters one mount of a slot id, removing it from {@link registeredSlotIds$} once the last mount is gone. Unknown ids are ignored.
11023
+ *
11024
+ * Callers must pair this with their own {@link registerSlotId} exactly once. The store frequently outlives its slots (a dialog-hosted slot is destroyed on every close while the page-level store lives on), so a missed call leaves the editor permanently claiming a section that is not on screen.
11025
+ *
11026
+ * @param slotId - Slot identifier being unmounted.
11027
+ */
11028
+ unregisterSlotId(slotId: string): void;
11029
+ private _emitRegisteredSlotIds;
11030
+ /**
11031
+ * Lifecycle of the most recent {@link importMergedPdf} call, or `undefined` before the first. Lets a consumer that triggered a programmatic import observe its outcome — the picker component is not the only entry point.
11032
+ */
11033
+ readonly importState$: Observable<Maybe<DbxPdfMergeEditorImportState>>;
11034
+ /**
11035
+ * The most recent successful import, or `null` while none has succeeded.
11036
+ */
11037
+ readonly importResult$: Observable<Maybe<DbxPdfMergeEditorImportResult>>;
11038
+ /**
11039
+ * Why the most recent import failed, or `null` when it did not.
11040
+ */
11041
+ readonly importError$: Observable<Maybe<DbxPdfMergeEditorImportErrorReason>>;
11042
+ /**
11043
+ * Emits `true` while an import is in flight.
11044
+ */
11045
+ readonly isImporting$: Observable<boolean>;
11046
+ /**
11047
+ * Whether a programmatic baseline exists for {@link clearEntries} to restore. Lets a consumer word its own confirmation honestly — "reset to the imported document" rather than "remove everything".
11048
+ *
11049
+ * @returns `true` once a programmatic import has succeeded.
11050
+ */
11051
+ hasRestorableImport(): boolean;
11052
+ /**
11053
+ * Imports a previously-exported merged PDF, replacing every entry currently in the store with the per-slot documents recorded in its manifest.
11054
+ *
11055
+ * This is the programmatic equivalent of what {@link DbxPdfMergeImportComponent} does with a picked file, and that component delegates here — so a stored document loaded by an app and a file chosen by a user go through one implementation with one set of error semantics. Progress and outcome are published on {@link importState$} as well as returned.
11056
+ *
11057
+ * @param input - The source blob plus the optional slot check and sidecar-less fallback.
11058
+ * @returns The terminal state of this import.
11059
+ */
11060
+ importMergedPdf(input: DbxPdfMergeEditorImportMergedPdfInput): Promise<DbxPdfMergeEditorImportState>;
11061
+ /**
11062
+ * Discards the current import lifecycle, so consumers rendering its notices (the picker's "Imported N section(s)" success line, its missing-section warning, its error) fall back to showing nothing.
11063
+ *
11064
+ * Separate from the entry list — this clears the *record* of an import, not its contents.
11065
+ */
11066
+ clearImportState(): void;
11067
+ /**
11068
+ * Empties the editor, or resets it to its programmatic baseline when one exists.
11069
+ *
11070
+ * This is the "Clear" affordance's operation, and it deliberately is not a plain {@link clearAll}. When the surrounding app supplied the document (a programmatic {@link importMergedPdf}, or `[source]` on {@link DbxPdfMergeEditorStoreDirective}), emptying the editor would strand it in a state the app never asked for and has no obvious way to notice. Instead the original import is re-run, landing the view exactly where it was when the document first arrived — page edits, section removals, and any user-picked file on top of it all discarded.
11071
+ *
11072
+ * With no baseline — the ordinary case, including an editor whose only import came from {@link DbxPdfMergeImportComponent} — the entries and the import state both go, so no stale success/warning notice outlives the content it described.
11073
+ *
11074
+ * @param input - Optional override for the restore behavior.
11075
+ * @returns Whether the baseline was restored, plus the re-import's terminal state when one ran.
11076
+ */
11077
+ clearEntries(input?: Maybe<DbxPdfMergeEditorClearEntriesInput>): Promise<DbxPdfMergeEditorClearEntriesResult>;
11078
+ /**
11079
+ * Adds a single document to a slot, without any sidecar involvement — the programmatic equivalent of a user dropping one file onto a slot uploader. Existing entries are left alone.
11080
+ *
11081
+ * Unlike {@link importMergedPdf} this neither reads nor requires a manifest; it is the plain "put this file in that slot" primitive, for e.g. an admin appending one document to an existing set. The entry can be added before its slot mounts — {@link entriesForSlotId$} picks it up when the slot renders.
11082
+ *
11083
+ * @param input - The blob or file, its target slot, and an optional name for a bare blob.
11084
+ * @returns The entry that was added, or `null` when the file is not a supported PDF/PNG/JPEG (in which case nothing was added).
11085
+ */
11086
+ addFileToSlot(input: DbxPdfMergeEditorAddFileToSlotInput): Promise<Maybe<PdfMergeEntry>>;
10284
11087
  /**
10285
11088
  * Registers a {@link DbxPdfMergeEditorValidator} delegate that gates merge emissions. Only one delegate is active at a time — calling this replaces any previously registered delegate.
10286
11089
  *
@@ -10309,6 +11112,18 @@ declare class DbxPdfMergeEditorStore extends ComponentStore<PdfMergeEditorState>
10309
11112
  * @param handling - Encryption handling mode, or a falsy value to clear.
10310
11113
  */
10311
11114
  setEncryptedHandling(handling: Maybe<DbxPdfMergeEncryptedHandling>): void;
11115
+ /**
11116
+ * Enables or disables page editing, exposed via {@link pageEditing$}. Turning it on expands each ready entry into its individual pages; turning it off returns the editor to its file-granular behavior while preserving any page edits in state, so toggling back on restores them.
11117
+ *
11118
+ * @param pageEditing - Whether page editing is active, or a falsy value to clear and fall back to {@link DEFAULT_DBX_PDF_MERGE_PAGE_EDITING}.
11119
+ */
11120
+ setPageEditing(pageEditing: Maybe<boolean>): void;
11121
+ /**
11122
+ * Enables or disables the embedded manifest, exposed via {@link sidecar$}.
11123
+ *
11124
+ * @param sidecar - Whether to embed the manifest, or a falsy value to clear and fall back to {@link DEFAULT_DBX_PDF_MERGE_SIDECAR}.
11125
+ */
11126
+ setSidecar(sidecar: Maybe<boolean>): void;
10312
11127
  /**
10313
11128
  * Appends entries (already constructed) or builds them from raw files and appends them to state. Each entry's validation promise starts when the entry is built; {@link entries$} reflects each result as it resolves. When `input` is an object with `files` and `slotId`, the resulting entries are tagged with that slot id. When `input` is `{ entries }`, the entries are appended as-is — use this shape for entries that went through async client-side compression upstream.
10314
11129
  */
@@ -10332,10 +11147,51 @@ declare class DbxPdfMergeEditorStore extends ComponentStore<PdfMergeEditorState>
10332
11147
  readonly currentIndex: number;
10333
11148
  }>) => rxjs.Subscription;
10334
11149
  readonly clearAll: () => void;
11150
+ /**
11151
+ * Replaces the entire entry list, discarding any page edits.
11152
+ *
11153
+ * Used by the sidecar import path, which reconstructs a fresh set of slot-tagged entries from a previously-exported file. Done as a single state change so subscribers never observe an intermediate empty list.
11154
+ */
11155
+ readonly replaceEntries: (observableOrValue: readonly PdfMergeEntry[] | Observable<readonly PdfMergeEntry[]>) => rxjs.Subscription;
11156
+ /**
11157
+ * Reorders a page inside its own group. Groups never exchange pages — the page list renders one CDK drop list per group, so a cross-group drag is impossible to express.
11158
+ *
11159
+ * The move rewrites the id array the caller rendered rather than recomputing it from state, keeping the stored order aligned with what the user saw.
11160
+ */
11161
+ readonly movePageWithinGroup: (observableOrValue: PdfMergePageMove | Observable<PdfMergePageMove>) => rxjs.Subscription;
11162
+ /**
11163
+ * Sets a page's rotation. The value is composed onto the page's own source rotation at merge time, so this is the rotation the user applied rather than the page's absolute orientation.
11164
+ */
11165
+ readonly setPageRotation: (observableOrValue: PdfMergePageRotationChange | Observable<PdfMergePageRotationChange>) => rxjs.Subscription;
11166
+ /**
11167
+ * Marks a page for deletion or restores it. Marked pages stay in the list so the choice can be undone, but are excluded from the merged output.
11168
+ */
11169
+ readonly setPageRemoved: (observableOrValue: PdfMergePageRemovedChange | Observable<PdfMergePageRemovedChange>) => rxjs.Subscription;
11170
+ /**
11171
+ * Discards every page edit, returning the plan to natural order with no rotations or deletions. Leaves the entries themselves untouched.
11172
+ */
11173
+ readonly clearPageEdits: () => void;
10335
11174
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DbxPdfMergeEditorStore, never>;
10336
11175
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<DbxPdfMergeEditorStore>;
10337
11176
  }
10338
11177
 
11178
+ /**
11179
+ * Options applied to the blob bound to {@link DbxPdfMergeEditorStoreDirective.source}. Mirrors the tail of {@link DbxPdfMergeEditorImportMergedPdfInput}.
11180
+ */
11181
+ interface DbxPdfMergeEditorSourceConfig {
11182
+ /**
11183
+ * Sections the source is allowed to name. Omit to skip the check — the default, since a bound source usually arrives before any slot has mounted.
11184
+ */
11185
+ readonly expectedSlotIds?: Maybe<readonly string[]>;
11186
+ /**
11187
+ * When `true`, a readable PDF with no manifest loads as one unslotted entry instead of failing. Defaults to `false`.
11188
+ */
11189
+ readonly allowWithoutSidecar?: Maybe<boolean>;
11190
+ /**
11191
+ * File name to give a bare {@link Blob} loaded through the sidecar-less fallback.
11192
+ */
11193
+ readonly fileName?: Maybe<string>;
11194
+ }
10339
11195
  /**
10340
11196
  * Provides a {@link DbxPdfMergeEditorStore} on its host element so descendant components (including {@link DbxPdfMergeUploadButtonComponent} and any dialog opened with the host's injector) share the same store instance. Optionally pushes configuration onto the store via inputs.
10341
11197
  *
@@ -10353,10 +11209,23 @@ declare class DbxPdfMergeEditorStoreDirective {
10353
11209
  private readonly _injectedConfig;
10354
11210
  readonly config: _angular_core.InputSignal<Maybe<DbxPdfMergeEditorConfig>>;
10355
11211
  readonly outputSizeLimit: _angular_core.InputSignal<Maybe<number>>;
11212
+ /**
11213
+ * A previously-exported merged PDF to load into the store, for an app that fetches a stored document itself and wants the editor to open already populated — no picker involved.
11214
+ *
11215
+ * Imported once per distinct blob instance: re-emitting the same object does nothing, so a template re-render or an unrelated input change cannot re-import. Emitting a *different* blob imports again and replaces the entries, even if the bytes are identical.
11216
+ *
11217
+ * Watch {@link DbxPdfMergeEditorStore.importState$} for the outcome — a failure surfaces there rather than throwing.
11218
+ */
11219
+ readonly source: _angular_core.InputSignal<Maybe<Blob>>;
11220
+ readonly sourceConfig: _angular_core.InputSignal<Maybe<DbxPdfMergeEditorSourceConfig>>;
11221
+ /**
11222
+ * The blob instance most recently handed to the store, so the same one is never imported twice.
11223
+ */
11224
+ private _importedSource;
10356
11225
  readonly effectiveErrorBytesSignal: _angular_core.Signal<Maybe<number>>;
10357
11226
  constructor();
10358
11227
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DbxPdfMergeEditorStoreDirective, never>;
10359
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<DbxPdfMergeEditorStoreDirective, "[dbxPdfMergeEditorStore]", ["dbxPdfMergeEditorStore"], { "config": { "alias": "config"; "required": false; "isSignal": true; }; "outputSizeLimit": { "alias": "outputSizeLimit"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11228
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<DbxPdfMergeEditorStoreDirective, "[dbxPdfMergeEditorStore]", ["dbxPdfMergeEditorStore"], { "config": { "alias": "config"; "required": false; "isSignal": true; }; "outputSizeLimit": { "alias": "outputSizeLimit"; "required": false; "isSignal": true; }; "source": { "alias": "source"; "required": false; "isSignal": true; }; "sourceConfig": { "alias": "sourceConfig"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
10360
11229
  }
10361
11230
 
10362
11231
  /**
@@ -10477,6 +11346,8 @@ declare class DbxPdfMergeEditorComponent {
10477
11346
  readonly downloadButton: _angular_core.InputSignal<Maybe<DbxButtonDisplayStylePair>>;
10478
11347
  readonly showAddFiles: _angular_core.InputSignal<Maybe<boolean>>;
10479
11348
  readonly showFileList: _angular_core.InputSignal<Maybe<boolean>>;
11349
+ readonly pageEditing: _angular_core.InputSignal<Maybe<boolean>>;
11350
+ readonly sidecar: _angular_core.InputSignal<Maybe<boolean>>;
10480
11351
  /**
10481
11352
  * Bundles every editor option into one object (see {@link DbxPdfMergeEditorConfig}). Individual inputs override the matching field here, which in turn overrides the workspace-wide {@link DBX_PDF_MERGE_EDITOR_CONFIG} token.
10482
11353
  */
@@ -10490,11 +11361,32 @@ declare class DbxPdfMergeEditorComponent {
10490
11361
  * Store-level encryption handling default pushed by {@link DbxPdfMergeEditorStoreDirective}. Resolved between the editor's own `config` input and the workspace-wide token in {@link effectiveConfigSignal}.
10491
11362
  */
10492
11363
  readonly storeEncryptedHandlingSignal: _angular_core.Signal<DbxPdfMergeEncryptedHandling | undefined>;
11364
+ /**
11365
+ * Store-level page-editing and sidecar defaults pushed by {@link DbxPdfMergeEditorStoreDirective}. These read the store's raw (undefaulted) settings so an unset store value still falls through to the workspace-wide token in {@link effectiveConfigSignal}.
11366
+ */
11367
+ readonly storePageEditingSignal: _angular_core.Signal<Maybe<boolean>>;
11368
+ readonly storeSidecarSignal: _angular_core.Signal<Maybe<boolean>>;
10493
11369
  /**
10494
11370
  * Merged config — the editor's own `config` input wins over the store-level default (for `imageCompression`), which in turn wins over the workspace-wide token. The individual inputs are resolved on top of this object in the per-field `*Signal` computeds below.
10495
11371
  */
10496
11372
  readonly effectiveConfigSignal: _angular_core.Signal<DbxPdfMergeEditorConfig>;
11373
+ readonly restoreImportOnClearSignal: _angular_core.Signal<boolean>;
11374
+ /**
11375
+ * Whether Clear will reset to a programmatic baseline instead of emptying. Only affects the confirmation's wording — {@link DbxPdfMergeEditorStore.clearEntries} makes the actual decision, and re-reads the store at the moment it runs.
11376
+ */
11377
+ readonly clearRestoresImportSignal: _angular_core.Signal<boolean>;
11378
+ /**
11379
+ * Config for the confirmation shown before the footer Clear button empties the editor. `clearConfirm` overrides any field of the default; `autoConfirm: true` restores the pre-confirmation one-click behavior.
11380
+ *
11381
+ * The default copy tells the truth about which of the two things Clear is about to do — reset to the app-supplied document, or remove everything.
11382
+ */
11383
+ readonly clearConfirmSignal: _angular_core.Signal<DbxActionConfirmConfig<unknown>>;
10497
11384
  readonly encryptedHandlingSignal: _angular_core.Signal<DbxPdfMergeEncryptedHandling>;
11385
+ /**
11386
+ * Whether page editing is active. When `false` the editor renders its original file list and no page machinery is instantiated at all.
11387
+ */
11388
+ readonly pageEditingSignal: _angular_core.Signal<boolean>;
11389
+ readonly sidecarSignal: _angular_core.Signal<boolean>;
10498
11390
  readonly imageCompressionConfigSignal: _angular_core.Signal<Maybe<DbxImageCompressionConfig>>;
10499
11391
  readonly outputSizeLimitsSignal: _angular_core.Signal<Maybe<DbxPdfMergeOutputSizeLimitsConfig>>;
10500
11392
  readonly acceptSignal: _angular_core.Signal<string | _dereekb_dbx_web.FileAcceptFilterTypeStringArray | _dereekb_dbx_web.FileAcceptFunction>;
@@ -10509,6 +11401,10 @@ declare class DbxPdfMergeEditorComponent {
10509
11401
  readonly errorBytesSignal: _angular_core.Signal<Maybe<number>>;
10510
11402
  readonly hasReadyEntriesSignal: _angular_core.Signal<boolean>;
10511
11403
  readonly entryCountSignal: _angular_core.Signal<number>;
11404
+ /**
11405
+ * Number of pages that will actually reach the output — the page plan minus anything marked for removal. Only surfaced while page editing is enabled.
11406
+ */
11407
+ readonly mergeablePageCountSignal: _angular_core.Signal<number>;
10512
11408
  /**
10513
11409
  * Mirrors {@link DbxPdfMergeEditorStore.focusActive$} — `true` while `encryptedHandling === 'focus'` and at least one ready encrypted entry exists. Drives the encrypted-PDF focus banner.
10514
11410
  */
@@ -10536,11 +11432,22 @@ declare class DbxPdfMergeEditorComponent {
10536
11432
  readonly downloadConfigSignal: _angular_core.Signal<DbxDownloadBlobButtonConfig>;
10537
11433
  constructor();
10538
11434
  onFiles(event: DbxFileUploadFilesChangedEvent): Promise<void>;
10539
- onClear(): void;
11435
+ /**
11436
+ * Clears the editor, resetting to a programmatic baseline when there is one. See {@link DbxPdfMergeEditorStore.clearEntries}.
11437
+ *
11438
+ * @returns The clear outcome, so a programmatic caller can tell a reset from an empty.
11439
+ */
11440
+ onClear(): Promise<DbxPdfMergeEditorClearEntriesResult>;
11441
+ /**
11442
+ * Runs as the handler of the footer Clear button's own `dbxAction`, so the `dbxActionConfirm` on that action is what stands between a misclick and the whole entry list. Delegates to {@link onClear} so a programmatic clear and the button share one path.
11443
+ *
11444
+ * @returns An observable the action completes on — a restore re-parses the document, so this is not instantaneous.
11445
+ */
11446
+ readonly handleClear: WorkUsingObservable<unknown, void>;
10540
11447
  onPreview(): void;
10541
11448
  private openPreviewDialog;
10542
11449
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DbxPdfMergeEditorComponent, never>;
10543
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DbxPdfMergeEditorComponent, "dbx-pdf-merge-editor", never, { "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "showDownloadButton": { "alias": "showDownloadButton"; "required": false; "isSignal": true; }; "showPreviewButton": { "alias": "showPreviewButton"; "required": false; "isSignal": true; }; "downloadButton": { "alias": "downloadButton"; "required": false; "isSignal": true; }; "showAddFiles": { "alias": "showAddFiles"; "required": false; "isSignal": true; }; "showFileList": { "alias": "showFileList"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "entriesChanged": "entriesChanged"; }, never, ["*"], true, never>;
11450
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DbxPdfMergeEditorComponent, "dbx-pdf-merge-editor", never, { "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "showDownloadButton": { "alias": "showDownloadButton"; "required": false; "isSignal": true; }; "showPreviewButton": { "alias": "showPreviewButton"; "required": false; "isSignal": true; }; "downloadButton": { "alias": "downloadButton"; "required": false; "isSignal": true; }; "showAddFiles": { "alias": "showAddFiles"; "required": false; "isSignal": true; }; "showFileList": { "alias": "showFileList"; "required": false; "isSignal": true; }; "pageEditing": { "alias": "pageEditing"; "required": false; "isSignal": true; }; "sidecar": { "alias": "sidecar"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; }, { "entriesChanged": "entriesChanged"; }, never, ["*"], true, never>;
10544
11451
  }
10545
11452
 
10546
11453
  /**
@@ -10736,12 +11643,38 @@ interface DbxPdfMergeEditorFileUploadConfig {
10736
11643
  * Optional per-slot image compression override. When omitted, the slot falls back to the ancestor {@link DbxPdfMergeEditorComponent} input config and finally to the workspace-wide {@link DBX_PDF_MERGE_EDITOR_CONFIG} token.
10737
11644
  */
10738
11645
  readonly imageCompression?: Maybe<DbxImageCompressionConfig>;
11646
+ /**
11647
+ * Whether the slot header offers an Add button once the slot owns entries and still has room under its capacity. Defaults to `true`.
11648
+ *
11649
+ * While this is enabled the full drop area is the slot's *empty* state only: once the slot owns something, the area collapses and this compact button becomes the way to add more, so the section never shows two competing add affordances. Set `false` to keep the pre-existing behavior, where the drop area stays visible until the slot reaches capacity.
11650
+ */
11651
+ readonly showAddButton?: Maybe<boolean>;
11652
+ /**
11653
+ * Whether the slot header offers a Clear button while the slot owns entries. Defaults to `true`.
11654
+ *
11655
+ * Clearing is also the slot's replace path: a single-file slot at capacity has no Add button, so clearing is how its file is swapped.
11656
+ */
11657
+ readonly showClearButton?: Maybe<boolean>;
11658
+ /**
11659
+ * Overrides merged over the default confirmation dialog shown before the slot is cleared. Set `autoConfirm: true` to clear without prompting.
11660
+ */
11661
+ readonly clearConfirm?: Maybe<DbxActionConfirmConfig>;
11662
+ /**
11663
+ * Text for the header Add button. Defaults to `'Add'`.
11664
+ */
11665
+ readonly addButtonText?: Maybe<string>;
11666
+ /**
11667
+ * Text for the header Clear button. Defaults to `'Clear'`.
11668
+ */
11669
+ readonly clearButtonText?: Maybe<string>;
10739
11670
  }
10740
11671
  /**
10741
11672
  * Slot-scoped uploader for use inside a {@link DbxPdfMergeEditorComponent}. Adds files to the shared {@link DbxPdfMergeEditorStore} tagged with this slot's `slotId`, displays the slot's owned entries inline using {@link DbxPdfMergeEntryComponent}, and reports its readiness to the optional ancestor {@link DbxPdfMergeEditorFileUploadValidatorDirective}. On destroy the slot removes its owned entries from the store.
10742
11673
  *
10743
11674
  * Projects an `<ng-content>` slot inside its header element so consumers can render state-aware indicators (e.g. via the `dbxPdfMergeEditorFileUploadHasState` structural directive) alongside the optional `label`.
10744
11675
  *
11676
+ * Once the slot owns entries its header gains an Add button (while the slot is under capacity) and a Clear button, so a section that already has content can still be extended, emptied, or replaced. Clearing runs as its own `dbxAction` behind a `dbxActionConfirm` prompt — a misclick costs a dialog, not the section's files.
11677
+ *
10745
11678
  * @example
10746
11679
  * ```html
10747
11680
  * <dbx-pdf-merge-editor-file-upload slotId="license" [config]="{ label: 'Driver’s License', accept: ['application/pdf'] }">
@@ -10754,6 +11687,10 @@ declare class DbxPdfMergeEditorFileUploadComponent implements OnInit, OnDestroy,
10754
11687
  private readonly _validator;
10755
11688
  private readonly _injectedConfig;
10756
11689
  private readonly _preserveEntriesOnDestroy;
11690
+ /**
11691
+ * The slot id this component registered with the store, captured at registration time so destroy deregisters the same key. `null` before {@link ngOnInit} and after teardown.
11692
+ */
11693
+ private _registeredSlotId;
10757
11694
  readonly slotId: _angular_core.InputSignal<string>;
10758
11695
  readonly config: _angular_core.InputSignal<Maybe<DbxPdfMergeEditorFileUploadConfig>>;
10759
11696
  readonly acceptSignal: _angular_core.Signal<string | _dereekb_dbx_web.FileAcceptFilterTypeStringArray | _dereekb_dbx_web.FileAcceptFunction>;
@@ -10776,9 +11713,43 @@ declare class DbxPdfMergeEditorFileUploadComponent implements OnInit, OnDestroy,
10776
11713
  readonly ownedEntries$: Observable<PdfMergeEntryView[]>;
10777
11714
  readonly ownedEntriesSignal: _angular_core.Signal<PdfMergeEntryView[]>;
10778
11715
  /**
10779
- * Whether the slot still has room for more files. Drives visibility of the upload UI — once the slot is at capacity, the uploader is hidden and the user must remove an existing entry to add another.
11716
+ * Whether the shared store has page editing enabled. Drives whether this slot lists its own pages or its own files.
11717
+ */
11718
+ readonly pageEditingSignal: _angular_core.Signal<boolean>;
11719
+ /**
11720
+ * Pages contributed by this slot's entries. Empty while page editing is disabled.
11721
+ */
11722
+ readonly ownedPages$: Observable<PdfMergePageView[]>;
11723
+ /**
11724
+ * Whether the slot still has room for more files. Gates every add affordance — once the slot is at capacity neither the drop area nor the header Add button is offered, and the user must clear the slot (or remove an entry) to add another.
10780
11725
  */
10781
11726
  readonly canAddFilesSignal: _angular_core.Signal<boolean>;
11727
+ readonly showAddButtonConfigSignal: _angular_core.Signal<boolean>;
11728
+ readonly showClearButtonConfigSignal: _angular_core.Signal<boolean>;
11729
+ /**
11730
+ * Whether the compact header Add button is rendered. Only meaningful once the slot owns something — while it is empty the drop area is already the add affordance.
11731
+ */
11732
+ readonly showAddButtonSignal: _angular_core.Signal<boolean>;
11733
+ readonly showClearButtonSignal: _angular_core.Signal<boolean>;
11734
+ /**
11735
+ * Whether the full drop area is rendered. It is the slot's empty state while the header Add button is enabled; with the button turned off it falls back to staying visible until the slot reaches capacity.
11736
+ */
11737
+ readonly showUploadAreaSignal: _angular_core.Signal<boolean>;
11738
+ readonly addButtonTextSignal: _angular_core.Signal<string>;
11739
+ readonly clearButtonTextSignal: _angular_core.Signal<string>;
11740
+ readonly addButtonAriaLabelSignal: _angular_core.Signal<string>;
11741
+ readonly clearButtonAriaLabelSignal: _angular_core.Signal<string>;
11742
+ /**
11743
+ * Config for the confirmation shown before the slot is cleared. The slot's `label` is folded into the default title so a page of sections says which one is about to be emptied; `clearConfirm` overrides any field of it.
11744
+ */
11745
+ readonly clearConfirmSignal: _angular_core.Signal<DbxActionConfirmConfig<unknown>>;
11746
+ /**
11747
+ * Clears every entry this slot owns. Runs as the handler of the header's own `dbxAction`, so the `dbxActionConfirm` on that action is what stands between a misclick and the section's files.
11748
+ *
11749
+ * @param _value - Unused. The confirmation supplies no value, only the go-ahead.
11750
+ * @param context - Work context completed as soon as the store drops the entries.
11751
+ */
11752
+ readonly handleClear: WorkUsingContext<unknown, void>;
10782
11753
  /**
10783
11754
  * High-level state of the slot — `no_file` when empty, `valid` when owned entries satisfy the slot's thresholds, `invalid` when owned entries fail or are still being validated.
10784
11755
  */
@@ -10808,6 +11779,8 @@ declare class DbxPdfMergeEditorFileUploadComponent implements OnInit, OnDestroy,
10808
11779
  /**
10809
11780
  * Directive that registers as the active {@link DbxPdfMergeEditorValidator} on a {@link DbxPdfMergeEditorStore} and gates merge emissions on the readiness of every registered slot. {@link DbxPdfMergeEditorFileUploadComponent} instances walk the injector tree, find this directive, and call {@link registerSlot}/{@link unregisterSlot} during their own lifecycle.
10810
11781
  *
11782
+ * This slot set is intentionally separate from {@link DbxPdfMergeEditorStore.registeredSlotIds$}, and the two should not be merged. This one is keyed by object identity because it exists solely to `combineLatest` each slot's `isValid$`; the store's is keyed by slot id, answers "which sections does this editor declare", and must be populated whether or not a validator is present — which is why it cannot live on this optional directive.
11783
+ *
10811
11784
  * @example
10812
11785
  * ```html
10813
11786
  * <dbx-pdf-merge-editor [showAddFiles]="false" [showFileList]="false">
@@ -10896,6 +11869,153 @@ declare class DbxPdfMergeEntryComponent {
10896
11869
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DbxPdfMergeEntryComponent, "dbx-pdf-merge-entry", never, { "entry": { "alias": "entry"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
10897
11870
  }
10898
11871
 
11872
+ /**
11873
+ * Single page row inside a {@link DbxPdfMergePageListComponent} group: shows which source file and page it came from, its dimensions and rotation, and controls to rotate it, mark it for removal, and drag it to a new position.
11874
+ *
11875
+ * The template's root element is itself a `cdkDrag`, matching {@link DbxPdfMergeEntryComponent}, so rows reorder inside their group's drop list.
11876
+ */
11877
+ declare class DbxPdfMergePageComponent {
11878
+ readonly store: DbxPdfMergeEditorStore;
11879
+ readonly page: _angular_core.InputSignal<PdfMergePageView>;
11880
+ readonly removedSignal: _angular_core.Signal<boolean>;
11881
+ readonly iconSignal: _angular_core.Signal<"image" | "picture_as_pdf">;
11882
+ readonly removeLabelSignal: _angular_core.Signal<"Restore page" | "Mark page for removal">;
11883
+ readonly positionLabelSignal: _angular_core.Signal<string>;
11884
+ readonly dimensionsLabelSignal: _angular_core.Signal<Maybe<string>>;
11885
+ readonly rotationLabelSignal: _angular_core.Signal<Maybe<string>>;
11886
+ onRotate(): void;
11887
+ onToggleRemoved(): void;
11888
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DbxPdfMergePageComponent, never>;
11889
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DbxPdfMergePageComponent, "dbx-pdf-merge-page", never, { "page": { "alias": "page"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
11890
+ }
11891
+
11892
+ /**
11893
+ * Renders the editor's page plan while page editing is enabled, one CDK drop list per group.
11894
+ *
11895
+ * Separate, unconnected drop lists are what confine reordering to a single slot: CDK will not let a drag cross into a list it is not connected to, so the rule needs no guard code. Bind {@link slotId} to render only that slot's group — used by {@link DbxPdfMergeEditorFileUploadComponent} to show its own pages inline. Leave it unbound to render every group.
11896
+ *
11897
+ * Entries that could not be expanded into pages (encrypted, or unparseable) are listed separately below the groups rather than silently omitted.
11898
+ */
11899
+ declare class DbxPdfMergePageListComponent {
11900
+ readonly store: DbxPdfMergeEditorStore;
11901
+ /**
11902
+ * Renders only this slot's group when bound. Leave unbound to render every group.
11903
+ */
11904
+ readonly slotId: _angular_core.InputSignal<Maybe<string>>;
11905
+ /**
11906
+ * Whether to show each group's slot name above its pages. Defaults to `true` when rendering every group and `false` when scoped to one slot, where the slot already has its own heading.
11907
+ */
11908
+ readonly showGroupLabels: _angular_core.InputSignal<Maybe<boolean>>;
11909
+ private readonly _slotId$;
11910
+ readonly groups$: Observable<PdfMergePageGroup[]>;
11911
+ readonly unexpandable$: Observable<PdfMergeEntryView[]>;
11912
+ readonly groupsSignal: _angular_core.Signal<PdfMergePageGroup[]>;
11913
+ readonly unexpandableSignal: _angular_core.Signal<PdfMergeEntryView[]>;
11914
+ readonly showGroupLabelsSignal: _angular_core.Signal<boolean>;
11915
+ labelForGroup(group: PdfMergePageGroup): Maybe<string>;
11916
+ messageForUnexpandable(entry: PdfMergeEntryView): string;
11917
+ onDrop(group: PdfMergePageGroup, event: CdkDragDrop<unknown>): void;
11918
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DbxPdfMergePageListComponent, never>;
11919
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DbxPdfMergePageListComponent, "dbx-pdf-merge-page-list", never, { "slotId": { "alias": "slotId"; "required": false; "isSignal": true; }; "showGroupLabels": { "alias": "showGroupLabels"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11920
+ }
11921
+
11922
+ /**
11923
+ * Messages shown for each reason an import can fail.
11924
+ */
11925
+ declare const DBX_PDF_MERGE_IMPORT_ERROR_MESSAGES: Record<PdfMergeSidecarImportErrorReason, string>;
11926
+ /**
11927
+ * Configures the appearance of a {@link DbxPdfMergeImportComponent}.
11928
+ */
11929
+ interface DbxPdfMergeImportConfig {
11930
+ readonly label?: Maybe<string>;
11931
+ readonly hint?: Maybe<string | boolean>;
11932
+ readonly text?: Maybe<string>;
11933
+ readonly icon?: Maybe<string>;
11934
+ readonly mode?: Maybe<DbxFileUploadMode>;
11935
+ readonly accept?: Maybe<FileArrayAcceptMatchConfig['accept']>;
11936
+ }
11937
+ /**
11938
+ * Loads a PDF that was previously exported from the editor with an embedded manifest, and repopulates the editor's slots from it.
11939
+ *
11940
+ * This is the payoff of the sidecar: a completed single-file document goes back to being the set of per-slot documents it was assembled from, so a user can replace or edit one section in place instead of rebuilding the whole file. Every entry currently in the store is replaced.
11941
+ *
11942
+ * **Zero configuration.** The sections this editor accepts are read from the `<dbx-pdf-merge-editor-file-upload>` slots mounted against the shared {@link DbxPdfMergeEditorStore} (see {@link DbxPdfMergeEditorStore.registeredSlotIds$}), so the common case needs no bindings at all. A file naming any other section is rejected rather than partially imported — without that check, entries carrying an unrecognized slot id would import and then render nowhere.
11943
+ *
11944
+ * **Renders nothing when no sections are configured.** This component exists to split a document back into slots, so with no slots mounted (and no explicit {@link expectedSlotIds}) it has nothing to import into and collapses to zero size. Bind {@link enforceExpectedSlots} to `false` for the unusual case of an editor that wants the import affordance without declaring slots.
11945
+ *
11946
+ * @example
11947
+ * ```html
11948
+ * <!-- derives its sections from the slots below it -->
11949
+ * <dbx-pdf-merge-import (imported)="onImported($event)"></dbx-pdf-merge-import>
11950
+ * <dbx-pdf-merge-editor>
11951
+ * <dbx-pdf-merge-editor-file-upload slotId="license"></dbx-pdf-merge-editor-file-upload>
11952
+ * <dbx-pdf-merge-editor-file-upload slotId="cert"></dbx-pdf-merge-editor-file-upload>
11953
+ * </dbx-pdf-merge-editor>
11954
+ * ```
11955
+ */
11956
+ declare class DbxPdfMergeImportComponent {
11957
+ readonly store: DbxPdfMergeEditorStore;
11958
+ readonly config: _angular_core.InputSignal<Maybe<DbxPdfMergeImportConfig>>;
11959
+ /**
11960
+ * Optional override for the slot ids this editor renders. Leave unbound to derive them from the slots mounted against the store — the zero-configuration default. When set, a file whose manifest names any other slot is rejected rather than partially imported.
11961
+ *
11962
+ * An explicitly bound empty array reads as "this editor deliberately has no sections" and hides the component, the same as having no slots mounted.
11963
+ */
11964
+ readonly expectedSlotIds: _angular_core.InputSignal<Maybe<readonly string[]>>;
11965
+ /**
11966
+ * Whether the imported file's sections must match this editor's. Defaults to `true`.
11967
+ *
11968
+ * Binding `false` is the single escape hatch for an editor with no slots that still wants the import affordance: it both skips the check and keeps the component rendered.
11969
+ */
11970
+ readonly enforceExpectedSlots: _angular_core.InputSignal<boolean>;
11971
+ readonly imported: _angular_core.OutputEmitterRef<DbxPdfMergeEditorImportResult>;
11972
+ readonly importFailed: _angular_core.OutputEmitterRef<string>;
11973
+ /**
11974
+ * Emits the expected sections the imported file did not fill, when there are any. The import itself still succeeds — a missing section is a partial state the user can fill in.
11975
+ */
11976
+ readonly missingSlots: _angular_core.OutputEmitterRef<readonly string[]>;
11977
+ private readonly _error;
11978
+ private readonly _result;
11979
+ private readonly _missingSlotIds;
11980
+ readonly errorSignal: _angular_core.Signal<Maybe<string>>;
11981
+ readonly resultSignal: _angular_core.Signal<Maybe<DbxPdfMergeEditorImportResult>>;
11982
+ readonly missingSlotIdsSignal: _angular_core.Signal<readonly string[]>;
11983
+ private readonly _registeredSlotIdsSignal;
11984
+ /**
11985
+ * The exact import state the notices below currently describe — the one this component's own picked file produced. Identity, not contents: it is the only reliable way to tell "still my file" from "the store moved on".
11986
+ */
11987
+ private _displayedState;
11988
+ constructor();
11989
+ /**
11990
+ * The sections an imported file is allowed to name, or `null` when no check applies. Resolves the explicit {@link expectedSlotIds} binding over the slots registered with the store.
11991
+ */
11992
+ readonly effectiveExpectedSlotIdsSignal: _angular_core.Signal<Maybe<readonly string[]>>;
11993
+ /**
11994
+ * Whether this component has anything to import into. `false` collapses it to nothing — see the class docs.
11995
+ */
11996
+ readonly activeSignal: _angular_core.Signal<boolean>;
11997
+ readonly acceptSignal: _angular_core.Signal<string | _dereekb_dbx_web.FileAcceptFilterTypeStringArray | _dereekb_dbx_web.FileAcceptFunction>;
11998
+ readonly modeSignal: _angular_core.Signal<DbxFileUploadMode>;
11999
+ readonly labelSignal: _angular_core.Signal<Maybe<string>>;
12000
+ readonly hintSignal: _angular_core.Signal<string | boolean>;
12001
+ readonly textSignal: _angular_core.Signal<string>;
12002
+ readonly iconSignal: _angular_core.Signal<string>;
12003
+ readonly successLabelSignal: _angular_core.Signal<Maybe<string>>;
12004
+ /**
12005
+ * Warning shown when the imported file left one or more expected sections empty. The import succeeded — this only explains why a slot is still blank.
12006
+ */
12007
+ readonly missingLabelSignal: _angular_core.Signal<Maybe<string>>;
12008
+ onFiles(event: DbxFileUploadFilesChangedEvent): Promise<void>;
12009
+ private messageForFailure;
12010
+ private fail;
12011
+ /**
12012
+ * Drops every notice this component renders, returning it to its pre-import appearance and releasing its claim on the store's import state.
12013
+ */
12014
+ private resetDisplay;
12015
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DbxPdfMergeImportComponent, never>;
12016
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DbxPdfMergeImportComponent, "dbx-pdf-merge-import", never, { "config": { "alias": "config"; "required": false; "isSignal": true; }; "expectedSlotIds": { "alias": "expectedSlotIds"; "required": false; "isSignal": true; }; "enforceExpectedSlots": { "alias": "enforceExpectedSlots"; "required": false; "isSignal": true; }; }, { "imported": "imported"; "importFailed": "importFailed"; "missingSlots": "missingSlots"; }, never, never, true, never>;
12017
+ }
12018
+
10899
12019
  /**
10900
12020
  * Display config for the dialog's footer Upload button.
10901
12021
  *
@@ -12663,5 +13783,5 @@ declare class DbxWebModule {
12663
13783
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<DbxWebModule>;
12664
13784
  }
12665
13785
 
12666
- export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxClipboardDirective, AbstractDbxErrorWidgetComponent, AbstractDbxFileUploadComponent, AbstractDbxHelpWidgetDirective, AbstractDbxListAccordionViewDirective, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxPartialPresetFilterMenuDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_AVATAR_CONTEXT_DATA_TOKEN, DBX_COLOR_CUSTOM_BG_CSS_CLASS, DBX_COLOR_CUSTOM_TEXT_CSS_CLASS, DBX_CURATED_COLOR_COUNT, DBX_CURATED_COLOR_TEMPLATES, DBX_CURATED_COLOR_TEMPLATE_KEY_PREFIX, DBX_DARK_STYLE_CLASS_SUFFIX, DBX_HELP_WIDGET_ENTRY_DATA_TOKEN, DBX_LIST_ACCORDION_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_GRID_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN, DBX_PDF_MERGE_EDITOR_CONFIG, DBX_PDF_MERGE_EDITOR_INITIAL_STATE, DBX_PDF_MERGE_EDITOR_PRESERVE_ENTRIES_ON_SLOT_DESTROY, DBX_PDF_MERGE_ENCRYPTED_ERROR_MESSAGE, DBX_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_ANCHOR_COMPONENTS, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_THEME_COLORS, DBX_THEME_COLORS_EXTRA, DBX_THEME_COLORS_EXTRA_SECONDARY, DBX_THEME_COLORS_MAIN, DBX_VALUE_LIST_VIEW_ITEM, DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_COMPONENT_PRESET, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_PRESET_ENTRY, DBX_WEB_PAGE_TITLE_SERVICE_CONFIG, DEFAULT_DBX_CHIP_TONE, DEFAULT_DBX_DETACH_KEY, DEFAULT_DBX_ERROR_SNACKBAR_CONFIG, DEFAULT_DBX_HELP_VIEW_POPOVER_KEY, DEFAULT_DBX_LINKIFY_STRING_TYPE, DEFAULT_DBX_LIST_ACCORDION_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_GRID_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_ITEM_DISABLE_FUNCTION, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_LIST_SCROLL_DISTANCE, DEFAULT_DBX_LIST_THROTTLE_SCROLL, DEFAULT_DBX_LIST_VIEW_META_ICON, DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_SIDENAV_MENU_ICON, DEFAULT_DBX_STYLE_CONFIG_TOKEN, DEFAULT_DBX_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_DIALOG_WITH_COMPONENT_FUNCTION, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_PREVIEW_COMPONENT_FUNCTION, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_IMAGE_BITMAP_TO_BLOB_ENCODER, DEFAULT_IMAGE_JPEG_QUALITY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_PDF_MERGE_ACCEPT, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DEFAULT_VALUE_LIST_VIEW_CONTENT_COMPONENT_TRACK_BY_FUNCTION, DbxAccordionHeaderHeightDirective, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarErrorDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxAvatarComponent, DbxAvatarViewComponent, DbxAvatarViewService, DbxAvatarViewServiceConfig, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBodyDirective, DbxButtonComponent, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerDirective, DbxCardBoxLayoutModule, DbxChipDirective, DbxChipListComponent, DbxClickToCopyTextComponent, DbxClickToCopyTextDirective, DbxColorDirective, DbxColorService, DbxColorServiceConfig, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxContentPitDirective, DbxDetachContentComponent, DbxDetachControlButtonsComponent, DbxDetachController, DbxDetachControlsComponent, DbxDetachInitDirective, DbxDetachInteractionModule, DbxDetachOutletComponent, DbxDetachOverlayComponent, DbxDetachService, DbxDetachWindowState, DbxDetailBlockComponent, DbxDetailBlockHeaderComponent, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxDialogModule, DbxDownloadBlobButtonComponent, DbxDownloadTextViewComponent, DbxEmbedComponent, DbxErrorComponent, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorSnackbarComponent, DbxErrorSnackbarService, DbxErrorViewComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFileUploadActionCompatable, DbxFileUploadActionSyncDirective, DbxFileUploadAreaComponent, DbxFileUploadButtonComponent, DbxFileUploadComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxHelpContextDirective, DbxHelpContextService, DbxHelpViewListComponent, DbxHelpViewListEntryComponent, DbxHelpViewPopoverButtonComponent, DbxHelpViewPopoverComponent, DbxHelpWidgetService, DbxHelpWidgetServiceConfig, DbxIconButtonComponent, DbxIconButtonModule, DbxIconItemComponent, DbxIconSpacerDirective, DbxIconTileComponent, DbxIconTileDirective, DbxIfSidenavDisplayModeDirective, DbxIframeComponent, DbxInjectionDialogComponent, DbxInteractionModule, DbxIntroActionSectionComponent, DbxLabelBlockComponent, DbxLayoutModule, DbxLinkComponent, DbxLinkifyComponent, DbxLinkifyService, DbxLinkifyServiceConfig, DbxListAccordionViewComponentImportsModule, DbxListComponent, DbxListEmptyContentComponent, DbxListGridViewComponentImportsModule, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListModifierModule, DbxListModule, DbxListTitleGroupDirective, DbxListView, DbxListViewMetaIconComponent, DbxListViewWrapper, DbxListWrapperComponentImportsModule, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxModelObjectStateService, actions_d as DbxModelStateActions, model_actions_d as DbxModelStateModelActions, DbxModelTrackerService, DbxModelTypesService, DbxModelViewTrackerStorage, DbxNavbarComponent, DbxNumberWithLimitComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPartialPresetFilterListComponent, DbxPartialPresetFilterMenuComponent, DbxPdfMergeEditorComponent, DbxPdfMergeEditorFileUploadComponent, DbxPdfMergeEditorFileUploadHasStateDirective, DbxPdfMergeEditorFileUploadValidatorDirective, DbxPdfMergeEditorStore, DbxPdfMergeEditorStoreDirective, DbxPdfMergeEntryComponent, DbxPdfMergeListComponent, DbxPdfMergeUploadActionDirective, DbxPdfMergeUploadButtonDirective, DbxPdfMergeUploadDialogComponent, DbxPdfPreviewComponent, DbxPopoverCloseButtonComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentDirective, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressBarButtonComponent, DbxProgressButtonsModule, DbxProgressSpinnerButtonComponent, DbxPromptBoxDirective, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorModule, DbxResizedDirective, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListViewComponent, DbxSelectionValueListViewComponentImportsModule, DbxSelectionValueListViewContentComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxStepBlockComponent, DbxStructureDirective, DbxStructureModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxTextChipsComponent, DbxTextColorDirective, DbxTextModule, DbxTwoBlockComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadDirective, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxUnitedStatesAddressComponent, DbxValueListAccordionViewComponent, DbxValueListAccordionViewContentComponent, DbxValueListAccordionViewContentGroupComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListGridViewContentComponent, DbxValueListGridViewContentGroupComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListView, DbxValueListViewComponent, DbxValueListViewComponentImportsModule, DbxValueListViewContentComponent, DbxValueListViewContentGroupComponent, DbxValueListViewGroupDelegate, DbxWebFilePreviewComponent, DbxWebFilePreviewService, DbxWebModule, DbxWebPageTitleInfoDirective, DbxWebPageTitleService, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, DbxZipBlobPreviewComponent, DbxZipPreviewComponent, PDF_MERGE_RESULT_MIME_TYPE, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SIDE_NAV_DISPLAY_MODE_ORDER, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, UNKNOWN_ERROR_WIDGET_CODE, addConfigToValueListItems, allDbxModelViewTrackerEventModelKeys, allDbxModelViewTrackerEventSetModelKeys, buildPdfMergeEntry, buildPdfMergeEntrySync, catchErrorServerParams, classifyPdfMergeFile, compactModeFromInput, compareScreenMediaWidthTypes, compressImageFile, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, copyToClipboardFunction, dbxColorBackground, dbxCuratedColorConfigForString, dbxListAccordionViewComponentImportsAndExports, dbxListGridViewComponentImportsAndExports, dbxPresetFilterMenuButtonIconObservable, dbxPresetFilterMenuButtonTextObservable, dbxStyleClassCleanSuffix, dbxThemeColorCssToken, dbxThemeColorCssTokenVar, dbxThemeColorCssVariable, dbxThemeColorCssVariableVar, dbxValueListItemDecisionFunction, dbxValueListItemKeyForItemValue, dbxWebDefaultPageTitleDelegate, dbxZipBlobPreviewEntryTreeFromEntries, defaultDbxModelViewTrackerStorageAccessorFactory, defaultDbxValueListViewGroupDelegate, defaultDbxValueListViewGroupValuesFunction, disableRightClickInCdkBackdrop, fileAcceptFilterTypeStringArray, fileAcceptFunction, fileAcceptString, fileArrayAcceptMatchFunction, flattenAccordionGroups, formatPdfMergeEntrySize, index_d$1 as fromDbxModel, injectCopyToClipboardFunction, injectCopyToClipboardFunctionWithSnackbarMessage, isDbxColorConfig, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, mapCompactModeObs, mapValuesToValuesListItemConfigObs, mergePdfMergeEntries, index_d as onDbxModel, openEmbedDialog, openIframeDialog, openPdfPreviewDialog, openZipPreviewDialog, overrideClickElementEffect, provideDbxDetachController, provideDbxFileUploadActionCompatable, provideDbxHelpServices, provideDbxLinkify, provideDbxListView, provideDbxListViewWrapper, provideDbxModelService, provideDbxPdfMergeEditorConfig, provideDbxPdfMergeEditorPreserveEntriesOnSlotDestroy, provideDbxProgressButtonGlobalConfig, provideDbxPromptConfirm, provideDbxRouterWebAngularRouterProviderConfig, provideDbxRouterWebUiRouterProviderConfig, provideDbxScreenMediaService, provideDbxStyleService, provideDbxValueListView, provideDbxValueListViewGroupDelegate, provideDbxValueListViewModifier, provideDbxWebFilePreviewServiceEntries, provideDbxWebPageTitleService, provideTwoColumnsContext, registerHelpContextKeysWithDbxHelpContextService, resizeSignal, resolveSideNavDisplayMode, sanitizeDbxDialogContentConfig, screenMediaWidthTypeIsActive, trackByModelKeyRef, trackByUniqueIdentifier, validatePdfMergeEntry };
12667
- export type { AbstractDbxValueListViewConfig, AnchorForValueFunction, BuildPdfMergeEntryConfig, CompactContextState, CompactModeDefaultOptions, CompactModeOption, CompactModeOptions, CompressImageDimensions, CompressImageFileResult, CopyToClipboardContent, CopyToClipboardFunction, CopyToClipboardFunctionConfig, CopyToClipboardFunctionWithSnackbarMessage, CopyToClipboardFunctionWithSnackbarMessageConfig, CopyToClipboardFunctionWithSnackbarMessageSnackbarConfig, CopyToClipboardSuccess, DbxAccordionRenderEntry, DbxAccordionRenderGroupFooterEntry, DbxAccordionRenderGroupHeaderEntry, DbxAccordionRenderItemEntry, DbxActionConfirmConfig, DbxActionDialogFunction, DbxActionPopoverFunction, DbxActionPopoverFunctionParams, DbxActionSnackbarActionConfig, DbxActionSnackbarDisplayConfig, DbxActionSnackbarDisplayConfigGeneratorFunction, DbxActionSnackbarEvent, DbxActionSnackbarEventMakeConfig, DbxActionSnackbarGeneratorInput, DbxActionSnackbarGeneratorUndoInput, DbxActionSnackbarGeneratorUndoInputConfig, DbxActionSnackbarKnownType, DbxActionSnackbarServiceConfig, DbxActionSnackbarType, DbxActionTransitionSafetyDialogResult, DbxActionTransitionSafetyType, DbxAnchorListExpandedAnchor, DbxAvatarComponentForContextFunction, DbxAvatarContext, DbxAvatarImageFit, DbxAvatarInjectionComponentConfig, DbxAvatarKey, DbxAvatarSelector, DbxAvatarSize, DbxAvatarStyle, DbxButtonDisplayStylePair, DbxButtonStyle, DbxButtonType, DbxChipDisplay, DbxColorConfig, DbxColorConfigTemplate, DbxColorConfigTemplateKey, DbxColorInput, DbxColorTone, DbxContentBorderOpacity, DbxContentContainerPadding, DbxContentContainerWidth, DbxContentPitScrollableHeight, DbxContentPitScrollableHeightSetting, DbxContentPitScrollableInput, DbxDetachConfig, DbxDetachInstance, DbxDetachKey, DbxDetachOverlayConfig, DbxDetachOverlayData, DbxDetachWindowStateType, DbxDialogContentConfig, DbxDialogContentContainerWidth, DbxDialogContentFooterConfig, DbxDownloadBlobButtonConfig, DbxEmbedComponentElement, DbxEmbedDialogConfig, DbxErrorPopoverConfig, DbxErrorSnackbarConfig, DbxErrorSnackbarData, DbxErrorViewButtonEvent, DbxErrorWidgetEntry, DbxErrorWidgetEntryWithPopupComponentClass, DbxFileUploadAreaFilesChangedEvent, DbxFileUploadButtonFilesChangedEvent, DbxFileUploadComponentConfig, DbxFileUploadFilesChangedEvent, DbxFileUploadMode, DbxFilterButtonConfig, DbxFilterButtonConfigWithCustomFilter, DbxFilterButtonConfigWithPresetFilter, DbxFilterComponentConfig, DbxFilterPopoverComponentConfig, DbxFlexSize, DbxHelpContextKey, DbxHelpContextReference, DbxHelpViewPopoverButtonConfig, DbxHelpViewPopoverConfig, DbxHelpViewPopoverConfigWithoutOrigin, DbxHelpWidgetEntryData, DbxHelpWidgetServiceConfigFactory, DbxHelpWidgetServiceEntry, DbxIframeDialogConfig, DbxImageCompressionConfig, DbxInjectionDialogComponentConfig, DbxLinkifyConfig, DbxLinkifyServiceConfigFactory, DbxLinkifyServiceDefaultEntry, DbxLinkifyServiceEntry, DbxLinkifyStringOptions, DbxLinkifyStringType, DbxListComponentScrolledEventPosition, DbxListConfig, DbxListLoadMoreHandler, DbxListScrollDirectionTrigger, DbxListSelectionMode, DbxListTitleGroupData, DbxListTitleGroupTitleDelegate, DbxListViewMetaIconConfig, DbxListWrapperConfig, DbxLoadingComponentState, DbxLoadingIsLoadingOrProgress, DbxLoadingProgress, DbxMakeActionSnackbarGeneratorConfiguration, DbxMakeActionSnackbarGeneratorEventConfiguration, DbxModelFullState, DbxModelIconsMap, DbxModelTypeConfiguration, DbxModelTypeConfigurationMap, DbxModelTypeConfigurationSrefFactory, DbxModelTypeConfigurationSrefFactoryBuilder, DbxModelTypeInfo, DbxModelTypesMap, DbxModelViewTrackerEvent, DbxModelViewTrackerEventSet, DbxPdfMergeEditorAddFilesInput, DbxPdfMergeEditorConfig, DbxPdfMergeEditorFileUploadConfig, DbxPdfMergeEditorFileUploadState, DbxPdfMergeEditorFileUploadValidatorSlot, DbxPdfMergeEditorOutputSizeState, DbxPdfMergeEditorValidator, DbxPdfMergeEncryptedHandling, DbxPdfMergeOutputSizeLimitsConfig, DbxPdfMergeUploadButtonConfig, DbxPdfMergeUploadDialogConfig, DbxPdfMergeUploadDialogUploadButtonConfig, DbxPdfPreviewDialogConfig, DbxPopoverComponentConfig, DbxPopoverConfig, DbxPopoverConfigSizing, DbxPopoverKey, DbxPopupComponentConfig, DbxPopupConfig, DbxPopupKey, DbxPopupWindowStateType, DbxPresetFilterMenuConfig, DbxProgressButtonConfig, DbxProgressButtonGlobalConfig, DbxProgressButtonIcon, DbxProgressButtonTargetedConfig, DbxPromptConfirmConfig, DbxPromptConfirmDialogConfig, DbxSectionHeaderConfig, DbxSectionHeaderHType, DbxSectionPageScrollLockedMode, DbxSelectionListWrapperConfig, DbxSelectionValueListViewConfig, DbxSetStyleMode, DbxSidenavPosition, DbxSidenavSidebarState, DbxStepBlockComponentConfig, DbxStyleApplication, DbxStyleClass, DbxStyleClassCleanSuffix, DbxStyleClassDashSuffix, DbxStyleClassSuffix, DbxStyleConfig, DbxStyleName, DbxStyleSupplement, DbxThemeColor, DbxThemeColorExtra, DbxThemeColorExtraSecondary, DbxThemeColorMain, DbxThemeColorMainOrExtra, DbxTwoColumnViewState, DbxValueAsListItem, DbxValueListAccordionViewConfig, DbxValueListGridItemViewGridSizeConfig, DbxValueListGridViewConfig, DbxValueListItem, DbxValueListItemConfig, DbxValueListItemDecisionFunction, DbxValueListItemGroup, DbxValueListViewConfig, DbxValueListViewGroupValuesFunction, DbxWebDefaultPageTitleDelegateConfig, DbxWebFilePreviewComponentConfig, DbxWebFilePreviewServiceEntry, DbxWebFilePreviewServicePreviewComponentFunction, DbxWebFilePreviewServicePreviewComponentFunctionInput, DbxWebFilePreviewServicePreviewDialogFunction, DbxWebFilePreviewServicePreviewDialogFunctionInput, DbxWebFilePreviewServicePreviewDialogFunctionInputWithMatDialog, DbxWebFilePreviewServicePreviewDialogWithComponentFunction, DbxWebFilePreviewServicePreviewDialogWithComponentFunctionInput, DbxWebFilePreviewServicePreviewFunction, DbxWebPageTitleDelegate, DbxWebPageTitleDelegateInput, DbxWebPageTitleDetails, DbxWebPageTitleInfoConfig, DbxWebPageTitleInfoReference, DbxWebPageTitleServiceConfig, DbxWidgetDataPair, DbxWidgetDataPairFactory, DbxWidgetDataPairWithSelection, DbxWidgetEntry, DbxWidgetType, DbxWidgetViewComponentConfig, DbxZipBlobPreviewEntryNodeValue, DbxZipBlobPreviewEntryTreeNode, DbxZipBlobPreviewEntryTreeRoot, DbxZipBlobPreviewGroupData, DbxZipBlobPreviewGroupValue, DbxZipBlobPreviewMode, DbxZipPreviewDialogConfig, DownloadTextContent, FileAcceptFilterTypeString, FileAcceptFilterTypeStringArray, FileAcceptFunction, FileAcceptFunctionInput, FileAcceptString, FileArrayAcceptMatchConfig, FileArrayAcceptMatchFunction, FileArrayAcceptMatchResult, FullDbxPopoverComponentConfig, ImageBitmapToBlobEncoder, ImageBitmapToBlobEncoderInput, ImageCompressionStatus, ListItemModifier, ListSelectionState, ListSelectionStateItem, LoadingComponentState, ModelViewContext, NavBarContentAlign, NavbarButtonMode, NavbarMode, NumberWithLimit, OverrideClickElementEffectConfig, PdfMergeEditorState, PdfMergeEntry, PdfMergeEntryKind, PdfMergeEntryMove, PdfMergeEntryOriginal, PdfMergeEntryStatus, PdfMergeEntryValidationResult, PdfMergeEntryView, PopoverPositionStrategyConfig, PopupPosition, PopupPositionOffset, ProvideDbxHelpServicesConfig, ProvideDbxLinkifyConfig, ProvideDbxScreenMediaServiceConfig, ProvideDbxStyleServiceConfig, ProvideDbxWebPageTitleServiceConfig, ResizedEvent, ScreenMediaHeightType, ScreenMediaWidthType, ServerErrorParams, SideNavDisplayModeString, TextChip, TwoColumnsState };
13786
+ export { APP_POPUP_MINIMIZED_WIDTH, APP_POPUP_NORMAL_HEIGHT, APP_POPUP_NORMAL_WIDTH, AbstractDbxClipboardDirective, AbstractDbxErrorWidgetComponent, AbstractDbxFileUploadComponent, AbstractDbxHelpWidgetDirective, AbstractDbxListAccordionViewDirective, AbstractDbxListGridViewDirective, AbstractDbxListViewDirective, AbstractDbxListWrapperDirective, AbstractDbxPartialPresetFilterMenuDirective, AbstractDbxSegueAnchorDirective, AbstractDbxSelectionListViewDirective, AbstractDbxSelectionListWrapperDirective, AbstractDbxValueListItemModifierDirective, AbstractDbxValueListViewDirective, AbstractDbxValueListViewItemComponent, AbstractDbxWidgetComponent, AbstractDialogDirective, AbstractFilterPopoverButtonDirective, AbstractPopoverDirective, AbstractPopoverRefDirective, AbstractPopoverRefWithEventsDirective, AbstractPopupDirective, AbstractPromptConfirmDirective, CompactContextStore, CompactMode, DBX_ACTION_SNACKBAR_DEFAULTS, DBX_ACTION_SNACKBAR_SERVICE_CONFIG, DBX_AVATAR_CONTEXT_DATA_TOKEN, DBX_COLOR_CUSTOM_BG_CSS_CLASS, DBX_COLOR_CUSTOM_TEXT_CSS_CLASS, DBX_CURATED_COLOR_COUNT, DBX_CURATED_COLOR_TEMPLATES, DBX_CURATED_COLOR_TEMPLATE_KEY_PREFIX, DBX_DARK_STYLE_CLASS_SUFFIX, DBX_HELP_WIDGET_ENTRY_DATA_TOKEN, DBX_LIST_ACCORDION_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_GRID_VIEW_COMPONENT_IMPORTS_AND_EXPORTS, DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY, DBX_LIST_ITEM_IS_SELECTED_ITEM_MODIFIER_KEY, DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN, DBX_PDF_MERGE_EDITOR_CONFIG, DBX_PDF_MERGE_EDITOR_INITIAL_STATE, DBX_PDF_MERGE_EDITOR_PRESERVE_ENTRIES_ON_SLOT_DESTROY, DBX_PDF_MERGE_ENCRYPTED_ERROR_MESSAGE, DBX_PDF_MERGE_ENCRYPTED_NOT_EDITABLE_MESSAGE, DBX_PDF_MERGE_IMPORT_ERROR_MESSAGES, DBX_PROGRESS_BUTTON_GLOBAL_CONFIG, DBX_ROUTER_ANCHOR_COMPONENTS, DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY, DBX_THEME_COLORS, DBX_THEME_COLORS_EXTRA, DBX_THEME_COLORS_EXTRA_SECONDARY, DBX_THEME_COLORS_MAIN, DBX_VALUE_LIST_VIEW_ITEM, DBX_WEB_FILE_PREVIEW_SERVICE_ENTRIES_TOKEN, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_COMPONENT_PRESET, DBX_WEB_FILE_PREVIEW_SERVICE_ZIP_PRESET_ENTRY, DBX_WEB_PAGE_TITLE_SERVICE_CONFIG, DEFAULT_DBX_CHIP_TONE, DEFAULT_DBX_DETACH_KEY, DEFAULT_DBX_ERROR_SNACKBAR_CONFIG, DEFAULT_DBX_HELP_VIEW_POPOVER_KEY, DEFAULT_DBX_LINKIFY_STRING_TYPE, DEFAULT_DBX_LIST_ACCORDION_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_GRID_VIEW_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_LIST_ITEM_DISABLE_FUNCTION, DEFAULT_DBX_LIST_ITEM_IS_SELECTED_FUNCTION, DEFAULT_DBX_LIST_SCROLL_DISTANCE, DEFAULT_DBX_LIST_THROTTLE_SCROLL, DEFAULT_DBX_LIST_VIEW_META_ICON, DEFAULT_DBX_PDF_MERGE_ENCRYPTED_HANDLING, DEFAULT_DBX_PDF_MERGE_PAGE_EDITING, DEFAULT_DBX_PDF_MERGE_RESTORE_IMPORT_ON_CLEAR, DEFAULT_DBX_PDF_MERGE_SIDECAR, DEFAULT_DBX_PROMPT_CONFIRM_DIALOG_CONFIG, DEFAULT_DBX_SELECTION_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_SIDENAV_MENU_ICON, DEFAULT_DBX_STYLE_CONFIG_TOKEN, DEFAULT_DBX_VALUE_LIST_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_DIALOG_WITH_COMPONENT_FUNCTION, DEFAULT_DBX_WEB_FILE_PREVIEW_SERVICE_PREVIEW_COMPONENT_FUNCTION, DEFAULT_ERROR_POPOVER_KEY, DEFAULT_ERROR_WIDGET_CODE, DEFAULT_FILTER_POPOVER_KEY, DEFAULT_IMAGE_BITMAP_TO_BLOB_ENCODER, DEFAULT_IMAGE_JPEG_QUALITY, DEFAULT_LIST_GRID_SIZE_CONFIG, DEFAULT_LIST_WRAPPER_COMPONENT_CONFIGURATION_TEMPLATE, DEFAULT_LOADING_PROGRESS_DIAMETER, DEFAULT_PDF_MERGE_ACCEPT, DEFAULT_PDF_MERGE_PAGE_GROUP_KEY, DEFAULT_SCREEN_MEDIA_SERVICE_CONFIG, DEFAULT_SNACKBAR_DIRECTIVE_DURATION, DEFAULT_TWO_COLUMNS_MIN_RIGHT_WIDTH, DEFAULT_VALUE_LIST_VIEW_CONTENT_COMPONENT_TRACK_BY_FUNCTION, DbxAccordionHeaderHeightDirective, DbxActionConfirmDirective, DbxActionDialogDirective, DbxActionErrorDirective, DbxActionKeyTriggerDirective, DbxActionLoadingContextDirective, DbxActionModule, DbxActionPopoverDirective, DbxActionSnackbarComponent, DbxActionSnackbarDirective, DbxActionSnackbarErrorDirective, DbxActionSnackbarModule, DbxActionSnackbarService, DbxActionTransitionSafetyDirective, DbxActionUIRouterTransitionSafetyDialogComponent, DbxAnchorComponent, DbxAnchorContentComponent, DbxAnchorIconComponent, DbxAnchorListComponent, DbxAngularRouterSegueAnchorComponent, DbxAvatarComponent, DbxAvatarViewComponent, DbxAvatarViewService, DbxAvatarViewServiceConfig, DbxBarDirective, DbxBarHeaderComponent, DbxBarLayoutModule, DbxBasicLoadingComponent, DbxBodyDirective, DbxButtonComponent, DbxButtonModule, DbxButtonSpacerDirective, DbxCardBoxComponent, DbxCardBoxContainerDirective, DbxCardBoxLayoutModule, DbxChipDirective, DbxChipListComponent, DbxClickToCopyTextComponent, DbxClickToCopyTextDirective, DbxColorDirective, DbxColorService, DbxColorServiceConfig, DbxColumnLayoutModule, DbxCompactDirective, DbxCompactLayoutModule, DbxContentBorderDirective, DbxContentBoxDirective, DbxContentContainerDirective, DbxContentDirective, DbxContentElevateDirective, DbxContentLayoutModule, DbxContentPageDirective, DbxContentPitDirective, DbxDetachContentComponent, DbxDetachControlButtonsComponent, DbxDetachController, DbxDetachControlsComponent, DbxDetachInitDirective, DbxDetachInteractionModule, DbxDetachOutletComponent, DbxDetachOverlayComponent, DbxDetachService, DbxDetachWindowState, DbxDetailBlockComponent, DbxDetailBlockHeaderComponent, DbxDialogContentCloseComponent, DbxDialogContentDirective, DbxDialogContentFooterComponent, DbxDialogInteractionModule, DbxDialogModule, DbxDownloadBlobButtonComponent, DbxDownloadTextViewComponent, DbxEmbedComponent, DbxErrorComponent, DbxErrorDefaultErrorWidgetComponent, DbxErrorDetailsComponent, DbxErrorPopoverComponent, DbxErrorSnackbarComponent, DbxErrorSnackbarService, DbxErrorViewComponent, DbxErrorWidgetService, DbxErrorWidgetViewComponent, DbxFileUploadActionCompatable, DbxFileUploadActionSyncDirective, DbxFileUploadAreaComponent, DbxFileUploadButtonComponent, DbxFileUploadComponent, DbxFilterInteractionModule, DbxFilterPopoverButtonComponent, DbxFilterPopoverComponent, DbxFilterWrapperComponent, DbxFlagComponent, DbxFlagLayoutModule, DbxFlagPromptComponent, DbxFlexGroupDirective, DbxFlexLayoutModule, DbxFlexSizeDirective, DbxHelpContextDirective, DbxHelpContextService, DbxHelpViewListComponent, DbxHelpViewListEntryComponent, DbxHelpViewPopoverButtonComponent, DbxHelpViewPopoverComponent, DbxHelpWidgetService, DbxHelpWidgetServiceConfig, DbxIconButtonComponent, DbxIconButtonModule, DbxIconItemComponent, DbxIconSpacerDirective, DbxIconTileComponent, DbxIconTileDirective, DbxIfSidenavDisplayModeDirective, DbxIframeComponent, DbxInjectionDialogComponent, DbxInteractionModule, DbxIntroActionSectionComponent, DbxLabelBlockComponent, DbxLayoutModule, DbxLinkComponent, DbxLinkifyComponent, DbxLinkifyService, DbxLinkifyServiceConfig, DbxListAccordionViewComponentImportsModule, DbxListComponent, DbxListEmptyContentComponent, DbxListGridViewComponentImportsModule, DbxListInternalContentDirective, DbxListItemAnchorModifierDirective, DbxListItemDisableRippleModifierDirective, DbxListItemIsSelectedModifierDirective, DbxListModifierModule, DbxListModule, DbxListTitleGroupDirective, DbxListView, DbxListViewMetaIconComponent, DbxListViewWrapper, DbxListWrapperComponentImportsModule, DbxLoadingComponent, DbxLoadingErrorDirective, DbxLoadingModule, DbxLoadingProgressComponent, DbxModelObjectStateService, actions_d as DbxModelStateActions, model_actions_d as DbxModelStateModelActions, DbxModelTrackerService, DbxModelTypesService, DbxModelViewTrackerStorage, DbxNavbarComponent, DbxNumberWithLimitComponent, DbxOneColumnComponent, DbxOneColumnLayoutModule, DbxPagebarComponent, DbxPartialPresetFilterListComponent, DbxPartialPresetFilterMenuComponent, DbxPdfMergeEditorComponent, DbxPdfMergeEditorFileUploadComponent, DbxPdfMergeEditorFileUploadHasStateDirective, DbxPdfMergeEditorFileUploadValidatorDirective, DbxPdfMergeEditorStore, DbxPdfMergeEditorStoreDirective, DbxPdfMergeEntryComponent, DbxPdfMergeImportComponent, DbxPdfMergeListComponent, DbxPdfMergePageComponent, DbxPdfMergePageListComponent, DbxPdfMergeUploadActionDirective, DbxPdfMergeUploadButtonDirective, DbxPdfMergeUploadDialogComponent, DbxPdfPreviewComponent, DbxPopoverCloseButtonComponent, DbxPopoverComponent, DbxPopoverComponentController, DbxPopoverContentComponent, DbxPopoverController, DbxPopoverControlsDirective, DbxPopoverCoordinatorComponent, DbxPopoverCoordinatorService, DbxPopoverHeaderComponent, DbxPopoverInteractionContentModule, DbxPopoverInteractionModule, DbxPopoverScrollContentDirective, DbxPopoverService, DbxPopupComponent, DbxPopupComponentController, DbxPopupContentComponent, DbxPopupControlButtonsComponent, DbxPopupController, DbxPopupControlsComponent, DbxPopupCoordinatorComponent, DbxPopupCoordinatorService, DbxPopupInteractionModule, DbxPopupService, DbxPopupWindowState, DbxPresetFilterListComponent, DbxPresetFilterMenuComponent, DbxProgressBarButtonComponent, DbxProgressButtonsModule, DbxProgressSpinnerButtonComponent, DbxPromptBoxDirective, DbxPromptComponent, DbxPromptConfirm, DbxPromptConfirmButtonDirective, DbxPromptConfirmComponent, DbxPromptConfirmDialogComponent, DbxPromptConfirmDirective, DbxPromptModule, DbxPromptPageComponent, DbxReadableErrorModule, DbxResizedDirective, DbxRouterAnchorModule, DbxRouterLayoutModule, DbxRouterSidenavModule, DbxRouterWebProviderConfig, DbxScreenMediaService, DbxScreenMediaServiceConfig, DbxSectionComponent, DbxSectionHeaderComponent, DbxSectionLayoutModule, DbxSectionPageComponent, DbxSelectionValueListViewComponent, DbxSelectionValueListViewComponentImportsModule, DbxSelectionValueListViewContentComponent, DbxSetStyleDirective, DbxSidenavButtonComponent, DbxSidenavComponent, DbxSidenavPageComponent, DbxSidenavPagebarComponent, DbxSpacerDirective, DbxStepBlockComponent, DbxStructureDirective, DbxStructureModule, DbxStyleBodyDirective, DbxStyleDirective, DbxStyleLayoutModule, DbxStyleService, DbxSubSectionComponent, DbxTextChipsComponent, DbxTextColorDirective, DbxTextModule, DbxTwoBlockComponent, DbxTwoColumnBackDirective, DbxTwoColumnColumnHeadDirective, DbxTwoColumnComponent, DbxTwoColumnContextDirective, DbxTwoColumnFullLeftDirective, DbxTwoColumnLayoutModule, DbxTwoColumnRightComponent, DbxTwoColumnSrefDirective, DbxTwoColumnSrefShowRightDirective, DbxUIRouterSegueAnchorComponent, DbxUnitedStatesAddressComponent, DbxValueListAccordionViewComponent, DbxValueListAccordionViewContentComponent, DbxValueListAccordionViewContentGroupComponent, DbxValueListGridSizeDirective, DbxValueListGridViewComponent, DbxValueListGridViewContentComponent, DbxValueListGridViewContentGroupComponent, DbxValueListItemModifier, DbxValueListItemModifierDirective, DbxValueListView, DbxValueListViewComponent, DbxValueListViewComponentImportsModule, DbxValueListViewContentComponent, DbxValueListViewContentGroupComponent, DbxValueListViewGroupDelegate, DbxWebFilePreviewComponent, DbxWebFilePreviewService, DbxWebModule, DbxWebPageTitleInfoDirective, DbxWebPageTitleService, DbxWidgetListGridComponent, DbxWidgetListGridViewComponent, DbxWidgetListGridViewItemComponent, DbxWidgetService, DbxWidgetViewComponent, DbxWindowKeyDownListenerDirective, DbxZipBlobPreviewComponent, DbxZipPreviewComponent, PDF_MERGE_PAGE_ID_SEPARATOR, PDF_MERGE_PAGE_TAG_KEY, PDF_MERGE_RESULT_MIME_TYPE, PDF_MERGE_SIDECAR_DESCRIPTION, PDF_MERGE_SIDECAR_FILE_NAME, PDF_MERGE_SIDECAR_VERSION, PopoverPositionStrategy, PopupGlobalPositionStrategy, SCREEN_MEDIA_WIDTH_TYPE_SIZE_MAP, SIDE_NAV_DISPLAY_MODE_ORDER, SideNavDisplayMode, TRACK_BY_MODEL_ID, TRACK_BY_MODEL_KEY, TwoColumnsContextStore, UNKNOWN_ERROR_WIDGET_CODE, addConfigToValueListItems, allDbxModelViewTrackerEventModelKeys, allDbxModelViewTrackerEventSetModelKeys, asPdfMergeFile, attachPdfMergeSidecar, buildPdfMergeEntriesFromSidecar, buildPdfMergeEntry, buildPdfMergeEntrySync, buildPdfMergePagePlan, catchErrorServerParams, classifyPdfMergeFile, compactModeFromInput, compareScreenMediaWidthTypes, compressImageFile, convertServerErrorParams, convertToPOJOServerErrorResponse, convertToServerErrorResponse, copyToClipboardFunction, dbxColorBackground, dbxCuratedColorConfigForString, dbxListAccordionViewComponentImportsAndExports, dbxListGridViewComponentImportsAndExports, dbxPresetFilterMenuButtonIconObservable, dbxPresetFilterMenuButtonTextObservable, dbxStyleClassCleanSuffix, dbxThemeColorCssToken, dbxThemeColorCssTokenVar, dbxThemeColorCssVariable, dbxThemeColorCssVariableVar, dbxValueListItemDecisionFunction, dbxValueListItemKeyForItemValue, dbxWebDefaultPageTitleDelegate, dbxZipBlobPreviewEntryTreeFromEntries, defaultDbxModelViewTrackerStorageAccessorFactory, defaultDbxValueListViewGroupDelegate, defaultDbxValueListViewGroupValuesFunction, disableRightClickInCdkBackdrop, entryIdForPdfMergePageId, fileAcceptFilterTypeStringArray, fileAcceptFunction, fileAcceptString, fileArrayAcceptMatchFunction, flattenAccordionGroups, formatPdfMergeEntrySize, index_d$1 as fromDbxModel, injectCopyToClipboardFunction, injectCopyToClipboardFunctionWithSnackbarMessage, isDbxColorConfig, listItemModifier, makeDbxActionSnackbarDisplayConfigGeneratorFunction, makePdfMergePageId, makePdfMergeSidecar, makePdfMergeSidecarPageTag, mapCompactModeObs, mapValuesToValuesListItemConfigObs, mergePdfMergeEntries, index_d as onDbxModel, openEmbedDialog, openIframeDialog, openPdfPreviewDialog, openZipPreviewDialog, overrideClickElementEffect, pdfMergePageGroupKeyForSlotId, provideDbxDetachController, provideDbxFileUploadActionCompatable, provideDbxHelpServices, provideDbxLinkify, provideDbxListView, provideDbxListViewWrapper, provideDbxModelService, provideDbxPdfMergeEditorConfig, provideDbxPdfMergeEditorPreserveEntriesOnSlotDestroy, provideDbxProgressButtonGlobalConfig, provideDbxPromptConfirm, provideDbxRouterWebAngularRouterProviderConfig, provideDbxRouterWebUiRouterProviderConfig, provideDbxScreenMediaService, provideDbxStyleService, provideDbxValueListView, provideDbxValueListViewGroupDelegate, provideDbxValueListViewModifier, provideDbxWebFilePreviewServiceEntries, provideDbxWebPageTitleService, provideTwoColumnsContext, readPdfMergeEntryPageMetas, readPdfMergePageTag, readPdfMergeSidecar, registerHelpContextKeysWithDbxHelpContextService, resizeSignal, resolveSideNavDisplayMode, sanitizeDbxDialogContentConfig, screenMediaWidthTypeIsActive, splitPdfMergeSidecarDocuments, trackByModelKeyRef, trackByUniqueIdentifier, validatePdfMergeEntry, writePdfMergePageTag };
13787
+ export type { AbstractDbxValueListViewConfig, AnchorForValueFunction, BuildPdfMergeEntriesFromSidecarConfig, BuildPdfMergeEntryConfig, BuildPdfMergePagePlanInput, CompactContextState, CompactModeDefaultOptions, CompactModeOption, CompactModeOptions, CompressImageDimensions, CompressImageFileResult, CopyToClipboardContent, CopyToClipboardFunction, CopyToClipboardFunctionConfig, CopyToClipboardFunctionWithSnackbarMessage, CopyToClipboardFunctionWithSnackbarMessageConfig, CopyToClipboardFunctionWithSnackbarMessageSnackbarConfig, CopyToClipboardSuccess, DbxAccordionRenderEntry, DbxAccordionRenderGroupFooterEntry, DbxAccordionRenderGroupHeaderEntry, DbxAccordionRenderItemEntry, DbxActionConfirmConfig, DbxActionDialogFunction, DbxActionPopoverFunction, DbxActionPopoverFunctionParams, DbxActionSnackbarActionConfig, DbxActionSnackbarDisplayConfig, DbxActionSnackbarDisplayConfigGeneratorFunction, DbxActionSnackbarEvent, DbxActionSnackbarEventMakeConfig, DbxActionSnackbarGeneratorInput, DbxActionSnackbarGeneratorUndoInput, DbxActionSnackbarGeneratorUndoInputConfig, DbxActionSnackbarKnownType, DbxActionSnackbarServiceConfig, DbxActionSnackbarType, DbxActionTransitionSafetyDialogResult, DbxActionTransitionSafetyType, DbxAnchorListExpandedAnchor, DbxAvatarComponentForContextFunction, DbxAvatarContext, DbxAvatarImageFit, DbxAvatarInjectionComponentConfig, DbxAvatarKey, DbxAvatarSelector, DbxAvatarSize, DbxAvatarStyle, DbxButtonDisplayStylePair, DbxButtonStyle, DbxButtonType, DbxChipDisplay, DbxColorConfig, DbxColorConfigTemplate, DbxColorConfigTemplateKey, DbxColorInput, DbxColorTone, DbxContentBorderOpacity, DbxContentContainerPadding, DbxContentContainerWidth, DbxContentPitScrollableHeight, DbxContentPitScrollableHeightSetting, DbxContentPitScrollableInput, DbxDetachConfig, DbxDetachInstance, DbxDetachKey, DbxDetachOverlayConfig, DbxDetachOverlayData, DbxDetachWindowStateType, DbxDialogContentConfig, DbxDialogContentContainerWidth, DbxDialogContentFooterConfig, DbxDownloadBlobButtonConfig, DbxEmbedComponentElement, DbxEmbedDialogConfig, DbxErrorPopoverConfig, DbxErrorSnackbarConfig, DbxErrorSnackbarData, DbxErrorViewButtonEvent, DbxErrorWidgetEntry, DbxErrorWidgetEntryWithPopupComponentClass, DbxFileUploadAreaFilesChangedEvent, DbxFileUploadButtonFilesChangedEvent, DbxFileUploadComponentConfig, DbxFileUploadFilesChangedEvent, DbxFileUploadMode, DbxFilterButtonConfig, DbxFilterButtonConfigWithCustomFilter, DbxFilterButtonConfigWithPresetFilter, DbxFilterComponentConfig, DbxFilterPopoverComponentConfig, DbxFlexSize, DbxHelpContextKey, DbxHelpContextReference, DbxHelpViewPopoverButtonConfig, DbxHelpViewPopoverConfig, DbxHelpViewPopoverConfigWithoutOrigin, DbxHelpWidgetEntryData, DbxHelpWidgetServiceConfigFactory, DbxHelpWidgetServiceEntry, DbxIframeDialogConfig, DbxImageCompressionConfig, DbxInjectionDialogComponentConfig, DbxLinkifyConfig, DbxLinkifyServiceConfigFactory, DbxLinkifyServiceDefaultEntry, DbxLinkifyServiceEntry, DbxLinkifyStringOptions, DbxLinkifyStringType, DbxListComponentScrolledEventPosition, DbxListConfig, DbxListLoadMoreHandler, DbxListScrollDirectionTrigger, DbxListSelectionMode, DbxListTitleGroupData, DbxListTitleGroupTitleDelegate, DbxListViewMetaIconConfig, DbxListWrapperConfig, DbxLoadingComponentState, DbxLoadingIsLoadingOrProgress, DbxLoadingProgress, DbxMakeActionSnackbarGeneratorConfiguration, DbxMakeActionSnackbarGeneratorEventConfiguration, DbxModelFullState, DbxModelIconsMap, DbxModelTypeConfiguration, DbxModelTypeConfigurationMap, DbxModelTypeConfigurationSrefFactory, DbxModelTypeConfigurationSrefFactoryBuilder, DbxModelTypeInfo, DbxModelTypesMap, DbxModelViewTrackerEvent, DbxModelViewTrackerEventSet, DbxPdfMergeEditorAddFileToSlotInput, DbxPdfMergeEditorAddFilesInput, DbxPdfMergeEditorClearEntriesInput, DbxPdfMergeEditorClearEntriesResult, DbxPdfMergeEditorConfig, DbxPdfMergeEditorFileUploadConfig, DbxPdfMergeEditorFileUploadState, DbxPdfMergeEditorFileUploadValidatorSlot, DbxPdfMergeEditorImportErrorReason, DbxPdfMergeEditorImportMergedPdfInput, DbxPdfMergeEditorImportOrigin, DbxPdfMergeEditorImportResult, DbxPdfMergeEditorImportState, DbxPdfMergeEditorOutputSizeState, DbxPdfMergeEditorSourceConfig, DbxPdfMergeEditorValidator, DbxPdfMergeEncryptedHandling, DbxPdfMergeImportConfig, DbxPdfMergeOutputSizeLimitsConfig, DbxPdfMergeUploadButtonConfig, DbxPdfMergeUploadDialogConfig, DbxPdfMergeUploadDialogUploadButtonConfig, DbxPdfPreviewDialogConfig, DbxPopoverComponentConfig, DbxPopoverConfig, DbxPopoverConfigSizing, DbxPopoverKey, DbxPopupComponentConfig, DbxPopupConfig, DbxPopupKey, DbxPopupWindowStateType, DbxPresetFilterMenuConfig, DbxProgressButtonConfig, DbxProgressButtonGlobalConfig, DbxProgressButtonIcon, DbxProgressButtonTargetedConfig, DbxPromptConfirmConfig, DbxPromptConfirmDialogConfig, DbxSectionHeaderConfig, DbxSectionHeaderHType, DbxSectionPageScrollLockedMode, DbxSelectionListWrapperConfig, DbxSelectionValueListViewConfig, DbxSetStyleMode, DbxSidenavPosition, DbxSidenavSidebarState, DbxStepBlockComponentConfig, DbxStyleApplication, DbxStyleClass, DbxStyleClassCleanSuffix, DbxStyleClassDashSuffix, DbxStyleClassSuffix, DbxStyleConfig, DbxStyleName, DbxStyleSupplement, DbxThemeColor, DbxThemeColorExtra, DbxThemeColorExtraSecondary, DbxThemeColorMain, DbxThemeColorMainOrExtra, DbxTwoColumnViewState, DbxValueAsListItem, DbxValueListAccordionViewConfig, DbxValueListGridItemViewGridSizeConfig, DbxValueListGridViewConfig, DbxValueListItem, DbxValueListItemConfig, DbxValueListItemDecisionFunction, DbxValueListItemGroup, DbxValueListViewConfig, DbxValueListViewGroupValuesFunction, DbxWebDefaultPageTitleDelegateConfig, DbxWebFilePreviewComponentConfig, DbxWebFilePreviewServiceEntry, DbxWebFilePreviewServicePreviewComponentFunction, DbxWebFilePreviewServicePreviewComponentFunctionInput, DbxWebFilePreviewServicePreviewDialogFunction, DbxWebFilePreviewServicePreviewDialogFunctionInput, DbxWebFilePreviewServicePreviewDialogFunctionInputWithMatDialog, DbxWebFilePreviewServicePreviewDialogWithComponentFunction, DbxWebFilePreviewServicePreviewDialogWithComponentFunctionInput, DbxWebFilePreviewServicePreviewFunction, DbxWebPageTitleDelegate, DbxWebPageTitleDelegateInput, DbxWebPageTitleDetails, DbxWebPageTitleInfoConfig, DbxWebPageTitleInfoReference, DbxWebPageTitleServiceConfig, DbxWidgetDataPair, DbxWidgetDataPairFactory, DbxWidgetDataPairWithSelection, DbxWidgetEntry, DbxWidgetType, DbxWidgetViewComponentConfig, DbxZipBlobPreviewEntryNodeValue, DbxZipBlobPreviewEntryTreeNode, DbxZipBlobPreviewEntryTreeRoot, DbxZipBlobPreviewGroupData, DbxZipBlobPreviewGroupValue, DbxZipBlobPreviewMode, DbxZipPreviewDialogConfig, DownloadTextContent, FileAcceptFilterTypeString, FileAcceptFilterTypeStringArray, FileAcceptFunction, FileAcceptFunctionInput, FileAcceptString, FileArrayAcceptMatchConfig, FileArrayAcceptMatchFunction, FileArrayAcceptMatchResult, FullDbxPopoverComponentConfig, ImageBitmapToBlobEncoder, ImageBitmapToBlobEncoderInput, ImageCompressionStatus, ListItemModifier, ListSelectionState, ListSelectionStateItem, LoadingComponentState, MergePdfMergeEntriesOptions, ModelViewContext, NavBarContentAlign, NavbarButtonMode, NavbarMode, NumberWithLimit, OverrideClickElementEffectConfig, PdfMergeEditorState, PdfMergeEntry, PdfMergeEntryKind, PdfMergeEntryMove, PdfMergeEntryOriginal, PdfMergeEntryStatus, PdfMergeEntryValidationResult, PdfMergeEntryView, PdfMergePageGroup, PdfMergePageMeta, PdfMergePageMove, PdfMergePageOverride, PdfMergePageRemovedChange, PdfMergePageRotation, PdfMergePageRotationChange, PdfMergePageView, PdfMergeSidecar, PdfMergeSidecarDocument, PdfMergeSidecarDocumentFile, PdfMergeSidecarImportErrorReason, PdfMergeSidecarImportResult, PdfMergeSidecarPage, PdfMergeSidecarReadInput, PdfMergeSidecarReadResult, PdfMergeSidecarResolvedDocument, PdfMergeSidecarResolvedPage, PopoverPositionStrategyConfig, PopupPosition, PopupPositionOffset, ProvideDbxHelpServicesConfig, ProvideDbxLinkifyConfig, ProvideDbxScreenMediaServiceConfig, ProvideDbxStyleServiceConfig, ProvideDbxWebPageTitleServiceConfig, ResizedEvent, ScreenMediaHeightType, ScreenMediaWidthType, ServerErrorParams, SideNavDisplayModeString, SplitPdfMergeSidecarResult, TextChip, TwoColumnsState };