@itwin/imodel-transformer 1.0.0-dev.9 → 1.0.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.
@@ -1,11 +1,9 @@
1
- import { AccessToken, Id64Array, Id64String } from "@itwin/core-bentley";
1
+ import { Id64Array, Id64Set, Id64String } from "@itwin/core-bentley";
2
2
  import * as ECSchemaMetaData from "@itwin/ecschema-metadata";
3
3
  import { Element, ElementAspect, ElementMultiAspect, ElementUniqueAspect, Entity, ExternalSourceAspect, IModelDb, Model, Relationship, RelationshipProps } from "@itwin/core-backend";
4
- import { ChangesetIndexAndId, CodeSpec, ElementAspectProps, ElementProps, EntityReference, EntityReferenceSet, ExternalSourceAspectProps, FontProps, ModelProps, Placement2d, Placement3d } from "@itwin/core-common";
4
+ import { ChangesetIndexAndId, CodeSpec, ElementAspectProps, ElementProps, ExternalSourceAspectProps, FontProps, ModelProps, Placement2d, Placement3d } from "@itwin/core-common";
5
5
  import { ExportChangesOptions, ExportSchemaResult, IModelExporter, IModelExportHandler } from "./IModelExporter";
6
6
  import { IModelImporter, OptimizeGeometryOptions } from "./IModelImporter";
7
- import { PendingReferenceMap } from "./PendingReferenceMap";
8
- import { EntityMap } from "./EntityMap";
9
7
  import { IModelCloneContext } from "./IModelCloneContext";
10
8
  /** Options provided to the [[IModelTransformer]] constructor.
11
9
  * @beta
@@ -18,7 +16,7 @@ export interface IModelTransformOptions {
18
16
  */
19
17
  targetScopeElementId?: Id64String;
20
18
  /** Set to `true` if IModelTransformer should not record its provenance.
21
- * Provenance tracks a target element back to its corresponding source element and is essential for [[IModelTransformer.processChanges]] to work properly.
19
+ * Provenance tracks a target element back to its corresponding source element and is essential for [[IModelTransformer.process]] to work properly when [[IModelTransformOptions.argsForProcessChanges]] are provided.
22
20
  * Turning off IModelTransformer provenance is really only relevant for producing snapshots or another one time transformations.
23
21
  * @note See the [[includeSourceProvenance]] option for determining whether existing source provenance is cloned into the target.
24
22
  * @note The default is `false` which means that new IModelTransformer provenance will be recorded.
@@ -35,13 +33,6 @@ export interface IModelTransformOptions {
35
33
  * @note This *hint* is typically only set for the first synchronization after the iModel was copied since every other synchronization can utilize the provenance.
36
34
  */
37
35
  wasSourceIModelCopiedToTarget?: boolean;
38
- /** Flag that indicates that the current source and target iModels are now synchronizing in the reverse direction from a prior synchronization.
39
- * The most common example is to first synchronize master to branch, make changes to the branch, and then reverse directions to synchronize from branch to master.
40
- * This means that the provenance on the (current) source is used instead.
41
- * @note This also means that only [[IModelTransformer.processChanges]] can detect deletes.
42
- * @deprecated in 1.x this option is ignored and the transformer now detects synchronization direction using the target scope element
43
- */
44
- isReverseSynchronization?: boolean;
45
36
  /** Flag that indicates whether or not the transformation process needs to consider the source geometry before cloning/transforming.
46
37
  * For standard cases, it is not required to load the source GeometryStream in JavaScript since the cloning happens in native code.
47
38
  * Also, the target GeometryStream will be available in JavaScript prior to insert.
@@ -83,7 +74,7 @@ export interface IModelTransformOptions {
83
74
  * @beta
84
75
  */
85
76
  danglingReferencesBehavior?: "reject" | "ignore";
86
- /** If defined, options to be supplied to [[IModelImporter.optimizeGeometry]] by [[IModelTransformer.processChanges]] and [[IModelTransformer.processAll]]
77
+ /** If defined, options to be supplied to [[IModelImporter.optimizeGeometry]] by [[IModelTransformer.process]]
87
78
  * as a post-processing step to optimize the geometry in the iModel.
88
79
  * @beta
89
80
  */
@@ -103,13 +94,6 @@ export interface IModelTransformOptions {
103
94
  * @default false
104
95
  */
105
96
  noDetachChangeCache?: boolean;
106
- /**
107
- * Do not check that processChanges is called from the next changeset index.
108
- * This is an unsafe option (e.g. it can cause data loss in future branch operations)
109
- * and you should not use it.
110
- * @default false
111
- */
112
- ignoreMissingChangesetsInSynchronizations?: boolean;
113
97
  /**
114
98
  * Do not error out if a scoping ESA @see ExternalSourceAspectProps is found without a version or jsonProperties defined on that scoping ESA.
115
99
  * If true, the version and jsonproperties will be properly set on the scoping ESA @see TargetScopeProvenanceJsonProps after the transformer is complete.
@@ -119,47 +103,17 @@ export interface IModelTransformOptions {
119
103
  * @default "reject"
120
104
  */
121
105
  branchRelationshipDataBehavior?: "unsafe-migrate" | "reject";
122
- /**
123
- * The forward sync 'version' to set on the scoping ESA @see ExternalSourceAspectProps upon startup, if the version property on the scoping ESA is undefined or empty string.
124
- * @note This option is not without risk! You must also set @see branchRelationshipDataBehavior to "unsafe-migrate".
125
- * @note This value is ignored if the version property on the scoping ESA is NOT undefined or empty string.
126
- * @default ""
127
- */
128
- unsafeFallbackSyncVersion?: string;
129
- /**
130
- * The reverse sync version to set on the scoping ESA @see TargetScopeProvenanceJsonProps upon startup, if the reverseSync property on the scoping ESA is undefined or empty string.
131
- * @note This option is not without risk! You must also set @see branchRelationshipDataBehavior to "unsafe-migrate".
132
- * @note This value is ignored if the reverseSyncVersion property on the scoping ESA is NOT undefined or empty string.
133
- * @default ""
134
- */
135
- unsafeFallbackReverseSyncVersion?: string;
136
106
  /**
137
107
  * Skip propagating changes made to the root subject, dictionaryModel and IModelImporter._realityDataSourceLinkPartitionStaticId (0xe)
138
- * @default false
108
+ * If it is set to false, changes to root elements are propagated, the root subject name gets changed and leads to the iModelDb.name property being updated in .initializeiModelDb
109
+ * @default true
139
110
  */
140
111
  skipPropagateChangesToRootElements?: boolean;
141
- }
142
- /**
143
- * A container for tracking the state of a partially committed entity and finalizing it when it's ready to be fully committed
144
- * @internal
145
- */
146
- declare class PartiallyCommittedEntity {
147
- /**
148
- * A set of "model|element ++ ID64" pairs, (e.g. `model0x11` or `element0x12`)
149
- * It is possible for the submodel of an element to be separately resolved from the actual element,
150
- * so its resolution must be tracked separately
151
- */
152
- private _missingReferences;
153
- private _onComplete;
154
- constructor(
155
112
  /**
156
- * A set of "model|element ++ ID64" pairs, (e.g. `model0x11` or `element0x12`)
157
- * It is possible for the submodel of an element to be separately resolved from the actual element,
158
- * so its resolution must be tracked separately
113
+ * Arguments to use for the processing of changes. The args being defined or not defined will influence the behavior of @see [[IModelTransformer.process]].
114
+ * @default undefined
159
115
  */
160
- _missingReferences: EntityReferenceSet, _onComplete: () => void);
161
- resolveReference(id: EntityReference): void;
162
- forceComplete(): void;
116
+ argsForProcessChanges?: ProcessChangesOptions;
163
117
  }
164
118
  /**
165
119
  * Data type for persisting change version information within provenance Scope ExternalSourceAspect.
@@ -186,7 +140,6 @@ export interface TargetScopeProvenanceJsonProps {
186
140
  * @beta
187
141
  */
188
142
  export interface InitOptions {
189
- accessToken?: AccessToken;
190
143
  /**
191
144
  * Include changes from this changeset up through and including the current changeset.
192
145
  * @note To form a range of versions to process, set `startChangeset` for the start (inclusive)
@@ -199,41 +152,37 @@ export interface InitOptions {
199
152
  };
200
153
  }
201
154
  /**
202
- * Arguments for [[IModelTransformer.processChanges]]
203
- */
204
- export type ProcessChangesOptions = ExportChangesOptions & FinalizeTransformationOptions;
205
- /**
206
- * Options which modify the behavior of [[IModelTransformer.finalizeTransformation]], called at the end of [[IModelTransformer.processAll]] and [[IModelTransformer.processChanges]].
155
+ * Arguments used during [[IModelTransformer.process]] if provided in [[IModelTransformOptions.argsForProcessChanges]].
207
156
  * @beta
208
157
  */
209
- export interface FinalizeTransformationOptions {
210
- /**
211
- * This description will be used when the transformer needs to push changes to the branch during a reverse sync.
212
- * @default `Update provenance in response to a reverse sync to iModel: ${this.targetDb.iModelId}`
213
- */
214
- reverseSyncBranchChangesetDescription?: string;
158
+ export type ProcessChangesOptions = ExportChangesOptions & {
159
+ /** how to call saveChanges on the target. Must call targetDb.saveChanges, should not edit the iModel */
160
+ saveTargetChanges?: (transformer: IModelTransformer) => Promise<void>;
215
161
  /**
216
- * This description will be used when the transformer needs to push changes to master during a reverse sync.
217
- * @default `Reverse sync of iModel: ${this.sourceDb.iModelId}`
162
+ * The forward sync 'version' to set on the scoping ESA @see ExternalSourceAspectProps upon startup, if the version property on the scoping ESA is undefined or empty string.
163
+ * @note This option is not without risk! You must also set @see branchRelationshipDataBehavior to "unsafe-migrate".
164
+ * @note This value is ignored if the version property on the scoping ESA is NOT undefined or empty string.
165
+ * @default ""
218
166
  */
219
- reverseSyncMasterChangesetDescription?: string;
167
+ unsafeFallbackSyncVersion?: string;
220
168
  /**
221
- * This description will be used when the transformer needs to push changes to the branch during a forward sync.
222
- * @default `Forward sync of iModel: ${this.sourceDb.iModelId}`
169
+ * The reverse sync version to set on the scoping ESA @see TargetScopeProvenanceJsonProps upon startup, if the reverseSync property on the scoping ESA is undefined or empty string.
170
+ * @note This option is not without risk! You must also set @see branchRelationshipDataBehavior to "unsafe-migrate".
171
+ * @note This value is ignored if the reverseSyncVersion property on the scoping ESA is NOT undefined or empty string.
172
+ * @default ""
223
173
  */
224
- forwardSyncBranchChangesetDescription?: string;
174
+ unsafeFallbackReverseSyncVersion?: string;
225
175
  /**
226
- * This description will be used when the transformer needs to push changes to the branch during a provenance init transform.
227
- * @default `initialized branch provenance with master iModel: ${this.sourceDb.iModelId}`
176
+ * Do not check that process (with [[IModelTransformOptions.argsForProcessChanges]] provided) is called from the next changeset index.
177
+ * This is an unsafe option (e.g. it can cause data loss in future branch operations)
178
+ * and you should not use it.
179
+ * @default false
228
180
  */
229
- provenanceInitTransformChangesetDescription?: string;
230
- /** how to call saveChanges on the target. Must call targetDb.saveChanges, should not edit the iModel */
231
- saveTargetChanges?: (transformer: IModelTransformer) => Promise<void>;
232
- }
233
- /** Arguments you can pass to [[IModelTransformer.initExternalSourceAspects]]
234
- * @deprecated in 0.1.0. Use [[InitOptions]] (and [[IModelTransformer.initialize]]) instead.
181
+ ignoreMissingChangesetsInSynchronizations?: boolean;
182
+ };
183
+ /**
184
+ * @beta
235
185
  */
236
- export type InitFromExternalSourceAspectsArgs = InitOptions;
237
186
  export interface RelationshipPropsForDelete {
238
187
  id: Id64String;
239
188
  classFullName: string;
@@ -258,18 +207,14 @@ export declare class IModelTransformer extends IModelExportHandler {
258
207
  private _syncType?;
259
208
  /** The Id of the Element in the **target** iModel that represents the **source** repository as a whole and scopes its [ExternalSourceAspect]($backend) instances. */
260
209
  get targetScopeElementId(): Id64String;
261
- /** map of (unprocessed element, referencing processed element) pairs to the partially committed element that needs the reference resolved
262
- * and have some helper methods below for now */
263
- protected _pendingReferences: PendingReferenceMap<PartiallyCommittedEntity>;
264
210
  /** a set of elements for which source provenance will be explicitly tracked by ExternalSourceAspects */
265
211
  protected _elementsWithExplicitlyTrackedProvenance: Set<string>;
266
- /** map of partially committed entities to their partial commit progress */
267
- protected _partiallyCommittedEntities: EntityMap<PartiallyCommittedEntity>;
212
+ protected _partiallyCommittedElementIds: Id64Set;
213
+ protected _partiallyCommittedAspectIds: Id64Set;
268
214
  /** the options that were used to initialize this transformer */
269
215
  private readonly _options;
270
216
  /** @see hasDefinitionContainerDeletionFeature */
271
217
  private _hasDefinitionContainerDeletionFeature?;
272
- private _isSynchronization;
273
218
  /**
274
219
  * A private variable meant to be set by tests which have an outdated way of setting up transforms. In all synchronizations today we expect to find an ESA in the branch db which describes the master -> branch relationship.
275
220
  * The exception to this is the first transform aka the provenance initializing transform which requires that the master imodel and the branch imodel are identical at the time of provenance initialization.
@@ -312,10 +257,6 @@ export declare class IModelTransformer extends IModelExportHandler {
312
257
  static get provenanceElementClasses(): (typeof Entity)[];
313
258
  /** The element aspect classes that are considered to define provenance in the iModel */
314
259
  static get provenanceElementAspectClasses(): (typeof Entity)[];
315
- /** Set of entity keys which were not exported and don't need to be tracked for pending reference resolution.
316
- * @note Currently only tracks elements which were not exported.
317
- */
318
- protected _skippedEntities: Set<`m${string}` | `e${string}` | `a${string}` | `r${string}`>;
319
260
  /** Construct a new IModelTransformer
320
261
  * @param source Specifies the source IModelExporter or the source IModelDb that will be used to construct the source IModelExporter.
321
262
  * @param target Specifies the target IModelImporter or the target IModelDb that will be used to construct the target IModelImporter.
@@ -446,24 +387,20 @@ export declare class IModelTransformer extends IModelExportHandler {
446
387
  private _queryElemIdByFedGuid;
447
388
  /** Returns `true` if *brute force* delete detections should be run.
448
389
  * @note This is only called if [[IModelTransformOptions.forceExternalSourceAspectProvenance]] option is true
449
- * @note Not relevant for processChanges when change history is known.
390
+ * @note Not relevant for [[process]] when [[IModelTransformOptions.argsForProcessChanges]] are provided and change history is known.
450
391
  */
451
392
  protected shouldDetectDeletes(): boolean;
452
393
  /**
453
394
  * Detect Element deletes using ExternalSourceAspects in the target iModel and a *brute force* comparison against Elements
454
395
  * in the source iModel.
455
396
  * @deprecated in 1.x. Do not use this. // FIXME<MIKE>: how to better explain this?
456
- * This method is only called during [[processAll]] when the option
397
+ * This method is only called during [[process]] when [[IModelTransformOptions.argsForProcessChanges]] is undefined and the option
457
398
  * [[IModelTransformOptions.forceExternalSourceAspectProvenance]] is enabled. It is not
458
- * necessary when using [[processChanges]] since changeset information is sufficient.
399
+ * necessary when calling [[process]] with [[IModelTransformOptions.argsForProcessChanges]] defined, since changeset information is sufficient.
459
400
  * @note you do not need to call this directly unless processing a subset of an iModel.
460
401
  * @throws [[IModelError]] If the required provenance information is not available to detect deletes.
461
402
  */
462
403
  detectElementDeletes(): Promise<void>;
463
- /**
464
- * @deprecated in 3.x, this no longer has any effect except emitting a warning
465
- */
466
- protected skipElement(_sourceElement: Element): void;
467
404
  /** Transform the specified sourceElement into ElementProps for the target iModel.
468
405
  * @param sourceElement The Element from the source iModel to transform.
469
406
  * @returns ElementProps for the target iModel.
@@ -478,30 +415,24 @@ export declare class IModelTransformer extends IModelExportHandler {
478
415
  * @note A subclass can override this method to provide custom change detection behavior.
479
416
  */
480
417
  protected hasElementChanged(sourceElement: Element): boolean;
481
- private static transformCallbackFor;
482
- /** callback to perform when a partial element says it's ready to be completed
483
- * transforms the source element with all references now valid, then updates the partial element with the results
484
- */
485
- private makePartialEntityCompleter;
486
- /** collect references this entity has that are yet to be mapped, and if there are any
487
- * create a [[PartiallyCommittedEntity]] to track resolution of those references
488
- */
489
- private collectUnmappedReferences;
418
+ protected completePartiallyCommittedElements(): void;
419
+ protected completePartiallyCommittedAspects(): void;
420
+ private doAllReferencesExistInTarget;
421
+ private assertReferenceExistsInSource;
490
422
  /** Cause the specified Element and its child Elements (if applicable) to be exported from the source iModel and imported into the target iModel.
491
423
  * @param sourceElementId Identifies the Element from the source iModel to import.
492
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
424
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
493
425
  */
494
426
  processElement(sourceElementId: Id64String): Promise<void>;
495
427
  /** Import child elements into the target IModelDb
496
428
  * @param sourceElementId Import the child elements of this element in the source IModelDb.
497
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
429
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
498
430
  */
499
431
  processChildElements(sourceElementId: Id64String): Promise<void>;
500
432
  /** Override of [IModelExportHandler.shouldExportElement]($transformer) that is called to determine if an element should be exported from the source iModel.
501
433
  * @note Reaching this point means that the element has passed the standard exclusion checks in IModelExporter.
502
434
  */
503
435
  shouldExportElement(_sourceElement: Element): boolean;
504
- onSkipElement(sourceElementId: Id64String): void;
505
436
  /**
506
437
  * If they haven't been already, import all of the required references
507
438
  * @internal do not call, override or implement this, it will be removed
@@ -512,7 +443,6 @@ export declare class IModelTransformer extends IModelExportHandler {
512
443
  * This override calls [[onTransformElement]] and then [IModelImporter.importElement]($transformer) to update the target iModel.
513
444
  */
514
445
  onExportElement(sourceElement: Element): void;
515
- private resolvePendingReferences;
516
446
  /** Override of [IModelExportHandler.onDeleteElement]($transformer) that is called when [IModelExporter]($transformer) detects that an Element has been deleted from the source iModel.
517
447
  * This override propagates the delete to the target iModel via [IModelImporter.deleteElement]($transformer).
518
448
  */
@@ -527,14 +457,14 @@ export declare class IModelTransformer extends IModelExportHandler {
527
457
  private scheduleModeledPartitionDeletion;
528
458
  /** Cause the model container, contents, and sub-models to be exported from the source iModel and imported into the target iModel.
529
459
  * @param sourceModeledElementId Import this [Model]($backend) from the source IModelDb.
530
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
460
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
531
461
  */
532
462
  processModel(sourceModeledElementId: Id64String): Promise<void>;
533
463
  /** Cause the model contents to be exported from the source iModel and imported into the target iModel.
534
464
  * @param sourceModelId Import the contents of this model from the source IModelDb.
535
465
  * @param targetModelId Import into this model in the target IModelDb. The target model must exist prior to this call.
536
466
  * @param elementClassFullName Optional classFullName of an element subclass to limit import query against the source model.
537
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
467
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
538
468
  */
539
469
  processModelContents(sourceModelId: Id64String, targetModelId: Id64String, elementClassFullName?: string): Promise<void>;
540
470
  /** Cause all sub-models that recursively descend from the specified Subject to be exported from the source iModel and imported into the target iModel. */
@@ -546,27 +476,31 @@ export declare class IModelTransformer extends IModelExportHandler {
546
476
  * @note A subclass can override this method to provide custom transform behavior.
547
477
  */
548
478
  onTransformModel(sourceModel: Model, targetModeledElementId: Id64String): ModelProps;
549
- /** Import elements that were deferred in a prior pass.
550
- * @deprecated in 3.x. This method is no longer necessary since the transformer no longer needs to defer elements
551
- */
552
- processDeferredElements(_numRetries?: number): Promise<void>;
553
- /** called at the end of a transformation,
479
+ /**
480
+ * Called at the end of a transformation,
554
481
  * updates the target scope element to say that transformation up through the
555
482
  * source's changeset has been performed. Also stores all changesets that occurred
556
483
  * during the transformation as "pending synchronization changeset indices" @see TargetScopeProvenanceJsonProps
557
484
  *
558
- * You generally should not call this function yourself and use [[processChanges]] instead.
485
+ * You generally should not call this function yourself and use [[process]] with [[IModelTransformOptions.argsForProcessChanges]] provided instead.
559
486
  * It is public for unsupported use cases of custom synchronization transforms.
560
- * @note if you are not running processChanges in this transformation, this will fail
561
- * without setting the `force` option to `true`
487
+ * @note If [[IModelTransformOptions.argsForProcessChanges]] is not defined in this transformation, this function will return early without updating the sync version,
488
+ * unless the `initializeReverseSyncVersion` option is set to `true`
489
+ *
490
+ * The `initializeReverseSyncVersion` is added to set the reverse synchronization version during a forward synchronization.
491
+ * When set to `true`, it saves the reverse sync version as the current changeset of the targetDb. This is typically used for the first transformation between a master and branch iModel.
492
+ * Setting `initializeReverseSyncVersion` to `true` has the effect of making it so any changesets in the branch iModel at the time of the first transformation will be ignored during any future reverse synchronizations from the branch to the master iModel.
493
+ *
494
+ * Note that typically, the reverseSyncVersion is saved as the last changeset merged from the branch into master.
495
+ * Setting initializeReverseSyncVersion to true during a forward transformation could overwrite this correct reverseSyncVersion and should only be done during the first transformation between a master and branch iModel.
562
496
  */
563
- updateSynchronizationVersion({ force }?: {
564
- force?: boolean | undefined;
497
+ updateSynchronizationVersion({ initializeReverseSyncVersion, }?: {
498
+ initializeReverseSyncVersion?: boolean | undefined;
565
499
  }): void;
566
500
  private finalizeTransformation;
567
501
  /** Imports all relationships that subclass from the specified base class.
568
502
  * @param baseRelClassFullName The specified base relationship class.
569
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
503
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
570
504
  */
571
505
  processRelationships(baseRelClassFullName: string): Promise<void>;
572
506
  /** Override of [IModelExportHandler.shouldExportRelationship]($transformer) that is called to determine if a [Relationship]($backend) should be exported.
@@ -584,8 +518,8 @@ export declare class IModelTransformer extends IModelExportHandler {
584
518
  private _yieldManager;
585
519
  /** Detect Relationship deletes using ExternalSourceAspects in the target iModel and a *brute force* comparison against relationships in the source iModel.
586
520
  * @deprecated in 1.x. Don't use this anymore
587
- * @see processChanges
588
- * @note This method is called from [[processAll]] and is not needed by [[processChanges]], so it only needs to be called directly when processing a subset of an iModel.
521
+ * @see [[process]] with [[IModelTransformOptions.argsForProcessChanges]] provided.
522
+ * @note This method is called from [[process]] when [[IModelTransformOptions.argsForProcessChanges]] are undefined, so it only needs to be called directly when processing a subset of an iModel.
589
523
  * @throws [[IModelError]] If the required provenance information is not available to detect deletes.
590
524
  */
591
525
  detectRelationshipDeletes(): Promise<void>;
@@ -607,11 +541,10 @@ export declare class IModelTransformer extends IModelExportHandler {
607
541
  onExportElementMultiAspects(sourceAspects: ElementMultiAspect[]): void;
608
542
  /** Transform the specified sourceElementAspect into ElementAspectProps for the target iModel.
609
543
  * @param sourceElementAspect The ElementAspect from the source iModel to be transformed.
610
- * @param _targetElementId The ElementId of the target Element that will own the ElementAspects after transformation.
611
544
  * @returns ElementAspectProps for the target iModel.
612
545
  * @note A subclass can override this method to provide custom transform behavior.
613
546
  */
614
- protected onTransformElementAspect(sourceElementAspect: ElementAspect, _targetElementId: Id64String): ElementAspectProps;
547
+ protected onTransformElementAspect(sourceElementAspect: ElementAspect): ElementAspectProps;
615
548
  /** The directory where schemas will be exported, a random temporary directory */
616
549
  protected _schemaExportDir: string;
617
550
  /** Override of [IModelExportHandler.shouldExportSchema]($transformer) that is called to determine if a schema should be exported
@@ -635,17 +568,17 @@ export declare class IModelTransformer extends IModelExportHandler {
635
568
  */
636
569
  processSchemas(): Promise<void>;
637
570
  /** Cause all fonts to be exported from the source iModel and imported into the target iModel.
638
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
571
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
639
572
  */
640
573
  processFonts(): Promise<void>;
641
574
  /** Override of [IModelExportHandler.onExportFont]($transformer) that imports a font into the target iModel when it is exported from the source iModel. */
642
575
  onExportFont(font: FontProps, _isUpdate: boolean | undefined): void;
643
576
  /** Cause all CodeSpecs to be exported from the source iModel and imported into the target iModel.
644
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
577
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
645
578
  */
646
579
  processCodeSpecs(): Promise<void>;
647
580
  /** Cause a single CodeSpec to be exported from the source iModel and imported into the target iModel.
648
- * @note This method is called from [[processChanges]] and [[processAll]], so it only needs to be called directly when processing a subset of an iModel.
581
+ * @note This method is called from [[process]], so it only needs to be called directly when processing a subset of an iModel.
649
582
  */
650
583
  processCodeSpec(codeSpecName: string): Promise<void>;
651
584
  /** Override of [IModelExportHandler.shouldExportCodeSpec]($transformer) that is called to determine if a CodeSpec should be exported from the source iModel.
@@ -663,11 +596,11 @@ export declare class IModelTransformer extends IModelExportHandler {
663
596
  private _csFileProps?;
664
597
  /**
665
598
  * Initialize prerequisites of processing, you must initialize with an [[InitOptions]] if you
666
- * are intending to process changes, but prefer using [[processChanges]] explicitly since it calls this.
599
+ * are intending to process changes. Callers may wish to explicitly call initialize if they need to execute code after initialize but before [[process]] is called.
667
600
  * @note Called by all `process*` functions implicitly.
668
601
  * Overriders must call `super.initialize()` first
669
602
  */
670
- initialize(args?: InitOptions): Promise<void>;
603
+ initialize(): Promise<void>;
671
604
  /**
672
605
  * Reads all the changeset files in the private member of the transformer: _csFileProps and does two things with these changesets.
673
606
  * Finds the corresponding target entity for any deleted source entities and remaps the sourceId to the targetId.
@@ -688,21 +621,47 @@ export declare class IModelTransformer extends IModelExportHandler {
688
621
  */
689
622
  private processDeletedOp;
690
623
  private _tryInitChangesetData;
624
+ /**
625
+ * The behavior of process is influenced by [[IModelTransformOptions.argsForProcessChanges]] being defined or not defined during construction passed of the IModelTransformer.
626
+ * @section When argsForProcessChanges are defined:
627
+ *
628
+ * Export changes from the source iModel and import the transformed entities into the target iModel.
629
+ * Inserts, updates, and deletes are determined by inspecting the changeset(s).
630
+ *
631
+ * Notes:
632
+ * - the transformer assumes that you saveChanges after processing changes. You should not modify the iModel after processChanges until saveChanges,
633
+ * failure to do so may result in corrupted
634
+ * data loss in future branch operations
635
+ * - if no startChangesetId or startChangeset option is provided as part of the ProcessChangesOptions, the next unsynchronized changeset
636
+ * will automatically be determined and used
637
+ * - To form a range of versions to process, set `startChangesetId` for the start (inclusive) of the desired range and open the source iModel as of the end (inclusive) of the desired range.
638
+ *
639
+ * @section When argsForProcessChanges are undefined:
640
+ *
641
+ * Export everything from the source iModel and import the transformed entities into the target iModel.
642
+ *
643
+ * Notes:
644
+ * - [[processSchemas]] is not called automatically since the target iModel may want a different collection of schemas.
645
+ *
646
+ */
647
+ process(): Promise<void>;
691
648
  /** Export everything from the source iModel and import the transformed entities into the target iModel.
692
649
  * @note [[processSchemas]] is not called automatically since the target iModel may want a different collection of schemas.
693
650
  */
694
- processAll(options?: FinalizeTransformationOptions): Promise<void>;
651
+ private processAll;
695
652
  /** previous provenance, either a federation guid, a `${sourceFedGuid}/${targetFedGuid}` pair, or required aspect props */
696
653
  private _lastProvenanceEntityInfo;
697
654
  private markLastProvenance;
698
655
  /** Export changes from the source iModel and import the transformed entities into the target iModel.
699
656
  * Inserts, updates, and deletes are determined by inspecting the changeset(s).
700
- * @note the transformer saves and pushes changes when its work is complete.
657
+ * @note the transformer assumes that you saveChanges after processing changes. You should not
658
+ * modify the iModel after processChanges until saveChanges, failure to do so may result in corrupted
659
+ * data loss in future branch operations
701
660
  * @note if no startChangesetId or startChangeset option is provided as part of the ProcessChangesOptions, the next unsynchronized changeset
702
661
  * will automatically be determined and used
703
662
  * @note To form a range of versions to process, set `startChangesetId` for the start (inclusive) of the desired range and open the source iModel as of the end (inclusive) of the desired range.
704
663
  */
705
- processChanges(options: ProcessChangesOptions): Promise<void>;
664
+ private processChanges;
706
665
  /** Changeset data must be initialized in order to build correct changeOptions.
707
666
  * Call [[IModelTransformer.initialize]] for initialization of synchronization provenance data
708
667
  */
@@ -748,5 +707,4 @@ export declare class TemplateModelCloner extends IModelTransformer {
748
707
  /** Cloning from a template requires this override of onTransformElement. */
749
708
  onTransformElement(sourceElement: Element): ElementProps;
750
709
  }
751
- export {};
752
710
  //# sourceMappingURL=IModelTransformer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IModelTransformer.d.ts","sourceRoot":"","sources":["../../src/IModelTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IModelTransformer.d.ts","sourceRoot":"","sources":["../../src/IModelTransformer.ts"],"names":[],"mappings":"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"}