@bentley/imodeljs-native 5.13.22 → 5.13.25

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.
@@ -3,8 +3,8 @@ import type { NativeCloudSqlite } from "./NativeCloudSqlite";
3
3
  * @note This package may only have **dev** dependencies on @itwin packages, so they are *not* available at runtime. Therefore we can only import **types** from them.
4
4
  * @note You cannot use mapped types @href https://www.typescriptlang.org/docs/handbook/2/mapped-types.html from itwin imports here due to how they are resolved downstream
5
5
  */
6
- import type { BentleyStatus, DbOpcode, DbResult, GuidString, Id64Array, Id64String, IDisposable, IModelStatus, LogLevel, OpenMode } from "@itwin/core-bentley";
7
- import type { ChangesetIndexAndId, CodeProps, CodeSpecProperties, CreateEmptyStandaloneIModelProps, DbRequest, DbResponse, ElementAspectProps, ElementGeometryBuilderParams, ElementGeometryBuilderParamsForPart, ElementGraphicsRequestProps, ElementLoadOptions, ElementLoadProps, ElementMeshRequestProps, ElementProps, FilePropertyProps, FontId, FontProps, GeoCoordinatesRequestProps, GeoCoordinatesResponseProps, GeographicCRSInterpretRequestProps, GeographicCRSInterpretResponseProps, GeometryContainmentResponseProps, GeometryStreamProps, ImageBuffer, ImageBufferFormat, ImageSourceFormat, IModelCoordinatesRequestProps, IModelCoordinatesResponseProps, IModelProps, LocalDirName, LocalFileName, MassPropertiesResponseProps, ModelLoadProps, ModelProps, PlacementProps, QueryQuota, RelationshipProps, SnapshotOpenOptions, TextureData, TextureLoadProps, TileVersionInfo, UpgradeOptions } from "@itwin/core-common";
6
+ import type { BentleyStatus, DbOpcode, DbResult, GuidString, Id64Array, Id64String, IModelStatus, LogLevel, OpenMode } from "@itwin/core-bentley";
7
+ import type { BRepGeometryCreate, ChangesetIndexAndId, CodeProps, CodeSpecProperties, FontType as CoreFontType, PerStatementHealthStats as CorePerStatementHealthStats, TxnProps as CoreTxnProps, CreateEmptyStandaloneIModelProps, DbRequest, DbResponse, ElementAspectProps, ElementGeometryBuilderParams, ElementGeometryBuilderParamsForPart, ElementGeometryCacheOperationRequestProps, ElementGeometryCacheRequestProps, ElementGeometryCacheResponseProps, ElementGeometryRequest, ElementGraphicsRequestProps, ElementLoadOptions, ElementLoadProps, ElementMeshRequestProps, ElementProps, FilePropertyProps, FontId, FontProps, GeoCoordinatesRequestProps, GeoCoordinatesResponseProps, GeographicCRSInterpretRequestProps, GeographicCRSInterpretResponseProps, GeometryContainmentResponseProps, GeometryStreamProps, ImageBuffer, ImageBufferFormat, ImageSourceFormat, IModelCoordinatesRequestProps, IModelCoordinatesResponseProps, IModelProps, LocalDirName, LocalFileName, MassPropertiesResponseProps, ModelExtentsProps, ModelLoadProps, ModelProps, PlacementProps, QueryQuota, RelationshipProps, RscFontEncodingProps, SnapRequestProps, SnapResponseProps, SnapshotOpenOptions, TextureData, TextureLoadProps, TileVersionInfo, UpgradeOptions } from "@itwin/core-common";
8
8
  import type { LowAndHighXYZProps, Range2dProps, Range3dProps } from "@itwin/core-geometry";
9
9
  /**
10
10
  * Status codes returned by the native bulk-delete operation.
@@ -283,17 +283,14 @@ export declare namespace IModelJsNative {
283
283
  pushDate: string;
284
284
  userCreated: string;
285
285
  size?: number;
286
+ uncompressedSize?: number;
286
287
  pathname: string;
287
288
  }
288
- interface PerStatementHealthStats {
289
- sqlStatement: string;
290
- dbOperation: string;
291
- rowCount: number;
292
- elapsedMs: number;
293
- fullTableScans: number;
294
- }
289
+ /** @see `PerStatementHealthStats` from `@itwin/core-common` */
290
+ type PerStatementHealthStats = CorePerStatementHealthStats;
295
291
  interface ChangesetHealthStats {
296
292
  changesetId: string;
293
+ changesetIndex: number;
297
294
  uncompressedSizeBytes: number;
298
295
  sha1ValidationTimeMs: number;
299
296
  insertedRows: number;
@@ -301,7 +298,7 @@ export declare namespace IModelJsNative {
301
298
  deletedRows: number;
302
299
  totalElapsedMs: number;
303
300
  totalFullTableScans: number;
304
- perStatementStats: [PerStatementHealthStats];
301
+ perStatementStats: PerStatementHealthStats[];
305
302
  }
306
303
  interface ECSqlRowAdaptorOptions {
307
304
  abbreviateBlobs?: boolean;
@@ -323,12 +320,8 @@ export declare namespace IModelJsNative {
323
320
  date: number;
324
321
  fileExt: string;
325
322
  }
326
- interface FontEncodingProps {
327
- codePage?: number;
328
- degree?: number;
329
- plusMinus?: number;
330
- diameter?: number;
331
- }
323
+ /** @see `RscFontEncodingProps` from `@itwin/core-common` */
324
+ type FontEncodingProps = RscFontEncodingProps;
332
325
  interface ResolveInstanceKeyArgs {
333
326
  partialKey?: {
334
327
  id: Id64String;
@@ -341,11 +334,8 @@ export declare namespace IModelJsNative {
341
334
  id: Id64String;
342
335
  classFullName: string;
343
336
  }
344
- enum FontType {
345
- TrueType = 1,
346
- Rsc = 2,
347
- Shx = 3
348
- }
337
+ /** @see `FontType` from `@itwin/core-common` */
338
+ type FontType = CoreFontType;
349
339
  interface FontFaceProps {
350
340
  faceName: "regular" | "italic" | "bold" | "bolditalic";
351
341
  familyName: string;
@@ -442,23 +432,12 @@ export declare namespace IModelJsNative {
442
432
  readonly parentChangesetId: string;
443
433
  readonly parentChangesetIndex?: string;
444
434
  }
445
- interface TxnProps {
446
- id: TxnIdString;
447
- sessionId: number;
448
- nextId?: TxnIdString;
449
- prevId?: TxnIdString;
450
- props: {
451
- description?: string;
452
- source?: string;
453
- appData: {
454
- [key: string]: any;
455
- };
456
- };
457
- type: "Data" | "ECSchema" | "Ddl";
458
- reversed: boolean;
459
- grouped: boolean;
460
- timestamp: string;
435
+ const enum SchemaSyncRepairScope {
436
+ SchemaMetadata = 0,
437
+ SchemaMetadataAndProfile = 1
461
438
  }
439
+ /** @see `TxnProps` from `@itwin/core-common` */
440
+ type TxnProps = CoreTxnProps;
462
441
  type GeometryOutputFormat = "BinaryStream" | "GeometryStreamProps";
463
442
  interface IGeometrySource {
464
443
  geom?: Uint8Array | GeometryStreamProps;
@@ -473,11 +452,8 @@ export declare namespace IModelJsNative {
473
452
  is2d: boolean;
474
453
  bbox?: LowAndHighXYZProps;
475
454
  }
476
- interface ModelExtentsResponseProps {
477
- id: Id64String;
478
- extents: Range3dProps;
479
- status: IModelStatus;
480
- }
455
+ /** @see `ModelExtentsProps` from `@itwin/core-common` */
456
+ type ModelExtentsResponseProps = ModelExtentsProps;
481
457
  interface TextLayoutRangesProps {
482
458
  layout: Range2dProps;
483
459
  justification: Range2dProps;
@@ -495,15 +471,24 @@ export declare namespace IModelJsNative {
495
471
  readonly cloudContainer?: CloudContainer;
496
472
  attachDb(filename: string, alias: string): void;
497
473
  detachDb(alias: string): void;
474
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
498
475
  getNoCaseCollation(): NoCaseCollation;
476
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
499
477
  setNoCaseCollation(collation: NoCaseCollation): void;
478
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
500
479
  schemaSyncSetDefaultUri(syncDbUri: string): void;
480
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
501
481
  schemaSyncGetDefaultUri(): string;
502
482
  schemaSyncInit(syncDbUri: string, containerId: string, overrideContainer: boolean): void;
503
- schemaSyncPull(syncDbUri?: string): void;
504
- schemaSyncPush(syncDbUri?: string): void;
483
+ /** Rebuild the sync db from this file, for a change this file had to make locally - a profile upgrade. */
484
+ schemaSyncOverwrite(syncDbUri?: string): void;
485
+ schemaSyncRepair(syncDbUri: string, scope: SchemaSyncRepairScope): void;
486
+ /** Materialize the tables and indexes described by the ec_ rows after merging a schema changeset. */
487
+ schemaSyncUpdateDbSchema(): void;
505
488
  schemaSyncEnabled(): boolean;
489
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
506
490
  schemaSyncGetLocalDbInfo(): SchemaLocalDbInfo | undefined;
491
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
507
492
  schemaSyncGetSyncDbInfo(syncDbUri: string): SchemaSyncDbInfo | undefined;
508
493
  abandonChanges(): DbResult;
509
494
  abandonCreateChangeset(): void;
@@ -516,7 +501,11 @@ export declare namespace IModelJsNative {
516
501
  beginPurgeOperation(): IModelStatus;
517
502
  cancelElementGraphicsRequests(requestIds: string[]): void;
518
503
  cancelTileContentRequests(treeId: string, contentIds: string[]): void;
519
- cancelTo(txnId: TxnIdString): IModelStatus;
504
+ /** Reverse and cancel every txn back to `txnId`.
505
+ * @param allowCrossSessions also cancel txns from earlier undo sessions. Saving a schema txn starts a new
506
+ * session, so this is the only way to back one out.
507
+ */
508
+ cancelTo(txnId: TxnIdString, allowCrossSessions?: boolean): IModelStatus;
520
509
  classIdToName(idString: string): string | undefined;
521
510
  classNameToId(className: string): Id64String;
522
511
  closeFile(): void;
@@ -532,7 +521,7 @@ export declare namespace IModelJsNative {
532
521
  concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;
533
522
  concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;
534
523
  concurrentQueryShutdown(): void;
535
- createBRepGeometry(createProps: any): IModelStatus;
524
+ createBRepGeometry(createProps: BRepGeometryCreate): IModelStatus;
536
525
  createChangeCache(changeCacheFile: ECDb, changeCachePath: string): DbResult;
537
526
  createClassViewsInDb(): BentleyStatus;
538
527
  createIModel(fileName: string, props: CreateEmptyStandaloneIModelProps): void;
@@ -548,8 +537,9 @@ export declare namespace IModelJsNative {
548
537
  deleteModel(modelIdJson: string): void;
549
538
  detachChangeCache(): number;
550
539
  dropSchemas(schemaNames: ReadonlyArray<string>): void;
540
+ /** @not-used-by-itwinjs-core */
551
541
  dumpChangeset(changeSet: ChangesetFileProps): void;
552
- elementGeometryCacheOperation(requestProps: any): BentleyStatus;
542
+ elementGeometryCacheOperation(requestProps: ElementGeometryCacheOperationRequestProps): BentleyStatus;
553
543
  embedFile(arg: EmbedFileArg): void;
554
544
  embedFontFile(id: number, faces: FontFaceProps[], data: Uint8Array, compress: boolean): void;
555
545
  enableChangesetSizeStats(enabled: boolean): DbResult;
@@ -563,6 +553,7 @@ export declare namespace IModelJsNative {
563
553
  exportPartGraphicsAsync(exportProps: any): Promise<void>;
564
554
  exportSchema(schemaName: string, exportDirectory: string, outFileName?: string): SchemaWriteStatus;
565
555
  exportSchemas(exportDirectory: string): SchemaWriteStatus;
556
+ /** @not-used-by-itwinjs-core */
566
557
  extractChangedInstanceIdsFromChangeSets(changeSetFileNames: string[]): ErrorStatusOrResult<IModelStatus, ChangedInstanceIdsProps>;
567
558
  extractChangeSummary(changeCacheFile: ECDb, changesetFilePath: string): ErrorStatusOrResult<DbResult, string>;
568
559
  extractEmbeddedFile(arg: EmbeddedFileProps): void;
@@ -617,7 +608,6 @@ export declare namespace IModelJsNative {
617
608
  importSchemasDuringSemanticRebase(schemaFileNames: string[], options?: SchemaImportOptions): void;
618
609
  importSchemas(schemaFileNames: string[], options?: SchemaImportOptions): DbResult;
619
610
  importXmlSchemas(serializedXmlSchemas: string[], options?: SchemaImportOptions): DbResult;
620
- inBulkOperation(): boolean;
621
611
  inlineGeometryPartReferences(): InlineGeometryPartsResult;
622
612
  insertCodeSpec(name: string, jsonProperties: CodeSpecProperties): Id64String;
623
613
  insertElement(elemProps: ElementProps, options?: {
@@ -630,10 +620,13 @@ export declare namespace IModelJsNative {
630
620
  isGeometricModelTrackingSupported(): boolean;
631
621
  isLinkTableRelationship(classFullName: string): boolean | undefined;
632
622
  isOpen(): boolean;
623
+ /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */
633
624
  isProfilerPaused(): boolean;
625
+ /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */
634
626
  isProfilerRunning(): boolean;
635
627
  isReadonly(): boolean;
636
628
  isRedoPossible(): boolean;
629
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
637
630
  isSubClassOf(childClassFullName: string, parentClassFullName: string): boolean;
638
631
  isTxnIdValid(txnId: TxnIdString): boolean;
639
632
  isUndoPossible(): boolean;
@@ -641,9 +634,10 @@ export declare namespace IModelJsNative {
641
634
  openIModel(dbName: string, mode: OpenMode, upgradeOptions?: UpgradeOptions & SchemaImportOptions, props?: SnapshotOpenOptions, container?: CloudContainer, sqliteOptions?: {
642
635
  busyTimeout?: number;
643
636
  }): void;
637
+ /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */
644
638
  pauseProfiler(): DbResult;
645
639
  pollTileContent(treeId: string, tileId: string): ErrorStatusOrResult<IModelStatus, TileContentState | TileContent>;
646
- processGeometryStream(requestProps: any): IModelStatus;
640
+ processGeometryStream(requestProps: ElementGeometryRequest): IModelStatus;
647
641
  purgeTileTrees(modelIds: Id64Array | undefined): void;
648
642
  queryDefinitionElementUsage(definitionElementIds: Id64Array): DefinitionElementUsageInfo | undefined;
649
643
  queryEmbeddedFile(name: string): EmbedFileQuery | undefined;
@@ -674,6 +668,7 @@ export declare namespace IModelJsNative {
674
668
  restartDefaultTxn(): void;
675
669
  restartTxnSession(): void;
676
670
  currentTxnSessionId(): number;
671
+ /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */
677
672
  resumeProfiler(): DbResult;
678
673
  reverseAll(): IModelStatus;
679
674
  reverseTo(txnId: TxnIdString): IModelStatus;
@@ -686,11 +681,14 @@ export declare namespace IModelJsNative {
686
681
  setIModelDb(iModelDb?: any): void;
687
682
  setIModelId(guid: GuidString): DbResult;
688
683
  setITwinId(guid: GuidString): DbResult;
684
+ /** @not-used-by-itwinjs-core */
689
685
  setBusyTimeout(ms: number): void;
690
686
  setCodeValueBehavior(newBehavior: "exact" | "trim-unicode-whitespace"): void;
691
687
  simplifyElementGeometry(simplifyArgs: any): IModelStatus;
692
688
  startCreateChangeset(): ChangesetFileProps;
689
+ /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */
693
690
  startProfiler(scopeName?: string, scenarioName?: string, overrideFile?: boolean, computeExecutionPlan?: boolean): DbResult;
691
+ /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */
694
692
  stopProfiler(): {
695
693
  rc: DbResult;
696
694
  elapsedTime?: number;
@@ -699,6 +697,7 @@ export declare namespace IModelJsNative {
699
697
  };
700
698
  enableChangesetStatsTracking(): void;
701
699
  disableChangesetStatsTracking(): void;
700
+ /** @not-used-by-itwinjs-core Core calls `getAllChangesetHealthData` instead. */
702
701
  getChangesetHealthData(changesetId: string): ChangesetHealthStats;
703
702
  getAllChangesetHealthData(): ChangesetHealthStats[];
704
703
  updateElement(elemProps: Partial<ElementProps>): void;
@@ -711,12 +710,13 @@ export declare namespace IModelJsNative {
711
710
  modelId: Id64String;
712
711
  }): void;
713
712
  updateElementAspect(aspectProps: ElementAspectProps): void;
714
- updateElementGeometryCache(props: object): Promise<any>;
713
+ updateElementGeometryCache(props: ElementGeometryCacheRequestProps): Promise<ElementGeometryCacheResponseProps>;
715
714
  updateIModelProps(props: IModelProps): void;
716
715
  updateLinkTableRelationship(props: RelationshipProps): DbResult;
717
716
  updateModel(modelProps: ModelProps): void;
718
717
  updateModelGeometryGuid(modelId: Id64String): IModelStatus;
719
718
  updateProjectExtents(newExtentsJson: string): void;
719
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
720
720
  writeAffectedElementDependencyGraphToFile(dotFileName: string, changedElems: Id64Array): BentleyStatus;
721
721
  writeFullElementDependencyGraphToFile(dotFileName: string): BentleyStatus;
722
722
  vacuum(arg?: {
@@ -726,6 +726,7 @@ export declare namespace IModelJsNative {
726
726
  analyze(): void;
727
727
  enableWalMode(yesNo?: boolean): void;
728
728
  performCheckpoint(mode?: WalCheckpointMode): void;
729
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
729
730
  setAutoCheckpointThreshold(frames: number): void;
730
731
  pullMergeGetStage(): "None" | "Merging" | "Rebasing";
731
732
  pullMergeRebaseReinstateTxn(): void;
@@ -742,15 +743,19 @@ export declare namespace IModelJsNative {
742
743
  resetBriefcase?: true;
743
744
  }): any;
744
745
  stashRestore(stashFile: string): void;
746
+ /** @not-used-by-itwinjs-core */
745
747
  getPendingTxnsHash(includeReversedTxns: boolean): string;
746
748
  hasPendingSchemaChanges(): boolean;
747
749
  discardLocalChanges(): void;
748
750
  getTxnProps(id: TxnIdString): TxnProps | undefined;
749
751
  setTxnMode(mode: "direct" | "indirect"): void;
750
752
  getTxnMode(): "direct" | "indirect";
753
+ /** @not-used-by-itwinjs-core */
751
754
  static enableSharedCache(enable: boolean): DbResult;
752
755
  static getAssetsDir(): string;
756
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
753
757
  static zlibCompress(data: Uint8Array): Uint8Array;
758
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
754
759
  static zlibDecompress(data: Uint8Array, actualSize: number): Uint8Array;
755
760
  static computeChangesetId(args: Partial<ChangesetFileProps> & Required<Pick<ChangesetFileProps, "parentId" | "pathname">>): string;
756
761
  }
@@ -767,20 +772,6 @@ export declare namespace IModelJsNative {
767
772
  }>;
768
773
  static getAvailableUnitNames(): string[];
769
774
  }
770
- /**
771
- * RevisionUtility help with debugging and testing
772
- * @internal
773
- */
774
- class RevisionUtility {
775
- constructor();
776
- static assembleRevision(targetFile: string, rawChangesetFile: string, prefixFile?: string, lzmaPropsJson?: string): BentleyStatus;
777
- static computeStatistics(sourceFile: string, addPrefix: boolean): string;
778
- static disassembleRevision(sourceFile: string, targetDir: string): BentleyStatus;
779
- static dumpChangesetToDb(sourceFile: string, dbFile: string, includeCols: boolean): BentleyStatus;
780
- static getUncompressSize(sourceFile: string): string;
781
- static normalizeLzmaParams(lzmaPropsJson?: string): string;
782
- static recompressRevision(sourceFile: string, targetFile: string, lzmaPropsJson?: string): BentleyStatus;
783
- }
784
775
  /**
785
776
  * The native object for SchemaUtility
786
777
  * @internal
@@ -791,20 +782,27 @@ export declare namespace IModelJsNative {
791
782
  static convertCustomAttributes(xmlSchemas: string[], schemaContext?: ECSchemaXmlContext): string[];
792
783
  static convertEC2XmlSchemas(ec2XmlSchemas: string[], schemaContext?: ECSchemaXmlContext): string[];
793
784
  }
794
- class ECDb implements IDisposable, IConcurrentQueryManager {
785
+ class ECDb implements IConcurrentQueryManager {
795
786
  constructor();
796
787
  abandonChanges(): DbResult;
797
788
  closeDb(): void;
798
789
  createDb(dbName: string): DbResult;
799
790
  dispose(): void;
800
791
  dropSchemas(schemaNames: ReadonlyArray<string>): void;
792
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
801
793
  schemaSyncSetDefaultUri(syncDbUri: string): void;
794
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
802
795
  schemaSyncGetDefaultUri(): string;
803
796
  schemaSyncInit(syncDbUri: string, containerId: string, overrideContainer: boolean): void;
804
- schemaSyncPull(syncDbUri: string | undefined): void;
805
- schemaSyncPush(syncDbUri: string | undefined): void;
797
+ /** Rebuild the sync db from this briefcase, for a change the briefcase had to make locally - a profile upgrade. */
798
+ schemaSyncOverwrite(syncDbUri: string | undefined): void;
799
+ schemaSyncRepair(syncDbUri: string, scope: SchemaSyncRepairScope): void;
800
+ /** Materialize the tables and indexes described by the ec_ rows after merging a schema changeset. */
801
+ schemaSyncUpdateDbSchema(): void;
806
802
  schemaSyncEnabled(): boolean;
803
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
807
804
  schemaSyncGetLocalDbInfo(): SchemaLocalDbInfo | undefined;
805
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
808
806
  schemaSyncGetSyncDbInfo(): SchemaSyncDbInfo | undefined;
809
807
  getFilePath(): string;
810
808
  resolveInstanceKey(args: ResolveInstanceKeyArgs): ResolveInstanceKeyResult;
@@ -819,6 +817,7 @@ export declare namespace IModelJsNative {
819
817
  saveChanges(changesetName?: string): DbResult;
820
818
  getLastError(): string;
821
819
  getLastInsertRowId(): number;
820
+ /** @not-used-by-itwinjs-core */
822
821
  static enableSharedCache(enable: boolean): DbResult;
823
822
  concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;
824
823
  concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;
@@ -827,7 +826,7 @@ export declare namespace IModelJsNative {
827
826
  detachDb(alias: string): void;
828
827
  clearECDbCache(): void;
829
828
  }
830
- class ChangedElementsECDb implements IDisposable {
829
+ class ChangedElementsECDb {
831
830
  constructor();
832
831
  dispose(): void;
833
832
  createDb(db: DgnDb, dbName: string): DbResult;
@@ -840,7 +839,7 @@ export declare namespace IModelJsNative {
840
839
  isProcessed(changesetId: string): boolean;
841
840
  cleanCaches(): void;
842
841
  }
843
- class ECSqlStatement implements IDisposable {
842
+ class ECSqlStatement {
844
843
  constructor();
845
844
  clearBindings(): DbResult;
846
845
  dispose(): void;
@@ -855,6 +854,7 @@ export declare namespace IModelJsNative {
855
854
  status: DbResult;
856
855
  id: string;
857
856
  };
857
+ /** @not-used-by-itwinjs-core */
858
858
  stepForInsertAsync(callback: (result: {
859
859
  status: DbResult;
860
860
  id: string;
@@ -887,8 +887,11 @@ export declare namespace IModelJsNative {
887
887
  getAccessString(): string;
888
888
  getPropertyName(): string;
889
889
  getOriginPropertyName(): string | undefined;
890
+ /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */
890
891
  getRootClassAlias(): string;
892
+ /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */
891
893
  getRootClassName(): string;
894
+ /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */
892
895
  getRootClassTableSpace(): string;
893
896
  getType(): number;
894
897
  isEnum(): boolean;
@@ -978,7 +981,7 @@ export declare namespace IModelJsNative {
978
981
  }
979
982
  /** Parameters for creating a new SQLiteDb */
980
983
  type SQLiteDbCreateParams = SQLiteDbOpenOrCreateParams & PageSize;
981
- class SQLiteDb implements SQLiteOps, IDisposable {
984
+ class SQLiteDb implements SQLiteOps {
982
985
  constructor();
983
986
  readonly cloudContainer?: CloudContainer;
984
987
  abandonChanges(): void;
@@ -1030,9 +1033,10 @@ export declare namespace IModelJsNative {
1030
1033
  analyze(): void;
1031
1034
  enableWalMode(yesNo?: boolean): void;
1032
1035
  performCheckpoint(mode?: WalCheckpointMode): void;
1036
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
1033
1037
  setAutoCheckpointThreshold(frames: number): void;
1034
1038
  }
1035
- class SqliteStatement implements IDisposable {
1039
+ class SqliteStatement {
1036
1040
  constructor();
1037
1041
  bindBlob(param: number | string, val: Uint8Array | ArrayBuffer | SharedArrayBuffer): DbResult;
1038
1042
  bindDouble(param: number | string, val: number): DbResult;
@@ -1067,7 +1071,9 @@ export declare namespace IModelJsNative {
1067
1071
  * @note this BlobIO *may* be reused after this call by calling `open` again.
1068
1072
  */
1069
1073
  close(): void;
1070
- /** get the total number of bytes in the blob */
1074
+ /** get the total number of bytes in the blob
1075
+ * @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there.
1076
+ */
1071
1077
  getNumBytes(): number;
1072
1078
  /** @return true if this BlobIO was successfully opened and may be use to read or write the blob */
1073
1079
  isValid(): boolean;
@@ -1097,6 +1103,7 @@ export declare namespace IModelJsNative {
1097
1103
  }): Uint8Array;
1098
1104
  /** Reposition this BlobIO to a new rowId
1099
1105
  * @note this BlobIO must be valid when this methods is called.
1106
+ * @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there.
1100
1107
  */
1101
1108
  changeRow(row: number): void;
1102
1109
  /** Write to a blob */
@@ -1146,9 +1153,11 @@ export declare namespace IModelJsNative {
1146
1153
  }
1147
1154
  /** A CloudSqlite container that may be connected to a CloudCache. */
1148
1155
  class CloudContainer {
1156
+ /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */
1149
1157
  onConnect?: (container: CloudContainer, cache: CloudCache) => void;
1150
1158
  onConnected?: (container: CloudContainer) => void;
1151
1159
  onDisconnect?: (container: CloudContainer, detach: boolean) => void;
1160
+ /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */
1152
1161
  onDisconnected?: (container: CloudContainer, detach: boolean) => void;
1153
1162
  readonly cache?: CloudCache;
1154
1163
  /** Create a new instance of a CloudContainer. It must be connected to a CloudCache for most operations. */
@@ -1289,6 +1298,7 @@ export declare namespace IModelJsNative {
1289
1298
  * Get the SHA1 hash of the content of a database.
1290
1299
  * @param dbName the name of the database of interest
1291
1300
  * @note the hash will be empty if the database does not exist
1301
+ * @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there.
1292
1302
  */
1293
1303
  queryDatabaseHash(dbName: string): string;
1294
1304
  }
@@ -1384,7 +1394,7 @@ export declare namespace IModelJsNative {
1384
1394
  workerConnectionCacheSize?: number;
1385
1395
  useMmap?: boolean | number;
1386
1396
  }
1387
- class ECPresentationManager implements IDisposable {
1397
+ class ECPresentationManager {
1388
1398
  constructor(props: ECPresentationManagerProps);
1389
1399
  forceLoadSchemas(db: DgnDb): Promise<ECPresentationManagerResponse<void>>;
1390
1400
  setupRulesetDirectories(directories: string[]): ECPresentationManagerResponse<void>;
@@ -1428,7 +1438,7 @@ export declare namespace IModelJsNative {
1428
1438
  }
1429
1439
  class SnapRequest {
1430
1440
  constructor();
1431
- doSnap(db: DgnDb, request: any): Promise<any>;
1441
+ doSnap(db: DgnDb, request: SnapRequestProps): Promise<SnapResponseProps>;
1432
1442
  cancelSnap(): void;
1433
1443
  }
1434
1444
  interface FeatureUserDataKeyValuePair {
@@ -1505,11 +1515,11 @@ export declare namespace IModelJsNative {
1505
1515
  enableStrictMode(): void;
1506
1516
  disableStrictMode(): void;
1507
1517
  }
1508
- class DisableNativeAssertions implements IDisposable {
1518
+ class DisableNativeAssertions {
1509
1519
  constructor();
1510
1520
  dispose(): void;
1511
1521
  }
1512
- class ImportContext implements IDisposable {
1522
+ class ImportContext {
1513
1523
  constructor(sourceDb: DgnDb, targetDb: DgnDb);
1514
1524
  dispose(): void;
1515
1525
  dump(outputFileName: string): BentleyStatus;
@@ -1551,6 +1561,7 @@ export declare namespace IModelJsNative {
1551
1561
  */
1552
1562
  class NativeDevTools {
1553
1563
  static signal(signalType: number): boolean;
1564
+ /** @not-used-by-itwinjs-core Covered only by this package's own tests. */
1554
1565
  static emitLogs(count: number, category: string, severity: LogLevel, thread: "main" | "worker", onDone: () => void): void;
1555
1566
  }
1556
1567
  /**
@@ -1562,12 +1573,14 @@ export declare namespace IModelJsNative {
1562
1573
  * @param name Name to be encoded
1563
1574
  * @returns Encoded name
1564
1575
  * @param name
1576
+ * @not-used-by-itwinjs-core
1565
1577
  */
1566
1578
  static encodeToValidName(name: string): string;
1567
1579
  /**
1568
1580
  * Decodes names that were encoded to comply with EC naming rules
1569
1581
  * @param encodedName Encoded name
1570
1582
  * @returns Decoded name
1583
+ * @not-used-by-itwinjs-core
1571
1584
  */
1572
1585
  static decodeFromValidName(encodedName: string): string;
1573
1586
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NativeLibrary.d.ts","sourceRoot":"","sources":["../src/NativeLibrary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NativeLibrary.d.ts","sourceRoot":"","sources":["../src/NativeLibrary.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;GAGG;AAEH,OAAO,KAAK,EACV,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EACvG,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,kBAAkB,EAAE,mBAAmB,EAAE,SAAS,EAAE,kBAAkB,EAAE,QAAQ,IAAI,YAAY,EAAE,uBAAuB,IAAI,2BAA2B,EAAE,QAAQ,IAAI,YAAY,EAAE,gCAAgC,EAAE,SAAS,EAAE,UAAU,EAAE,kBAAkB,EAC/P,4BAA4B,EAC5B,mCAAmC,EACnC,yCAAyC,EAAE,gCAAgC,EAAE,iCAAiC,EAAE,sBAAsB,EACtI,2BAA2B,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,YAAY,EACxG,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,kCAAkC,EACjI,mCAAmC,EAAE,gCAAgC,EAAE,mBAAmB,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,6BAA6B,EAC5K,8BAA8B,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,cAAc,EACxI,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAC1M,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAQ3F;;;GAGG;AACH,oBAAY,wBAAwB;IAClC,OAAO,IAAI;IACX,cAAc,IAAI;IAClB,cAAc,IAAI;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,wBAAwB,CAAC;IACjC,eAAe,EAAE,QAAQ,CAAC;IAC1B,SAAS,EAAE,SAAS,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;CAUvB,CAAC;AAEX,gBAAgB;AAChB,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC;QAAE,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IACpF,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACtD,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxD,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACvD;AAED,kDAAkD;AAClD,qBAAa,aAAa;IACxB,WAAkB,QAAQ,WAKzB;IACD,WAAkB,aAAa,WAA8B;IAC7D,WAAkB,eAAe,IAAI,MAAM,CAe1C;IAGD,WAAkB,UAAU,IAAI,OAAO,CAOtC;IAED,WAAkB,eAAe,IAAI,MAAM,CAAwD;IACnG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAwB;IAClD,WAAkB,SAAS,0BAA0B;WACvC,IAAI;CAsBnB;AAED;;GAEG;AACH,0BAAkB,iBAAiB;IACjC,OAAO,IAAI,CAAG,yCAAyC;IACvD,IAAI,IAAI,CAAM,uCAAuC;IACrD,OAAO,IAAI,CAAG,wCAAwC;IACtD,QAAQ,IAAI;CACb;AAED;;;EAGE;AACF,0BAAkB,qBAAqB;IACrC,OAAO,IAAI,CAAE,kCAAkC;IAC/C,QAAQ,IAAI,CAAE,wFAAwF;IACtG,UAAU,IAAI,CAAE,sBAAsB;IACtC,WAAW,IAAI;IACf,yBAAyB,IAAI;IAC7B,eAAe,IAAI;IACnB,kBAAkB,IAAI;CACvB;AAED;;;EAGE;AACF,0BAAkB,iBAAiB;IACjC,OAAO,IAAI;IACX,eAAe,IAAI;IACnB,iBAAiB,IAAI;IACrB,kBAAkB,IAAI;IACtB,iBAAiB,IAAI;CACtB;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,cAAc,CAAC;IACtC,UAAU,aAAa;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf;IAED,sCAAsC;IACtC,KAAK,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC;IAC5B,qBAAqB;IACrB,KAAK,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IAEhC,sCAAsC;IACtC,KAAK,WAAW,GAAG,MAAM,CAAC;IAE1B,UAAU,0BAA0B;QAClC,iGAAiG;QACjG,QAAQ,EAAE,MAAM,CAAC;QACjB,2KAA2K;QAC3K,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,kDAAkD;QAClD,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,0FAA0F;QAC1F,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,0EAA0E;QAC1E,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;KAC1B;IAED,IAAI,MAAM,EAAE,YAAY,CAAC;IACzB,SAAS,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACrD,SAAS,kBAAkB,IAAI,eAAe,CAAC;IAC/C,SAAS,iBAAiB,CAAC,GAAG,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAClE,SAAS,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAC/E,SAAS,wBAAwB,IAAI,aAAa,EAAE,CAAC;IACrD,SAAS,kBAAkB,IAAI,IAAI,CAAC;IACpC,SAAS,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;IACxF,SAAS,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACpG,SAAS,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACnD;;;;;OAKG;IACH,SAAS,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACpD,SAAS,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,CAAC;IAEtD,UAAU,oBAAoB;QAC5B,KAAK,EAAE,aAAa,EAAE,CAAC;QACvB,UAAU,EAAE,OAAO,CAAC;KACrB;IAED,SAAS,uBAAuB,CAAC,QAAQ,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAChF,SAAS,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAElD,SAAS,0BAA0B,CACjC,YAAY,EAAE,iBAAiB,CAAC,GAAG,GAAG,iBAAiB,CAAC,IAAI,EAC5D,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,iBAAiB,CAAC,GAAG,GAAG,iBAAiB,CAAC,IAAI,GAAG,GAAG,EAClE,cAAc,EAAE,OAAO,GACtB,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,GAAG,SAAS,CAAC;IAE9D,SAAS,0BAA0B,CACjC,WAAW,EAAE,iBAAiB,CAAC,GAAG,GAAG,iBAAiB,CAAC,IAAI,EAC3D,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,iBAAiB,CAAC,GAAG,GAAG,iBAAiB,CAAC,IAAI,GAAG,GAAG,EAClE,cAAc,EAAE,OAAO,EACvB,WAAW,EAAE,MAAM,GAClB;QAAE,MAAM,EAAE,iBAAiB,CAAC,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,GAAG,SAAS,CAAC;IAE5F,wFAAwF;IACxF,SAAS,qBAAqB,CAAC,GAAG,EAAE;QAClC,gDAAgD;QAChD,aAAa,EAAE,MAAM,CAAC;QACtB,uDAAuD;QACvD,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,6EAA6E;QAC7E,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,GAAG,MAAM,CAAC;IAEX,oFAAoF;IACpF,UAAU,qBAAqB,CAAC,aAAa;QAC3C,MAAM,EAAE,aAAa,CAAC;QACtB,OAAO,EAAE,MAAM,CAAC;KACjB;IAED,gGAAgG;IAChG,KAAK,mBAAmB,CAAC,aAAa,EAAE,UAAU,IAAI;QACpD,8FAA8F;QAC9F,KAAK,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAC5C,MAAM,CAAC,EAAE,KAAK,CAAC;KAChB,GAAG;QACF,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,gGAAgG;QAChG,MAAM,EAAE,UAAU,CAAC;KACpB,CAAC;IAEF,UAAU,eAAe,CAAC;QACxB;;WAEG;QACH,KAAK,UAAU,GAAG,CAAC,QAAQ,EAAE,UAAU,KAAK,IAAI,CAAC;QACjD;;WAEG;KACJ;IACD,UAAU,uBAAuB;QAC/B,sBAAsB,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,GAAG,IAAI,CAAC;QACzF,0BAA0B,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;QAC9D,uBAAuB,IAAI,IAAI,CAAC;KACjC;IAED;;KAEC;IACD,UAAiB,WAAW;QAC1B,WAAW,CAAC,EAAE,UAAU,CAAC;QACzB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB;IAED,UAAU,WAAW;QACnB,OAAO,EAAE,UAAU,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;KACxB;IACD;;;OAGG;IACH,WAAW,gBAAgB;QACzB,GAAG,IAAI,CAAE,yCAAyC;QAClD,OAAO,IAAI,CAAE,mDAAmD;QAChE,OAAO,IAAI;KACZ;IAED;;OAEG;IACH,UAAiB,sBAAsB;QACrC,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC;QACtC,OAAO,EAAE,UAAU,CAAC;KACrB;IAED;;OAEG;IACH,UAAiB,oBAAoB;QACnC,MAAM,EAAE,OAAO,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;KACvE;IAED;;;OAGG;IACH,KAAY,qBAAqB,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;IAElF;;OAEG;IACH,UAAiB,iBAAiB;QAChC,EAAE,EAAE,UAAU,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;KAChD;IAED,iEAAiE;IACjE,UAAU,0BAA0B;QAClC,oEAAoE;QACpE,kBAAkB,CAAC,EAAE,UAAU,EAAE,CAAC;QAClC,oEAAoE;QACpE,kBAAkB,CAAC,EAAE,UAAU,EAAE,CAAC;QAClC,gEAAgE;QAChE,cAAc,CAAC,EAAE,UAAU,EAAE,CAAC;QAC9B,0DAA0D;QAC1D,mBAAmB,CAAC,EAAE,UAAU,EAAE,CAAC;QACnC,uDAAuD;QACvD,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC;QAChC,sDAAsD;QACtD,eAAe,CAAC,EAAE,UAAU,EAAE,CAAC;QAC/B,wDAAwD;QACxD,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC;QACjC,sDAAsD;QACtD,eAAe,CAAC,EAAE,UAAU,EAAE,CAAC;QAC/B,wDAAwD;QACxD,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC;QACjC,mDAAmD;QACnD,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;QAC5B,iDAAiD;QACjD,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC;QAC1B,+EAA+E;QAC/E,yBAAyB,CAAC,EAAE,UAAU,EAAE,CAAC;QACzC,gEAAgE;QAChE,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;KACxB;IAED;;OAEG;IACH,WAAW,SAAS;QAClB,IAAI,SAAe;QACnB,IAAI,SAAsB;QAC1B,IAAI,SAAsB;QAC1B,MAAM,SAAO;KACd;IAED,UAAU,kBAAkB;QAC1B,KAAK,EAAE,MAAM,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;KAClB;IAED,+DAA+D;IAC/D,KAAK,uBAAuB,GAAG,2BAA2B,CAAC;IAE3D,UAAU,oBAAoB;QAC5B,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,iBAAiB,EAAE,uBAAuB,EAAE,CAAC;KAC9C;IACD,UAAU,sBAAsB;QAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,2CAA2C,CAAC,EAAE,OAAO,CAAC;KACvD;IAED,UAAU,iBAAiB;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,aAAa,EAAE,MAAM,CAAC;KACvB;IAED,UAAU,YAAa,SAAQ,iBAAiB;QAC9C,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB;IAED,UAAU,cAAc;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB;IAED,4DAA4D;IAC5D,KAAK,iBAAiB,GAAG,oBAAoB,CAAC;IAE9C,UAAU,sBAAsB;QAC9B,UAAU,CAAC,EAAE;YAAE,EAAE,EAAE,UAAU,CAAC;YAAC,aAAa,EAAE,MAAM,CAAA;SAAE,CAAC;QACvD,cAAc,CAAC,EAAE,UAAU,CAAC;QAC5B,IAAI,CAAC,EAAE,SAAS,CAAC;KAClB;IAED,UAAU,wBAAwB;QAChC,EAAE,EAAE,UAAU,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;KACvB;IAED,gDAAgD;IAChD,KAAK,QAAQ,GAAG,YAAY,CAAC;IAE7B,UAAU,aAAa;QACrB,QAAQ,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,YAAY,CAAC;QACvD,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,EAAE,QAAQ,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,iBAAiB,CAAC;KAC9B;IAED,UAAU,SAAS;QACjB,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,CAAC;QACnC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;QAC7F,mBAAmB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAAC;QAClD,WAAW,IAAI,MAAM,CAAC;QACtB,kBAAkB,IAAI,MAAM,CAAC;QAC7B,YAAY,IAAI,MAAM,CAAC;QACvB,MAAM,IAAI,OAAO,CAAC;QAClB,UAAU,IAAI,OAAO,CAAC;QACtB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;QAC5D,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;QAClG,8BAA8B,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAAC;QACjE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QACvC,mBAAmB,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,CAAC;QAC7C,iBAAiB,IAAI,IAAI,CAAC;QAC1B,WAAW,IAAI,IAAI,CAAC;QACpB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC;QAChH,MAAM,CAAC,GAAG,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,aAAa,CAAA;SAAE,GAAG,IAAI,CAAC;QAChE,OAAO,IAAI,IAAI,CAAC;QAChB,aAAa,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;QACrC;;WAEG;QACH,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;QAClD,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;KAClD;IAED;;;;OAIG;IACH,UAAU,yBAAyB;QACjC,mHAAmH;QACnH,iBAAiB,EAAE,MAAM,CAAC;QAC1B,0DAA0D;QAC1D,cAAc,EAAE,MAAM,CAAC;QACvB,mFAAmF;QACnF,eAAe,EAAE,MAAM,CAAC;KACzB;IAED,UAAU,oBAAoB;QAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B;IAED,UAAU,eAAe;QACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;QAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;YAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAC,CAAC;KAC7D;IAED,UAAU,WAAW;QACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,oBAAoB,EAAE,CAAC;QAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE;YAAE,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAA;SAAE,CAAC;QACrD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC;YAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAC,CAAC;KAC7D;IAED,UAAU,mBAAmB;QAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;QAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;QACnC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;QAClC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;KAClD;IAED,UAAU,iBAAiB;QACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;KAC7B;IAED,UAAU,gBAAiB,SAAQ,iBAAiB;QAClD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;QACnC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;KACxC;IAED,WAAW,qBAAqB;QAC9B,cAAc,IAAI;QAClB,wBAAwB,IAAI;KAC7B;IAED,gDAAgD;IAChD,KAAY,QAAQ,GAAG,YAAY,CAAC;IACpC,KAAK,oBAAoB,GAAG,cAAc,GAAG,qBAAqB,CAAC;IACnE,UAAU,eAAe;QACvB,IAAI,CAAC,EAAE,UAAU,GAAG,mBAAmB,CAAC;QACxC,OAAO,CAAC,EAAE,4BAA4B,CAAC;QACvC,SAAS,CAAC,EAAE,cAAc,CAAC;QAC3B,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,IAAI,EAAE,OAAO,CAAC;KACf;IAGD,UAAU,aAAa;QACrB,IAAI,CAAC,EAAE,UAAU,GAAG,mBAAmB,CAAC;QACxC,OAAO,CAAC,EAAE,mCAAmC,CAAC;QAC9C,IAAI,EAAE,OAAO,CAAC;QACd,IAAI,CAAC,EAAE,kBAAkB,CAAC;KAC3B;IAKD,yDAAyD;IACzD,KAAK,yBAAyB,GAAG,iBAAiB,CAAC;IAEnD,UAAU,qBAAqB;QAC7B,MAAM,EAAE,YAAY,CAAC;QACrB,aAAa,EAAE,YAAY,CAAC;KAC7B;IAED,KAAK,YAAY;QAAG,IAAI,IAAI;QAAE,IAAI,IAAI;QAAE,MAAM,IAAI;QAAE,UAAU,IAAgB;KAAE;IAEhF,KAAK,eAAe,GAAG,OAAO,GAAG,QAAQ,CAAC;IAE1C,yCAAyC;IACzC,MAAM,KAAM,YAAW,uBAAuB,EAAE,SAAS;;QAEvD,SAAgB,cAAc,CAAC,EAAE,cAAc,CAAC;QACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;QAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;QACpC,0EAA0E;QACnE,kBAAkB,IAAI,eAAe;QAC5C,0EAA0E;QACnE,kBAAkB,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI;QAC3D,0EAA0E;QACnE,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;QACvD,0EAA0E;QACnE,uBAAuB,IAAI,MAAM;QACjC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI;QAC/F,0GAA0G;QACnG,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;QAC7C,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,IAAI;QAC9E,qGAAqG;QAC9F,wBAAwB,IAAI,IAAI;QAChC,iBAAiB,IAAI,OAAO;QACnC,0EAA0E;QACnE,wBAAwB,IAAI,iBAAiB,GAAG,SAAS;QAChE,0EAA0E;QACnE,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;QACxE,cAAc,IAAI,QAAQ;QAC1B,sBAAsB,IAAI,IAAI;QAC9B,6CAA6C,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,aAAa;QACtG,iBAAiB,IAAI,IAAI;QACzB,cAAc,CAAC,SAAS,EAAE,kBAAkB,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,IAAI;QACjG,qBAAqB,CAAC,SAAS,EAAE,kBAAkB,EAAE,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI;QACxF,iBAAiB,CAAC,eAAe,EAAE,MAAM,GAAG,QAAQ;QACpD,sBAAsB,IAAI,QAAQ;QAClC,mBAAmB,IAAI,YAAY;QACnC,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;QACzD,yBAAyB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;QAC5E;;;WAGG;QACI,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,OAAO,GAAG,YAAY;QACxE,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;QACnD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU;QAC5C,SAAS,IAAI,IAAI;QACjB,uBAAuB,CAAC,GAAG,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI;QACrD,qBAAqB,CAAC,eAAe,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,GAAG;YAAE,OAAO,EAAE,YAAY,CAAC;YAAC,WAAW,CAAC,EAAE,YAAY,CAAC;YAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;SAAE;QACrJ,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,qBAAqB;QAC/I,sBAAsB,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,GAAG,IAAI;QACxF,0BAA0B,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW;QAC7D,uBAAuB,IAAI,IAAI;QAC/B,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,GAAG,YAAY;QACjE,iBAAiB,CAAC,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,GAAG,QAAQ;QAC3E,oBAAoB,IAAI,aAAa;QACrC,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gCAAgC,GAAG,IAAI;QAC7E,aAAa,IAAI,IAAI;QACrB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;QACvC,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE;YAAE,2BAA2B,CAAC,EAAE,OAAO,CAAA;SAAE,GAAG,wBAAwB;QAC1H,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;QAC/C,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,GAAG,QAAQ;QAC/D,4BAA4B,CAAC,KAAK,EAAE,aAAa,CAAC,iBAAiB,CAAC,GAAG,QAAQ;QAC/E,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;QACpC,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;QACtC,iBAAiB,IAAI,MAAM;QAC3B,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,IAAI;QAC5D,gCAAgC;QACzB,aAAa,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI;QAClD,6BAA6B,CAAC,YAAY,EAAE,yCAAyC,GAAG,aAAa;QACrG,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI;QAClC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;QAC5F,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ;QACpD,gBAAgB,IAAI,IAAI;QACxB,oBAAoB,IAAI,QAAQ;QAChC,iBAAiB,IAAI,YAAY;QACjC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;QACrD,cAAc,CAAC,WAAW,EAAE,GAAG,GAAuD,QAAQ;QAC9F,kBAAkB,CAAC,WAAW,EAAE,GAAG,GAA2D,QAAQ;QACtG,mBAAmB,CAAC,WAAW,EAAE,GAAG,GAAuD,OAAO,CAAC,IAAI,CAAC;QACxG,uBAAuB,CAAC,WAAW,EAAE,GAAG,GAA2D,OAAO,CAAC,IAAI,CAAC;QAChH,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,iBAAiB;QAClG,aAAa,CAAC,eAAe,EAAE,MAAM,GAAG,iBAAiB;QAChE,gCAAgC;QACzB,uCAAuC,CAAC,kBAAkB,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,YAAY,EAAE,uBAAuB,CAAC;QACjI,oBAAoB,CAAC,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC7G,mBAAmB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;QACjD,0BAA0B,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,GAAG,UAAU,EAAE;QAC9E,uBAAuB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,qBAAqB,CAAC;QAC7F,qBAAqB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;QAC5E,cAAc,IAAI,MAAM;QACxB,gBAAgB,IAAI,MAAM;QAC1B,2BAA2B,IAAI,MAAM;QACrC,oBAAoB,IAAI,OAAO,GAAG,yBAAyB;QAC3D,mBAAmB,IAAI,mBAAmB;QAC1C,eAAe,IAAI,WAAW;QAC9B,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,MAAM,CAAC;QAChG,UAAU,CAAC,IAAI,EAAE,gBAAgB,GAAG,YAAY;QAChD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;QACjC,WAAW,IAAI,MAAM;QACrB,sCAAsC,CAAC,MAAM,EAAE,0BAA0B,GAAG,2BAA2B;QACvG,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gCAAgC,CAAC;QAChF,sCAAsC,CAAC,MAAM,EAAE,6BAA6B,GAAG,8BAA8B;QAC7G,WAAW,IAAI,UAAU;QACzB,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,WAAW;QAC/C,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,wBAAwB;QAC1E,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAC7E,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU;QAC1E,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO;QACvE,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO;QACtE,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;QAC9C,SAAS,IAAI,UAAU;QAEvB,cAAc,IAAI,IAAI;QAEtB,6BAA6B,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,kBAAkB,GAAG,eAAe;QAC5H,2BAA2B,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,kBAAkB,GAAG,aAAa;QAGtH,UAAU,IAAI,UAAU;QACxB,YAAY,IAAI,MAAM;QACtB,kBAAkB,IAAI,MAAM;QAC5B,eAAe,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,sBAAsB,EAAE,OAAO,GAAG,iBAAiB,EAAE;QAChG,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;QACtE,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU;QAC1C,yBAAyB,IAAI,MAAM;QACnC,aAAa,IAAI,MAAM;QACvB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;QACzC,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;QACvD,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9F,mBAAmB,IAAI,MAAM;QAC7B,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,YAAY,EAAE,UAAU,CAAC,KAAK,IAAI,GAAG,IAAI;QAC/H,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,YAAY,EAAE,GAAG,CAAC,KAAK,IAAI,GAAG,IAAI;QACjG,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM;QAC7C,aAAa,IAAI,MAAM;QACvB,gBAAgB,IAAI,OAAO;QAC3B,cAAc,IAAI,OAAO;QACzB,iBAAiB,IAAI,OAAO;QAC5B,sBAAsB,IAAI,QAAQ;QAClC,iCAAiC,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,IAAI;QACjG,aAAa,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,QAAQ;QACjF,gBAAgB,CAAC,oBAAoB,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,QAAQ;QACzF,4BAA4B,IAAI,yBAAyB;QACzD,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,kBAAkB,GAAG,UAAU;QAC5E,aAAa,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE;YAAE,UAAU,CAAC,EAAE,OAAO,CAAA;SAAE,GAAG,UAAU;QACtF,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,GAAG,UAAU;QAChE,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU;QACjE,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;QAC/C,qBAAqB,IAAI,OAAO;QAChC,iCAAiC,IAAI,OAAO;QAC5C,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;QACnE,MAAM,IAAI,OAAO;QACxB,kGAAkG;QAC3F,gBAAgB,IAAI,OAAO;QAClC,kGAAkG;QAC3F,iBAAiB,IAAI,OAAO;QAC5B,UAAU,IAAI,OAAO;QACrB,cAAc,IAAI,OAAO;QAChC,0EAA0E;QACnE,YAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,OAAO;QAC9E,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;QACzC,cAAc,IAAI,OAAO;QACzB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;QACjC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,mBAAmB,EAAE,KAAK,CAAC,EAAE,mBAAmB,EAAE,SAAS,CAAC,EAAE,cAAc,EAAE,aAAa,CAAC,EAAE;YAAE,WAAW,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI;QACjN,kGAAkG;QAC3F,aAAa,IAAI,QAAQ;QACzB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,GAAG,WAAW,CAAC;QAClH,qBAAqB,CAAC,YAAY,EAAE,sBAAsB,GAAG,YAAY;QACzE,cAAc,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI;QACrD,2BAA2B,CAAC,oBAAoB,EAAE,SAAS,GAAG,0BAA0B,GAAG,SAAS;QACpG,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;QAC3D,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS;QACjG,eAAe,IAAI,WAAW;QAC9B,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;QAEjD,iBAAiB,CAAC,OAAO,EAAE;YAAE,EAAE,EAAE,UAAU,CAAA;SAAE,GAAG;YAAE,YAAY,EAAE,YAAY,CAAA;SAAE;QAC9E,sBAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;QACpF,8BAA8B,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM;QAChE,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;QAC/C,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;QACnD,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;QAC1E,WAAW,IAAI;YAAE,KAAK,EAAE,SAAS,EAAE,CAAA;SAAE;QACrC,YAAY,IAAI,YAAY;QAC5B,wBAAwB,IAAI;YAAE,UAAU,EAAE,WAAW,CAAC;YAAC,SAAS,EAAE,WAAW,CAAA;SAAE;QAC/E,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;QACtC,mBAAmB,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI;QAC5C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;QACvC,iBAAiB,IAAI,IAAI;QACzB,iBAAiB,IAAI,IAAI;QACzB,mBAAmB,IAAI,MAAM;QACpC,kGAAkG;QAC3F,cAAc,IAAI,QAAQ;QAC1B,UAAU,IAAI,YAAY;QAC1B,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY;QAC3C,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,YAAY;QAChD,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ;QAC3C,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI;QAC/G,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;QAC7D,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS;QAC9E,gCAAgC,CAAC,OAAO,EAAE,OAAO,GAAG,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC;QAC9F,WAAW,CAAC,QAAQ,CAAC,EAAE,GAAG,GAA0C,IAAI;QACxE,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,QAAQ;QACvC,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,QAAQ;QAC7C,gCAAgC;QACzB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;QAChC,oBAAoB,CAAC,WAAW,EAAE,OAAO,GAAG,yBAAyB,GAAG,IAAI;QAC5E,uBAAuB,CAAC,YAAY,EAAE,GAAG,GAA6D,YAAY;QAClH,oBAAoB,IAAI,kBAAkB;QACjD,kGAAkG;QAC3F,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,oBAAoB,CAAC,EAAE,OAAO,GAAG,QAAQ;QACjI,kGAAkG;QAC3F,YAAY,IAAI;YAAE,EAAE,EAAE,QAAQ,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE;QAC3F,4BAA4B,IAAI,IAAI;QACpC,6BAA6B,IAAI,IAAI;QAC5C,gFAAgF;QACzE,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB;QACjE,yBAAyB,IAAI,oBAAoB,EAAE;QACnD,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;QACrD,mBAAmB,CAAC,KAAK,EAAE;YAAE,EAAE,EAAE,UAAU,CAAC;YAAC,QAAQ,EAAE,UAAU,CAAA;SAAE,GAAG,IAAI;QAC1E,kBAAkB,CAAC,KAAK,EAAE;YAAE,EAAE,EAAE,UAAU,CAAC;YAAC,OAAO,EAAE,UAAU,CAAA;SAAE,GAAG,IAAI;QACxE,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI;QAC1D,0BAA0B,CAAC,KAAK,EAAE,gCAAgC,GAAG,OAAO,CAAC,iCAAiC,CAAC;QAC/G,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;QAC3C,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,GAAG,QAAQ;QAC/D,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;QACzC,uBAAuB,CAAC,OAAO,EAAE,UAAU,GAAG,YAAY;QAC1D,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;QACzD,0EAA0E;QACnE,yCAAyC,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,GAAG,aAAa;QACtG,qCAAqC,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa;QACzE,MAAM,CAAC,GAAG,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,aAAa,CAAA;SAAE,GAAG,IAAI;QAC/D,OAAO,IAAI,IAAI;QACf,aAAa,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI;QACpC,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI;QACxD,0EAA0E;QACnE,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;QAEhD,iBAAiB,IAAI,MAAM,GAAG,SAAS,GAAG,UAAU;QACpD,2BAA2B,IAAI,IAAI;QACnC,wBAAwB,IAAI,IAAI;QAChC,mBAAmB,IAAI,WAAW,GAAG,SAAS;QAC9C,uBAAuB,IAAI,IAAI;QAC/B,oBAAoB,IAAI,WAAW,EAAE;QACrC,kBAAkB,IAAI,IAAI;QAC1B,4BAA4B,CAAC,sBAAsB,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE;QAC7E,YAAY,CAAC,IAAI,EAAE;YAAE,YAAY,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,cAAc,CAAC,EAAE,IAAI,CAAA;SAAC,GAAG,GAAG;QAC9G,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;QAC5C,gCAAgC;QACzB,kBAAkB,CAAC,mBAAmB,EAAE,OAAO,GAAG,MAAM;QACxD,uBAAuB,IAAI,OAAO;QAClC,mBAAmB,IAAI,IAAI;QAC3B,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS;QAClD,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,IAAI;QAC7C,UAAU,IAAI,QAAQ,GAAG,UAAU;QAC1C,gCAAgC;eAClB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ;eAC5C,YAAY,IAAI,MAAM;QACpC,0EAA0E;eAC5D,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;QACxD,0EAA0E;eAC5D,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU;eAChE,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC,GAAG,MAAM;KAC1I;IAED,yCAAyC;IACzC,MAAM,WAAW;;eAED,8BAA8B,CAAC,KAAK,EAAE,kCAAkC,GAAG,mCAAmC;eAC9G,YAAY,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,OAAO,CAAC;YAAC,SAAS,EAAE,YAAY,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;eACpL,qBAAqB,IAAI,MAAM,EAAE;KAChD;IAED;;;OAGG;IACH,MAAM,aAAa;;QAEjB,0EAA0E;eAC5D,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,aAAa,CAAC,EAAE,kBAAkB,GAAG,MAAM,EAAE;eAC3F,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,aAAa,CAAC,EAAE,kBAAkB,GAAG,MAAM,EAAE;KAC1G;IAED,MAAM,IAAK,YAAW,uBAAuB;;QAEpC,cAAc,IAAI,QAAQ;QAC1B,OAAO,IAAI,IAAI;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;QAClC,OAAO,IAAI,IAAI;QACf,WAAW,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,IAAI;QAC5D,0EAA0E;QACnE,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;QACvD,0EAA0E;QACnE,uBAAuB,IAAI,MAAM;QACjC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI;QAC/F,mHAAmH;QAC5G,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;QACxD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,IAAI;QAC9E,qGAAqG;QAC9F,wBAAwB,IAAI,IAAI;QAChC,iBAAiB,IAAI,OAAO;QACnC,0EAA0E;QACnE,wBAAwB,IAAI,iBAAiB,GAAG,SAAS;QAChE,0EAA0E;QACnE,uBAAuB,IAAI,gBAAgB,GAAG,SAAS;QACvD,WAAW,IAAI,MAAM;QACrB,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,wBAAwB;QAC1E,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAC7E,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU;QAC1E,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO;QACvE,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO;QACtE,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;QACzC,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,QAAQ;QAC9C,MAAM,IAAI,OAAO;QACjB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,QAAQ;QAC3E,WAAW,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ;QAC7C,YAAY,IAAI,MAAM;QACtB,kBAAkB,IAAI,MAAM;QACnC,gCAAgC;eAClB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ;QACnD,sBAAsB,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,CAAC,UAAU,GAAG,IAAI;QACxF,0BAA0B,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW;QAC7D,uBAAuB,IAAI,IAAI;QAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;QAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;QAC7B,cAAc,IAAI,IAAI;KAC9B;IAED,MAAM,mBAAmB;;QAEhB,OAAO,IAAI,IAAI;QACf,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ;QAC7C,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,QAAQ;QAC3E,MAAM,IAAI,OAAO;QACjB,OAAO,IAAI,IAAI;QACf,iBAAiB,CAAC,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,OAAO,GAAG,QAAQ;QACjP,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,uBAAuB,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,OAAO,GAAG,QAAQ;QACjX,kBAAkB,CAAC,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,GAAG,CAAC;QAC5G,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;QACzC,WAAW,IAAI,IAAI;KAC3B;IAED,MAAM,cAAc;;QAEX,aAAa,IAAI,QAAQ;QACzB,OAAO,IAAI,IAAI;QACf,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,WAAW;QAC9C,cAAc,IAAI,MAAM;QACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU;QACzC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,qBAAqB,CAAC,QAAQ,CAAC;QACzF,KAAK,IAAI,QAAQ;QACjB,IAAI,IAAI,QAAQ;QAChB,SAAS,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,IAAI,GAAG,IAAI;QACrD,aAAa,IAAI;YAAE,MAAM,EAAE,QAAQ,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE;QACxD,gCAAgC;QACzB,kBAAkB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE;YAAE,MAAM,EAAE,QAAQ,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,KAAK,IAAI,GAAG,IAAI;QACtF,YAAY,IAAI,MAAM;QACtB,KAAK,CAAC,GAAG,EAAE,sBAAsB,GAAG,GAAG;QACvC,WAAW,CAAC,GAAG,CAAC,EAAE,sBAAsB,GAAG,GAAG;QAC9C,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC;KAChE;IAED,MAAM,WAAW;;QAER,eAAe,IAAI,WAAW;QAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,iBAAiB,GAAG,QAAQ;QACvF,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,QAAQ;QACnC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ;QACzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;QACjC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,QAAQ;QACvC,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ;QACpC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,QAAQ;QAC5C,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;QAC3C,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW;QAC3C,cAAc,CAAC,WAAW,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,QAAQ;QACrG,QAAQ,IAAI,QAAQ;QACpB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ;QAC3C,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,QAAQ;QACtD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;KACzC;IAED,MAAM,eAAe;;QAEZ,eAAe,IAAI,MAAM;QACzB,eAAe,IAAI,MAAM;QACzB,qBAAqB,IAAI,MAAM,GAAG,SAAS;QAClD,yGAAyG;QAClG,iBAAiB,IAAI,MAAM;QAClC,yGAAyG;QAClG,gBAAgB,IAAI,MAAM;QACjC,yGAAyG;QAClG,sBAAsB,IAAI,MAAM;QAChC,OAAO,IAAI,MAAM;QACjB,MAAM,IAAI,OAAO;QACjB,mBAAmB,IAAI,OAAO;QAC9B,gBAAgB,IAAI,OAAO;QAC3B,aAAa,IAAI,OAAO;KAChC;IAED,MAAM,UAAU;;QAEP,gBAAgB,IAAI,kBAAkB;QACtC,OAAO,IAAI,UAAU;QACrB,UAAU,IAAI,OAAO;QACrB,sBAAsB,IAAI,MAAM;QAChC,aAAa,IAAI,eAAe;QAChC,WAAW,IAAI,MAAM;QACrB,SAAS,IAAI,MAAM;QACnB,OAAO,IAAI,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC,GAAG,SAAS;QACnG,WAAW,IAAI,MAAM;QACrB,OAAO,IAAI,UAAU;QACrB,KAAK,IAAI,UAAU;QACnB,MAAM,IAAI,MAAM;QAChB,QAAQ,IAAI,MAAM;QAClB,aAAa,IAAI;YAAE,EAAE,EAAE,UAAU,CAAC;YAAC,YAAY,CAAC,EAAE,MAAM,CAAA;SAAE;QAC1D,UAAU,IAAI;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE;QACtC,UAAU,IAAI;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE;QACjD,SAAS,IAAI,MAAM;QACnB,iBAAiB,IAAI,kBAAkB;QACvC,MAAM,IAAI,OAAO;KACzB;IAED,MAAM,kBAAkB;;QAEf,UAAU,IAAI,UAAU;QACxB,QAAQ,IAAI,OAAO;KAC3B;IAED;;MAEE;IACF,WAAW,cAAc;QACvB,4GAA4G;QAC5G,IAAI,IAAI;QACR,4FAA4F;QAC5F,QAAQ,IAAI;QACZ,yEAAyE;QACzE,SAAS,IAAI;QACb,yEAAyE;QACzE,SAAS,IAAI;KACd;IAED,8DAA8D;IAC9D,UAAU,0BAA0B;QAClC,6DAA6D;QAC7D,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,sEAAsE;QACtE,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,oFAAoF;QACpF,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB;;UAEE;QACF,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,2FAA2F;QAC3F,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB;IAED,kDAAkD;IAClD,UAAU,kBAAmB,SAAQ,0BAA0B;QAC7D,gEAAgE;QAChE,QAAQ,EAAE,QAAQ,CAAC;KACpB;IAED,uCAAuC;IACvC,UAAU,QAAQ;QAChB,8DAA8D;QAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAED,6CAA6C;IAC7C,KAAK,oBAAoB,GAAG,0BAA0B,GAAG,QAAQ,CAAC;IAElE,MAAM,QAAS,YAAW,SAAS;;QAEjC,SAAgB,cAAc,CAAC,EAAE,cAAc,CAAC;QACzC,cAAc,IAAI,IAAI;QAC7B;;;;;;;WAOG;QACI,cAAc,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;QAClD,OAAO,IAAI,IAAI;QACtB;;;;;;WAMG;QACI,eAAe,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;QACnD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI;QACzF,OAAO,IAAI,IAAI;QACf,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI;QAClC,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;QACnG,oFAAoF;QAC7E,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;QAC7B,mBAAmB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;QACjD,WAAW,IAAI,MAAM;QACrB,YAAY,IAAI,MAAM;QACtB,kBAAkB,IAAI,MAAM;QAC5B,MAAM,IAAI,OAAO;QACjB,UAAU,IAAI,OAAO;QACrB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,kBAAkB,EAAE,SAAS,CAAC,EAAE,cAAc,GAAG,IAAI;QAC7F,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;QAC3D,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS;QACjG,8BAA8B,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM;QAChE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;QACtC,mBAAmB,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI;QAC5C,iBAAiB,IAAI,IAAI;QACzB,WAAW,IAAI,IAAI;QACnB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;QAC3G,yGAAyG;QAClG,mBAAmB,IAAI,IAAI;QAC3B,MAAM,CAAC,GAAG,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,aAAa,CAAA;SAAE,GAAG,IAAI;QAC/D,OAAO,IAAI,IAAI;QACf,aAAa,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI;QACpC,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI;QACxD,0EAA0E;QACnE,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;KACxD;IAED,MAAM,eAAe;;QAEZ,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,WAAW,GAAG,iBAAiB,GAAG,QAAQ;QAC7F,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;QACzD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,QAAQ;QAC/D,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,QAAQ;QAC5D,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;QACnE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ;QAC1C,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;QACzD,aAAa,IAAI,QAAQ;QACzB,OAAO,IAAI,IAAI;QACf,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;QAC3C,cAAc,IAAI,MAAM;QACxB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;QAC1C,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;QAC1C,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU;QAC7C,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;QAC3C,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU;QAC7C,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU;QAC3C,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;QAC5C,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;QAC3C,UAAU,IAAI,OAAO;QACrB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;QACzC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI;QAC1D,KAAK,IAAI,QAAQ;QACjB,IAAI,IAAI,QAAQ;QAChB,SAAS,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,IAAI,GAAG,IAAI;KAC7D;IAED,+BAA+B;IAC/B,MAAM,MAAM;;QAEV;;UAEE;QACK,KAAK,IAAI,IAAI;QACpB;;WAEG;QACI,WAAW,IAAI,MAAM;QAC5B,mGAAmG;QAC5F,OAAO,IAAI,OAAO;QACzB,0DAA0D;QACnD,IAAI;QACT,gCAAgC;QAChC,EAAE,EAAE,KAAK,EACT,IAAI,EAAE;YACJ,wCAAwC;YACxC,SAAS,EAAE,MAAM,CAAC;YAClB,0CAA0C;YAC1C,UAAU,EAAE,MAAM,CAAC;YACnB,4BAA4B;YAC5B,GAAG,EAAE,MAAM,CAAC;YACZ,iDAAiD;YACjD,SAAS,CAAC,EAAE,OAAO,CAAC;SACrB,GAAG,IAAI;QACV;;WAEG;QACI,IAAI,CAAC,IAAI,EAAE;YAChB,kCAAkC;YAClC,QAAQ,EAAE,MAAM,CAAC;YACjB,8CAA8C;YAC9C,MAAM,EAAE,MAAM,CAAC;YACf,6EAA6E;YAC7E,IAAI,CAAC,EAAE,WAAW,CAAC;SACpB,GAAG,UAAU;QACd;;;WAGG;QACI,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;QACnC,sBAAsB;QACf,KAAK,CAAC,IAAI,EAAE;YACjB,oCAAoC;YACpC,QAAQ,EAAE,MAAM,CAAC;YACjB,+CAA+C;YAC/C,MAAM,EAAE,MAAM,CAAC;YACf,yBAAyB;YACzB,IAAI,EAAE,WAAW,CAAC;SACnB,GAAG,IAAI;KACT;IAED,2DAA2D;IAC3D,UAAU,uBAAuB;QAC/B,sDAAsD;QACtD,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,yEAAyE;QACzE,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,iDAAiD;QACjD,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B;IAED,UAAU,qBAAqB;QAC7B,0GAA0G;QAC1G,oBAAoB,CAAC,EAAE,OAAO,CAAC;KAChC;IAED;;;;;;OAMG;IACH,MAAM,UAAU;QACd,0CAA0C;oBACvB,KAAK,EAAE,iBAAiB,CAAC,UAAU;QACtD,iEAAiE;QACjE,IAAW,QAAQ,IAAI,OAAO,CAAC;QAC/B,oCAAoC;QACpC,IAAW,IAAI,IAAI,MAAM,CAAC;QAC1B,8DAA8D;QAC9D,IAAW,OAAO,IAAI,YAAY,CAAC;QACnC,mEAAmE;QACnE,IAAW,IAAI,IAAI,UAAU,CAAC;QACvB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;QACrC,yFAAyF;QAClF,OAAO,IAAI,IAAI;KACvB;IAED,qEAAqE;IACrE,MAAM,cAAc;QAClB,yGAAyG;QAClG,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QACnE,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,CAAC;QAClD,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;QAC3E,yGAAyG;QAClG,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;QAE7E,SAAgB,KAAK,CAAC,EAAE,UAAU,CAAC;QACnC,2GAA2G;oBACxF,KAAK,EAAE,iBAAiB,CAAC,oBAAoB;QAChE,oCAAoC;QACpC,IAAW,OAAO,IAAI,MAAM,CAAC;QAC7B,wCAAwC;QACxC,IAAW,WAAW,IAAI,MAAM,CAAC;QACjC,uBAAuB;QACvB,IAAW,WAAW,IAAI,MAAM,CAAC;QACjC,iGAAiG;QACjG,IAAW,KAAK,IAAI,MAAM,CAAC;QAC3B,iBAAiB;QACjB,IAAW,KAAK,IAAI,MAAM,CAAC;QAC3B;;WAEG;QACH,IAAW,gBAAgB,IAAI,MAAM,CAAC;QACtC,mGAAmG;QACnG,IAAW,WAAW,IAAI,OAAO,CAAC;QAClC,uHAAuH;QACvH,IAAW,WAAW,IAAI,OAAO,CAAC;QAClC,yEAAyE;QACzE,IAAW,QAAQ,IAAI,OAAO,CAAC;QAC/B,iGAAiG;QACjG,IAAW,YAAY,IAAI,OAAO,CAAC;QACnC,6GAA6G;QAC7G,IAAW,eAAe,IAAI,OAAO,CAAC;QACtC,sEAAsE;QACtE,IAAW,WAAW,IAAI,MAAM,CAAC;QACjC,IAAW,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE;QACpC,6EAA6E;QAC7E,IAAW,aAAa,IAAI,MAAM,CAAC;QACnC,8CAA8C;QAC9C,IAAW,SAAS,IAAI,MAAM,CAAC;QAE/B;;;WAGG;QACI,mBAAmB,CAAC,IAAI,EAAE;YAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI;QAE3F;;;;;;;;;;;;;;WAcG;QACI,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;QAE3C;;;;WAIG;QACI,gBAAgB,IAAI,IAAI;QAE/B;;;;WAIG;QACI,cAAc,IAAI,IAAI;QAE7B;;;;WAIG;QACI,cAAc,IAAI,IAAI;QAE7B;;;;;;WAMG;QACI,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;QAEvC;;WAEG;QACI,UAAU,CAAC,IAAI,CAAC,EAAE;YACvB,kJAAkJ;YAClJ,MAAM,CAAC,EAAE,OAAO,CAAC;SAClB,GAAG,IAAI;QAER;;;;WAIG;QACI,eAAe,IAAI,IAAI;QAE9B;;;;;WAKG;QACI,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;QAErC;;;;;WAKG;QACI,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;QAEnE;;WAEG;QACI,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;QAEpD;;WAEG;QACI,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;QAEjD;;;WAGG;QACI,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAAC,aAAa,GAAG,SAAS;QAEjF;;;;WAIG;QACI,YAAY,CAAC,aAAa,CAAC,EAAE,uBAAuB,GAAG,iBAAiB,CAAC,UAAU,EAAE;QAE5F;;;WAGG;QACI,aAAa,CAAC,aAAa,CAAC,EAAE,qBAAqB,GAAG,iBAAiB,CAAC,QAAQ;QAEvF;;;;;WAKG;QACI,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;KACjD;IAED;;;;OAIG;IACH,MAAM,yBAAyB;QAC7B;;;;WAIG;oBACS,SAAS,EAAE,iBAAiB,CAAC,iBAAiB,GAAG,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,iBAAiB,CAAC,eAAe,GAAG,iBAAiB,CAAC,yBAAyB;QAExL;;WAEG;QACI,cAAc,IAAI,IAAI;QAC7B;;WAEG;QACI,WAAW,IAAI;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;QAEvD;;;WAGG;QACI,mBAAmB,IAAI,IAAI;QAElC,oHAAoH;QAC7G,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;KAC/B;IAED,MAAM,aAAa;QACjB,SAAgB,cAAc,EAAE,cAAc,CAAC;QAC/C,SAAgB,MAAM,EAAE,MAAM,CAAC;QAE/B;;;;WAIG;oBACS,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,iBAAiB,CAAC,aAAa;QAE7F,qGAAqG;QAC9F,MAAM,IAAI,IAAI;QAErB;;;;;;WAMG;QACI,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;KAClC;IAED,WAAW,oBAAoB;QAC7B,OAAO,IAAI;QACX,QAAQ,IAAI;QACZ,OAAO,IAAI;QACX,KAAK,QAAU;QACf,eAAe,QAAY;QAC3B,iBAAiB,QAAY;KAC9B;IAED,UAAU,wCAAwC;QAChD,IAAI,EAAE,QAAQ,CAAC;KAChB;IAED,UAAU,sCAAsC;QAC9C,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B;IAED,UAAU,wCAAwC;QAChD,IAAI,EAAE,QAAQ,CAAC;QACf,IAAI,CAAC,EAAE,sCAAsC,CAAC;KAC/C;IAED,KAAK,kCAAkC,GAAG,wCAAwC,GAAG,sCAAsC,GAAG,wCAAwC,CAAC;IAEvK,KAAK,6BAA6B,CAAC,OAAO,IAAI,mBAAmB,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAG;QACjG,WAAW,CAAC,EAAE,GAAG,CAAC;KACnB,CAAC;IAEF,UAAU,0BAA0B;QAClC,EAAE,EAAE,MAAM,CAAC;QACX,kBAAkB,EAAE;YAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAC;QACnD,cAAc,EAAE;YACd,CAAC,UAAU,EAAE,MAAM,GAAG,KAAK,CAAC;gBAC1B,WAAW,EAAE,MAAM,EAAE,CAAC;gBACtB,gBAAgB,EAAE,MAAM,CAAC;aAC1B,CAAC,CAAC;SACJ,CAAC;QACF,cAAc,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;QAC1C,WAAW,EAAE,kCAAkC,CAAC;QAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;QACnC,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;KAC5B;IAED,MAAM,qBAAqB;oBACb,KAAK,EAAE,0BAA0B;QACtC,gBAAgB,CAAC,EAAE,EAAE,KAAK,GAAG,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;QACzE,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,6BAA6B,CAAC,IAAI,CAAC;QACnF,mCAAmC,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,6BAA6B,CAAC,IAAI,CAAC;QAC/F,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,6BAA6B,CAAC,IAAI,CAAC;QAC7H,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,6BAA6B,CAAC,IAAI,CAAC;QACrG,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,6BAA6B,CAAC,GAAG,CAAC;QAChH,2BAA2B,CAAC,iBAAiB,EAAE,MAAM,GAAG,6BAA6B,CAAC,MAAM,CAAC;QAC7F,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,6BAA6B,CAAC,MAAM,CAAC;QACrE,UAAU,CAAC,iBAAiB,EAAE,MAAM,GAAG,6BAA6B,CAAC,MAAM,CAAC;QAC5E,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,6BAA6B,CAAC,OAAO,CAAC;QACtF,aAAa,IAAI,6BAA6B,CAAC,IAAI,CAAC;QACpD,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG;YAAE,MAAM,EAAE,OAAO,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC;YAAC,MAAM,EAAE,MAAM,IAAI,CAAA;SAAE;QACzH,OAAO,IAAI,IAAI;KACvB;IAED,UAAU,kBAAkB,CAAC;QAC3B,UAAU,SAAS;YACjB,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,YAAY,EAAE,MAAM,CAAC;YACrB,YAAY,EAAE,MAAM,CAAC;SACtB;QAED,WAAW,eAAe;YACxB,SAAS,IAAI,CAAgB,2EAA2E;YACxG,KAAK,IAAI,CAAoB,4DAA4D;YACzF,qBAAqB,IAAI,CAAI,iEAAiE;YAC9F,MAAM,IAAI,CAAmB,uBAAuB;YACpD,oBAAoB,IAAI;SACzB;QAED,KAAK,qBAAqB,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,KAAK,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;KACxG;IAED,MAAM,kBAAkB;;QAEf,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;QACvC,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,CAAC,qBAAqB,GAAG,IAAI;QACzE,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,CAAC,qBAAqB,GAAG,IAAI;QAC9E,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CAAC,aAAa,EAAE,MAAM,CAAC;KAC3F;IAED,MAAM,WAAW;;QAER,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;QACxE,UAAU,IAAI,IAAI;KAC1B;IAED,UAAU,2BAA2B;QACnC,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf;IAED,UAAU,4BAA4B;QACpC,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,2BAA2B,EAAE,CAAC;KACjD;IAED,MAAM,qBAAqB;QAClB,KAAK,IAAI,IAAI;QACb,cAAc,IAAI,MAAM;QACxB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;QAC3F,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;QACxE,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;QACpE,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;QAChE,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;QACrE,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;QAClE,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;QAClE,aAAa,IAAI,MAAM,GAAG,SAAS;QACnC,SAAS,IAAI,QAAQ;QACrB,cAAc,IAAI,CAAC,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;QACrE,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE;QAC1E,YAAY,IAAI,MAAM;QACtB,MAAM,IAAI,OAAO;QACjB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;QAClE,gBAAgB,IAAI,OAAO;QAC3B,0BAA0B,IAAI,MAAM,EAAE;QACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;QACjD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;QACjE,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;QACnF,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;QACrD,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;QAC5D,KAAK,IAAI,IAAI;QACb,IAAI,IAAI,OAAO;QACf,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,GAAG,IAAI;KAClG;IAED,UAAU,iBAAiB;QACzB,IAAI,EAAE,GAAG,CAAC;QACV,GAAG,EAAE,MAAM,CAAC;QACZ,sBAAsB,EAAE,MAAM,EAAE,CAAA;KACjC;IAED,UAAU,oBAAoB;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,QAAQ,CAAC;QACjB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,SAAS,EAAE,OAAO,CAAC;KACpB;IACD,UAAU,gBAAgB;QACxB,QAAQ,EAAE,oBAAoB,CAAC;QAC/B,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAC;QACzC,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAC;KAC1C;IAED,MAAM,eAAe;;QAEZ,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;QAClF,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,IAAI;QACnH,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,IAAI;QACpI,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,IAAI;QACtG,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,IAAI;QAC7G,KAAK,IAAI,IAAI;QACb,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,sBAAsB,GAAG,gBAAgB,EAAE;QAC/E,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;QAC/C,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI;QACrC,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;QAC/C,qBAAqB,IAAI,IAAI;QAC7B,kBAAkB,IAAI,IAAI;QAC1B,qBAAqB,IAAI,IAAI;QAC7B,gBAAgB,IAAI,IAAI;QACxB,iBAAiB,IAAI,IAAI;KACjC;IAED,MAAM,uBAAuB;;QAEpB,OAAO,IAAI,IAAI;KACvB;IAED,MAAM,aAAa;oBACL,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK;QACrC,OAAO,IAAI,IAAI;QACf,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa;QAC3C,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,aAAa;QACjF,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,aAAa;QACxE,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,aAAa;QACvE,eAAe,CAAC,QAAQ,EAAE,UAAU,GAAG,aAAa;QACpD,cAAc,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU;QAChD,aAAa,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU;QAC/C,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,mBAAmB,GAAG,YAAY;QACpF,cAAc,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU;QAChD,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;QACpC,oBAAoB,IAAI,OAAO;QAC/B,qBAAqB,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO;QACpD,mBAAmB,CAAC,QAAQ,EAAE,UAAU,GAAG,aAAa;QACxD,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI;QACjC,eAAe,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI;KAC3C;IAED,UAAU,mBAAmB;QAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B;IAED,UAAU,uBAAuB;QAC/B,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;QACtB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;QACtB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;KACvB;IAED,gGAAgG;IAChG,UAAU,uBAAuB;QAC/B,QAAQ,CAAC,EAAE,uBAAuB,CAAC;QACnC,KAAK,CAAC,EAAE,uBAAuB,CAAC;QAChC,OAAO,CAAC,EAAE,uBAAuB,CAAC;QAClC,MAAM,CAAC,EAAE,uBAAuB,CAAC;QACjC,YAAY,CAAC,EAAE,uBAAuB,CAAC;QACvC,IAAI,CAAC,EAAE,uBAAuB,CAAC;KAChC;IAED;;;OAGG;IACH,MAAM,cAAc;eACJ,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;QACjD,0EAA0E;eAC5D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,EAAE,MAAM,EAAE,MAAM,IAAI,GAAG,IAAI;KACjI;IAED;;OAEG;IACH,MAAM,gBAAgB;QACpB;;;;;;WAMG;eACW,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;QAErD;;;;;UAKE;eACY,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;KAC/D;IAED,WAAW,eAAe;QACxB,SAAS,IAAI;QACb,MAAM,IAAI;QACV,OAAO,IAAI;QACX,OAAO,IAAI;QACX,EAAE,IAAI;QACN,KAAK,IAAI;QACT,OAAO,IAAI;KACZ;IAED,MAAM,UAAU;oBACK,EAAE,EAAE,KAAK;QAErB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;QACtB,MAAM,IAAI,IAAI;QACd,QAAQ,IAAI,IAAI;QAChB,QAAQ,IAAI,IAAI;QAChB,UAAU,IAAI,OAAO;QACrB,WAAW,IAAI,OAAO;QACtB,QAAQ,IAAI,eAAe;KACnC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"NativeLibrary.js","sourceRoot":"","sources":["../src/NativeLibrary.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;;;AAE/F,8BAA8B;AAC9B,kCAAkC;AAwBlC,yDAAyD;AACzD,yCAAyC;AACzC,sCAAsC;AAEtC,8KAA8K;AAE9K;;;GAGG;AACH,IAAY,wBAIX;AAJD,WAAY,wBAAwB;IAClC,6EAAW,CAAA;IACX,2FAAkB,CAAA;IAClB,2FAAkB,CAAA;AACpB,CAAC,EAJW,wBAAwB,wCAAxB,wBAAwB,QAInC;AAYD;;GAEG;AACU,QAAA,oBAAoB,GAAG;IAClC,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,eAAe,EAAE,iBAAiB;IAClC,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;CAClB,CAAC;AAYX,kDAAkD;AAClD,MAAa,aAAa;IACjB,MAAM,KAAK,QAAQ;QACxB,mDAAmD;QACnD,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;YAChG,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,OAAO,YAAY,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IACxD,CAAC;IACM,MAAM,KAAK,aAAa,KAAK,OAAO,eAAe,CAAC,CAAC,CAAC;IACtD,MAAM,KAAK,eAAe;QAC/B,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAA6B,CAAC,CAAC,eAAe;QAC1E,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YAChD,KAAK,QAAQ,CAAC;YACd,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;YACjD,KAAK,OAAO,CAAC;YACb,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACtC;gBACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,4FAA4F;IACrF,MAAM,KAAK,UAAU;QAC1B,IAAI,CAAC;YACH,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEM,MAAM,KAAK,eAAe,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3F,MAAM,CAAC,UAAU,CAAyB;IAC3C,MAAM,KAAK,SAAS,KAAK,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI;QAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAA6B,CAAC,CAAC,eAAe;gBAC1E,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBACjD,IAAI,CAAC,UAAU,GAAI,OAAe,CAAC,cAAc,CAAC,gBAAgB,CAA0B,CAAC;gBAC/F,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,UAAU;wBACb,OAAO,CAAC,KAAK,aAAa,CAAC,QAAQ,IAAI,aAAa,CAAC,aAAa,EAAE,CAA0B,CAAC,CAAC,4DAA4D;gBAChK,CAAC;YACH,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,GAAG,CAAC,OAAO,IAAI,uEAAuE;sBAClF,oFAAoF;sBACpF,8EAA8E,CAAC;gBACnF,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,IAAI,CAAC,UAAU;gBACjB,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,wBAAwB,SAAS,IAAI,EAAE,SAAS,CAAC,CAAC;QAC9E,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AA5DD,sCA4DC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport * as os from \"node:os\";\r\nimport * as path from \"node:path\";\r\n\r\nimport type { NativeCloudSqlite } from \"./NativeCloudSqlite\";\r\n\r\n/**\r\n * @note This package may only have **dev** dependencies on @itwin packages, so they are *not* available at runtime. Therefore we can only import **types** from them.\r\n * @note You cannot use mapped types @href https://www.typescriptlang.org/docs/handbook/2/mapped-types.html from itwin imports here due to how they are resolved downstream\r\n */\r\n\r\nimport type {\r\n BentleyStatus, DbOpcode, DbResult, GuidString, Id64Array, Id64String, IDisposable, IModelStatus, LogLevel, OpenMode\r\n} from \"@itwin/core-bentley\";\r\nimport type {\r\n ChangesetIndexAndId, CodeProps, CodeSpecProperties, CreateEmptyStandaloneIModelProps, DbRequest, DbResponse, ElementAspectProps,\r\n ElementGeometryBuilderParams,\r\n ElementGeometryBuilderParamsForPart,\r\n ElementGraphicsRequestProps, ElementLoadOptions, ElementLoadProps, ElementMeshRequestProps, ElementProps,\r\n FilePropertyProps, FontId, FontProps, GeoCoordinatesRequestProps, GeoCoordinatesResponseProps, GeographicCRSInterpretRequestProps,\r\n GeographicCRSInterpretResponseProps, GeometryContainmentResponseProps, GeometryStreamProps, ImageBuffer, ImageBufferFormat, ImageSourceFormat, IModelCoordinatesRequestProps,\r\n IModelCoordinatesResponseProps, IModelProps, LocalDirName, LocalFileName, MassPropertiesResponseProps, ModelLoadProps,\r\n ModelProps, PlacementProps, QueryQuota, RelationshipProps, SnapshotOpenOptions, TextureData, TextureLoadProps, TileVersionInfo, UpgradeOptions\r\n} from \"@itwin/core-common\";\r\nimport type { LowAndHighXYZProps, Range2dProps, Range3dProps } from \"@itwin/core-geometry\";\r\n\r\n/* eslint-disable @typescript-eslint/naming-convention */\r\n/* eslint-disable no-restricted-syntax */\r\n/* eslint-disable @itwin/prefer-get */\r\n\r\n// cspell:ignore blocksize cachesize polltime bentleyjs imodeljs ecsql pollable polyface txns lzma uncompress changesets ruleset ulas oidc keychain libsecret rulesets struct\r\n\r\n/**\r\n * Status codes returned by the native bulk-delete operation.\r\n * @internal\r\n */\r\nexport enum BulkDeleteElementsStatus {\r\n Success = 0,\r\n PartialSuccess = 1,\r\n DeletionFailed = 2,\r\n}\r\n\r\n/**\r\n * Result of the bulk element deletion operation.\r\n * @internal\r\n */\r\nexport interface BulkDeleteElementsResult {\r\n status: BulkDeleteElementsStatus;\r\n sqlDeleteStatus: DbResult;\r\n failedIds: Id64Array;\r\n}\r\n\r\n/** Logger categories used by the native addon\r\n * @internal\r\n */\r\nexport const NativeLoggerCategory = {\r\n BeSQLite: \"BeSQLite\",\r\n BRepCore: \"BRepCore\",\r\n Changeset: \"Changeset\",\r\n CloudSqlite: \"CloudSqlite\",\r\n DgnCore: \"DgnCore\",\r\n ECDb: \"ECDb\",\r\n ECObjectsNative: \"ECObjectsNative\",\r\n SQLite: \"SQLite\",\r\n UnitsNative: \"UnitsNative\",\r\n} as const;\r\n\r\n/** @internal */\r\nexport interface NativeLogger {\r\n readonly minLevel: LogLevel | undefined;\r\n readonly categoryFilter: Readonly<{ [categoryName: string]: LogLevel | undefined }>;\r\n logTrace: (category: string, message: string) => void;\r\n logInfo: (category: string, message: string) => void;\r\n logWarning: (category: string, message: string) => void;\r\n logError: (category: string, message: string) => void;\r\n}\r\n\r\n/** Find and load the native node-addon library */\r\nexport class NativeLibrary {\r\n public static get archName() {\r\n // We make sure we are running in a known platform.\r\n if (typeof process === \"undefined\" || process.platform === undefined || process.arch === undefined)\r\n throw new Error(\"Error - unknown process\");\r\n return `imodeljs-${process.platform}-${process.arch}`;\r\n }\r\n public static get nodeAddonName() { return \"imodeljs.node\"; }\r\n public static get defaultLocalDir(): string {\r\n const homedir = os.homedir();\r\n const platform = os.platform() as NodeJS.Platform | \"ios\"; // we add \"ios\"\r\n switch (platform) {\r\n case \"win32\":\r\n return path.join(homedir, \"AppData\", \"Local\");\r\n case \"darwin\":\r\n case \"ios\":\r\n return path.join(homedir, \"Library\", \"Caches\");\r\n case \"linux\":\r\n case \"android\":\r\n return path.join(homedir, \".cache\");\r\n default:\r\n throw new Error(\"Error - unknown platform\");\r\n }\r\n }\r\n\r\n // This returns true if you used `linkNativePlatform.bat` to install your local addon build.\r\n public static get isDevBuild(): boolean {\r\n try {\r\n require.resolve(\"./devbuild.json\");\r\n return true;\r\n } catch {\r\n return false;\r\n }\r\n }\r\n\r\n public static get defaultCacheDir(): string { return path.join(this.defaultLocalDir, \"iModelJs\"); }\r\n private static _nativeLib?: typeof IModelJsNative;\r\n public static get nativeLib() { return this.load(); }\r\n public static load() {\r\n if (!this._nativeLib) {\r\n try {\r\n const platform = os.platform() as NodeJS.Platform | \"ios\"; // we add \"ios\"\r\n if (platform === \"ios\" || platform === \"android\") {\r\n this._nativeLib = (process as any)._linkedBinding(\"iModelJsNative\") as typeof IModelJsNative;\r\n } else {\r\n this._nativeLib =\r\n require(`./${NativeLibrary.archName}/${NativeLibrary.nodeAddonName}`) as typeof IModelJsNative; // eslint-disable-line @typescript-eslint/no-require-imports\r\n }\r\n } catch (err: any) {\r\n err.message += \"\\nThis error may occur when trying to run an iTwin.js backend without\"\r\n + \" having installed the prerequisites. See the following link for all prerequisites:\"\r\n + \"\\nhttps://www.itwinjs.org/learning/supportedplatforms/#backend-prerequisites\";\r\n throw err;\r\n }\r\n if (this.isDevBuild)\r\n // eslint-disable-next-line no-console\r\n console.log(\"\\x1b[36m\", `using dev build from ${__dirname}\\n`, \"\\x1b[0m\");\r\n }\r\n return this._nativeLib;\r\n }\r\n}\r\n\r\n/** WAL checkpoint mode\r\n * @internal\r\n */\r\nexport const enum WalCheckpointMode {\r\n Passive = 0, /* Do as much as possible w/o blocking */\r\n Full = 1, /* Wait for writers, then checkpoint */\r\n Restart = 2, /* Like FULL but wait for for readers */\r\n Truncate = 3, /* Like RESTART but also truncate WAL */\r\n}\r\n\r\n/** Possible outcomes of generateElementGraphics.\r\n* Must be kept in sync with Dgn::Tile::Graphics::TileGraphicsStatus.\r\n* @internal\r\n*/\r\nexport const enum ElementGraphicsStatus {\r\n Success = 0, // Non-null content as Uint8Array.\r\n Canceled = 1, // e.g., front-end explicitly canceled, iModel was closed while processing request, etc.\r\n NoGeometry = 2, // Not an error per se\r\n InvalidJson = 3,\r\n UnknownMajorFormatVersion = 4,\r\n ElementNotFound = 5,\r\n DuplicateRequestId = 6,\r\n}\r\n\r\n/** Possible outcomes of exportSchema[s] (and generally writing schemas)\r\n* Must be kept in sync with ECN::SchemaWriteStatus\r\n* @internal\r\n*/\r\nexport const enum SchemaWriteStatus {\r\n Success = 0,\r\n FailedToSaveXml = 1,\r\n FailedToCreateXml = 2,\r\n FailedToCreateJson = 3,\r\n FailedToWriteFile = 4,\r\n}\r\n\r\n/** Module that declares the IModelJs native code.\r\n * @internal\r\n */\r\nexport declare namespace IModelJsNative {\r\n interface NameValuePair {\r\n name: string;\r\n value: string;\r\n }\r\n\r\n /** any type of Db that supports EC */\r\n type AnyECDb = DgnDb | ECDb;\r\n /** any type of Db */\r\n type AnyDb = AnyECDb | SQLiteDb;\r\n\r\n /** A string that identifies a Txn. */\r\n type TxnIdString = string;\r\n\r\n interface NativeCrashReportingConfig {\r\n /** The directory to which *.dmp and/or iModelJsNativeCrash*.properties.txt files are written. */\r\n crashDir: string;\r\n /** Write .dmp files to crashDir? The default is false. Even if writeDumpsToCrashDir is false, the iModelJsNativeCrash*.properties.txt file will be written to crashDir. */\r\n enableCrashDumps?: boolean;\r\n /** max # .dmp files that may exist in crashDir */\r\n maxDumpsInDir?: number;\r\n /** If writeDumpsToCrashDir is true, do you want a full-memory dump? Defaults to false. */\r\n wantFullMemory?: boolean;\r\n /** Additional name, value pairs to add as meta data to a crash report. */\r\n params?: NameValuePair[];\r\n }\r\n\r\n let logger: NativeLogger;\r\n function setMaxTileCacheSize(maxBytes: number): void;\r\n function getTileVersionInfo(): TileVersionInfo;\r\n function setCrashReporting(cfg: NativeCrashReportingConfig): void;\r\n function setCrashReportProperty(name: string, value: string | undefined): void;\r\n function getCrashReportProperties(): NameValuePair[];\r\n function clearLogLevelCache(): void;\r\n function addFontWorkspace(fileName: LocalFileName, container?: CloudContainer): boolean;\r\n function addGcsWorkspaceDb(dbNames: string, container?: CloudContainer, priority?: number): boolean;\r\n function enableLocalGcsFiles(yesNo: boolean): void;\r\n /** Enable or disable the monotone-clock SQLite VFS shim. When enabled, every call\r\n * to SQLite's time functions returns a strictly increasing value, preventing test\r\n * failures caused by the millisecond-resolution system clock returning identical\r\n * timestamps for rapid successive operations. Call with `false` to restore the\r\n * original default VFS. Must be called after the native library is initialized.\r\n */\r\n function enableMonotoneClock(enable: boolean): void;\r\n function queryConcurrency(pool: \"io\" | \"cpu\"): number;\r\n\r\n interface TrueTypeFontMetadata {\r\n faces: FontFaceProps[];\r\n embeddable: boolean;\r\n }\r\n\r\n function getTrueTypeFontMetadata(fileName: LocalFileName): TrueTypeFontMetadata;\r\n function isRscFontData(blob: Uint8Array): boolean;\r\n\r\n function imageBufferFromImageSource(\r\n sourceFormat: ImageSourceFormat.Png | ImageSourceFormat.Jpeg,\r\n sourceData: Uint8Array,\r\n targetFormat: ImageBufferFormat.Rgb | ImageBufferFormat.Rgba | 255,\r\n flipVertically: boolean\r\n ): Pick<ImageBuffer, \"data\" | \"format\" | \"width\"> | undefined;\r\n\r\n function imageSourceFromImageBuffer(\r\n imageFormat: ImageBufferFormat.Rgb | ImageBufferFormat.Rgba,\r\n imageData: Uint8Array,\r\n imageWidth: number,\r\n imageHeight: number,\r\n targetFormat: ImageSourceFormat.Png | ImageSourceFormat.Jpeg | 255,\r\n flipVertically: boolean,\r\n jpegQuality: number\r\n ): { format: ImageSourceFormat.Jpeg | ImageSourceFormat.Png, data: Uint8Array } | undefined;\r\n\r\n /** Get the SHA1 hash of a Schema XML file, possibly including its referenced Schemas */\r\n function computeSchemaChecksum(arg: {\r\n /** the full path to the root schema XML file */\r\n schemaXmlPath: string;\r\n /** A list of directories to find referenced schemas */\r\n referencePaths: string[];\r\n /** If true, the returned SHA1 includes the hash of all referenced schemas */\r\n exactMatch?: boolean;\r\n }): string;\r\n\r\n /** When you want to associate an explanatory message with an error status value. */\r\n interface StatusCodeWithMessage<ErrorCodeType> {\r\n status: ErrorCodeType;\r\n message: string;\r\n }\r\n\r\n /** The return type of synchronous functions that may return an error or a successful result. */\r\n type ErrorStatusOrResult<ErrorCodeType, ResultType> = {\r\n /** Error from the operation. This property is defined if and only if the operation failed. */\r\n error: StatusCodeWithMessage<ErrorCodeType>;\r\n result?: never;\r\n } | {\r\n error?: never;\r\n /** Result of the operation. This property is defined if the operation completed successfully */\r\n result: ResultType;\r\n };\r\n\r\n namespace ConcurrentQuery {\r\n /**\r\n * @internal\r\n */\r\n type OnResponse = (response: DbResponse) => void;\r\n /** Configuration for concurrent query manager\r\n * @internal\r\n */\r\n }\r\n interface IConcurrentQueryManager {\r\n concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;\r\n concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;\r\n concurrentQueryShutdown(): void;\r\n }\r\n\r\n /** Concurrent query config which should be set before making first call to concurrent query manager.\r\n * @internal\r\n */\r\n export interface QueryConfig {\r\n globalQuota?: QueryQuota;\r\n ignoreDelay?: boolean;\r\n ignorePriority?: boolean;\r\n requestQueueSize?: number;\r\n workerThreads?: number;\r\n }\r\n\r\n interface TileContent {\r\n content: Uint8Array;\r\n elapsedSeconds: number;\r\n }\r\n /** Represents the current state of a pollable tile content request.\r\n * Note: lack of a \"completed\" state because polling a completed request returns the content as a Uint8Array.\r\n * @internal\r\n */\r\n const enum TileContentState {\r\n New = 0, // Request was just created and enqueued.\r\n Pending = 1, // Request is enqueued but not yet being processed.\r\n Loading = 2, // Request is being actively processed.\r\n }\r\n\r\n /** Result of generateElementGraphics conveying graphics as Uint8Array.\r\n * @internal\r\n */\r\n export interface ElementGraphicsContent {\r\n status: ElementGraphicsStatus.Success;\r\n content: Uint8Array;\r\n }\r\n\r\n /** Result of generateElementGraphics that produced no graphics.\r\n * @internal\r\n */\r\n export interface ElementGraphicsError {\r\n status: Exclude<ElementGraphicsStatus, ElementGraphicsStatus.Success>;\r\n }\r\n\r\n /** The result of generateElementGraphics.\r\n * @note generateElementGraphics produces a Promise<ElementGraphicsResult>. It only ever rejects if some unforeseen error like \"iModel not open\" or \"type error\" occurs.\r\n * @internal\r\n */\r\n export type ElementGraphicsResult = ElementGraphicsContent | ElementGraphicsError;\r\n\r\n /** Instance key for a change\r\n * @internal\r\n */\r\n export interface ChangeInstanceKey {\r\n id: Id64String;\r\n classFullName: string;\r\n changeType: \"inserted\" | \"updated\" | \"deleted\";\r\n }\r\n\r\n /** Information returned by DgnDb.queryDefinitionElementUsage. */\r\n interface DefinitionElementUsageInfo {\r\n /** The subset of input Ids that are SpatialCategory definitions. */\r\n spatialCategoryIds?: Id64String[];\r\n /** The subset of input Ids that are DrawingCategory definitions. */\r\n drawingCategoryIds?: Id64String[];\r\n /** The subset of input Ids that are SubCategory definitions. */\r\n subCategoryIds?: Id64String[];\r\n /** The subset of input Ids that are CategorySelectors. */\r\n categorySelectorIds?: Id64String[];\r\n /** The subset of input Ids that are ModelSelectors. */\r\n modelSelectorIds?: Id64String[];\r\n /** The subset of input Ids that are DisplayStyles. */\r\n displayStyleIds?: Id64String[];\r\n /** The subset of input Ids that are ViewDefinitions. */\r\n viewDefinitionIds?: Id64String[];\r\n /** The subset of input Ids that are GeometryParts. */\r\n geometryPartIds?: Id64String[];\r\n /** The subset of input Ids that are RenderMaterials. */\r\n renderMaterialIds?: Id64String[];\r\n /** The subset of input Ids that are LineStyles. */\r\n lineStyleIds?: Id64String[];\r\n /** The subset of input Ids that are Textures. */\r\n textureIds?: Id64String[];\r\n /** Ids of *other* input DefinitionElements that were not checked for usage. */\r\n otherDefinitionElementIds?: Id64String[];\r\n /** Ids of input DefinitionElements where usage was detected. */\r\n usedIds?: Id64String[];\r\n }\r\n\r\n /**\r\n * Represents all of the valid EC Specification Versions.\r\n */\r\n const enum ECVersion {\r\n V2_0 = (0x02 << 16),\r\n V3_1 = (0x03 << 16 | 0x01),\r\n V3_2 = (0x03 << 16 | 0x02),\r\n Latest = V3_2,\r\n }\r\n\r\n interface ChangesetFileProps {\r\n index: number;\r\n id: string;\r\n parentId: string;\r\n changesType: number;\r\n description: string;\r\n briefcaseId: number;\r\n pushDate: string;\r\n userCreated: string;\r\n size?: number;\r\n pathname: string;\r\n }\r\n\r\n interface PerStatementHealthStats {\r\n sqlStatement: string;\r\n dbOperation: string;\r\n rowCount: number;\r\n elapsedMs: number;\r\n fullTableScans: number;\r\n }\r\n interface ChangesetHealthStats {\r\n changesetId: string;\r\n uncompressedSizeBytes: number;\r\n sha1ValidationTimeMs: number;\r\n insertedRows: number;\r\n updatedRows: number;\r\n deletedRows: number;\r\n totalElapsedMs: number;\r\n totalFullTableScans: number;\r\n perStatementStats: [PerStatementHealthStats];\r\n }\r\n interface ECSqlRowAdaptorOptions {\r\n abbreviateBlobs?: boolean;\r\n classIdsToClassNames?: boolean;\r\n useJsName?: boolean;\r\n doNotConvertClassIdsToClassNamesWhenAliased?: boolean; // backward compatibility\r\n }\r\n\r\n interface EmbeddedFileProps {\r\n name: string;\r\n localFileName: string;\r\n }\r\n\r\n interface EmbedFileArg extends EmbeddedFileProps {\r\n date: number;\r\n fileExt?: string;\r\n compress?: boolean;\r\n }\r\n\r\n interface EmbedFileQuery {\r\n size: number;\r\n date: number;\r\n fileExt: string;\r\n }\r\n\r\n interface FontEncodingProps {\r\n codePage?: number;\r\n degree?: number;\r\n plusMinus?: number;\r\n diameter?: number;\r\n }\r\n\r\n interface ResolveInstanceKeyArgs {\r\n partialKey?: { id: Id64String, baseClassName: string };\r\n federationGuid?: GuidString;\r\n code?: CodeProps;\r\n }\r\n\r\n interface ResolveInstanceKeyResult {\r\n id: Id64String;\r\n classFullName: string;\r\n }\r\n\r\n enum FontType { TrueType = 1, Rsc = 2, Shx = 3 }\r\n\r\n interface FontFaceProps {\r\n faceName: \"regular\" | \"italic\" | \"bold\" | \"bolditalic\";\r\n familyName: string;\r\n type: FontType;\r\n subId?: number;\r\n encoding?: FontEncodingProps;\r\n }\r\n\r\n interface SQLiteOps {\r\n embedFile(arg: EmbedFileArg): void;\r\n embedFontFile(id: number, faces: FontFaceProps[], data: Uint8Array, compress: boolean): void;\r\n extractEmbeddedFile(arg: EmbeddedFileProps): void;\r\n getFilePath(): string;\r\n getLastInsertRowId(): number;\r\n getLastError(): string;\r\n isOpen(): boolean;\r\n isReadonly(): boolean;\r\n queryEmbeddedFile(name: string): EmbedFileQuery | undefined;\r\n queryFileProperty(props: FilePropertyProps, wantString: boolean): string | Uint8Array | undefined;\r\n queryNextAvailableFileProperty(props: FilePropertyProps): number;\r\n removeEmbeddedFile(name: string): void;\r\n replaceEmbeddedFile(arg: EmbedFileArg): void;\r\n restartDefaultTxn(): void;\r\n saveChanges(): void;\r\n saveFileProperty(props: FilePropertyProps, strValue: string | undefined, blobVal: Uint8Array | undefined): void;\r\n vacuum(arg?: { pageSize?: number, into?: LocalFileName }): void;\r\n analyze(): void;\r\n enableWalMode(yesNo?: boolean): void;\r\n /** perform a checkpoint if this db is in WAL mode. Otherwise this function does nothing.\r\n * @param mode the checkpoint mode. Default is `Truncate`.\r\n */\r\n performCheckpoint(mode?: WalCheckpointMode): void;\r\n setAutoCheckpointThreshold(frames: number): void;\r\n }\r\n\r\n /** The result of DgnDb.inlineGeometryParts.\r\n * If numSingleRefParts, numRefsInlined, and numPartsDeleted are all the same, the operation was fully successful.\r\n * Otherwise, some errors occurred inlining and/or deleting one or more parts.\r\n * A part will not be deleted unless it is first successfully inlined.\r\n */\r\n interface InlineGeometryPartsResult {\r\n /** The number of parts that were determined to have exactly one reference, making them candidates for inlining. */\r\n numCandidateParts: number;\r\n /** The number of part references successfully inlined. */\r\n numRefsInlined: number;\r\n /** The number of candidate parts that were successfully deleted after inlining. */\r\n numPartsDeleted: number;\r\n }\r\n\r\n interface SchemaReferenceProps {\r\n readonly name: string;\r\n readonly version: string;\r\n }\r\n\r\n interface SchemaItemProps {\r\n readonly $schema?: string;\r\n readonly schema?: string; // conditionally required\r\n readonly schemaVersion?: string;\r\n readonly name?: string;\r\n readonly schemaItemType?: string;\r\n readonly label?: string;\r\n readonly description?: string;\r\n readonly customAttributes?: Array<{ [value: string]: any }>;\r\n }\r\n\r\n interface SchemaProps {\r\n readonly $schema: string;\r\n readonly name: string;\r\n readonly version: string;\r\n readonly alias: string;\r\n readonly label?: string;\r\n readonly description?: string;\r\n readonly references?: SchemaReferenceProps[];\r\n readonly items?: { [name: string]: SchemaItemProps };\r\n readonly customAttributes?: Array<{ [value: string]: any }>;\r\n }\r\n\r\n interface SchemaImportOptions {\r\n readonly schemaLockHeld?: boolean;\r\n readonly skipSaveChanges?: boolean;\r\n readonly schemaSyncDbUri?: string;\r\n readonly ecSchemaXmlContext?: ECSchemaXmlContext;\r\n }\r\n\r\n interface SchemaLocalDbInfo {\r\n readonly id: string;\r\n readonly dataVer: string;\r\n readonly lastModUtc: string;\r\n }\r\n\r\n interface SchemaSyncDbInfo extends SchemaLocalDbInfo {\r\n readonly projectId: string;\r\n readonly parentChangesetId: string;\r\n readonly parentChangesetIndex?: string;\r\n }\r\n\r\n export interface TxnProps {\r\n id: TxnIdString;\r\n sessionId: number;\r\n nextId?: TxnIdString;\r\n prevId?: TxnIdString;\r\n props: { description?: string; source?: string, appData: { [key: string]: any } };\r\n type: \"Data\" | \"ECSchema\" | \"Ddl\";\r\n reversed: boolean;\r\n grouped: boolean;\r\n timestamp: string; // ISO 8601 format\r\n }\r\n\r\n type GeometryOutputFormat = \"BinaryStream\" | \"GeometryStreamProps\";\r\n interface IGeometrySource {\r\n geom?: Uint8Array | GeometryStreamProps;\r\n builder?: ElementGeometryBuilderParams;\r\n placement?: PlacementProps;\r\n categoryId?: Id64String;\r\n is2d: boolean;\r\n }\r\n\r\n\r\n interface IGeometryPart {\r\n geom?: Uint8Array | GeometryStreamProps;\r\n builder?: ElementGeometryBuilderParamsForPart;\r\n is2d: boolean;\r\n bbox?: LowAndHighXYZProps;\r\n }\r\n\r\n\r\n\r\n\r\n // ###TODO import from core-common\r\n interface ModelExtentsResponseProps {\r\n id: Id64String;\r\n extents: Range3dProps;\r\n status: IModelStatus;\r\n }\r\n\r\n interface TextLayoutRangesProps {\r\n layout: Range2dProps;\r\n justification: Range2dProps;\r\n }\r\n\r\n enum TextEmphasis { None = 0, Bold = 1, Italic = 2, BoldItalic = Bold | Italic }\r\n\r\n type NoCaseCollation = \"ASCII\" | \"Latin1\";\r\n\r\n /** The native object for a Briefcase. */\r\n class DgnDb implements IConcurrentQueryManager, SQLiteOps {\r\n constructor();\r\n public readonly cloudContainer?: CloudContainer;\r\n public attachDb(filename: string, alias: string): void;\r\n public detachDb(alias: string): void;\r\n public getNoCaseCollation(): NoCaseCollation;\r\n public setNoCaseCollation(collation: NoCaseCollation): void;\r\n public schemaSyncSetDefaultUri(syncDbUri: string): void;\r\n public schemaSyncGetDefaultUri(): string;\r\n public schemaSyncInit(syncDbUri: string, containerId: string, overrideContainer: boolean): void;\r\n public schemaSyncPull(syncDbUri?: string): void;\r\n public schemaSyncPush(syncDbUri?: string): void;\r\n public schemaSyncEnabled(): boolean;\r\n public schemaSyncGetLocalDbInfo(): SchemaLocalDbInfo | undefined;\r\n public schemaSyncGetSyncDbInfo(syncDbUri: string): SchemaSyncDbInfo | undefined;\r\n public abandonChanges(): DbResult;\r\n public abandonCreateChangeset(): void;\r\n public addChildPropagatesChangesToParentRelationship(schemaName: string, relClassName: string): BentleyStatus;\r\n public invalidateFontMap(): void;\r\n public applyChangeset(changeSet: ChangesetFileProps, fastForward: boolean, noUpdateLoop?: boolean): void;\r\n public revertTimelineChanges(changeSet: ChangesetFileProps[], skipSchemaChanges: boolean): void;\r\n public attachChangeCache(changeCachePath: string): DbResult;\r\n public beginMultiTxnOperation(): DbResult;\r\n public beginPurgeOperation(): IModelStatus;\r\n public cancelElementGraphicsRequests(requestIds: string[]): void;\r\n public cancelTileContentRequests(treeId: string, contentIds: string[]): void;\r\n public cancelTo(txnId: TxnIdString): IModelStatus;\r\n public classIdToName(idString: string): string | undefined;\r\n public classNameToId(className: string): Id64String;\r\n public closeFile(): void;\r\n public completeCreateChangeset(arg: { index: number }): void;\r\n public computeProjectExtents(wantFullExtents: boolean, wantOutlierIds: boolean): { extents: Range3dProps, fullExtents?: Range3dProps, outliers?: Id64Array };\r\n public computeRangesForText(chars: string, fontId: FontId, bold: boolean, italic: boolean, widthFactor: number, height: number): TextLayoutRangesProps;\r\n public concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;\r\n public concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;\r\n public concurrentQueryShutdown(): void;\r\n public createBRepGeometry(createProps: any/* BRepGeometryCreate */): IModelStatus;\r\n public createChangeCache(changeCacheFile: ECDb, changeCachePath: string): DbResult;\r\n public createClassViewsInDb(): BentleyStatus;\r\n public createIModel(fileName: string, props: CreateEmptyStandaloneIModelProps): void;\r\n public deleteAllTxns(): void;\r\n public deleteElement(elemIdJson: string): void;\r\n public deleteElements(elementIds: Id64Array, deleteOptions?: { skipFKConstraintValidations?: boolean }): BulkDeleteElementsResult;\r\n public deleteElementAspect(aspectIdJson: string): void;\r\n public deleteLinkTableRelationship(props: RelationshipProps): DbResult;\r\n public deleteLinkTableRelationships(props: ReadonlyArray<RelationshipProps>): DbResult;\r\n public deleteLocalValue(name: string): void;\r\n public deleteModel(modelIdJson: string): void;\r\n public detachChangeCache(): number;\r\n public dropSchemas(schemaNames: ReadonlyArray<string>): void;\r\n public dumpChangeset(changeSet: ChangesetFileProps): void;\r\n public elementGeometryCacheOperation(requestProps: any/* ElementGeometryCacheOperationRequestProps */): BentleyStatus;\r\n public embedFile(arg: EmbedFileArg): void;\r\n public embedFontFile(id: number, faces: FontFaceProps[], data: Uint8Array, compress: boolean): void;\r\n public enableChangesetSizeStats(enabled: boolean): DbResult;\r\n public enableTxnTesting(): void;\r\n public endMultiTxnOperation(): DbResult;\r\n public endPurgeOperation(): IModelStatus;\r\n public executeTest(testName: string, params: string): string;\r\n public exportGraphics(exportProps: any/* ExportGraphicsProps */): DbResult;\r\n public exportPartGraphics(exportProps: any/* ExportPartGraphicsProps */): DbResult;\r\n public exportGraphicsAsync(exportProps: any/* ExportGraphicsProps */): Promise<void>;\r\n public exportPartGraphicsAsync(exportProps: any/* ExportPartGraphicsProps */): Promise<void>;\r\n public exportSchema(schemaName: string, exportDirectory: string, outFileName?: string): SchemaWriteStatus;\r\n public exportSchemas(exportDirectory: string): SchemaWriteStatus;\r\n public extractChangedInstanceIdsFromChangeSets(changeSetFileNames: string[]): ErrorStatusOrResult<IModelStatus, ChangedInstanceIdsProps>;\r\n public extractChangeSummary(changeCacheFile: ECDb, changesetFilePath: string): ErrorStatusOrResult<DbResult, string>;\r\n public extractEmbeddedFile(arg: EmbeddedFileProps): void;\r\n public findGeometryPartReferences(partIds: Id64String[], is2d: boolean): Id64String[];\r\n public generateElementGraphics(request: ElementGraphicsRequestProps): Promise<ElementGraphicsResult>;\r\n public generateElementMeshes(request: ElementMeshRequestProps): Promise<Uint8Array>;\r\n public getBriefcaseId(): number;\r\n public getChangesetSize(): number;\r\n public getChangeTrackingMemoryUsed(): number;\r\n public getCodeValueBehavior(): \"exact\" | \"trim-unicode-whitespace\";\r\n public getCurrentChangeset(): ChangesetIndexAndId;\r\n public getCurrentTxnId(): TxnIdString;\r\n public getECClassMetaData(schema: string, className: string): ErrorStatusOrResult<IModelStatus, string>;\r\n public getElement(opts: ElementLoadProps): ElementProps;\r\n public executeSql(sql: string): DbResult;\r\n public getFilePath(): string; // full path of the DgnDb file\r\n public getGeoCoordinatesFromIModelCoordinates(points: GeoCoordinatesRequestProps): GeoCoordinatesResponseProps;\r\n public getGeometryContainment(props: object): Promise<GeometryContainmentResponseProps>;\r\n public getIModelCoordinatesFromGeoCoordinates(points: IModelCoordinatesRequestProps): IModelCoordinatesResponseProps;\r\n public getIModelId(): GuidString;\r\n public getIModelProps(when?: \"pullMerge\"): IModelProps;\r\n public resolveInstanceKey(args: ResolveInstanceKeyArgs): ResolveInstanceKeyResult;\r\n public readInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): NodeJS.Dict<any>;\r\n public insertInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): Id64String;\r\n public updateInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public deleteInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public patchJsonProperties(jsonProps: string): string;\r\n public newBeGuid(): GuidString;\r\n\r\n public clearECDbCache(): void;\r\n\r\n public convertOrUpdateGeometrySource(arg: IGeometrySource, outFmt: GeometryOutputFormat, opts: ElementLoadOptions): IGeometrySource;\r\n public convertOrUpdateGeometryPart(arg: IGeometryPart, outFmt: GeometryOutputFormat, opts: ElementLoadOptions): IGeometryPart;\r\n\r\n // when lets getIModelProps know that the extents may have been updated as the result of a pullChanges and should be read directly from the iModel as opposed to the cached extents.\r\n public getITwinId(): GuidString;\r\n public getLastError(): string;\r\n public getLastInsertRowId(): number;\r\n public getLocalChanges(rootClassFilter: string[], includeInMemoryChanges: boolean): ChangeInstanceKey[]\r\n public getMassProperties(props: object): Promise<MassPropertiesResponseProps>;\r\n public getModel(opts: ModelLoadProps): ModelProps;\r\n public getMultiTxnOperationDepth(): number;\r\n public getRedoString(): string;\r\n public getSchemaProps(name: string): SchemaProps;\r\n public getSchemaPropsAsync(name: string): Promise<SchemaProps>;\r\n public getSchemaItem(schemaName: string, itemName: string): ErrorStatusOrResult<IModelStatus, string>;\r\n public getTempFileBaseName(): string;\r\n public getTileContent(treeId: string, tileId: string, callback: (result: ErrorStatusOrResult<IModelStatus, Uint8Array>) => void): void;\r\n public getTileTree(id: string, callback: (result: ErrorStatusOrResult<IModelStatus, any>) => void): void;\r\n public getTxnDescription(txnId: TxnIdString): string;\r\n public getUndoString(): string;\r\n public hasFatalTxnError(): boolean;\r\n public hasPendingTxns(): boolean;\r\n public hasUnsavedChanges(): boolean;\r\n public importFunctionalSchema(): DbResult;\r\n public importSchemasDuringSemanticRebase(schemaFileNames: string[], options?: SchemaImportOptions): void;\r\n public importSchemas(schemaFileNames: string[], options?: SchemaImportOptions): DbResult;\r\n public importXmlSchemas(serializedXmlSchemas: string[], options?: SchemaImportOptions): DbResult;\r\n public inBulkOperation(): boolean;\r\n public inlineGeometryPartReferences(): InlineGeometryPartsResult;\r\n public insertCodeSpec(name: string, jsonProperties: CodeSpecProperties): Id64String;\r\n public insertElement(elemProps: ElementProps, options?: { forceUseId?: boolean }): Id64String;\r\n public insertElementAspect(aspectProps: ElementAspectProps): Id64String;\r\n public insertLinkTableRelationship(props: RelationshipProps): Id64String;\r\n public insertModel(modelProps: ModelProps): Id64String;\r\n public isChangeCacheAttached(): boolean;\r\n public isGeometricModelTrackingSupported(): boolean;\r\n public isLinkTableRelationship(classFullName: string): boolean | undefined;\r\n public isOpen(): boolean;\r\n public isProfilerPaused(): boolean;\r\n public isProfilerRunning(): boolean;\r\n public isReadonly(): boolean;\r\n public isRedoPossible(): boolean;\r\n public isSubClassOf(childClassFullName: string, parentClassFullName: string): boolean;\r\n public isTxnIdValid(txnId: TxnIdString): boolean;\r\n public isUndoPossible(): boolean;\r\n public logTxnError(fatal: boolean): void;\r\n public openIModel(dbName: string, mode: OpenMode, upgradeOptions?: UpgradeOptions & SchemaImportOptions, props?: SnapshotOpenOptions, container?: CloudContainer, sqliteOptions?: { busyTimeout?: number }): void;\r\n public pauseProfiler(): DbResult;\r\n public pollTileContent(treeId: string, tileId: string): ErrorStatusOrResult<IModelStatus, TileContentState | TileContent>;\r\n public processGeometryStream(requestProps: any/* ElementGeometryOptions */): IModelStatus;\r\n public purgeTileTrees(modelIds: Id64Array | undefined): void;\r\n public queryDefinitionElementUsage(definitionElementIds: Id64Array): DefinitionElementUsageInfo | undefined;\r\n public queryEmbeddedFile(name: string): EmbedFileQuery | undefined;\r\n public queryFileProperty(props: FilePropertyProps, wantString: boolean): string | Uint8Array | undefined;\r\n public queryFirstTxnId(): TxnIdString;\r\n public queryLocalValue(name: string): string | undefined;\r\n // ###TODO mark deprecated use queryModelExtentsAsync\r\n public queryModelExtents(options: { id: Id64String }): { modelExtents: Range3dProps };\r\n public queryModelExtentsAsync(modelIds: Id64String[]): Promise<ModelExtentsResponseProps[]>;\r\n public queryNextAvailableFileProperty(props: FilePropertyProps): number;\r\n public queryNextTxnId(txnId: TxnIdString): TxnIdString;\r\n public queryPreviousTxnId(txnId: TxnIdString): TxnIdString;\r\n public queryTextureData(opts: TextureLoadProps): Promise<TextureData | undefined>;\r\n public readFontMap(): { fonts: FontProps[] };\r\n public reinstateTxn(): IModelStatus;\r\n public getNextReinstateTxnRange(): { firstTxnId: TxnIdString, lastTxnId: TxnIdString };\r\n public removeEmbeddedFile(name: string): void;\r\n public replaceEmbeddedFile(arg: EmbedFileArg): void;\r\n public resetBriefcaseId(idValue: number): void;\r\n public restartDefaultTxn(): void;\r\n public restartTxnSession(): void;\r\n public currentTxnSessionId(): number;\r\n public resumeProfiler(): DbResult;\r\n public reverseAll(): IModelStatus;\r\n public reverseTo(txnId: TxnIdString): IModelStatus;\r\n public reverseTxns(numOperations: number): IModelStatus;\r\n public saveChanges(description?: string): DbResult;\r\n public saveFileProperty(props: FilePropertyProps, strValue: string | undefined, blobVal: Uint8Array | undefined): void;\r\n public saveLocalValue(name: string, value: string | undefined): void;\r\n public schemaToXmlString(schemaName: string, version?: ECVersion): string | undefined;\r\n public setGeometricModelTrackingEnabled(enabled: boolean): ErrorStatusOrResult<IModelStatus, boolean>;\r\n public setIModelDb(iModelDb?: any/* IModelDb */): void;\r\n public setIModelId(guid: GuidString): DbResult;\r\n public setITwinId(guid: GuidString): DbResult;\r\n public setBusyTimeout(ms: number): void;\r\n public setCodeValueBehavior(newBehavior: \"exact\" | \"trim-unicode-whitespace\"): void;\r\n public simplifyElementGeometry(simplifyArgs: any): IModelStatus;\r\n public startCreateChangeset(): ChangesetFileProps;\r\n public startProfiler(scopeName?: string, scenarioName?: string, overrideFile?: boolean, computeExecutionPlan?: boolean): DbResult;\r\n public stopProfiler(): { rc: DbResult, elapsedTime?: number, scopeId?: number, fileName?: string };\r\n public enableChangesetStatsTracking(): void;\r\n public disableChangesetStatsTracking(): void;\r\n public getChangesetHealthData(changesetId: string): ChangesetHealthStats;\r\n public getAllChangesetHealthData(): ChangesetHealthStats[];\r\n public updateElement(elemProps: Partial<ElementProps>): void;\r\n public changeElementParent(props: { id: Id64String, parentId: Id64String }): void;\r\n public changeElementModel(props: { id: Id64String, modelId: Id64String }): void;\r\n public updateElementAspect(aspectProps: ElementAspectProps): void;\r\n public updateElementGeometryCache(props: object): Promise<any>;\r\n public updateIModelProps(props: IModelProps): void;\r\n public updateLinkTableRelationship(props: RelationshipProps): DbResult;\r\n public updateModel(modelProps: ModelProps): void;\r\n public updateModelGeometryGuid(modelId: Id64String): IModelStatus;\r\n public updateProjectExtents(newExtentsJson: string): void;\r\n public writeAffectedElementDependencyGraphToFile(dotFileName: string, changedElems: Id64Array): BentleyStatus;\r\n public writeFullElementDependencyGraphToFile(dotFileName: string): BentleyStatus;\r\n public vacuum(arg?: { pageSize?: number, into?: LocalFileName }): void;\r\n public analyze(): void;\r\n public enableWalMode(yesNo?: boolean): void;\r\n public performCheckpoint(mode?: WalCheckpointMode): void;\r\n public setAutoCheckpointThreshold(frames: number): void;\r\n\r\n public pullMergeGetStage(): \"None\" | \"Merging\" | \"Rebasing\";\r\n public pullMergeRebaseReinstateTxn(): void;\r\n public pullMergeRebaseUpdateTxn(): void;\r\n public pullMergeRebaseNext(): TxnIdString | undefined;\r\n public pullMergeRebaseAbortTxn(): void\r\n public pullMergeRebaseBegin(): TxnIdString[];\r\n public pullMergeRebaseEnd(): void;\r\n public pullMergeReverseLocalChanges(captureInstanceChanges?: boolean): TxnIdString[];\r\n public stashChanges(args: { stashRootDir: string, description: string, iModelId: string, resetBriefcase?: true}): any;\r\n public stashRestore(stashFile: string): void;\r\n public getPendingTxnsHash(includeReversedTxns: boolean): string;\r\n public hasPendingSchemaChanges(): boolean;\r\n public discardLocalChanges(): void;\r\n public getTxnProps(id: TxnIdString): TxnProps | undefined;\r\n public setTxnMode(mode: \"direct\" | \"indirect\"): void;\r\n public getTxnMode(): \"direct\" | \"indirect\";\r\n public static enableSharedCache(enable: boolean): DbResult;\r\n public static getAssetsDir(): string;\r\n public static zlibCompress(data: Uint8Array): Uint8Array;\r\n public static zlibDecompress(data: Uint8Array, actualSize: number): Uint8Array;\r\n public static computeChangesetId(args: Partial<ChangesetFileProps> & Required<Pick<ChangesetFileProps, \"parentId\" | \"pathname\">>): string;\r\n }\r\n\r\n /** The native object for GeoServices. */\r\n class GeoServices {\r\n constructor();\r\n public static getGeographicCRSInterpretation(props: GeographicCRSInterpretRequestProps): GeographicCRSInterpretResponseProps;\r\n public static getListOfCRS(extent?: Range2dProps, includeWorld?: boolean, unit?: string): Array<{ name: string, description: string, deprecated: boolean, crsExtent: Range2dProps, unit: string }>;\r\n public static getAvailableUnitNames(): string[];\r\n }\r\n\r\n /**\r\n * RevisionUtility help with debugging and testing\r\n * @internal\r\n */\r\n class RevisionUtility {\r\n constructor();\r\n public static assembleRevision(targetFile: string, rawChangesetFile: string, prefixFile?: string, lzmaPropsJson?: string): BentleyStatus;\r\n public static computeStatistics(sourceFile: string, addPrefix: boolean): string;\r\n public static disassembleRevision(sourceFile: string, targetDir: string): BentleyStatus;\r\n public static dumpChangesetToDb(sourceFile: string, dbFile: string, includeCols: boolean): BentleyStatus;\r\n public static getUncompressSize(sourceFile: string): string;\r\n public static normalizeLzmaParams(lzmaPropsJson?: string): string;\r\n public static recompressRevision(sourceFile: string, targetFile: string, lzmaPropsJson?: string): BentleyStatus;\r\n }\r\n\r\n /**\r\n * The native object for SchemaUtility\r\n * @internal\r\n */\r\n class SchemaUtility {\r\n constructor();\r\n /** Converts given schemas and their reference schemas to EC3.2 schemas */\r\n public static convertCustomAttributes(xmlSchemas: string[], schemaContext?: ECSchemaXmlContext): string[];\r\n public static convertEC2XmlSchemas(ec2XmlSchemas: string[], schemaContext?: ECSchemaXmlContext): string[];\r\n }\r\n\r\n class ECDb implements IDisposable, IConcurrentQueryManager {\r\n constructor();\r\n public abandonChanges(): DbResult;\r\n public closeDb(): void;\r\n public createDb(dbName: string): DbResult;\r\n public dispose(): void;\r\n public dropSchemas(schemaNames: ReadonlyArray<string>): void;\r\n public schemaSyncSetDefaultUri(syncDbUri: string): void;\r\n public schemaSyncGetDefaultUri(): string;\r\n public schemaSyncInit(syncDbUri: string, containerId: string, overrideContainer: boolean): void;\r\n public schemaSyncPull(syncDbUri: string | undefined): void;\r\n public schemaSyncPush(syncDbUri: string | undefined): void;\r\n public schemaSyncEnabled(): boolean;\r\n public schemaSyncGetLocalDbInfo(): SchemaLocalDbInfo | undefined;\r\n public schemaSyncGetSyncDbInfo(): SchemaSyncDbInfo | undefined;\r\n public getFilePath(): string;\r\n public resolveInstanceKey(args: ResolveInstanceKeyArgs): ResolveInstanceKeyResult;\r\n public readInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): NodeJS.Dict<any>;\r\n public insertInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): Id64String;\r\n public updateInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public deleteInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public getSchemaProps(name: string): SchemaProps;\r\n public importSchema(schemaPathName: string): DbResult;\r\n public isOpen(): boolean;\r\n public openDb(dbName: string, mode: OpenMode, upgradeProfiles?: boolean): DbResult;\r\n public saveChanges(changesetName?: string): DbResult;\r\n public getLastError(): string;\r\n public getLastInsertRowId(): number;\r\n public static enableSharedCache(enable: boolean): DbResult;\r\n public concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;\r\n public concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;\r\n public concurrentQueryShutdown(): void;\r\n public attachDb(filename: string, alias: string): void;\r\n public detachDb(alias: string): void;\r\n public clearECDbCache(): void;\r\n }\r\n\r\n class ChangedElementsECDb implements IDisposable {\r\n constructor();\r\n public dispose(): void;\r\n public createDb(db: DgnDb, dbName: string): DbResult;\r\n public openDb(dbName: string, mode: OpenMode, upgradeProfiles?: boolean): DbResult;\r\n public isOpen(): boolean;\r\n public closeDb(): void;\r\n public processChangesets(db: DgnDb, changesets: ChangesetFileProps[], rulesetId: string, filterSpatial?: boolean, wantParents?: boolean, wantPropertyChecksums?: boolean, rulesetDir?: string, tempDir?: string, wantChunkTraversal?: boolean): DbResult;\r\n public processChangesetsAndRoll(dbFilename: string, dbGuid: string, changesets: ChangesetFileProps[], rulesetId: string, filterSpatial?: boolean, wantParents?: boolean, wantPropertyChecksums?: boolean, rulesetDir?: string, tempDir?: string, wantRelationshipCaching?: boolean, relationshipCacheSize?: number, wantChunkTraversal?: boolean, wantBoundingBoxes?: boolean): DbResult;\r\n public getChangedElements(startChangesetId: string, endChangesetId: string): ErrorStatusOrResult<IModelStatus, any>;\r\n public isProcessed(changesetId: string): boolean;\r\n public cleanCaches(): void;\r\n }\r\n\r\n class ECSqlStatement implements IDisposable {\r\n constructor();\r\n public clearBindings(): DbResult;\r\n public dispose(): void;\r\n public getBinder(param: number | string): ECSqlBinder;\r\n public getColumnCount(): number;\r\n public getValue(columnIndex: number): ECSqlValue;\r\n public prepare(db: AnyECDb, ecsql: string, logErrors?: boolean): StatusCodeWithMessage<DbResult>;\r\n public reset(): DbResult;\r\n public step(): DbResult;\r\n public stepAsync(callback: (result: DbResult) => void): void;\r\n public stepForInsert(): { status: DbResult, id: string };\r\n public stepForInsertAsync(callback: (result: { status: DbResult, id: string }) => void): void;\r\n public getNativeSql(): string;\r\n public toRow(arg: ECSqlRowAdaptorOptions): any;\r\n public getMetadata(arg?: ECSqlRowAdaptorOptions): any;\r\n public bindParams(args: object): StatusCodeWithMessage<boolean>;\r\n }\r\n\r\n class ECSqlBinder {\r\n constructor();\r\n public addArrayElement(): ECSqlBinder;\r\n public bindBlob(base64String: string | Uint8Array | ArrayBuffer | SharedArrayBuffer): DbResult;\r\n public bindBoolean(val: boolean): DbResult;\r\n public bindDateTime(isoString: string): DbResult;\r\n public bindDouble(val: number): DbResult;\r\n public bindGuid(guidStr: GuidString): DbResult;\r\n public bindId(hexStr: Id64String): DbResult;\r\n public bindIdSet(hexVector: Id64String[]): DbResult;\r\n public bindInteger(val: number | string): DbResult;\r\n public bindMember(memberName: string): ECSqlBinder;\r\n public bindNavigation(navIdHexStr: Id64String, relClassName?: string, relClassTableSpace?: string): DbResult;\r\n public bindNull(): DbResult;\r\n public bindPoint2d(x: number, y: number): DbResult;\r\n public bindPoint3d(x: number, y: number, z: number): DbResult;\r\n public bindString(val: string): DbResult;\r\n }\r\n\r\n class ECSqlColumnInfo {\r\n constructor();\r\n public getAccessString(): string;\r\n public getPropertyName(): string;\r\n public getOriginPropertyName(): string | undefined;\r\n public getRootClassAlias(): string;\r\n public getRootClassName(): string;\r\n public getRootClassTableSpace(): string;\r\n public getType(): number;\r\n public isEnum(): boolean;\r\n public isGeneratedProperty(): boolean;\r\n public isSystemProperty(): boolean;\r\n public isDynamicProp(): boolean;\r\n }\r\n\r\n class ECSqlValue {\r\n constructor();\r\n public getArrayIterator(): ECSqlValueIterator;\r\n public getBlob(): Uint8Array;\r\n public getBoolean(): boolean;\r\n public getClassNameForClassId(): string;\r\n public getColumnInfo(): ECSqlColumnInfo;\r\n public getDateTime(): string;\r\n public getDouble(): number;\r\n public getEnum(): Array<{ schema: string, name: string, key: string, value: number | string }> | undefined;\r\n public getGeometry(): string;\r\n public getGuid(): GuidString;\r\n public getId(): Id64String;\r\n public getInt(): number;\r\n public getInt64(): number;\r\n public getNavigation(): { id: Id64String, relClassName?: string };\r\n public getPoint2d(): { x: number, y: number };\r\n public getPoint3d(): { x: number, y: number, z: number };\r\n public getString(): string;\r\n public getStructIterator(): ECSqlValueIterator;\r\n public isNull(): boolean;\r\n }\r\n\r\n class ECSqlValueIterator {\r\n constructor();\r\n public getCurrent(): ECSqlValue;\r\n public moveNext(): boolean;\r\n }\r\n\r\n /** Default transaction mode for SQLiteDbs.\r\n * @see https://www.sqlite.org/lang_transaction.html\r\n */\r\n const enum DefaultTxnMode {\r\n /** no default transaction is started. You must use BEGIN/COMMIT or SQLite will use implicit transactions */\r\n None = 0,\r\n /** A deferred transaction is started when the file is first opened. This is the default. */\r\n Deferred = 1,\r\n /** An immediate transaction is started when the file is first opened. */\r\n Immediate = 2,\r\n /** An exclusive transaction is started when the file is first opened. */\r\n Exclusive = 3\r\n }\r\n\r\n /** parameters common to opening or creating a new SQLiteDb */\r\n interface SQLiteDbOpenOrCreateParams {\r\n /** If true, do not require that the `be_Prop` table exist */\r\n rawSQLite?: boolean;\r\n /** @see immutable option at https://www.sqlite.org/c3ref/open.html */\r\n immutable?: boolean;\r\n /** Do not attempt to verify that the file is a valid sQLite file before opening. */\r\n skipFileCheck?: boolean;\r\n /** the default transaction mode\r\n * @see [[SQLiteDb.DefaultTxnMode]]\r\n */\r\n defaultTxn?: 0 | 1 | 2 | 3;\r\n /** see query parameters from 'URI Filenames' in https://www.sqlite.org/c3ref/open.html */\r\n queryParam?: string;\r\n }\r\n\r\n /** Parameters for opening an existing SQLiteDb */\r\n interface SQLiteDbOpenParams extends SQLiteDbOpenOrCreateParams {\r\n /** use OpenMode.ReadWrite to open the file with write access */\r\n openMode: OpenMode;\r\n }\r\n\r\n /** Size of a SQLiteDb page in bytes */\r\n interface PageSize {\r\n /** see https://www.sqlite.org/pragma.html#pragma_page_size */\r\n pageSize?: number;\r\n }\r\n\r\n /** Parameters for creating a new SQLiteDb */\r\n type SQLiteDbCreateParams = SQLiteDbOpenOrCreateParams & PageSize;\r\n\r\n class SQLiteDb implements SQLiteOps, IDisposable {\r\n constructor();\r\n public readonly cloudContainer?: CloudContainer;\r\n public abandonChanges(): void;\r\n /**\r\n * Apply a raw sqlite changeset file - the plain, uncompressed byte stream produced by the sqlite\r\n * session extension - to this SQLiteDb. This is *not* the same on-disk format used for iModel\r\n * changesets. Unlike DgnDb.applyChangeset, this does *not* validate any changeset header\r\n * (parentId/changesetId) against the current state of the db, and it does *not* support DDL/schema\r\n * changes (raw sqlite changesets cannot represent them) - it simply applies the row-level changes.\r\n * Any conflict encountered while applying causes the entire apply to fail and throw.\r\n */\r\n public applyChangeset(changesetFile: LocalFileName): void;\r\n public closeDb(): void;\r\n /**\r\n * Write out the changes captured since startChangeTracking() was called, to a changeset file holding\r\n * the raw sqlite changeset (the plain, uncompressed byte stream produced by the sqlite session\r\n * extension) - this is *not* the same on-disk format used for iModel changesets. Raw sqlite changesets\r\n * cannot represent DDL/schema changes, so this throws if any DDL was captured since\r\n * startChangeTracking() was called. Used only for testing.\r\n */\r\n public createChangeset(changesetFile: LocalFileName): void;\r\n public createDb(dbName: string, container?: CloudContainer, params?: SQLiteDbCreateParams): void;\r\n public dispose(): void;\r\n public embedFile(arg: EmbedFileArg): void;\r\n public embedFontFile(id: number, faces: FontFaceProps[], data: Uint8Array, compress: boolean): void;\r\n /** Execute a DDL statement so it will be captured by change tracking, if active. */\r\n public executeDdl(ddl: string): void;\r\n public extractEmbeddedFile(arg: EmbeddedFileProps): void;\r\n public getFilePath(): string;\r\n public getLastError(): string;\r\n public getLastInsertRowId(): number;\r\n public isOpen(): boolean;\r\n public isReadonly(): boolean;\r\n public openDb(dbName: string, mode: OpenMode | SQLiteDbOpenParams, container?: CloudContainer): void;\r\n public queryEmbeddedFile(name: string): EmbedFileQuery | undefined;\r\n public queryFileProperty(props: FilePropertyProps, wantString: boolean): string | Uint8Array | undefined;\r\n public queryNextAvailableFileProperty(props: FilePropertyProps): number;\r\n public removeEmbeddedFile(name: string): void;\r\n public replaceEmbeddedFile(arg: EmbedFileArg): void;\r\n public restartDefaultTxn(): void;\r\n public saveChanges(): void;\r\n public saveFileProperty(props: FilePropertyProps, strValue: string | undefined, blobVal?: Uint8Array): void;\r\n /** Begin capturing DDL/data changes made to this SQLiteDb. Used only to produce test changeset files. */\r\n public startChangeTracking(): void;\r\n public vacuum(arg?: { pageSize?: number, into?: LocalFileName }): void;\r\n public analyze(): void;\r\n public enableWalMode(yesNo?: boolean): void;\r\n public performCheckpoint(mode?: WalCheckpointMode): void;\r\n public setAutoCheckpointThreshold(frames: number): void;\r\n }\r\n\r\n class SqliteStatement implements IDisposable {\r\n constructor();\r\n public bindBlob(param: number | string, val: Uint8Array | ArrayBuffer | SharedArrayBuffer): DbResult;\r\n public bindDouble(param: number | string, val: number): DbResult;\r\n public bindGuid(param: number | string, guidStr: GuidString): DbResult;\r\n public bindId(param: number | string, hexStr: Id64String): DbResult;\r\n public bindInteger(param: number | string, val: number | string): DbResult;\r\n public bindNull(param: number | string): DbResult;\r\n public bindString(param: number | string, val: string): DbResult;\r\n public clearBindings(): DbResult;\r\n public dispose(): void;\r\n public getColumnBytes(columnIndex: number): number;\r\n public getColumnCount(): number;\r\n public getColumnName(columnIndex: number): string;\r\n public getColumnType(columnIndex: number): number;\r\n public getValueBlob(columnIndex: number): Uint8Array;\r\n public getValueDouble(columnIndex: number): number;\r\n public getValueGuid(columnIndex: number): GuidString;\r\n public getValueId(columnIndex: number): Id64String;\r\n public getValueInteger(columnIndex: number): number;\r\n public getValueString(columnIndex: number): string;\r\n public isReadonly(): boolean;\r\n public isValueNull(columnIndex: number): boolean;\r\n public prepare(db: AnyDb, sql: string, logErrors?: boolean): void;\r\n public reset(): DbResult;\r\n public step(): DbResult;\r\n public stepAsync(callback: (result: DbResult) => void): void;\r\n }\r\n\r\n /** Incremental IO for blobs */\r\n class BlobIO {\r\n constructor();\r\n /** Close this BlobIO if it is opened.\r\n * @note this BlobIO *may* be reused after this call by calling `open` again.\r\n */\r\n public close(): void;\r\n /** get the total number of bytes in the blob */\r\n public getNumBytes(): number;\r\n /** @return true if this BlobIO was successfully opened and may be use to read or write the blob */\r\n public isValid(): boolean;\r\n /** Open this BlobIO against a table/row/column in a Db */\r\n public open(\r\n /** The database for the blob */\r\n db: AnyDb,\r\n args: {\r\n /** the name of the table for the blob*/\r\n tableName: string;\r\n /** the name of the column for the blob */\r\n columnName: string;\r\n /** The rowId of the blob */\r\n row: number;\r\n /** If true, open this BlobIO for write access */\r\n writeable?: boolean;\r\n }): void;\r\n /** Read from a blob\r\n * @returns the contents of the requested byte range\r\n */\r\n public read(args: {\r\n /** The number of bytes to read */\r\n numBytes: number;\r\n /** starting offset within the blob to read */\r\n offset: number;\r\n /** If present and of sufficient size, use this ArrayBuffer for the value. */\r\n blob?: ArrayBuffer;\r\n }): Uint8Array;\r\n /** Reposition this BlobIO to a new rowId\r\n * @note this BlobIO must be valid when this methods is called.\r\n */\r\n public changeRow(row: number): void;\r\n /** Write to a blob */\r\n public write(args: {\r\n /** The number of bytes to write */\r\n numBytes: number;\r\n /** starting offset within the blob to write */\r\n offset: number;\r\n /** the value to write */\r\n blob: ArrayBuffer;\r\n }): void;\r\n }\r\n\r\n /** Filter options passed to CloudContainer.queryHttpLog */\r\n interface BcvHttpLogFilterOptions {\r\n /** only return rows whose ID is >= the provided id */\r\n startFromId?: number;\r\n /** only return rows whose endTime is null OR >= the provided endTime. */\r\n finishedAtOrAfterTime?: string;\r\n /** only return rows with a non-null end_time. */\r\n showOnlyFinished?: boolean;\r\n }\r\n\r\n interface BcvStatsFilterOptions {\r\n /** if true, adds activeClients, totalClients, ongoingPrefetches, and attachedContainers to the result. */\r\n addClientInformation?: boolean;\r\n }\r\n\r\n /**\r\n * A cache for storing data from CloudSqlite databases. This object refers to a directory on a local filesystem\r\n * and is used to **connect** CloudContainers so they may be accessed. The contents of the cache directory are entirely\r\n * controlled by CloudSqlite and should be empty when the cache is first created and never modified directly. It maintains\r\n * the state of the local data across sessions.\r\n * @note All CloudContainers attached to a CloudCache must have the same block size, as determined by the first one connected.\r\n */\r\n class CloudCache {\r\n /** Create an instance of a CloudCache. */\r\n public constructor(props: NativeCloudSqlite.CacheProps);\r\n /** `true` if this CloudCache is connected to a daemon process */\r\n public get isDaemon(): boolean;\r\n /** The name for this CloudCache. */\r\n public get name(): string;\r\n /** The root directory of this CloudCache on a local drive. */\r\n public get rootDir(): LocalDirName;\r\n /** The guid for this CloudCache. Used for acquiring write lock. */\r\n public get guid(): GuidString;\r\n public setLogMask(mask: number): void;\r\n /** destroy this CloudCache. All CloudContainers currently connected are disconnected. */\r\n public destroy(): void;\r\n }\r\n\r\n /** A CloudSqlite container that may be connected to a CloudCache. */\r\n class CloudContainer {\r\n public onConnect?: (container: CloudContainer, cache: CloudCache) => void;\r\n public onConnected?: (container: CloudContainer) => void;\r\n public onDisconnect?: (container: CloudContainer, detach: boolean) => void;\r\n public onDisconnected?: (container: CloudContainer, detach: boolean) => void;\r\n\r\n public readonly cache?: CloudCache;\r\n /** Create a new instance of a CloudContainer. It must be connected to a CloudCache for most operations. */\r\n public constructor(props: NativeCloudSqlite.ContainerAccessProps);\r\n /** the baseUri of this container */\r\n public get baseUri(): string;\r\n /** the storageType of this container */\r\n public get storageType(): string;\r\n /** The ContainerId. */\r\n public get containerId(): string;\r\n /** The *alias* to identify this CloudContainer in a CloudCache. Usually just the ContainerId. */\r\n public get alias(): string;\r\n /** The logId. */\r\n public get logId(): string;\r\n /** The time that the write lock expires. Of the form 'YYYY-MM-DDTHH:MM:SS.000Z' in UTC.\r\n * Returns empty string if write lock is not held.\r\n */\r\n public get writeLockExpires(): string;\r\n /** true if this CloudContainer is currently connected to a CloudCache via the `connect` method. */\r\n public get isConnected(): boolean;\r\n /** true if this CloudContainer was created with the `writeable` flag (and its `accessToken` supplies write access). */\r\n public get isWriteable(): boolean;\r\n /** true if this container is public (doesn't require authorization ). */\r\n public get isPublic(): boolean;\r\n /** true if this CloudContainer currently holds the write lock for its container in the cloud. */\r\n public get hasWriteLock(): boolean;\r\n /** true if this CloudContainer has local changes that have not be uploaded to its container in the cloud. */\r\n public get hasLocalChanges(): boolean;\r\n /** The current accessToken providing access to the cloud container */\r\n public get accessToken(): string;\r\n public set accessToken(val: string);\r\n /** Get the number of garbage blocks in this container that can be purged. */\r\n public get garbageBlocks(): number;\r\n /** The block size for this CloudContainer. */\r\n public get blockSize(): number;\r\n\r\n /**\r\n * initialize a cloud blob-store container to be used as a new Sqlite CloudContainer. This creates the manifest, and should be\r\n * performed on an empty container. If an existing manifest is present, it is destroyed and a new one is created (essentially emptying the container.)\r\n */\r\n public initializeContainer(opts: { checksumBlockNames?: boolean, blockSize: number }): void;\r\n\r\n /**\r\n * Attempt to acquire the write lock for this CloudContainer. For this to succeed:\r\n * 1. it must be connected to a `CloudCache`\r\n * 2. this CloudContainer must have been constructed with `writeable: true`\r\n * 3. the `accessToken` must authorize write access\r\n * 4. no other process may be holding an unexpired write lock\r\n * @throws exception if any of the above conditions fail\r\n * @note Write locks *expire* after the duration specified in the `durationSeconds` property of the constructor argument, in case a process\r\n * crashes or otherwise fails to release the lock. Calling `acquireWriteLock` with the lock already held resets the lock duration from the current time,\r\n * so long running processes should call this method periodically to ensure their lock doesn't expire (they should also make sure their accessToken is refreshed\r\n * before it expires.)\r\n * @note on success, the manifest is polled before the promise resolves.\r\n * @param user An identifier of the process/user locking the CloudContainer. In the event of a write lock\r\n * collision, this string will be included in the exception string of the *other* process attempting to obtain a write lock.\r\n */\r\n public acquireWriteLock(user: string): void;\r\n\r\n /**\r\n * Release the write lock if it is currently held.\r\n * @note if there are local changes that have not been uploaded, they are automatically uploaded before the write lock is released.\r\n * @note if the write lock is not held, this method does nothing.\r\n */\r\n public releaseWriteLock(): void;\r\n\r\n /**\r\n * Destroy any currently valid write lock from this or any other process. This is obviously very dangerous and defeats the purpose of write locking.\r\n * This method exists only for administrator tools to clear a failed process without waiting for the expiration period. It can also be useful for tests.\r\n * For this to succeed, all of the conditions of `acquireWriteLock` must be true other than #4.\r\n */\r\n public clearWriteLock(): void;\r\n\r\n /**\r\n * Abandon any local changes in this container. If the write lock is currently held, it is released.\r\n * This function fails with BE_SQLITE_BUSY if one or more clients have open read or write transactions\r\n * on any database in the container.\r\n */\r\n public abandonChanges(): void;\r\n\r\n /**\r\n * Connect this CloudContainer to a CloudCache for reading or writing its manifest, write lock, and databases.\r\n * @note A CloudCache is a local directory holding copies of information from the cloud. Its content is persistent across sessions,\r\n * but this method must be called each session to (re)establish the connection to the cache. If the CloudCache was previously populated,\r\n * this method may be called and will succeed *even when offline* or without a valid `accessToken`.\r\n * @note all operations that access the contents of databases or the manifest require this method be called (`isConnected === true`).\r\n */\r\n public connect(cache: CloudCache): void;\r\n\r\n /**\r\n * Disconnect this CloudContainer from its CloudCache. There must be no open databases from this container.\r\n */\r\n public disconnect(args?: {\r\n /** if true removes the container from the CloudCache, otherwise Leaves the container in the CloudCache so it is available for future sessions. */\r\n detach?: boolean;\r\n }): void;\r\n\r\n /**\r\n * Poll cloud storage for changes from other processes. *No changes* made by other processes are visible to\r\n * this CloudContainer unless/until this method is called.\r\n * @note this is automatically called whenever the write lock is obtained to ensure all changes are against the latest version.\r\n */\r\n public checkForChanges(): void;\r\n\r\n /**\r\n * Upload any changed blocks from all databases in this CloudContainer.\r\n * @note this is called automatically from `releaseWriteLock` before the write lock is released. It is only necessary to call this directly if you\r\n * wish to upload changes while the write lock is still held.\r\n * @see hasLocalChanges\r\n */\r\n public uploadChanges(): Promise<void>;\r\n\r\n /**\r\n * Create a copy of an existing database within this CloudContainer with a new name.\r\n * @note CloudSqlite uses copy-on-write semantics for this operation. That is, this method merely makes a\r\n * new entry in the manifest with the new name that *shares* all of its blocks with the original database.\r\n * If either database subsequently changes, the only modified blocks are not shared.\r\n */\r\n public copyDatabase(dbName: string, toAlias: string): Promise<void>;\r\n\r\n /** Remove a database from this CloudContainer, moving all of its no longer used blocks to the delete list in the manifest.\r\n * @see [[CloudSqlite.CleanDeletedBlocksJob]] to actually delete the blocks from the delete list.\r\n */\r\n public deleteDatabase(dbName: string): Promise<void>;\r\n\r\n /** Get the list of database names in this CloudContainer.\r\n * @param globArg if present, filter the results with SQLite [GLOB](https://www.sqlite.org/lang_expr.html#glob) operator.\r\n */\r\n public queryDatabases(globArg?: string): string[];\r\n\r\n /**\r\n * Get the status of a specific database in this CloudContainer.\r\n * @param dbName the name of the database of interest\r\n */\r\n public queryDatabase(dbName: string): NativeCloudSqlite.CachedDbProps | undefined;\r\n\r\n /**\r\n * query the bcv_http_log table\r\n * @note the bcv_http_log table contains one row for each HTTP request made by the VFS or connected daemon.\r\n * @note Entries are automatically removed from the table on a FIFO basis. By default entries which are 1 hr old will be removed.\r\n */\r\n public queryHttpLog(filterOptions?: BcvHttpLogFilterOptions): NativeCloudSqlite.BcvHttpLog[];\r\n\r\n /**\r\n * query the bcv_stat table.\r\n * @internal\r\n */\r\n public queryBcvStats(filterOptions?: BcvStatsFilterOptions): NativeCloudSqlite.BcvStats;\r\n\r\n /**\r\n * Get the SHA1 hash of the content of a database.\r\n * @param dbName the name of the database of interest\r\n * @note the hash will be empty if the database does not exist\r\n */\r\n public queryDatabaseHash(dbName: string): string;\r\n }\r\n\r\n /**\r\n * Object to perform an \"upload\" or \"download\" of a database to/from a CloudContainer.\r\n * @note The transfer begins when the object is constructed, and the object remains alive during the upload/download operation.\r\n * It provides the Promise that is resolved when the operation completes or fails, and has methods to provide feedback for progress and to cancel the operation prematurely.\r\n */\r\n class CancellableCloudSqliteJob {\r\n /** create an instance of a transfer. The operation begins immediately when the object is created.\r\n * @param direction either \"upload\" or \"download\"\r\n * @param container the container holding the database. Does *not* require that the container be connected to a CloudCache.\r\n * @param args The properties for the source and target of the transfer.\r\n */\r\n constructor(direction: NativeCloudSqlite.TransferDirection | \"cleanup\", container: CloudContainer, args: NativeCloudSqlite.TransferDbProps | NativeCloudSqlite.CleanDeletedBlocksOptions);\r\n\r\n /** Cancel a currently pending transfer and cause the promise to be rejected with a Cancelled status.\r\n * @throws exception if the operation has already completed.\r\n */\r\n public cancelTransfer(): void;\r\n /** Get the current progress of the transfer.\r\n * @throws exception if the operation has already completed.\r\n */\r\n public getProgress(): { loaded: number, total: number };\r\n\r\n /**\r\n * Only applicable to cleanup jobs. Calling this in a download or upload job will also stop the job but without saving progress.\r\n * During a cleanup job, if any blocks have been deleted, the job will stop and upload the manifest reflecting which blocks have been deleted.\r\n */\r\n public stopAndSaveProgress(): void;\r\n\r\n /** Promise that is resolved when the transfer completes, or is rejected if the transfer fails (or is cancelled.) */\r\n public promise: Promise<void>;\r\n }\r\n\r\n class CloudPrefetch {\r\n public readonly cloudContainer: CloudContainer;\r\n public readonly dbName: string;\r\n\r\n /** create an instance of a prefetch operation. The operation begins immediately when the object is created.\r\n * The prefetch will continue in the background until it either finishes, is canceled, or the CloudContainer is disconnected from its CloudCache.\r\n * @param container the container holding the database.\r\n * @param dbName the name of the database to prefetch\r\n */\r\n constructor(container: CloudContainer, dbName: string, args?: NativeCloudSqlite.PrefetchProps);\r\n\r\n /** Cancel a currently pending prefetch. The promise will be resolved immediately after this call. */\r\n public cancel(): void;\r\n\r\n /**\r\n * Promise that is resolved when the prefetch completes or is cancelled. Await this promise to ensure that the\r\n * database has been fully downloaded before going offline, for example.\r\n * @returns a Promise that resolves to `true` if the prefetch completed and the entire database is local, or `false` if it was aborted or failed.\r\n * @note the promise is *not* rejected on `cancel`. Some progress may (or may not) have been made by the request.\r\n * @note To monitor the progress being made during prefetch, call `CloudContainer.queryDatabase` periodically.\r\n */\r\n public promise: Promise<boolean>;\r\n }\r\n\r\n const enum ECPresentationStatus {\r\n Success = 0,\r\n Canceled = 1,\r\n Pending = 2,\r\n Error = 0x10000,\r\n InvalidArgument = Error + 1,\r\n ResultSetTooLarge = Error + 2,\r\n }\r\n\r\n interface ECPresentationMemoryHierarchyCacheConfig {\r\n mode: \"memory\";\r\n }\r\n\r\n interface ECPresentationDiskHierarchyCacheConfig {\r\n mode: \"disk\";\r\n directory: string;\r\n memoryCacheSize?: number;\r\n }\r\n\r\n interface ECPresentationHybridHierarchyCacheConfig {\r\n mode: \"hybrid\";\r\n disk?: ECPresentationDiskHierarchyCacheConfig;\r\n }\r\n\r\n type ECPresentationHierarchyCacheConfig = ECPresentationMemoryHierarchyCacheConfig | ECPresentationDiskHierarchyCacheConfig | ECPresentationHybridHierarchyCacheConfig;\r\n\r\n type ECPresentationManagerResponse<TResult> = ErrorStatusOrResult<ECPresentationStatus, TResult> & {\r\n diagnostics?: any;\r\n };\r\n\r\n interface ECPresentationManagerProps {\r\n id: string;\r\n taskAllocationsMap: { [priority: number]: number };\r\n defaultFormats: {\r\n [phenomenon: string]: Array<{\r\n unitSystems: string[];\r\n serializedFormat: string;\r\n }>;\r\n };\r\n updateCallback: (updateInfo: any) => void;\r\n cacheConfig: ECPresentationHierarchyCacheConfig;\r\n contentCacheSize?: number;\r\n workerConnectionCacheSize?: number;\r\n useMmap?: boolean | number;\r\n }\r\n\r\n class ECPresentationManager implements IDisposable {\r\n constructor(props: ECPresentationManagerProps);\r\n public forceLoadSchemas(db: DgnDb): Promise<ECPresentationManagerResponse<void>>;\r\n public setupRulesetDirectories(directories: string[]): ECPresentationManagerResponse<void>;\r\n public setupSupplementalRulesetDirectories(directories: string[]): ECPresentationManagerResponse<void>;\r\n public setRulesetVariableValue(rulesetId: string, variableId: string, type: string, value: any): ECPresentationManagerResponse<void>;\r\n public unsetRulesetVariableValue(rulesetId: string, variableId: string): ECPresentationManagerResponse<void>;\r\n public getRulesetVariableValue(rulesetId: string, variableId: string, type: string): ECPresentationManagerResponse<any>;\r\n public registerSupplementalRuleset(serializedRuleset: string): ECPresentationManagerResponse<string>;\r\n public getRulesets(rulesetId: string): ECPresentationManagerResponse<string>;\r\n public addRuleset(serializedRuleset: string): ECPresentationManagerResponse<string>;\r\n public removeRuleset(rulesetId: string, hash: string): ECPresentationManagerResponse<boolean>;\r\n public clearRulesets(): ECPresentationManagerResponse<void>;\r\n public handleRequest(db: DgnDb, options: string): { result: Promise<ECPresentationManagerResponse<Buffer>>, cancel: () => void };\r\n public dispose(): void;\r\n }\r\n\r\n namespace ECSchemaXmlContext {\r\n interface SchemaKey {\r\n name: string;\r\n readVersion: number;\r\n writeVersion: number;\r\n minorVersion: number;\r\n }\r\n\r\n const enum SchemaMatchType {\r\n Identical = 0, // Find exact VersionRead, VersionWrite, VersionMinor match as well as Data\r\n Exact = 1, // Find exact VersionRead, VersionWrite, VersionMinor match.\r\n LatestWriteCompatible = 2, // Find latest version with matching VersionRead and VersionWrite\r\n Latest = 3, // Find latest version.\r\n LatestReadCompatible = 4, // Find latest version with matching VersionRead\r\n }\r\n\r\n type SchemaLocaterCallback = (key: SchemaKey, matchType: SchemaMatchType) => string | undefined | void;\r\n }\r\n\r\n class ECSchemaXmlContext {\r\n constructor();\r\n public addSchemaPath(schemaPath: string): void;\r\n public setSchemaLocater(locater: ECSchemaXmlContext.SchemaLocaterCallback): void;\r\n public setFirstSchemaLocater(locater: ECSchemaXmlContext.SchemaLocaterCallback): void;\r\n public readSchemaFromXmlFile(filePath: string): ErrorStatusOrResult<BentleyStatus, string>;\r\n }\r\n\r\n class SnapRequest {\r\n constructor();\r\n public doSnap(db: DgnDb, request: any): Promise<any>;\r\n public cancelSnap(): void;\r\n }\r\n\r\n interface FeatureUserDataKeyValuePair {\r\n key: string;\r\n value: string;\r\n }\r\n\r\n interface NativeUlasClientFeatureEvent {\r\n featureId: string;\r\n versionStr: string;\r\n projectId?: string;\r\n startDateZ?: string;\r\n endDateZ?: string;\r\n featureUserData?: FeatureUserDataKeyValuePair[];\r\n }\r\n\r\n class SqliteChangesetReader {\r\n public close(): void;\r\n public getColumnCount(): number;\r\n public getColumnValue(col: number, stage: number): Uint8Array | number | string | null | undefined;\r\n public getColumnValueBinary(col: number, stage: number): Uint8Array | undefined;\r\n public getColumnValueDouble(col: number, stage: number): number | undefined;\r\n public getColumnValueId(col: number, stage: number): string | undefined;\r\n public getColumnValueInteger(col: number, stage: number): number | undefined;\r\n public getColumnValueText(col: number, stage: number): string | undefined;\r\n public getColumnValueType(col: number, stage: number): number | undefined;\r\n public getDdlChanges(): string | undefined;\r\n public getOpCode(): DbOpcode;\r\n public getPrimaryKeys(): (Uint8Array | number | string | null | undefined)[];\r\n public getRow(stage: number): (Uint8Array | number | string | null | undefined)[];\r\n public getTableName(): string;\r\n public hasRow(): boolean;\r\n public isColumnValueNull(col: number, stage: number): boolean | undefined;\r\n public isIndirectChange(): boolean;\r\n public getPrimaryKeyColumnIndexes(): number[];\r\n public openFile(fileName: string, invert: boolean): void;\r\n public openGroup(fileName: string[], db: AnyECDb, invert: boolean): void;\r\n public openLocalChanges(db: DgnDb, includeInMemoryChanges: boolean, invert: boolean): void;\r\n public openInMemoryChanges(db: DgnDb, invert: boolean): void;\r\n public openTxn(db: DgnDb, txnId: Id64String, invert: boolean): void;\r\n public reset(): void;\r\n public step(): boolean;\r\n public writeToFile(fileName: string, containsSchemaChanges: boolean, overrideFile: boolean): void;\r\n }\r\n\r\n interface ChangesetRowValue {\r\n data: any;\r\n key: string;\r\n changeFetchedPropNames: string[]\r\n }\r\n\r\n interface ChangesetRowMetadata {\r\n tableName: string;\r\n opCode: DbOpcode;\r\n isIndirectChange: boolean;\r\n isECTable: boolean;\r\n }\r\n interface ChangesetRowData {\r\n metadata: ChangesetRowMetadata;\r\n oldValues: ChangesetRowValue | undefined;\r\n newValues: ChangesetRowValue | undefined;\r\n }\r\n\r\n class ChangesetReader {\r\n constructor();\r\n public openFile(db: AnyECDb, fileName: string, invert: boolean, propFilter: number): void;\r\n public openGroup(db: AnyECDb, fileNames: string[], invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public openLocalChanges(db: DgnDb, includeInMemoryChanges: boolean, invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public openInMemoryChanges(db: DgnDb, invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public openTxn(db: DgnDb, txnId: Id64String, invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public close(): void;\r\n public step(numOfRows: number, rowOptions: ECSqlRowAdaptorOptions): ChangesetRowData[];\r\n public setTableNameFilters(tableNames: string[]): void;\r\n public setOpCodeFilters(ops: string[]): void;\r\n public setClassNameFilters(classNames: string[]): void;\r\n public clearTableNameFilters(): void;\r\n public clearOpCodeFilters(): void;\r\n public clearClassNameFilters(): void;\r\n public enableStrictMode(): void;\r\n public disableStrictMode(): void;\r\n }\r\n\r\n class DisableNativeAssertions implements IDisposable {\r\n constructor();\r\n public dispose(): void;\r\n }\r\n\r\n class ImportContext implements IDisposable {\r\n constructor(sourceDb: DgnDb, targetDb: DgnDb);\r\n public dispose(): void;\r\n public dump(outputFileName: string): BentleyStatus;\r\n public addClass(sourceClassFullName: string, targetClassFullName: string): BentleyStatus;\r\n public addCodeSpecId(sourceId: Id64String, targetId: Id64String): BentleyStatus;\r\n public addElementId(sourceId: Id64String, targetId: Id64String): BentleyStatus;\r\n public removeElementId(sourceId: Id64String): BentleyStatus;\r\n public findCodeSpecId(sourceId: Id64String): Id64String;\r\n public findElementId(sourceId: Id64String): Id64String;\r\n public cloneElement(sourceId: Id64String, cloneOptions?: CloneElementOptions): ElementProps;\r\n public importCodeSpec(sourceId: Id64String): Id64String;\r\n public importFont(sourceId: number): number;\r\n public hasSubCategoryFilter(): boolean;\r\n public isSubCategoryFiltered(sourceId: Id64String): boolean;\r\n public filterSubCategoryId(sourceId: Id64String): BentleyStatus;\r\n public saveStateToDb(db: SQLiteDb): void;\r\n public loadStateFromDb(db: SQLiteDb): void;\r\n }\r\n\r\n interface CloneElementOptions {\r\n binaryGeometry?: boolean;\r\n }\r\n\r\n interface ChangedInstanceOpsProps {\r\n insert?: Id64String[];\r\n update?: Id64String[];\r\n delete?: Id64String[];\r\n }\r\n\r\n /** The *wire format* of the result returned by DgnDb.extractChangedInstanceIdsFromChangeSets */\r\n interface ChangedInstanceIdsProps {\r\n codeSpec?: ChangedInstanceOpsProps;\r\n model?: ChangedInstanceOpsProps;\r\n element?: ChangedInstanceOpsProps;\r\n aspect?: ChangedInstanceOpsProps;\r\n relationship?: ChangedInstanceOpsProps;\r\n font?: ChangedInstanceOpsProps;\r\n }\r\n\r\n /**\r\n * Temporary implementation to allow crashing the backend for testing purposes\r\n * @internal\r\n */\r\n class NativeDevTools {\r\n public static signal(signalType: number): boolean;\r\n public static emitLogs(count: number, category: string, severity: LogLevel, thread: \"main\" | \"worker\", onDone: () => void): void;\r\n }\r\n\r\n /**\r\n * Utilities to encode/decode names to convert them to/from names that comply with EC naming rules\r\n */\r\n class ECNameValidation {\r\n /**\r\n * Encodes names to comply with EC naming rules\r\n * @param name Name to be encoded\r\n * @returns Encoded name\r\n * @param name\r\n */\r\n public static encodeToValidName(name: string): string;\r\n\r\n /**\r\n * Decodes names that were encoded to comply with EC naming rules\r\n * @param encodedName Encoded name\r\n * @returns Decoded name\r\n */\r\n public static decodeFromValidName(encodedName: string): string;\r\n }\r\n\r\n const enum TestWorkerState {\r\n NotQueued = 0,\r\n Queued = 1,\r\n Skipped = 2,\r\n Running = 3,\r\n Ok = 4,\r\n Error = 5,\r\n Aborted = 6,\r\n }\r\n\r\n class TestWorker {\r\n public constructor(db: DgnDb);\r\n\r\n public queue(): Promise<void>;\r\n public cancel(): void;\r\n public setReady(): void;\r\n public setThrow(): void;\r\n public isCanceled(): boolean;\r\n public wasExecuted(): boolean;\r\n public getState(): TestWorkerState;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"NativeLibrary.js","sourceRoot":"","sources":["../src/NativeLibrary.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport * as os from \"node:os\";\r\nimport * as path from \"node:path\";\r\n\r\nimport type { NativeCloudSqlite } from \"./NativeCloudSqlite\";\r\n\r\n/**\r\n * @note This package may only have **dev** dependencies on @itwin packages, so they are *not* available at runtime. Therefore we can only import **types** from them.\r\n * @note You cannot use mapped types @href https://www.typescriptlang.org/docs/handbook/2/mapped-types.html from itwin imports here due to how they are resolved downstream\r\n */\r\n\r\nimport type {\r\n BentleyStatus, DbOpcode, DbResult, GuidString, Id64Array, Id64String, IModelStatus, LogLevel, OpenMode\r\n} from \"@itwin/core-bentley\";\r\nimport type {\r\n BRepGeometryCreate, ChangesetIndexAndId, CodeProps, CodeSpecProperties, FontType as CoreFontType, PerStatementHealthStats as CorePerStatementHealthStats, TxnProps as CoreTxnProps, CreateEmptyStandaloneIModelProps, DbRequest, DbResponse, ElementAspectProps,\r\n ElementGeometryBuilderParams,\r\n ElementGeometryBuilderParamsForPart,\r\n ElementGeometryCacheOperationRequestProps, ElementGeometryCacheRequestProps, ElementGeometryCacheResponseProps, ElementGeometryRequest,\r\n ElementGraphicsRequestProps, ElementLoadOptions, ElementLoadProps, ElementMeshRequestProps, ElementProps,\r\n FilePropertyProps, FontId, FontProps, GeoCoordinatesRequestProps, GeoCoordinatesResponseProps, GeographicCRSInterpretRequestProps,\r\n GeographicCRSInterpretResponseProps, GeometryContainmentResponseProps, GeometryStreamProps, ImageBuffer, ImageBufferFormat, ImageSourceFormat, IModelCoordinatesRequestProps,\r\n IModelCoordinatesResponseProps, IModelProps, LocalDirName, LocalFileName, MassPropertiesResponseProps, ModelExtentsProps, ModelLoadProps,\r\n ModelProps, PlacementProps, QueryQuota, RelationshipProps, RscFontEncodingProps, SnapRequestProps, SnapResponseProps, SnapshotOpenOptions, TextureData, TextureLoadProps, TileVersionInfo, UpgradeOptions\r\n} from \"@itwin/core-common\";\r\nimport type { LowAndHighXYZProps, Range2dProps, Range3dProps } from \"@itwin/core-geometry\";\r\n\r\n/* eslint-disable @typescript-eslint/naming-convention */\r\n/* eslint-disable no-restricted-syntax */\r\n/* eslint-disable @itwin/prefer-get */\r\n\r\n// cspell:ignore blocksize cachesize polltime bentleyjs imodeljs ecsql pollable polyface txns lzma uncompress changesets ruleset ulas oidc keychain libsecret rulesets struct\r\n\r\n/**\r\n * Status codes returned by the native bulk-delete operation.\r\n * @internal\r\n */\r\nexport enum BulkDeleteElementsStatus {\r\n Success = 0,\r\n PartialSuccess = 1,\r\n DeletionFailed = 2,\r\n}\r\n\r\n/**\r\n * Result of the bulk element deletion operation.\r\n * @internal\r\n */\r\nexport interface BulkDeleteElementsResult {\r\n status: BulkDeleteElementsStatus;\r\n sqlDeleteStatus: DbResult;\r\n failedIds: Id64Array;\r\n}\r\n\r\n/** Logger categories used by the native addon\r\n * @internal\r\n */\r\nexport const NativeLoggerCategory = {\r\n BeSQLite: \"BeSQLite\",\r\n BRepCore: \"BRepCore\",\r\n Changeset: \"Changeset\",\r\n CloudSqlite: \"CloudSqlite\",\r\n DgnCore: \"DgnCore\",\r\n ECDb: \"ECDb\",\r\n ECObjectsNative: \"ECObjectsNative\",\r\n SQLite: \"SQLite\",\r\n UnitsNative: \"UnitsNative\",\r\n} as const;\r\n\r\n/** @internal */\r\nexport interface NativeLogger {\r\n readonly minLevel: LogLevel | undefined;\r\n readonly categoryFilter: Readonly<{ [categoryName: string]: LogLevel | undefined }>;\r\n logTrace: (category: string, message: string) => void;\r\n logInfo: (category: string, message: string) => void;\r\n logWarning: (category: string, message: string) => void;\r\n logError: (category: string, message: string) => void;\r\n}\r\n\r\n/** Find and load the native node-addon library */\r\nexport class NativeLibrary {\r\n public static get archName() {\r\n // We make sure we are running in a known platform.\r\n if (typeof process === \"undefined\" || process.platform === undefined || process.arch === undefined)\r\n throw new Error(\"Error - unknown process\");\r\n return `imodeljs-${process.platform}-${process.arch}`;\r\n }\r\n public static get nodeAddonName() { return \"imodeljs.node\"; }\r\n public static get defaultLocalDir(): string {\r\n const homedir = os.homedir();\r\n const platform = os.platform() as NodeJS.Platform | \"ios\"; // we add \"ios\"\r\n switch (platform) {\r\n case \"win32\":\r\n return path.join(homedir, \"AppData\", \"Local\");\r\n case \"darwin\":\r\n case \"ios\":\r\n return path.join(homedir, \"Library\", \"Caches\");\r\n case \"linux\":\r\n case \"android\":\r\n return path.join(homedir, \".cache\");\r\n default:\r\n throw new Error(\"Error - unknown platform\");\r\n }\r\n }\r\n\r\n // This returns true if you used `linkNativePlatform.bat` to install your local addon build.\r\n public static get isDevBuild(): boolean {\r\n try {\r\n require.resolve(\"./devbuild.json\");\r\n return true;\r\n } catch {\r\n return false;\r\n }\r\n }\r\n\r\n public static get defaultCacheDir(): string { return path.join(this.defaultLocalDir, \"iModelJs\"); }\r\n private static _nativeLib?: typeof IModelJsNative;\r\n public static get nativeLib() { return this.load(); }\r\n public static load() {\r\n if (!this._nativeLib) {\r\n try {\r\n const platform = os.platform() as NodeJS.Platform | \"ios\"; // we add \"ios\"\r\n if (platform === \"ios\" || platform === \"android\") {\r\n this._nativeLib = (process as any)._linkedBinding(\"iModelJsNative\") as typeof IModelJsNative;\r\n } else {\r\n this._nativeLib =\r\n require(`./${NativeLibrary.archName}/${NativeLibrary.nodeAddonName}`) as typeof IModelJsNative; // eslint-disable-line @typescript-eslint/no-require-imports\r\n }\r\n } catch (err: any) {\r\n err.message += \"\\nThis error may occur when trying to run an iTwin.js backend without\"\r\n + \" having installed the prerequisites. See the following link for all prerequisites:\"\r\n + \"\\nhttps://www.itwinjs.org/learning/supportedplatforms/#backend-prerequisites\";\r\n throw err;\r\n }\r\n if (this.isDevBuild)\r\n // eslint-disable-next-line no-console\r\n console.log(\"\\x1b[36m\", `using dev build from ${__dirname}\\n`, \"\\x1b[0m\");\r\n }\r\n return this._nativeLib;\r\n }\r\n}\r\n\r\n/** WAL checkpoint mode\r\n * @internal\r\n */\r\nexport const enum WalCheckpointMode {\r\n Passive = 0, /* Do as much as possible w/o blocking */\r\n Full = 1, /* Wait for writers, then checkpoint */\r\n Restart = 2, /* Like FULL but wait for for readers */\r\n Truncate = 3, /* Like RESTART but also truncate WAL */\r\n}\r\n\r\n/** Possible outcomes of generateElementGraphics.\r\n* Must be kept in sync with Dgn::Tile::Graphics::TileGraphicsStatus.\r\n* @internal\r\n*/\r\nexport const enum ElementGraphicsStatus {\r\n Success = 0, // Non-null content as Uint8Array.\r\n Canceled = 1, // e.g., front-end explicitly canceled, iModel was closed while processing request, etc.\r\n NoGeometry = 2, // Not an error per se\r\n InvalidJson = 3,\r\n UnknownMajorFormatVersion = 4,\r\n ElementNotFound = 5,\r\n DuplicateRequestId = 6,\r\n}\r\n\r\n/** Possible outcomes of exportSchema[s] (and generally writing schemas)\r\n* Must be kept in sync with ECN::SchemaWriteStatus\r\n* @internal\r\n*/\r\nexport const enum SchemaWriteStatus {\r\n Success = 0,\r\n FailedToSaveXml = 1,\r\n FailedToCreateXml = 2,\r\n FailedToCreateJson = 3,\r\n FailedToWriteFile = 4,\r\n}\r\n\r\n/** Module that declares the IModelJs native code.\r\n * @internal\r\n */\r\nexport declare namespace IModelJsNative {\r\n interface NameValuePair {\r\n name: string;\r\n value: string;\r\n }\r\n\r\n /** any type of Db that supports EC */\r\n type AnyECDb = DgnDb | ECDb;\r\n /** any type of Db */\r\n type AnyDb = AnyECDb | SQLiteDb;\r\n\r\n /** A string that identifies a Txn. */\r\n type TxnIdString = string;\r\n\r\n interface NativeCrashReportingConfig {\r\n /** The directory to which *.dmp and/or iModelJsNativeCrash*.properties.txt files are written. */\r\n crashDir: string;\r\n /** Write .dmp files to crashDir? The default is false. Even if writeDumpsToCrashDir is false, the iModelJsNativeCrash*.properties.txt file will be written to crashDir. */\r\n enableCrashDumps?: boolean;\r\n /** max # .dmp files that may exist in crashDir */\r\n maxDumpsInDir?: number;\r\n /** If writeDumpsToCrashDir is true, do you want a full-memory dump? Defaults to false. */\r\n wantFullMemory?: boolean;\r\n /** Additional name, value pairs to add as meta data to a crash report. */\r\n params?: NameValuePair[];\r\n }\r\n\r\n let logger: NativeLogger;\r\n function setMaxTileCacheSize(maxBytes: number): void;\r\n function getTileVersionInfo(): TileVersionInfo;\r\n function setCrashReporting(cfg: NativeCrashReportingConfig): void;\r\n function setCrashReportProperty(name: string, value: string | undefined): void;\r\n function getCrashReportProperties(): NameValuePair[];\r\n function clearLogLevelCache(): void;\r\n function addFontWorkspace(fileName: LocalFileName, container?: CloudContainer): boolean;\r\n function addGcsWorkspaceDb(dbNames: string, container?: CloudContainer, priority?: number): boolean;\r\n function enableLocalGcsFiles(yesNo: boolean): void;\r\n /** Enable or disable the monotone-clock SQLite VFS shim. When enabled, every call\r\n * to SQLite's time functions returns a strictly increasing value, preventing test\r\n * failures caused by the millisecond-resolution system clock returning identical\r\n * timestamps for rapid successive operations. Call with `false` to restore the\r\n * original default VFS. Must be called after the native library is initialized.\r\n */\r\n function enableMonotoneClock(enable: boolean): void;\r\n function queryConcurrency(pool: \"io\" | \"cpu\"): number;\r\n\r\n interface TrueTypeFontMetadata {\r\n faces: FontFaceProps[];\r\n embeddable: boolean;\r\n }\r\n\r\n function getTrueTypeFontMetadata(fileName: LocalFileName): TrueTypeFontMetadata;\r\n function isRscFontData(blob: Uint8Array): boolean;\r\n\r\n function imageBufferFromImageSource(\r\n sourceFormat: ImageSourceFormat.Png | ImageSourceFormat.Jpeg,\r\n sourceData: Uint8Array,\r\n targetFormat: ImageBufferFormat.Rgb | ImageBufferFormat.Rgba | 255,\r\n flipVertically: boolean\r\n ): Pick<ImageBuffer, \"data\" | \"format\" | \"width\"> | undefined;\r\n\r\n function imageSourceFromImageBuffer(\r\n imageFormat: ImageBufferFormat.Rgb | ImageBufferFormat.Rgba,\r\n imageData: Uint8Array,\r\n imageWidth: number,\r\n imageHeight: number,\r\n targetFormat: ImageSourceFormat.Png | ImageSourceFormat.Jpeg | 255,\r\n flipVertically: boolean,\r\n jpegQuality: number\r\n ): { format: ImageSourceFormat.Jpeg | ImageSourceFormat.Png, data: Uint8Array } | undefined;\r\n\r\n /** Get the SHA1 hash of a Schema XML file, possibly including its referenced Schemas */\r\n function computeSchemaChecksum(arg: {\r\n /** the full path to the root schema XML file */\r\n schemaXmlPath: string;\r\n /** A list of directories to find referenced schemas */\r\n referencePaths: string[];\r\n /** If true, the returned SHA1 includes the hash of all referenced schemas */\r\n exactMatch?: boolean;\r\n }): string;\r\n\r\n /** When you want to associate an explanatory message with an error status value. */\r\n interface StatusCodeWithMessage<ErrorCodeType> {\r\n status: ErrorCodeType;\r\n message: string;\r\n }\r\n\r\n /** The return type of synchronous functions that may return an error or a successful result. */\r\n type ErrorStatusOrResult<ErrorCodeType, ResultType> = {\r\n /** Error from the operation. This property is defined if and only if the operation failed. */\r\n error: StatusCodeWithMessage<ErrorCodeType>;\r\n result?: never;\r\n } | {\r\n error?: never;\r\n /** Result of the operation. This property is defined if the operation completed successfully */\r\n result: ResultType;\r\n };\r\n\r\n namespace ConcurrentQuery {\r\n /**\r\n * @internal\r\n */\r\n type OnResponse = (response: DbResponse) => void;\r\n /** Configuration for concurrent query manager\r\n * @internal\r\n */\r\n }\r\n interface IConcurrentQueryManager {\r\n concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;\r\n concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;\r\n concurrentQueryShutdown(): void;\r\n }\r\n\r\n /** Concurrent query config which should be set before making first call to concurrent query manager.\r\n * @internal\r\n */\r\n export interface QueryConfig {\r\n globalQuota?: QueryQuota;\r\n ignoreDelay?: boolean;\r\n ignorePriority?: boolean;\r\n requestQueueSize?: number;\r\n workerThreads?: number;\r\n }\r\n\r\n interface TileContent {\r\n content: Uint8Array;\r\n elapsedSeconds: number;\r\n }\r\n /** Represents the current state of a pollable tile content request.\r\n * Note: lack of a \"completed\" state because polling a completed request returns the content as a Uint8Array.\r\n * @internal\r\n */\r\n const enum TileContentState {\r\n New = 0, // Request was just created and enqueued.\r\n Pending = 1, // Request is enqueued but not yet being processed.\r\n Loading = 2, // Request is being actively processed.\r\n }\r\n\r\n /** Result of generateElementGraphics conveying graphics as Uint8Array.\r\n * @internal\r\n */\r\n export interface ElementGraphicsContent {\r\n status: ElementGraphicsStatus.Success;\r\n content: Uint8Array;\r\n }\r\n\r\n /** Result of generateElementGraphics that produced no graphics.\r\n * @internal\r\n */\r\n export interface ElementGraphicsError {\r\n status: Exclude<ElementGraphicsStatus, ElementGraphicsStatus.Success>;\r\n }\r\n\r\n /** The result of generateElementGraphics.\r\n * @note generateElementGraphics produces a Promise<ElementGraphicsResult>. It only ever rejects if some unforeseen error like \"iModel not open\" or \"type error\" occurs.\r\n * @internal\r\n */\r\n export type ElementGraphicsResult = ElementGraphicsContent | ElementGraphicsError;\r\n\r\n /** Instance key for a change\r\n * @internal\r\n */\r\n export interface ChangeInstanceKey {\r\n id: Id64String;\r\n classFullName: string;\r\n changeType: \"inserted\" | \"updated\" | \"deleted\";\r\n }\r\n\r\n /** Information returned by DgnDb.queryDefinitionElementUsage. */\r\n interface DefinitionElementUsageInfo {\r\n /** The subset of input Ids that are SpatialCategory definitions. */\r\n spatialCategoryIds?: Id64String[];\r\n /** The subset of input Ids that are DrawingCategory definitions. */\r\n drawingCategoryIds?: Id64String[];\r\n /** The subset of input Ids that are SubCategory definitions. */\r\n subCategoryIds?: Id64String[];\r\n /** The subset of input Ids that are CategorySelectors. */\r\n categorySelectorIds?: Id64String[];\r\n /** The subset of input Ids that are ModelSelectors. */\r\n modelSelectorIds?: Id64String[];\r\n /** The subset of input Ids that are DisplayStyles. */\r\n displayStyleIds?: Id64String[];\r\n /** The subset of input Ids that are ViewDefinitions. */\r\n viewDefinitionIds?: Id64String[];\r\n /** The subset of input Ids that are GeometryParts. */\r\n geometryPartIds?: Id64String[];\r\n /** The subset of input Ids that are RenderMaterials. */\r\n renderMaterialIds?: Id64String[];\r\n /** The subset of input Ids that are LineStyles. */\r\n lineStyleIds?: Id64String[];\r\n /** The subset of input Ids that are Textures. */\r\n textureIds?: Id64String[];\r\n /** Ids of *other* input DefinitionElements that were not checked for usage. */\r\n otherDefinitionElementIds?: Id64String[];\r\n /** Ids of input DefinitionElements where usage was detected. */\r\n usedIds?: Id64String[];\r\n }\r\n\r\n /**\r\n * Represents all of the valid EC Specification Versions.\r\n */\r\n const enum ECVersion {\r\n V2_0 = (0x02 << 16),\r\n V3_1 = (0x03 << 16 | 0x01),\r\n V3_2 = (0x03 << 16 | 0x02),\r\n Latest = V3_2,\r\n }\r\n\r\n interface ChangesetFileProps {\r\n index: number;\r\n id: string;\r\n parentId: string;\r\n changesType: number;\r\n description: string;\r\n briefcaseId: number;\r\n pushDate: string;\r\n userCreated: string;\r\n size?: number;\r\n uncompressedSize?: number;\r\n pathname: string;\r\n }\r\n\r\n /** @see `PerStatementHealthStats` from `@itwin/core-common` */\r\n type PerStatementHealthStats = CorePerStatementHealthStats;\r\n\r\n interface ChangesetHealthStats {\r\n changesetId: string;\r\n changesetIndex: number;\r\n uncompressedSizeBytes: number;\r\n sha1ValidationTimeMs: number;\r\n insertedRows: number;\r\n updatedRows: number;\r\n deletedRows: number;\r\n totalElapsedMs: number;\r\n totalFullTableScans: number;\r\n perStatementStats: PerStatementHealthStats[];\r\n }\r\n interface ECSqlRowAdaptorOptions {\r\n abbreviateBlobs?: boolean;\r\n classIdsToClassNames?: boolean;\r\n useJsName?: boolean;\r\n doNotConvertClassIdsToClassNamesWhenAliased?: boolean; // backward compatibility\r\n }\r\n\r\n interface EmbeddedFileProps {\r\n name: string;\r\n localFileName: string;\r\n }\r\n\r\n interface EmbedFileArg extends EmbeddedFileProps {\r\n date: number;\r\n fileExt?: string;\r\n compress?: boolean;\r\n }\r\n\r\n interface EmbedFileQuery {\r\n size: number;\r\n date: number;\r\n fileExt: string;\r\n }\r\n\r\n /** @see `RscFontEncodingProps` from `@itwin/core-common` */\r\n type FontEncodingProps = RscFontEncodingProps;\r\n\r\n interface ResolveInstanceKeyArgs {\r\n partialKey?: { id: Id64String, baseClassName: string };\r\n federationGuid?: GuidString;\r\n code?: CodeProps;\r\n }\r\n\r\n interface ResolveInstanceKeyResult {\r\n id: Id64String;\r\n classFullName: string;\r\n }\r\n\r\n /** @see `FontType` from `@itwin/core-common` */\r\n type FontType = CoreFontType;\r\n\r\n interface FontFaceProps {\r\n faceName: \"regular\" | \"italic\" | \"bold\" | \"bolditalic\";\r\n familyName: string;\r\n type: FontType;\r\n subId?: number;\r\n encoding?: FontEncodingProps;\r\n }\r\n\r\n interface SQLiteOps {\r\n embedFile(arg: EmbedFileArg): void;\r\n embedFontFile(id: number, faces: FontFaceProps[], data: Uint8Array, compress: boolean): void;\r\n extractEmbeddedFile(arg: EmbeddedFileProps): void;\r\n getFilePath(): string;\r\n getLastInsertRowId(): number;\r\n getLastError(): string;\r\n isOpen(): boolean;\r\n isReadonly(): boolean;\r\n queryEmbeddedFile(name: string): EmbedFileQuery | undefined;\r\n queryFileProperty(props: FilePropertyProps, wantString: boolean): string | Uint8Array | undefined;\r\n queryNextAvailableFileProperty(props: FilePropertyProps): number;\r\n removeEmbeddedFile(name: string): void;\r\n replaceEmbeddedFile(arg: EmbedFileArg): void;\r\n restartDefaultTxn(): void;\r\n saveChanges(): void;\r\n saveFileProperty(props: FilePropertyProps, strValue: string | undefined, blobVal: Uint8Array | undefined): void;\r\n vacuum(arg?: { pageSize?: number, into?: LocalFileName }): void;\r\n analyze(): void;\r\n enableWalMode(yesNo?: boolean): void;\r\n /** perform a checkpoint if this db is in WAL mode. Otherwise this function does nothing.\r\n * @param mode the checkpoint mode. Default is `Truncate`.\r\n */\r\n performCheckpoint(mode?: WalCheckpointMode): void;\r\n setAutoCheckpointThreshold(frames: number): void;\r\n }\r\n\r\n /** The result of DgnDb.inlineGeometryParts.\r\n * If numSingleRefParts, numRefsInlined, and numPartsDeleted are all the same, the operation was fully successful.\r\n * Otherwise, some errors occurred inlining and/or deleting one or more parts.\r\n * A part will not be deleted unless it is first successfully inlined.\r\n */\r\n interface InlineGeometryPartsResult {\r\n /** The number of parts that were determined to have exactly one reference, making them candidates for inlining. */\r\n numCandidateParts: number;\r\n /** The number of part references successfully inlined. */\r\n numRefsInlined: number;\r\n /** The number of candidate parts that were successfully deleted after inlining. */\r\n numPartsDeleted: number;\r\n }\r\n\r\n interface SchemaReferenceProps {\r\n readonly name: string;\r\n readonly version: string;\r\n }\r\n\r\n interface SchemaItemProps {\r\n readonly $schema?: string;\r\n readonly schema?: string; // conditionally required\r\n readonly schemaVersion?: string;\r\n readonly name?: string;\r\n readonly schemaItemType?: string;\r\n readonly label?: string;\r\n readonly description?: string;\r\n readonly customAttributes?: Array<{ [value: string]: any }>;\r\n }\r\n\r\n interface SchemaProps {\r\n readonly $schema: string;\r\n readonly name: string;\r\n readonly version: string;\r\n readonly alias: string;\r\n readonly label?: string;\r\n readonly description?: string;\r\n readonly references?: SchemaReferenceProps[];\r\n readonly items?: { [name: string]: SchemaItemProps };\r\n readonly customAttributes?: Array<{ [value: string]: any }>;\r\n }\r\n\r\n interface SchemaImportOptions {\r\n readonly schemaLockHeld?: boolean;\r\n readonly skipSaveChanges?: boolean;\r\n readonly schemaSyncDbUri?: string;\r\n readonly ecSchemaXmlContext?: ECSchemaXmlContext;\r\n }\r\n\r\n interface SchemaLocalDbInfo {\r\n readonly id: string;\r\n readonly dataVer: string;\r\n readonly lastModUtc: string;\r\n }\r\n\r\n interface SchemaSyncDbInfo extends SchemaLocalDbInfo {\r\n readonly projectId: string;\r\n readonly parentChangesetId: string;\r\n readonly parentChangesetIndex?: string;\r\n }\r\n\r\n const enum SchemaSyncRepairScope {\r\n SchemaMetadata = 0,\r\n SchemaMetadataAndProfile = 1,\r\n }\r\n\r\n /** @see `TxnProps` from `@itwin/core-common` */\r\n export type TxnProps = CoreTxnProps;\r\n type GeometryOutputFormat = \"BinaryStream\" | \"GeometryStreamProps\";\r\n interface IGeometrySource {\r\n geom?: Uint8Array | GeometryStreamProps;\r\n builder?: ElementGeometryBuilderParams;\r\n placement?: PlacementProps;\r\n categoryId?: Id64String;\r\n is2d: boolean;\r\n }\r\n\r\n\r\n interface IGeometryPart {\r\n geom?: Uint8Array | GeometryStreamProps;\r\n builder?: ElementGeometryBuilderParamsForPart;\r\n is2d: boolean;\r\n bbox?: LowAndHighXYZProps;\r\n }\r\n\r\n\r\n\r\n\r\n /** @see `ModelExtentsProps` from `@itwin/core-common` */\r\n type ModelExtentsResponseProps = ModelExtentsProps;\r\n\r\n interface TextLayoutRangesProps {\r\n layout: Range2dProps;\r\n justification: Range2dProps;\r\n }\r\n\r\n enum TextEmphasis { None = 0, Bold = 1, Italic = 2, BoldItalic = Bold | Italic }\r\n\r\n type NoCaseCollation = \"ASCII\" | \"Latin1\";\r\n\r\n /** The native object for a Briefcase. */\r\n class DgnDb implements IConcurrentQueryManager, SQLiteOps {\r\n constructor();\r\n public readonly cloudContainer?: CloudContainer;\r\n public attachDb(filename: string, alias: string): void;\r\n public detachDb(alias: string): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public getNoCaseCollation(): NoCaseCollation;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public setNoCaseCollation(collation: NoCaseCollation): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncSetDefaultUri(syncDbUri: string): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncGetDefaultUri(): string;\r\n public schemaSyncInit(syncDbUri: string, containerId: string, overrideContainer: boolean): void;\r\n /** Rebuild the sync db from this file, for a change this file had to make locally - a profile upgrade. */\r\n public schemaSyncOverwrite(syncDbUri?: string): void;\r\n public schemaSyncRepair(syncDbUri: string, scope: SchemaSyncRepairScope): void;\r\n /** Materialize the tables and indexes described by the ec_ rows after merging a schema changeset. */\r\n public schemaSyncUpdateDbSchema(): void;\r\n public schemaSyncEnabled(): boolean;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncGetLocalDbInfo(): SchemaLocalDbInfo | undefined;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncGetSyncDbInfo(syncDbUri: string): SchemaSyncDbInfo | undefined;\r\n public abandonChanges(): DbResult;\r\n public abandonCreateChangeset(): void;\r\n public addChildPropagatesChangesToParentRelationship(schemaName: string, relClassName: string): BentleyStatus;\r\n public invalidateFontMap(): void;\r\n public applyChangeset(changeSet: ChangesetFileProps, fastForward: boolean, noUpdateLoop?: boolean): void;\r\n public revertTimelineChanges(changeSet: ChangesetFileProps[], skipSchemaChanges: boolean): void;\r\n public attachChangeCache(changeCachePath: string): DbResult;\r\n public beginMultiTxnOperation(): DbResult;\r\n public beginPurgeOperation(): IModelStatus;\r\n public cancelElementGraphicsRequests(requestIds: string[]): void;\r\n public cancelTileContentRequests(treeId: string, contentIds: string[]): void;\r\n /** Reverse and cancel every txn back to `txnId`.\r\n * @param allowCrossSessions also cancel txns from earlier undo sessions. Saving a schema txn starts a new\r\n * session, so this is the only way to back one out.\r\n */\r\n public cancelTo(txnId: TxnIdString, allowCrossSessions?: boolean): IModelStatus;\r\n public classIdToName(idString: string): string | undefined;\r\n public classNameToId(className: string): Id64String;\r\n public closeFile(): void;\r\n public completeCreateChangeset(arg: { index: number }): void;\r\n public computeProjectExtents(wantFullExtents: boolean, wantOutlierIds: boolean): { extents: Range3dProps, fullExtents?: Range3dProps, outliers?: Id64Array };\r\n public computeRangesForText(chars: string, fontId: FontId, bold: boolean, italic: boolean, widthFactor: number, height: number): TextLayoutRangesProps;\r\n public concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;\r\n public concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;\r\n public concurrentQueryShutdown(): void;\r\n public createBRepGeometry(createProps: BRepGeometryCreate): IModelStatus;\r\n public createChangeCache(changeCacheFile: ECDb, changeCachePath: string): DbResult;\r\n public createClassViewsInDb(): BentleyStatus;\r\n public createIModel(fileName: string, props: CreateEmptyStandaloneIModelProps): void;\r\n public deleteAllTxns(): void;\r\n public deleteElement(elemIdJson: string): void;\r\n public deleteElements(elementIds: Id64Array, deleteOptions?: { skipFKConstraintValidations?: boolean }): BulkDeleteElementsResult;\r\n public deleteElementAspect(aspectIdJson: string): void;\r\n public deleteLinkTableRelationship(props: RelationshipProps): DbResult;\r\n public deleteLinkTableRelationships(props: ReadonlyArray<RelationshipProps>): DbResult;\r\n public deleteLocalValue(name: string): void;\r\n public deleteModel(modelIdJson: string): void;\r\n public detachChangeCache(): number;\r\n public dropSchemas(schemaNames: ReadonlyArray<string>): void;\r\n /** @not-used-by-itwinjs-core */\r\n public dumpChangeset(changeSet: ChangesetFileProps): void;\r\n public elementGeometryCacheOperation(requestProps: ElementGeometryCacheOperationRequestProps): BentleyStatus;\r\n public embedFile(arg: EmbedFileArg): void;\r\n public embedFontFile(id: number, faces: FontFaceProps[], data: Uint8Array, compress: boolean): void;\r\n public enableChangesetSizeStats(enabled: boolean): DbResult;\r\n public enableTxnTesting(): void;\r\n public endMultiTxnOperation(): DbResult;\r\n public endPurgeOperation(): IModelStatus;\r\n public executeTest(testName: string, params: string): string;\r\n public exportGraphics(exportProps: any/* ExportGraphicsOptions from @itwin/core-backend */): DbResult;\r\n public exportPartGraphics(exportProps: any/* ExportPartGraphicsOptions from @itwin/core-backend */): DbResult;\r\n public exportGraphicsAsync(exportProps: any/* ExportGraphicsOptions from @itwin/core-backend */): Promise<void>;\r\n public exportPartGraphicsAsync(exportProps: any/* ExportPartGraphicsOptions from @itwin/core-backend */): Promise<void>;\r\n public exportSchema(schemaName: string, exportDirectory: string, outFileName?: string): SchemaWriteStatus;\r\n public exportSchemas(exportDirectory: string): SchemaWriteStatus;\r\n /** @not-used-by-itwinjs-core */\r\n public extractChangedInstanceIdsFromChangeSets(changeSetFileNames: string[]): ErrorStatusOrResult<IModelStatus, ChangedInstanceIdsProps>;\r\n public extractChangeSummary(changeCacheFile: ECDb, changesetFilePath: string): ErrorStatusOrResult<DbResult, string>;\r\n public extractEmbeddedFile(arg: EmbeddedFileProps): void;\r\n public findGeometryPartReferences(partIds: Id64String[], is2d: boolean): Id64String[];\r\n public generateElementGraphics(request: ElementGraphicsRequestProps): Promise<ElementGraphicsResult>;\r\n public generateElementMeshes(request: ElementMeshRequestProps): Promise<Uint8Array>;\r\n public getBriefcaseId(): number;\r\n public getChangesetSize(): number;\r\n public getChangeTrackingMemoryUsed(): number;\r\n public getCodeValueBehavior(): \"exact\" | \"trim-unicode-whitespace\";\r\n public getCurrentChangeset(): ChangesetIndexAndId;\r\n public getCurrentTxnId(): TxnIdString;\r\n public getECClassMetaData(schema: string, className: string): ErrorStatusOrResult<IModelStatus, string>;\r\n public getElement(opts: ElementLoadProps): ElementProps;\r\n public executeSql(sql: string): DbResult;\r\n public getFilePath(): string; // full path of the DgnDb file\r\n public getGeoCoordinatesFromIModelCoordinates(points: GeoCoordinatesRequestProps): GeoCoordinatesResponseProps;\r\n public getGeometryContainment(props: object): Promise<GeometryContainmentResponseProps>;\r\n public getIModelCoordinatesFromGeoCoordinates(points: IModelCoordinatesRequestProps): IModelCoordinatesResponseProps;\r\n public getIModelId(): GuidString;\r\n public getIModelProps(when?: \"pullMerge\"): IModelProps;\r\n public resolveInstanceKey(args: ResolveInstanceKeyArgs): ResolveInstanceKeyResult;\r\n public readInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): NodeJS.Dict<any>;\r\n public insertInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): Id64String;\r\n public updateInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public deleteInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public patchJsonProperties(jsonProps: string): string;\r\n public newBeGuid(): GuidString;\r\n\r\n public clearECDbCache(): void;\r\n\r\n public convertOrUpdateGeometrySource(arg: IGeometrySource, outFmt: GeometryOutputFormat, opts: ElementLoadOptions): IGeometrySource;\r\n public convertOrUpdateGeometryPart(arg: IGeometryPart, outFmt: GeometryOutputFormat, opts: ElementLoadOptions): IGeometryPart;\r\n\r\n // when lets getIModelProps know that the extents may have been updated as the result of a pullChanges and should be read directly from the iModel as opposed to the cached extents.\r\n public getITwinId(): GuidString;\r\n public getLastError(): string;\r\n public getLastInsertRowId(): number;\r\n public getLocalChanges(rootClassFilter: string[], includeInMemoryChanges: boolean): ChangeInstanceKey[]\r\n public getMassProperties(props: object): Promise<MassPropertiesResponseProps>;\r\n public getModel(opts: ModelLoadProps): ModelProps;\r\n public getMultiTxnOperationDepth(): number;\r\n public getRedoString(): string;\r\n public getSchemaProps(name: string): SchemaProps;\r\n public getSchemaPropsAsync(name: string): Promise<SchemaProps>;\r\n public getSchemaItem(schemaName: string, itemName: string): ErrorStatusOrResult<IModelStatus, string>;\r\n public getTempFileBaseName(): string;\r\n public getTileContent(treeId: string, tileId: string, callback: (result: ErrorStatusOrResult<IModelStatus, Uint8Array>) => void): void;\r\n public getTileTree(id: string, callback: (result: ErrorStatusOrResult<IModelStatus, any>) => void): void;\r\n public getTxnDescription(txnId: TxnIdString): string;\r\n public getUndoString(): string;\r\n public hasFatalTxnError(): boolean;\r\n public hasPendingTxns(): boolean;\r\n public hasUnsavedChanges(): boolean;\r\n public importFunctionalSchema(): DbResult;\r\n public importSchemasDuringSemanticRebase(schemaFileNames: string[], options?: SchemaImportOptions): void;\r\n public importSchemas(schemaFileNames: string[], options?: SchemaImportOptions): DbResult;\r\n public importXmlSchemas(serializedXmlSchemas: string[], options?: SchemaImportOptions): DbResult;\r\n public inlineGeometryPartReferences(): InlineGeometryPartsResult;\r\n public insertCodeSpec(name: string, jsonProperties: CodeSpecProperties): Id64String;\r\n public insertElement(elemProps: ElementProps, options?: { forceUseId?: boolean }): Id64String;\r\n public insertElementAspect(aspectProps: ElementAspectProps): Id64String;\r\n public insertLinkTableRelationship(props: RelationshipProps): Id64String;\r\n public insertModel(modelProps: ModelProps): Id64String;\r\n public isChangeCacheAttached(): boolean;\r\n public isGeometricModelTrackingSupported(): boolean;\r\n public isLinkTableRelationship(classFullName: string): boolean | undefined;\r\n public isOpen(): boolean;\r\n /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */\r\n public isProfilerPaused(): boolean;\r\n /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */\r\n public isProfilerRunning(): boolean;\r\n public isReadonly(): boolean;\r\n public isRedoPossible(): boolean;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public isSubClassOf(childClassFullName: string, parentClassFullName: string): boolean;\r\n public isTxnIdValid(txnId: TxnIdString): boolean;\r\n public isUndoPossible(): boolean;\r\n public logTxnError(fatal: boolean): void;\r\n public openIModel(dbName: string, mode: OpenMode, upgradeOptions?: UpgradeOptions & SchemaImportOptions, props?: SnapshotOpenOptions, container?: CloudContainer, sqliteOptions?: { busyTimeout?: number }): void;\r\n /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */\r\n public pauseProfiler(): DbResult;\r\n public pollTileContent(treeId: string, tileId: string): ErrorStatusOrResult<IModelStatus, TileContentState | TileContent>;\r\n public processGeometryStream(requestProps: ElementGeometryRequest): IModelStatus;\r\n public purgeTileTrees(modelIds: Id64Array | undefined): void;\r\n public queryDefinitionElementUsage(definitionElementIds: Id64Array): DefinitionElementUsageInfo | undefined;\r\n public queryEmbeddedFile(name: string): EmbedFileQuery | undefined;\r\n public queryFileProperty(props: FilePropertyProps, wantString: boolean): string | Uint8Array | undefined;\r\n public queryFirstTxnId(): TxnIdString;\r\n public queryLocalValue(name: string): string | undefined;\r\n // ###TODO mark deprecated use queryModelExtentsAsync\r\n public queryModelExtents(options: { id: Id64String }): { modelExtents: Range3dProps };\r\n public queryModelExtentsAsync(modelIds: Id64String[]): Promise<ModelExtentsResponseProps[]>;\r\n public queryNextAvailableFileProperty(props: FilePropertyProps): number;\r\n public queryNextTxnId(txnId: TxnIdString): TxnIdString;\r\n public queryPreviousTxnId(txnId: TxnIdString): TxnIdString;\r\n public queryTextureData(opts: TextureLoadProps): Promise<TextureData | undefined>;\r\n public readFontMap(): { fonts: FontProps[] };\r\n public reinstateTxn(): IModelStatus;\r\n public getNextReinstateTxnRange(): { firstTxnId: TxnIdString, lastTxnId: TxnIdString };\r\n public removeEmbeddedFile(name: string): void;\r\n public replaceEmbeddedFile(arg: EmbedFileArg): void;\r\n public resetBriefcaseId(idValue: number): void;\r\n public restartDefaultTxn(): void;\r\n public restartTxnSession(): void;\r\n public currentTxnSessionId(): number;\r\n /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */\r\n public resumeProfiler(): DbResult;\r\n public reverseAll(): IModelStatus;\r\n public reverseTo(txnId: TxnIdString): IModelStatus;\r\n public reverseTxns(numOperations: number): IModelStatus;\r\n public saveChanges(description?: string): DbResult;\r\n public saveFileProperty(props: FilePropertyProps, strValue: string | undefined, blobVal: Uint8Array | undefined): void;\r\n public saveLocalValue(name: string, value: string | undefined): void;\r\n public schemaToXmlString(schemaName: string, version?: ECVersion): string | undefined;\r\n public setGeometricModelTrackingEnabled(enabled: boolean): ErrorStatusOrResult<IModelStatus, boolean>;\r\n public setIModelDb(iModelDb?: any/* IModelDb from @itwin/core-backend */): void;\r\n public setIModelId(guid: GuidString): DbResult;\r\n public setITwinId(guid: GuidString): DbResult;\r\n /** @not-used-by-itwinjs-core */\r\n public setBusyTimeout(ms: number): void;\r\n public setCodeValueBehavior(newBehavior: \"exact\" | \"trim-unicode-whitespace\"): void;\r\n public simplifyElementGeometry(simplifyArgs: any/* SimplifyElementGeometryArgs from @itwin/core-backend */): IModelStatus;\r\n public startCreateChangeset(): ChangesetFileProps;\r\n /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */\r\n public startProfiler(scopeName?: string, scenarioName?: string, overrideFile?: boolean, computeExecutionPlan?: boolean): DbResult;\r\n /** @not-used-by-itwinjs-core Part of the SQLite profiler API, which iTwin.js does not surface. */\r\n public stopProfiler(): { rc: DbResult, elapsedTime?: number, scopeId?: number, fileName?: string };\r\n public enableChangesetStatsTracking(): void;\r\n public disableChangesetStatsTracking(): void;\r\n /** @not-used-by-itwinjs-core Core calls `getAllChangesetHealthData` instead. */\r\n public getChangesetHealthData(changesetId: string): ChangesetHealthStats;\r\n public getAllChangesetHealthData(): ChangesetHealthStats[];\r\n public updateElement(elemProps: Partial<ElementProps>): void;\r\n public changeElementParent(props: { id: Id64String, parentId: Id64String }): void;\r\n public changeElementModel(props: { id: Id64String, modelId: Id64String }): void;\r\n public updateElementAspect(aspectProps: ElementAspectProps): void;\r\n public updateElementGeometryCache(props: ElementGeometryCacheRequestProps): Promise<ElementGeometryCacheResponseProps>;\r\n public updateIModelProps(props: IModelProps): void;\r\n public updateLinkTableRelationship(props: RelationshipProps): DbResult;\r\n public updateModel(modelProps: ModelProps): void;\r\n public updateModelGeometryGuid(modelId: Id64String): IModelStatus;\r\n public updateProjectExtents(newExtentsJson: string): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public writeAffectedElementDependencyGraphToFile(dotFileName: string, changedElems: Id64Array): BentleyStatus;\r\n public writeFullElementDependencyGraphToFile(dotFileName: string): BentleyStatus;\r\n public vacuum(arg?: { pageSize?: number, into?: LocalFileName }): void;\r\n public analyze(): void;\r\n public enableWalMode(yesNo?: boolean): void;\r\n public performCheckpoint(mode?: WalCheckpointMode): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public setAutoCheckpointThreshold(frames: number): void;\r\n\r\n public pullMergeGetStage(): \"None\" | \"Merging\" | \"Rebasing\";\r\n public pullMergeRebaseReinstateTxn(): void;\r\n public pullMergeRebaseUpdateTxn(): void;\r\n public pullMergeRebaseNext(): TxnIdString | undefined;\r\n public pullMergeRebaseAbortTxn(): void\r\n public pullMergeRebaseBegin(): TxnIdString[];\r\n public pullMergeRebaseEnd(): void;\r\n public pullMergeReverseLocalChanges(captureInstanceChanges?: boolean): TxnIdString[];\r\n public stashChanges(args: { stashRootDir: string, description: string, iModelId: string, resetBriefcase?: true}): any;\r\n public stashRestore(stashFile: string): void;\r\n /** @not-used-by-itwinjs-core */\r\n public getPendingTxnsHash(includeReversedTxns: boolean): string;\r\n public hasPendingSchemaChanges(): boolean;\r\n public discardLocalChanges(): void;\r\n public getTxnProps(id: TxnIdString): TxnProps | undefined;\r\n public setTxnMode(mode: \"direct\" | \"indirect\"): void;\r\n public getTxnMode(): \"direct\" | \"indirect\";\r\n /** @not-used-by-itwinjs-core */\r\n public static enableSharedCache(enable: boolean): DbResult;\r\n public static getAssetsDir(): string;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public static zlibCompress(data: Uint8Array): Uint8Array;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public static zlibDecompress(data: Uint8Array, actualSize: number): Uint8Array;\r\n public static computeChangesetId(args: Partial<ChangesetFileProps> & Required<Pick<ChangesetFileProps, \"parentId\" | \"pathname\">>): string;\r\n }\r\n\r\n /** The native object for GeoServices. */\r\n class GeoServices {\r\n constructor();\r\n public static getGeographicCRSInterpretation(props: GeographicCRSInterpretRequestProps): GeographicCRSInterpretResponseProps;\r\n public static getListOfCRS(extent?: Range2dProps, includeWorld?: boolean, unit?: string): Array<{ name: string, description: string, deprecated: boolean, crsExtent: Range2dProps, unit: string }>;\r\n public static getAvailableUnitNames(): string[];\r\n }\r\n\r\n /**\r\n * The native object for SchemaUtility\r\n * @internal\r\n */\r\n class SchemaUtility {\r\n constructor();\r\n /** Converts given schemas and their reference schemas to EC3.2 schemas */\r\n public static convertCustomAttributes(xmlSchemas: string[], schemaContext?: ECSchemaXmlContext): string[];\r\n public static convertEC2XmlSchemas(ec2XmlSchemas: string[], schemaContext?: ECSchemaXmlContext): string[];\r\n }\r\n\r\n class ECDb implements IConcurrentQueryManager {\r\n constructor();\r\n public abandonChanges(): DbResult;\r\n public closeDb(): void;\r\n public createDb(dbName: string): DbResult;\r\n public dispose(): void;\r\n public dropSchemas(schemaNames: ReadonlyArray<string>): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncSetDefaultUri(syncDbUri: string): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncGetDefaultUri(): string;\r\n public schemaSyncInit(syncDbUri: string, containerId: string, overrideContainer: boolean): void;\r\n /** Rebuild the sync db from this briefcase, for a change the briefcase had to make locally - a profile upgrade. */\r\n public schemaSyncOverwrite(syncDbUri: string | undefined): void;\r\n public schemaSyncRepair(syncDbUri: string, scope: SchemaSyncRepairScope): void;\r\n /** Materialize the tables and indexes described by the ec_ rows after merging a schema changeset. */\r\n public schemaSyncUpdateDbSchema(): void;\r\n public schemaSyncEnabled(): boolean;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncGetLocalDbInfo(): SchemaLocalDbInfo | undefined;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public schemaSyncGetSyncDbInfo(): SchemaSyncDbInfo | undefined;\r\n public getFilePath(): string;\r\n public resolveInstanceKey(args: ResolveInstanceKeyArgs): ResolveInstanceKeyResult;\r\n public readInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): NodeJS.Dict<any>;\r\n public insertInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): Id64String;\r\n public updateInstance(inst: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public deleteInstance(key: NodeJS.Dict<any>, args: NodeJS.Dict<any>): boolean;\r\n public getSchemaProps(name: string): SchemaProps;\r\n public importSchema(schemaPathName: string): DbResult;\r\n public isOpen(): boolean;\r\n public openDb(dbName: string, mode: OpenMode, upgradeProfiles?: boolean): DbResult;\r\n public saveChanges(changesetName?: string): DbResult;\r\n public getLastError(): string;\r\n public getLastInsertRowId(): number;\r\n /** @not-used-by-itwinjs-core */\r\n public static enableSharedCache(enable: boolean): DbResult;\r\n public concurrentQueryExecute(request: DbRequest, onResponse: ConcurrentQuery.OnResponse): void;\r\n public concurrentQueryResetConfig(config?: QueryConfig): QueryConfig;\r\n public concurrentQueryShutdown(): void;\r\n public attachDb(filename: string, alias: string): void;\r\n public detachDb(alias: string): void;\r\n public clearECDbCache(): void;\r\n }\r\n\r\n class ChangedElementsECDb {\r\n constructor();\r\n public dispose(): void;\r\n public createDb(db: DgnDb, dbName: string): DbResult;\r\n public openDb(dbName: string, mode: OpenMode, upgradeProfiles?: boolean): DbResult;\r\n public isOpen(): boolean;\r\n public closeDb(): void;\r\n public processChangesets(db: DgnDb, changesets: ChangesetFileProps[], rulesetId: string, filterSpatial?: boolean, wantParents?: boolean, wantPropertyChecksums?: boolean, rulesetDir?: string, tempDir?: string, wantChunkTraversal?: boolean): DbResult;\r\n public processChangesetsAndRoll(dbFilename: string, dbGuid: string, changesets: ChangesetFileProps[], rulesetId: string, filterSpatial?: boolean, wantParents?: boolean, wantPropertyChecksums?: boolean, rulesetDir?: string, tempDir?: string, wantRelationshipCaching?: boolean, relationshipCacheSize?: number, wantChunkTraversal?: boolean, wantBoundingBoxes?: boolean): DbResult;\r\n public getChangedElements(startChangesetId: string, endChangesetId: string): ErrorStatusOrResult<IModelStatus, any>;\r\n public isProcessed(changesetId: string): boolean;\r\n public cleanCaches(): void;\r\n }\r\n\r\n class ECSqlStatement {\r\n constructor();\r\n public clearBindings(): DbResult;\r\n public dispose(): void;\r\n public getBinder(param: number | string): ECSqlBinder;\r\n public getColumnCount(): number;\r\n public getValue(columnIndex: number): ECSqlValue;\r\n public prepare(db: AnyECDb, ecsql: string, logErrors?: boolean): StatusCodeWithMessage<DbResult>;\r\n public reset(): DbResult;\r\n public step(): DbResult;\r\n public stepAsync(callback: (result: DbResult) => void): void;\r\n public stepForInsert(): { status: DbResult, id: string };\r\n /** @not-used-by-itwinjs-core */\r\n public stepForInsertAsync(callback: (result: { status: DbResult, id: string }) => void): void;\r\n public getNativeSql(): string;\r\n public toRow(arg: ECSqlRowAdaptorOptions): any;\r\n public getMetadata(arg?: ECSqlRowAdaptorOptions): any;\r\n public bindParams(args: object): StatusCodeWithMessage<boolean>;\r\n }\r\n\r\n class ECSqlBinder {\r\n constructor();\r\n public addArrayElement(): ECSqlBinder;\r\n public bindBlob(base64String: string | Uint8Array | ArrayBuffer | SharedArrayBuffer): DbResult;\r\n public bindBoolean(val: boolean): DbResult;\r\n public bindDateTime(isoString: string): DbResult;\r\n public bindDouble(val: number): DbResult;\r\n public bindGuid(guidStr: GuidString): DbResult;\r\n public bindId(hexStr: Id64String): DbResult;\r\n public bindIdSet(hexVector: Id64String[]): DbResult;\r\n public bindInteger(val: number | string): DbResult;\r\n public bindMember(memberName: string): ECSqlBinder;\r\n public bindNavigation(navIdHexStr: Id64String, relClassName?: string, relClassTableSpace?: string): DbResult;\r\n public bindNull(): DbResult;\r\n public bindPoint2d(x: number, y: number): DbResult;\r\n public bindPoint3d(x: number, y: number, z: number): DbResult;\r\n public bindString(val: string): DbResult;\r\n }\r\n\r\n class ECSqlColumnInfo {\r\n constructor();\r\n public getAccessString(): string;\r\n public getPropertyName(): string;\r\n public getOriginPropertyName(): string | undefined;\r\n /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */\r\n public getRootClassAlias(): string;\r\n /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */\r\n public getRootClassName(): string;\r\n /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */\r\n public getRootClassTableSpace(): string;\r\n public getType(): number;\r\n public isEnum(): boolean;\r\n public isGeneratedProperty(): boolean;\r\n public isSystemProperty(): boolean;\r\n public isDynamicProp(): boolean;\r\n }\r\n\r\n class ECSqlValue {\r\n constructor();\r\n public getArrayIterator(): ECSqlValueIterator;\r\n public getBlob(): Uint8Array;\r\n public getBoolean(): boolean;\r\n public getClassNameForClassId(): string;\r\n public getColumnInfo(): ECSqlColumnInfo;\r\n public getDateTime(): string;\r\n public getDouble(): number;\r\n public getEnum(): Array<{ schema: string, name: string, key: string, value: number | string }> | undefined;\r\n public getGeometry(): string;\r\n public getGuid(): GuidString;\r\n public getId(): Id64String;\r\n public getInt(): number;\r\n public getInt64(): number;\r\n public getNavigation(): { id: Id64String, relClassName?: string };\r\n public getPoint2d(): { x: number, y: number };\r\n public getPoint3d(): { x: number, y: number, z: number };\r\n public getString(): string;\r\n public getStructIterator(): ECSqlValueIterator;\r\n public isNull(): boolean;\r\n }\r\n\r\n class ECSqlValueIterator {\r\n constructor();\r\n public getCurrent(): ECSqlValue;\r\n public moveNext(): boolean;\r\n }\r\n\r\n /** Default transaction mode for SQLiteDbs.\r\n * @see https://www.sqlite.org/lang_transaction.html\r\n */\r\n const enum DefaultTxnMode {\r\n /** no default transaction is started. You must use BEGIN/COMMIT or SQLite will use implicit transactions */\r\n None = 0,\r\n /** A deferred transaction is started when the file is first opened. This is the default. */\r\n Deferred = 1,\r\n /** An immediate transaction is started when the file is first opened. */\r\n Immediate = 2,\r\n /** An exclusive transaction is started when the file is first opened. */\r\n Exclusive = 3\r\n }\r\n\r\n /** parameters common to opening or creating a new SQLiteDb */\r\n interface SQLiteDbOpenOrCreateParams {\r\n /** If true, do not require that the `be_Prop` table exist */\r\n rawSQLite?: boolean;\r\n /** @see immutable option at https://www.sqlite.org/c3ref/open.html */\r\n immutable?: boolean;\r\n /** Do not attempt to verify that the file is a valid sQLite file before opening. */\r\n skipFileCheck?: boolean;\r\n /** the default transaction mode\r\n * @see [[SQLiteDb.DefaultTxnMode]]\r\n */\r\n defaultTxn?: 0 | 1 | 2 | 3;\r\n /** see query parameters from 'URI Filenames' in https://www.sqlite.org/c3ref/open.html */\r\n queryParam?: string;\r\n }\r\n\r\n /** Parameters for opening an existing SQLiteDb */\r\n interface SQLiteDbOpenParams extends SQLiteDbOpenOrCreateParams {\r\n /** use OpenMode.ReadWrite to open the file with write access */\r\n openMode: OpenMode;\r\n }\r\n\r\n /** Size of a SQLiteDb page in bytes */\r\n interface PageSize {\r\n /** see https://www.sqlite.org/pragma.html#pragma_page_size */\r\n pageSize?: number;\r\n }\r\n\r\n /** Parameters for creating a new SQLiteDb */\r\n type SQLiteDbCreateParams = SQLiteDbOpenOrCreateParams & PageSize;\r\n\r\n class SQLiteDb implements SQLiteOps {\r\n constructor();\r\n public readonly cloudContainer?: CloudContainer;\r\n public abandonChanges(): void;\r\n /**\r\n * Apply a raw sqlite changeset file - the plain, uncompressed byte stream produced by the sqlite\r\n * session extension - to this SQLiteDb. This is *not* the same on-disk format used for iModel\r\n * changesets. Unlike DgnDb.applyChangeset, this does *not* validate any changeset header\r\n * (parentId/changesetId) against the current state of the db, and it does *not* support DDL/schema\r\n * changes (raw sqlite changesets cannot represent them) - it simply applies the row-level changes.\r\n * Any conflict encountered while applying causes the entire apply to fail and throw.\r\n */\r\n public applyChangeset(changesetFile: LocalFileName): void;\r\n public closeDb(): void;\r\n /**\r\n * Write out the changes captured since startChangeTracking() was called, to a changeset file holding\r\n * the raw sqlite changeset (the plain, uncompressed byte stream produced by the sqlite session\r\n * extension) - this is *not* the same on-disk format used for iModel changesets. Raw sqlite changesets\r\n * cannot represent DDL/schema changes, so this throws if any DDL was captured since\r\n * startChangeTracking() was called. Used only for testing.\r\n */\r\n public createChangeset(changesetFile: LocalFileName): void;\r\n public createDb(dbName: string, container?: CloudContainer, params?: SQLiteDbCreateParams): void;\r\n public dispose(): void;\r\n public embedFile(arg: EmbedFileArg): void;\r\n public embedFontFile(id: number, faces: FontFaceProps[], data: Uint8Array, compress: boolean): void;\r\n /** Execute a DDL statement so it will be captured by change tracking, if active. */\r\n public executeDdl(ddl: string): void;\r\n public extractEmbeddedFile(arg: EmbeddedFileProps): void;\r\n public getFilePath(): string;\r\n public getLastError(): string;\r\n public getLastInsertRowId(): number;\r\n public isOpen(): boolean;\r\n public isReadonly(): boolean;\r\n public openDb(dbName: string, mode: OpenMode | SQLiteDbOpenParams, container?: CloudContainer): void;\r\n public queryEmbeddedFile(name: string): EmbedFileQuery | undefined;\r\n public queryFileProperty(props: FilePropertyProps, wantString: boolean): string | Uint8Array | undefined;\r\n public queryNextAvailableFileProperty(props: FilePropertyProps): number;\r\n public removeEmbeddedFile(name: string): void;\r\n public replaceEmbeddedFile(arg: EmbedFileArg): void;\r\n public restartDefaultTxn(): void;\r\n public saveChanges(): void;\r\n public saveFileProperty(props: FilePropertyProps, strValue: string | undefined, blobVal?: Uint8Array): void;\r\n /** Begin capturing DDL/data changes made to this SQLiteDb. Used only to produce test changeset files. */\r\n public startChangeTracking(): void;\r\n public vacuum(arg?: { pageSize?: number, into?: LocalFileName }): void;\r\n public analyze(): void;\r\n public enableWalMode(yesNo?: boolean): void;\r\n public performCheckpoint(mode?: WalCheckpointMode): void;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public setAutoCheckpointThreshold(frames: number): void;\r\n }\r\n\r\n class SqliteStatement {\r\n constructor();\r\n public bindBlob(param: number | string, val: Uint8Array | ArrayBuffer | SharedArrayBuffer): DbResult;\r\n public bindDouble(param: number | string, val: number): DbResult;\r\n public bindGuid(param: number | string, guidStr: GuidString): DbResult;\r\n public bindId(param: number | string, hexStr: Id64String): DbResult;\r\n public bindInteger(param: number | string, val: number | string): DbResult;\r\n public bindNull(param: number | string): DbResult;\r\n public bindString(param: number | string, val: string): DbResult;\r\n public clearBindings(): DbResult;\r\n public dispose(): void;\r\n public getColumnBytes(columnIndex: number): number;\r\n public getColumnCount(): number;\r\n public getColumnName(columnIndex: number): string;\r\n public getColumnType(columnIndex: number): number;\r\n public getValueBlob(columnIndex: number): Uint8Array;\r\n public getValueDouble(columnIndex: number): number;\r\n public getValueGuid(columnIndex: number): GuidString;\r\n public getValueId(columnIndex: number): Id64String;\r\n public getValueInteger(columnIndex: number): number;\r\n public getValueString(columnIndex: number): string;\r\n public isReadonly(): boolean;\r\n public isValueNull(columnIndex: number): boolean;\r\n public prepare(db: AnyDb, sql: string, logErrors?: boolean): void;\r\n public reset(): DbResult;\r\n public step(): DbResult;\r\n public stepAsync(callback: (result: DbResult) => void): void;\r\n }\r\n\r\n /** Incremental IO for blobs */\r\n class BlobIO {\r\n constructor();\r\n /** Close this BlobIO if it is opened.\r\n * @note this BlobIO *may* be reused after this call by calling `open` again.\r\n */\r\n public close(): void;\r\n /** get the total number of bytes in the blob\r\n * @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there.\r\n */\r\n public getNumBytes(): number;\r\n /** @return true if this BlobIO was successfully opened and may be use to read or write the blob */\r\n public isValid(): boolean;\r\n /** Open this BlobIO against a table/row/column in a Db */\r\n public open(\r\n /** The database for the blob */\r\n db: AnyDb,\r\n args: {\r\n /** the name of the table for the blob*/\r\n tableName: string;\r\n /** the name of the column for the blob */\r\n columnName: string;\r\n /** The rowId of the blob */\r\n row: number;\r\n /** If true, open this BlobIO for write access */\r\n writeable?: boolean;\r\n }): void;\r\n /** Read from a blob\r\n * @returns the contents of the requested byte range\r\n */\r\n public read(args: {\r\n /** The number of bytes to read */\r\n numBytes: number;\r\n /** starting offset within the blob to read */\r\n offset: number;\r\n /** If present and of sufficient size, use this ArrayBuffer for the value. */\r\n blob?: ArrayBuffer;\r\n }): Uint8Array;\r\n /** Reposition this BlobIO to a new rowId\r\n * @note this BlobIO must be valid when this methods is called.\r\n * @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there.\r\n */\r\n public changeRow(row: number): void;\r\n /** Write to a blob */\r\n public write(args: {\r\n /** The number of bytes to write */\r\n numBytes: number;\r\n /** starting offset within the blob to write */\r\n offset: number;\r\n /** the value to write */\r\n blob: ArrayBuffer;\r\n }): void;\r\n }\r\n\r\n /** Filter options passed to CloudContainer.queryHttpLog */\r\n interface BcvHttpLogFilterOptions {\r\n /** only return rows whose ID is >= the provided id */\r\n startFromId?: number;\r\n /** only return rows whose endTime is null OR >= the provided endTime. */\r\n finishedAtOrAfterTime?: string;\r\n /** only return rows with a non-null end_time. */\r\n showOnlyFinished?: boolean;\r\n }\r\n\r\n interface BcvStatsFilterOptions {\r\n /** if true, adds activeClients, totalClients, ongoingPrefetches, and attachedContainers to the result. */\r\n addClientInformation?: boolean;\r\n }\r\n\r\n /**\r\n * A cache for storing data from CloudSqlite databases. This object refers to a directory on a local filesystem\r\n * and is used to **connect** CloudContainers so they may be accessed. The contents of the cache directory are entirely\r\n * controlled by CloudSqlite and should be empty when the cache is first created and never modified directly. It maintains\r\n * the state of the local data across sessions.\r\n * @note All CloudContainers attached to a CloudCache must have the same block size, as determined by the first one connected.\r\n */\r\n class CloudCache {\r\n /** Create an instance of a CloudCache. */\r\n public constructor(props: NativeCloudSqlite.CacheProps);\r\n /** `true` if this CloudCache is connected to a daemon process */\r\n public get isDaemon(): boolean;\r\n /** The name for this CloudCache. */\r\n public get name(): string;\r\n /** The root directory of this CloudCache on a local drive. */\r\n public get rootDir(): LocalDirName;\r\n /** The guid for this CloudCache. Used for acquiring write lock. */\r\n public get guid(): GuidString;\r\n public setLogMask(mask: number): void;\r\n /** destroy this CloudCache. All CloudContainers currently connected are disconnected. */\r\n public destroy(): void;\r\n }\r\n\r\n /** A CloudSqlite container that may be connected to a CloudCache. */\r\n class CloudContainer {\r\n /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */\r\n public onConnect?: (container: CloudContainer, cache: CloudCache) => void;\r\n public onConnected?: (container: CloudContainer) => void;\r\n public onDisconnect?: (container: CloudContainer, detach: boolean) => void;\r\n /** @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there. */\r\n public onDisconnected?: (container: CloudContainer, detach: boolean) => void;\r\n\r\n public readonly cache?: CloudCache;\r\n /** Create a new instance of a CloudContainer. It must be connected to a CloudCache for most operations. */\r\n public constructor(props: NativeCloudSqlite.ContainerAccessProps);\r\n /** the baseUri of this container */\r\n public get baseUri(): string;\r\n /** the storageType of this container */\r\n public get storageType(): string;\r\n /** The ContainerId. */\r\n public get containerId(): string;\r\n /** The *alias* to identify this CloudContainer in a CloudCache. Usually just the ContainerId. */\r\n public get alias(): string;\r\n /** The logId. */\r\n public get logId(): string;\r\n /** The time that the write lock expires. Of the form 'YYYY-MM-DDTHH:MM:SS.000Z' in UTC.\r\n * Returns empty string if write lock is not held.\r\n */\r\n public get writeLockExpires(): string;\r\n /** true if this CloudContainer is currently connected to a CloudCache via the `connect` method. */\r\n public get isConnected(): boolean;\r\n /** true if this CloudContainer was created with the `writeable` flag (and its `accessToken` supplies write access). */\r\n public get isWriteable(): boolean;\r\n /** true if this container is public (doesn't require authorization ). */\r\n public get isPublic(): boolean;\r\n /** true if this CloudContainer currently holds the write lock for its container in the cloud. */\r\n public get hasWriteLock(): boolean;\r\n /** true if this CloudContainer has local changes that have not be uploaded to its container in the cloud. */\r\n public get hasLocalChanges(): boolean;\r\n /** The current accessToken providing access to the cloud container */\r\n public get accessToken(): string;\r\n public set accessToken(val: string);\r\n /** Get the number of garbage blocks in this container that can be purged. */\r\n public get garbageBlocks(): number;\r\n /** The block size for this CloudContainer. */\r\n public get blockSize(): number;\r\n\r\n /**\r\n * initialize a cloud blob-store container to be used as a new Sqlite CloudContainer. This creates the manifest, and should be\r\n * performed on an empty container. If an existing manifest is present, it is destroyed and a new one is created (essentially emptying the container.)\r\n */\r\n public initializeContainer(opts: { checksumBlockNames?: boolean, blockSize: number }): void;\r\n\r\n /**\r\n * Attempt to acquire the write lock for this CloudContainer. For this to succeed:\r\n * 1. it must be connected to a `CloudCache`\r\n * 2. this CloudContainer must have been constructed with `writeable: true`\r\n * 3. the `accessToken` must authorize write access\r\n * 4. no other process may be holding an unexpired write lock\r\n * @throws exception if any of the above conditions fail\r\n * @note Write locks *expire* after the duration specified in the `durationSeconds` property of the constructor argument, in case a process\r\n * crashes or otherwise fails to release the lock. Calling `acquireWriteLock` with the lock already held resets the lock duration from the current time,\r\n * so long running processes should call this method periodically to ensure their lock doesn't expire (they should also make sure their accessToken is refreshed\r\n * before it expires.)\r\n * @note on success, the manifest is polled before the promise resolves.\r\n * @param user An identifier of the process/user locking the CloudContainer. In the event of a write lock\r\n * collision, this string will be included in the exception string of the *other* process attempting to obtain a write lock.\r\n */\r\n public acquireWriteLock(user: string): void;\r\n\r\n /**\r\n * Release the write lock if it is currently held.\r\n * @note if there are local changes that have not been uploaded, they are automatically uploaded before the write lock is released.\r\n * @note if the write lock is not held, this method does nothing.\r\n */\r\n public releaseWriteLock(): void;\r\n\r\n /**\r\n * Destroy any currently valid write lock from this or any other process. This is obviously very dangerous and defeats the purpose of write locking.\r\n * This method exists only for administrator tools to clear a failed process without waiting for the expiration period. It can also be useful for tests.\r\n * For this to succeed, all of the conditions of `acquireWriteLock` must be true other than #4.\r\n */\r\n public clearWriteLock(): void;\r\n\r\n /**\r\n * Abandon any local changes in this container. If the write lock is currently held, it is released.\r\n * This function fails with BE_SQLITE_BUSY if one or more clients have open read or write transactions\r\n * on any database in the container.\r\n */\r\n public abandonChanges(): void;\r\n\r\n /**\r\n * Connect this CloudContainer to a CloudCache for reading or writing its manifest, write lock, and databases.\r\n * @note A CloudCache is a local directory holding copies of information from the cloud. Its content is persistent across sessions,\r\n * but this method must be called each session to (re)establish the connection to the cache. If the CloudCache was previously populated,\r\n * this method may be called and will succeed *even when offline* or without a valid `accessToken`.\r\n * @note all operations that access the contents of databases or the manifest require this method be called (`isConnected === true`).\r\n */\r\n public connect(cache: CloudCache): void;\r\n\r\n /**\r\n * Disconnect this CloudContainer from its CloudCache. There must be no open databases from this container.\r\n */\r\n public disconnect(args?: {\r\n /** if true removes the container from the CloudCache, otherwise Leaves the container in the CloudCache so it is available for future sessions. */\r\n detach?: boolean;\r\n }): void;\r\n\r\n /**\r\n * Poll cloud storage for changes from other processes. *No changes* made by other processes are visible to\r\n * this CloudContainer unless/until this method is called.\r\n * @note this is automatically called whenever the write lock is obtained to ensure all changes are against the latest version.\r\n */\r\n public checkForChanges(): void;\r\n\r\n /**\r\n * Upload any changed blocks from all databases in this CloudContainer.\r\n * @note this is called automatically from `releaseWriteLock` before the write lock is released. It is only necessary to call this directly if you\r\n * wish to upload changes while the write lock is still held.\r\n * @see hasLocalChanges\r\n */\r\n public uploadChanges(): Promise<void>;\r\n\r\n /**\r\n * Create a copy of an existing database within this CloudContainer with a new name.\r\n * @note CloudSqlite uses copy-on-write semantics for this operation. That is, this method merely makes a\r\n * new entry in the manifest with the new name that *shares* all of its blocks with the original database.\r\n * If either database subsequently changes, the only modified blocks are not shared.\r\n */\r\n public copyDatabase(dbName: string, toAlias: string): Promise<void>;\r\n\r\n /** Remove a database from this CloudContainer, moving all of its no longer used blocks to the delete list in the manifest.\r\n * @see [[CloudSqlite.CleanDeletedBlocksJob]] to actually delete the blocks from the delete list.\r\n */\r\n public deleteDatabase(dbName: string): Promise<void>;\r\n\r\n /** Get the list of database names in this CloudContainer.\r\n * @param globArg if present, filter the results with SQLite [GLOB](https://www.sqlite.org/lang_expr.html#glob) operator.\r\n */\r\n public queryDatabases(globArg?: string): string[];\r\n\r\n /**\r\n * Get the status of a specific database in this CloudContainer.\r\n * @param dbName the name of the database of interest\r\n */\r\n public queryDatabase(dbName: string): NativeCloudSqlite.CachedDbProps | undefined;\r\n\r\n /**\r\n * query the bcv_http_log table\r\n * @note the bcv_http_log table contains one row for each HTTP request made by the VFS or connected daemon.\r\n * @note Entries are automatically removed from the table on a FIFO basis. By default entries which are 1 hr old will be removed.\r\n */\r\n public queryHttpLog(filterOptions?: BcvHttpLogFilterOptions): NativeCloudSqlite.BcvHttpLog[];\r\n\r\n /**\r\n * query the bcv_stat table.\r\n * @internal\r\n */\r\n public queryBcvStats(filterOptions?: BcvStatsFilterOptions): NativeCloudSqlite.BcvStats;\r\n\r\n /**\r\n * Get the SHA1 hash of the content of a database.\r\n * @param dbName the name of the database of interest\r\n * @note the hash will be empty if the database does not exist\r\n * @not-used-by-itwinjs-core Re-declared in @itwin/core-backend's public API, but never called there.\r\n */\r\n public queryDatabaseHash(dbName: string): string;\r\n }\r\n\r\n /**\r\n * Object to perform an \"upload\" or \"download\" of a database to/from a CloudContainer.\r\n * @note The transfer begins when the object is constructed, and the object remains alive during the upload/download operation.\r\n * It provides the Promise that is resolved when the operation completes or fails, and has methods to provide feedback for progress and to cancel the operation prematurely.\r\n */\r\n class CancellableCloudSqliteJob {\r\n /** create an instance of a transfer. The operation begins immediately when the object is created.\r\n * @param direction either \"upload\" or \"download\"\r\n * @param container the container holding the database. Does *not* require that the container be connected to a CloudCache.\r\n * @param args The properties for the source and target of the transfer.\r\n */\r\n constructor(direction: NativeCloudSqlite.TransferDirection | \"cleanup\", container: CloudContainer, args: NativeCloudSqlite.TransferDbProps | NativeCloudSqlite.CleanDeletedBlocksOptions);\r\n\r\n /** Cancel a currently pending transfer and cause the promise to be rejected with a Cancelled status.\r\n * @throws exception if the operation has already completed.\r\n */\r\n public cancelTransfer(): void;\r\n /** Get the current progress of the transfer.\r\n * @throws exception if the operation has already completed.\r\n */\r\n public getProgress(): { loaded: number, total: number };\r\n\r\n /**\r\n * Only applicable to cleanup jobs. Calling this in a download or upload job will also stop the job but without saving progress.\r\n * During a cleanup job, if any blocks have been deleted, the job will stop and upload the manifest reflecting which blocks have been deleted.\r\n */\r\n public stopAndSaveProgress(): void;\r\n\r\n /** Promise that is resolved when the transfer completes, or is rejected if the transfer fails (or is cancelled.) */\r\n public promise: Promise<void>;\r\n }\r\n\r\n class CloudPrefetch {\r\n public readonly cloudContainer: CloudContainer;\r\n public readonly dbName: string;\r\n\r\n /** create an instance of a prefetch operation. The operation begins immediately when the object is created.\r\n * The prefetch will continue in the background until it either finishes, is canceled, or the CloudContainer is disconnected from its CloudCache.\r\n * @param container the container holding the database.\r\n * @param dbName the name of the database to prefetch\r\n */\r\n constructor(container: CloudContainer, dbName: string, args?: NativeCloudSqlite.PrefetchProps);\r\n\r\n /** Cancel a currently pending prefetch. The promise will be resolved immediately after this call. */\r\n public cancel(): void;\r\n\r\n /**\r\n * Promise that is resolved when the prefetch completes or is cancelled. Await this promise to ensure that the\r\n * database has been fully downloaded before going offline, for example.\r\n * @returns a Promise that resolves to `true` if the prefetch completed and the entire database is local, or `false` if it was aborted or failed.\r\n * @note the promise is *not* rejected on `cancel`. Some progress may (or may not) have been made by the request.\r\n * @note To monitor the progress being made during prefetch, call `CloudContainer.queryDatabase` periodically.\r\n */\r\n public promise: Promise<boolean>;\r\n }\r\n\r\n const enum ECPresentationStatus {\r\n Success = 0,\r\n Canceled = 1,\r\n Pending = 2,\r\n Error = 0x10000,\r\n InvalidArgument = Error + 1,\r\n ResultSetTooLarge = Error + 2,\r\n }\r\n\r\n interface ECPresentationMemoryHierarchyCacheConfig {\r\n mode: \"memory\";\r\n }\r\n\r\n interface ECPresentationDiskHierarchyCacheConfig {\r\n mode: \"disk\";\r\n directory: string;\r\n memoryCacheSize?: number;\r\n }\r\n\r\n interface ECPresentationHybridHierarchyCacheConfig {\r\n mode: \"hybrid\";\r\n disk?: ECPresentationDiskHierarchyCacheConfig;\r\n }\r\n\r\n type ECPresentationHierarchyCacheConfig = ECPresentationMemoryHierarchyCacheConfig | ECPresentationDiskHierarchyCacheConfig | ECPresentationHybridHierarchyCacheConfig;\r\n\r\n type ECPresentationManagerResponse<TResult> = ErrorStatusOrResult<ECPresentationStatus, TResult> & {\r\n diagnostics?: any;\r\n };\r\n\r\n interface ECPresentationManagerProps {\r\n id: string;\r\n taskAllocationsMap: { [priority: number]: number };\r\n defaultFormats: {\r\n [phenomenon: string]: Array<{\r\n unitSystems: string[];\r\n serializedFormat: string;\r\n }>;\r\n };\r\n updateCallback: (updateInfo: any) => void;\r\n cacheConfig: ECPresentationHierarchyCacheConfig;\r\n contentCacheSize?: number;\r\n workerConnectionCacheSize?: number;\r\n useMmap?: boolean | number;\r\n }\r\n\r\n class ECPresentationManager {\r\n constructor(props: ECPresentationManagerProps);\r\n public forceLoadSchemas(db: DgnDb): Promise<ECPresentationManagerResponse<void>>;\r\n public setupRulesetDirectories(directories: string[]): ECPresentationManagerResponse<void>;\r\n public setupSupplementalRulesetDirectories(directories: string[]): ECPresentationManagerResponse<void>;\r\n public setRulesetVariableValue(rulesetId: string, variableId: string, type: string, value: any): ECPresentationManagerResponse<void>;\r\n public unsetRulesetVariableValue(rulesetId: string, variableId: string): ECPresentationManagerResponse<void>;\r\n public getRulesetVariableValue(rulesetId: string, variableId: string, type: string): ECPresentationManagerResponse<any>;\r\n public registerSupplementalRuleset(serializedRuleset: string): ECPresentationManagerResponse<string>;\r\n public getRulesets(rulesetId: string): ECPresentationManagerResponse<string>;\r\n public addRuleset(serializedRuleset: string): ECPresentationManagerResponse<string>;\r\n public removeRuleset(rulesetId: string, hash: string): ECPresentationManagerResponse<boolean>;\r\n public clearRulesets(): ECPresentationManagerResponse<void>;\r\n public handleRequest(db: DgnDb, options: string): { result: Promise<ECPresentationManagerResponse<Buffer>>, cancel: () => void };\r\n public dispose(): void;\r\n }\r\n\r\n namespace ECSchemaXmlContext {\r\n interface SchemaKey {\r\n name: string;\r\n readVersion: number;\r\n writeVersion: number;\r\n minorVersion: number;\r\n }\r\n\r\n const enum SchemaMatchType {\r\n Identical = 0, // Find exact VersionRead, VersionWrite, VersionMinor match as well as Data\r\n Exact = 1, // Find exact VersionRead, VersionWrite, VersionMinor match.\r\n LatestWriteCompatible = 2, // Find latest version with matching VersionRead and VersionWrite\r\n Latest = 3, // Find latest version.\r\n LatestReadCompatible = 4, // Find latest version with matching VersionRead\r\n }\r\n\r\n type SchemaLocaterCallback = (key: SchemaKey, matchType: SchemaMatchType) => string | undefined | void;\r\n }\r\n\r\n class ECSchemaXmlContext {\r\n constructor();\r\n public addSchemaPath(schemaPath: string): void;\r\n public setSchemaLocater(locater: ECSchemaXmlContext.SchemaLocaterCallback): void;\r\n public setFirstSchemaLocater(locater: ECSchemaXmlContext.SchemaLocaterCallback): void;\r\n public readSchemaFromXmlFile(filePath: string): ErrorStatusOrResult<BentleyStatus, string>;\r\n }\r\n\r\n class SnapRequest {\r\n constructor();\r\n public doSnap(db: DgnDb, request: SnapRequestProps): Promise<SnapResponseProps>;\r\n public cancelSnap(): void;\r\n }\r\n\r\n interface FeatureUserDataKeyValuePair {\r\n key: string;\r\n value: string;\r\n }\r\n\r\n interface NativeUlasClientFeatureEvent {\r\n featureId: string;\r\n versionStr: string;\r\n projectId?: string;\r\n startDateZ?: string;\r\n endDateZ?: string;\r\n featureUserData?: FeatureUserDataKeyValuePair[];\r\n }\r\n\r\n class SqliteChangesetReader {\r\n public close(): void;\r\n public getColumnCount(): number;\r\n public getColumnValue(col: number, stage: number): Uint8Array | number | string | null | undefined;\r\n public getColumnValueBinary(col: number, stage: number): Uint8Array | undefined;\r\n public getColumnValueDouble(col: number, stage: number): number | undefined;\r\n public getColumnValueId(col: number, stage: number): string | undefined;\r\n public getColumnValueInteger(col: number, stage: number): number | undefined;\r\n public getColumnValueText(col: number, stage: number): string | undefined;\r\n public getColumnValueType(col: number, stage: number): number | undefined;\r\n public getDdlChanges(): string | undefined;\r\n public getOpCode(): DbOpcode;\r\n public getPrimaryKeys(): (Uint8Array | number | string | null | undefined)[];\r\n public getRow(stage: number): (Uint8Array | number | string | null | undefined)[];\r\n public getTableName(): string;\r\n public hasRow(): boolean;\r\n public isColumnValueNull(col: number, stage: number): boolean | undefined;\r\n public isIndirectChange(): boolean;\r\n public getPrimaryKeyColumnIndexes(): number[];\r\n public openFile(fileName: string, invert: boolean): void;\r\n public openGroup(fileName: string[], db: AnyECDb, invert: boolean): void;\r\n public openLocalChanges(db: DgnDb, includeInMemoryChanges: boolean, invert: boolean): void;\r\n public openInMemoryChanges(db: DgnDb, invert: boolean): void;\r\n public openTxn(db: DgnDb, txnId: Id64String, invert: boolean): void;\r\n public reset(): void;\r\n public step(): boolean;\r\n public writeToFile(fileName: string, containsSchemaChanges: boolean, overrideFile: boolean): void;\r\n }\r\n\r\n interface ChangesetRowValue {\r\n data: any;\r\n key: string;\r\n changeFetchedPropNames: string[]\r\n }\r\n\r\n interface ChangesetRowMetadata {\r\n tableName: string;\r\n opCode: DbOpcode;\r\n isIndirectChange: boolean;\r\n isECTable: boolean;\r\n }\r\n interface ChangesetRowData {\r\n metadata: ChangesetRowMetadata;\r\n oldValues: ChangesetRowValue | undefined;\r\n newValues: ChangesetRowValue | undefined;\r\n }\r\n\r\n class ChangesetReader {\r\n constructor();\r\n public openFile(db: AnyECDb, fileName: string, invert: boolean, propFilter: number): void;\r\n public openGroup(db: AnyECDb, fileNames: string[], invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public openLocalChanges(db: DgnDb, includeInMemoryChanges: boolean, invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public openInMemoryChanges(db: DgnDb, invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public openTxn(db: DgnDb, txnId: Id64String, invert: boolean, propFilter: number, spillThresholdBytes: number): void;\r\n public close(): void;\r\n public step(numOfRows: number, rowOptions: ECSqlRowAdaptorOptions): ChangesetRowData[];\r\n public setTableNameFilters(tableNames: string[]): void;\r\n public setOpCodeFilters(ops: string[]): void;\r\n public setClassNameFilters(classNames: string[]): void;\r\n public clearTableNameFilters(): void;\r\n public clearOpCodeFilters(): void;\r\n public clearClassNameFilters(): void;\r\n public enableStrictMode(): void;\r\n public disableStrictMode(): void;\r\n }\r\n\r\n class DisableNativeAssertions {\r\n constructor();\r\n public dispose(): void;\r\n }\r\n\r\n class ImportContext {\r\n constructor(sourceDb: DgnDb, targetDb: DgnDb);\r\n public dispose(): void;\r\n public dump(outputFileName: string): BentleyStatus;\r\n public addClass(sourceClassFullName: string, targetClassFullName: string): BentleyStatus;\r\n public addCodeSpecId(sourceId: Id64String, targetId: Id64String): BentleyStatus;\r\n public addElementId(sourceId: Id64String, targetId: Id64String): BentleyStatus;\r\n public removeElementId(sourceId: Id64String): BentleyStatus;\r\n public findCodeSpecId(sourceId: Id64String): Id64String;\r\n public findElementId(sourceId: Id64String): Id64String;\r\n public cloneElement(sourceId: Id64String, cloneOptions?: CloneElementOptions): ElementProps;\r\n public importCodeSpec(sourceId: Id64String): Id64String;\r\n public importFont(sourceId: number): number;\r\n public hasSubCategoryFilter(): boolean;\r\n public isSubCategoryFiltered(sourceId: Id64String): boolean;\r\n public filterSubCategoryId(sourceId: Id64String): BentleyStatus;\r\n public saveStateToDb(db: SQLiteDb): void;\r\n public loadStateFromDb(db: SQLiteDb): void;\r\n }\r\n\r\n interface CloneElementOptions {\r\n binaryGeometry?: boolean;\r\n }\r\n\r\n interface ChangedInstanceOpsProps {\r\n insert?: Id64String[];\r\n update?: Id64String[];\r\n delete?: Id64String[];\r\n }\r\n\r\n /** The *wire format* of the result returned by DgnDb.extractChangedInstanceIdsFromChangeSets */\r\n interface ChangedInstanceIdsProps {\r\n codeSpec?: ChangedInstanceOpsProps;\r\n model?: ChangedInstanceOpsProps;\r\n element?: ChangedInstanceOpsProps;\r\n aspect?: ChangedInstanceOpsProps;\r\n relationship?: ChangedInstanceOpsProps;\r\n font?: ChangedInstanceOpsProps;\r\n }\r\n\r\n /**\r\n * Temporary implementation to allow crashing the backend for testing purposes\r\n * @internal\r\n */\r\n class NativeDevTools {\r\n public static signal(signalType: number): boolean;\r\n /** @not-used-by-itwinjs-core Covered only by this package's own tests. */\r\n public static emitLogs(count: number, category: string, severity: LogLevel, thread: \"main\" | \"worker\", onDone: () => void): void;\r\n }\r\n\r\n /**\r\n * Utilities to encode/decode names to convert them to/from names that comply with EC naming rules\r\n */\r\n class ECNameValidation {\r\n /**\r\n * Encodes names to comply with EC naming rules\r\n * @param name Name to be encoded\r\n * @returns Encoded name\r\n * @param name\r\n * @not-used-by-itwinjs-core\r\n */\r\n public static encodeToValidName(name: string): string;\r\n\r\n /**\r\n * Decodes names that were encoded to comply with EC naming rules\r\n * @param encodedName Encoded name\r\n * @returns Decoded name\r\n * @not-used-by-itwinjs-core\r\n */\r\n public static decodeFromValidName(encodedName: string): string;\r\n }\r\n\r\n const enum TestWorkerState {\r\n NotQueued = 0,\r\n Queued = 1,\r\n Skipped = 2,\r\n Running = 3,\r\n Ok = 4,\r\n Error = 5,\r\n Aborted = 6,\r\n }\r\n\r\n class TestWorker {\r\n public constructor(db: DgnDb);\r\n\r\n public queue(): Promise<void>;\r\n public cancel(): void;\r\n public setReady(): void;\r\n public setThrow(): void;\r\n public isCanceled(): boolean;\r\n public wasExecuted(): boolean;\r\n public getState(): TestWorkerState;\r\n }\r\n}\r\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bentley/imodeljs-native",
3
3
  "license": "SEE LICENSE IN LICENSE.md",
4
- "version": "5.13.22",
4
+ "version": "5.13.25",
5
5
  "main": "imodeljs-native.js",
6
6
  "typings": "imodeljs-native",
7
7
  "keywords": [