@itwin/core-backend 4.0.0-dev.48 → 4.0.0-dev.51

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.
Files changed (246) hide show
  1. package/lib/cjs/AliCloudStorageService.d.ts +23 -23
  2. package/lib/cjs/AliCloudStorageService.js +71 -71
  3. package/lib/cjs/AliCloudStorageService.js.map +1 -1
  4. package/lib/cjs/BackendHubAccess.d.ts +224 -224
  5. package/lib/cjs/BackendHubAccess.js +41 -41
  6. package/lib/cjs/BackendHubAccess.js.map +1 -1
  7. package/lib/cjs/BackendLoggerCategory.d.ts +91 -91
  8. package/lib/cjs/BackendLoggerCategory.js +99 -99
  9. package/lib/cjs/BackendLoggerCategory.js.map +1 -1
  10. package/lib/cjs/BisCoreSchema.d.ts +21 -21
  11. package/lib/cjs/BisCoreSchema.js +60 -60
  12. package/lib/cjs/BisCoreSchema.js.map +1 -1
  13. package/lib/cjs/BriefcaseManager.d.ts +170 -170
  14. package/lib/cjs/BriefcaseManager.js +408 -408
  15. package/lib/cjs/BriefcaseManager.js.map +1 -1
  16. package/lib/cjs/Category.d.ts +153 -153
  17. package/lib/cjs/Category.js +243 -243
  18. package/lib/cjs/Category.js.map +1 -1
  19. package/lib/cjs/ChangeSummaryManager.d.ts +187 -187
  20. package/lib/cjs/ChangeSummaryManager.js +446 -446
  21. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  22. package/lib/cjs/ChangedElementsDb.d.ts +99 -99
  23. package/lib/cjs/ChangedElementsDb.js +165 -165
  24. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  25. package/lib/cjs/ChangedElementsManager.d.ts +39 -39
  26. package/lib/cjs/ChangedElementsManager.js +88 -88
  27. package/lib/cjs/ChangedElementsManager.js.map +1 -1
  28. package/lib/cjs/ChannelControl.d.ts +69 -69
  29. package/lib/cjs/ChannelControl.js +88 -88
  30. package/lib/cjs/ChannelControl.js.map +1 -1
  31. package/lib/cjs/CheckpointManager.d.ts +121 -121
  32. package/lib/cjs/CheckpointManager.js +351 -351
  33. package/lib/cjs/CheckpointManager.js.map +1 -1
  34. package/lib/cjs/ClassRegistry.d.ts +79 -79
  35. package/lib/cjs/ClassRegistry.js +249 -249
  36. package/lib/cjs/ClassRegistry.js.map +1 -1
  37. package/lib/cjs/CloudSqlite.d.ts +355 -355
  38. package/lib/cjs/CloudSqlite.js +154 -154
  39. package/lib/cjs/CloudSqlite.js.map +1 -1
  40. package/lib/cjs/CloudStorageBackend.d.ts +58 -58
  41. package/lib/cjs/CloudStorageBackend.js +170 -170
  42. package/lib/cjs/CloudStorageBackend.js.map +1 -1
  43. package/lib/cjs/CodeService.d.ts +396 -396
  44. package/lib/cjs/CodeService.js +63 -63
  45. package/lib/cjs/CodeService.js.map +1 -1
  46. package/lib/cjs/CodeSpecs.d.ts +55 -55
  47. package/lib/cjs/CodeSpecs.js +124 -124
  48. package/lib/cjs/CodeSpecs.js.map +1 -1
  49. package/lib/cjs/ConcurrentQuery.d.ts +13 -13
  50. package/lib/cjs/ConcurrentQuery.js +36 -36
  51. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  52. package/lib/cjs/CustomViewState3dCreator.d.ts +21 -21
  53. package/lib/cjs/CustomViewState3dCreator.js +81 -81
  54. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  55. package/lib/cjs/DevTools.d.ts +73 -73
  56. package/lib/cjs/DevTools.js +156 -156
  57. package/lib/cjs/DevTools.js.map +1 -1
  58. package/lib/cjs/DisplayStyle.d.ts +106 -106
  59. package/lib/cjs/DisplayStyle.js +253 -253
  60. package/lib/cjs/DisplayStyle.js.map +1 -1
  61. package/lib/cjs/ECDb.d.ts +191 -191
  62. package/lib/cjs/ECDb.js +348 -348
  63. package/lib/cjs/ECDb.js.map +1 -1
  64. package/lib/cjs/ECSchemaXmlContext.d.ts +18 -18
  65. package/lib/cjs/ECSchemaXmlContext.js +41 -41
  66. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  67. package/lib/cjs/ECSqlStatement.d.ts +473 -473
  68. package/lib/cjs/ECSqlStatement.js +791 -791
  69. package/lib/cjs/ECSqlStatement.js.map +1 -1
  70. package/lib/cjs/Element.d.ts +1113 -1113
  71. package/lib/cjs/Element.js +1424 -1424
  72. package/lib/cjs/Element.js.map +1 -1
  73. package/lib/cjs/ElementAspect.d.ts +176 -176
  74. package/lib/cjs/ElementAspect.js +203 -203
  75. package/lib/cjs/ElementAspect.js.map +1 -1
  76. package/lib/cjs/ElementGraphics.d.ts +9 -9
  77. package/lib/cjs/ElementGraphics.js +41 -41
  78. package/lib/cjs/ElementGraphics.js.map +1 -1
  79. package/lib/cjs/ElementTreeWalker.d.ts +162 -162
  80. package/lib/cjs/ElementTreeWalker.js +409 -409
  81. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  82. package/lib/cjs/Entity.d.ts +106 -106
  83. package/lib/cjs/Entity.js +134 -134
  84. package/lib/cjs/Entity.js.map +1 -1
  85. package/lib/cjs/EntityReferences.d.ts +49 -49
  86. package/lib/cjs/EntityReferences.js +95 -95
  87. package/lib/cjs/EntityReferences.js.map +1 -1
  88. package/lib/cjs/ExportGraphics.d.ts +317 -317
  89. package/lib/cjs/ExportGraphics.js +208 -208
  90. package/lib/cjs/ExportGraphics.js.map +1 -1
  91. package/lib/cjs/ExternalSource.d.ts +96 -96
  92. package/lib/cjs/ExternalSource.js +131 -131
  93. package/lib/cjs/ExternalSource.js.map +1 -1
  94. package/lib/cjs/GeoCoordConfig.d.ts +19 -19
  95. package/lib/cjs/GeoCoordConfig.js +85 -85
  96. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  97. package/lib/cjs/GeometrySummary.d.ts +4 -4
  98. package/lib/cjs/GeometrySummary.js +380 -380
  99. package/lib/cjs/GeometrySummary.js.map +1 -1
  100. package/lib/cjs/HubMock.d.ts +94 -94
  101. package/lib/cjs/HubMock.js +220 -220
  102. package/lib/cjs/HubMock.js.map +1 -1
  103. package/lib/cjs/IModelCloneContext.d.ts +8 -8
  104. package/lib/cjs/IModelCloneContext.js +15 -15
  105. package/lib/cjs/IModelCloneContext.js.map +1 -1
  106. package/lib/cjs/IModelDb.d.ts +1213 -1213
  107. package/lib/cjs/IModelDb.js +2380 -2380
  108. package/lib/cjs/IModelDb.js.map +1 -1
  109. package/lib/cjs/IModelElementCloneContext.d.ts +89 -89
  110. package/lib/cjs/IModelElementCloneContext.js +159 -159
  111. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  112. package/lib/cjs/IModelHost.d.ts +369 -369
  113. package/lib/cjs/IModelHost.js +488 -488
  114. package/lib/cjs/IModelHost.js.map +1 -1
  115. package/lib/cjs/IModelJsFs.d.ts +62 -62
  116. package/lib/cjs/IModelJsFs.js +139 -139
  117. package/lib/cjs/IModelJsFs.js.map +1 -1
  118. package/lib/cjs/IpcHost.d.ts +104 -104
  119. package/lib/cjs/IpcHost.js +276 -276
  120. package/lib/cjs/IpcHost.js.map +1 -1
  121. package/lib/cjs/LineStyle.d.ts +311 -311
  122. package/lib/cjs/LineStyle.js +295 -295
  123. package/lib/cjs/LineStyle.js.map +1 -1
  124. package/lib/cjs/LocalHub.d.ts +162 -162
  125. package/lib/cjs/LocalHub.js +580 -580
  126. package/lib/cjs/LocalHub.js.map +1 -1
  127. package/lib/cjs/LocalhostIpcHost.d.ts +20 -20
  128. package/lib/cjs/LocalhostIpcHost.js +79 -79
  129. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  130. package/lib/cjs/Material.d.ts +131 -131
  131. package/lib/cjs/Material.js +180 -180
  132. package/lib/cjs/Material.js.map +1 -1
  133. package/lib/cjs/Model.d.ts +392 -392
  134. package/lib/cjs/Model.js +489 -489
  135. package/lib/cjs/Model.js.map +1 -1
  136. package/lib/cjs/NativeAppStorage.d.ts +51 -51
  137. package/lib/cjs/NativeAppStorage.js +202 -202
  138. package/lib/cjs/NativeAppStorage.js.map +1 -1
  139. package/lib/cjs/NativeHost.d.ts +52 -52
  140. package/lib/cjs/NativeHost.js +160 -160
  141. package/lib/cjs/NativeHost.js.map +1 -1
  142. package/lib/cjs/NavigationRelationship.d.ts +156 -156
  143. package/lib/cjs/NavigationRelationship.js +225 -225
  144. package/lib/cjs/NavigationRelationship.js.map +1 -1
  145. package/lib/cjs/PromiseMemoizer.d.ts +51 -51
  146. package/lib/cjs/PromiseMemoizer.js +101 -101
  147. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  148. package/lib/cjs/PropertyStore.d.ts +132 -132
  149. package/lib/cjs/PropertyStore.js +11 -11
  150. package/lib/cjs/PropertyStore.js.map +1 -1
  151. package/lib/cjs/Relationship.d.ts +416 -416
  152. package/lib/cjs/Relationship.js +494 -494
  153. package/lib/cjs/Relationship.js.map +1 -1
  154. package/lib/cjs/RpcBackend.d.ts +5 -5
  155. package/lib/cjs/RpcBackend.js +32 -32
  156. package/lib/cjs/RpcBackend.js.map +1 -1
  157. package/lib/cjs/SQLiteDb.d.ts +219 -219
  158. package/lib/cjs/SQLiteDb.js +212 -212
  159. package/lib/cjs/SQLiteDb.js.map +1 -1
  160. package/lib/cjs/Schema.d.ts +55 -55
  161. package/lib/cjs/Schema.js +83 -83
  162. package/lib/cjs/Schema.js.map +1 -1
  163. package/lib/cjs/ServerBasedLocks.d.ts +57 -57
  164. package/lib/cjs/ServerBasedLocks.js +168 -168
  165. package/lib/cjs/ServerBasedLocks.js.map +1 -1
  166. package/lib/cjs/SqliteStatement.d.ts +360 -360
  167. package/lib/cjs/SqliteStatement.js +586 -586
  168. package/lib/cjs/SqliteStatement.js.map +1 -1
  169. package/lib/cjs/Texture.d.ts +58 -58
  170. package/lib/cjs/Texture.js +82 -82
  171. package/lib/cjs/Texture.js.map +1 -1
  172. package/lib/cjs/TileStorage.d.ts +18 -18
  173. package/lib/cjs/TileStorage.js +87 -87
  174. package/lib/cjs/TileStorage.js.map +1 -1
  175. package/lib/cjs/TxnManager.d.ts +202 -202
  176. package/lib/cjs/TxnManager.js +356 -356
  177. package/lib/cjs/TxnManager.js.map +1 -1
  178. package/lib/cjs/ViewDefinition.d.ts +435 -435
  179. package/lib/cjs/ViewDefinition.js +646 -646
  180. package/lib/cjs/ViewDefinition.js.map +1 -1
  181. package/lib/cjs/ViewStateHydrator.d.ts +13 -13
  182. package/lib/cjs/ViewStateHydrator.js +103 -103
  183. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  184. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  185. package/lib/cjs/assets/Settings/Schemas/Cloud.Schema.json +67 -67
  186. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +31 -31
  187. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +52 -52
  188. package/lib/cjs/assets/Settings/backend.setting.json5 +138 -138
  189. package/lib/cjs/core-backend.d.ts +185 -185
  190. package/lib/cjs/core-backend.js +205 -205
  191. package/lib/cjs/core-backend.js.map +1 -1
  192. package/lib/cjs/domains/FunctionalElements.d.ts +101 -101
  193. package/lib/cjs/domains/FunctionalElements.js +145 -145
  194. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  195. package/lib/cjs/domains/FunctionalSchema.d.ts +13 -13
  196. package/lib/cjs/domains/FunctionalSchema.js +39 -39
  197. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  198. package/lib/cjs/domains/GenericElements.d.ts +177 -177
  199. package/lib/cjs/domains/GenericElements.js +263 -263
  200. package/lib/cjs/domains/GenericElements.js.map +1 -1
  201. package/lib/cjs/domains/GenericSchema.d.ts +10 -10
  202. package/lib/cjs/domains/GenericSchema.js +28 -28
  203. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  204. package/lib/cjs/rpc/multipart.d.ts +11 -11
  205. package/lib/cjs/rpc/multipart.js +71 -71
  206. package/lib/cjs/rpc/multipart.js.map +1 -1
  207. package/lib/cjs/rpc/tracing.d.ts +28 -28
  208. package/lib/cjs/rpc/tracing.js +73 -73
  209. package/lib/cjs/rpc/tracing.js.map +1 -1
  210. package/lib/cjs/rpc/web/logging.d.ts +9 -9
  211. package/lib/cjs/rpc/web/logging.js +43 -43
  212. package/lib/cjs/rpc/web/logging.js.map +1 -1
  213. package/lib/cjs/rpc/web/request.d.ts +6 -6
  214. package/lib/cjs/rpc/web/request.js +73 -73
  215. package/lib/cjs/rpc/web/request.js.map +1 -1
  216. package/lib/cjs/rpc/web/response.d.ts +6 -6
  217. package/lib/cjs/rpc/web/response.js +105 -105
  218. package/lib/cjs/rpc/web/response.js.map +1 -1
  219. package/lib/cjs/rpc-impl/DevToolsRpcImpl.d.ts +15 -15
  220. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js +32 -32
  221. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  222. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts +47 -47
  223. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js +293 -293
  224. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  225. package/lib/cjs/rpc-impl/IModelTileRpcImpl.d.ts +22 -22
  226. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js +202 -202
  227. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  228. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.d.ts +36 -36
  229. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js +166 -166
  230. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  231. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.d.ts +16 -16
  232. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js +42 -42
  233. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  234. package/lib/cjs/rpc-impl/WipRpcImpl.d.ts +15 -15
  235. package/lib/cjs/rpc-impl/WipRpcImpl.js +37 -37
  236. package/lib/cjs/rpc-impl/WipRpcImpl.js.map +1 -1
  237. package/lib/cjs/workspace/Settings.d.ts +186 -186
  238. package/lib/cjs/workspace/Settings.js +154 -154
  239. package/lib/cjs/workspace/Settings.js.map +1 -1
  240. package/lib/cjs/workspace/SettingsSchemas.d.ts +75 -75
  241. package/lib/cjs/workspace/SettingsSchemas.js +190 -190
  242. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  243. package/lib/cjs/workspace/Workspace.d.ts +414 -414
  244. package/lib/cjs/workspace/Workspace.js +537 -537
  245. package/lib/cjs/workspace/Workspace.js.map +1 -1
  246. package/package.json +10 -10
@@ -1,122 +1,122 @@
1
- /** @packageDocumentation
2
- * @module iModels
3
- */
4
- import { BeEvent, GuidString } from "@itwin/core-bentley";
5
- import { ChangesetId, ChangesetIdWithIndex, LocalDirName, LocalFileName } from "@itwin/core-common";
6
- import { CloudSqlite } from "./CloudSqlite";
7
- import { SnapshotDb, TokenArg } from "./IModelDb";
8
- /**
9
- * Properties of a checkpoint
10
- * @public
11
- */
12
- export interface CheckpointProps extends TokenArg {
13
- readonly expectV2?: boolean;
14
- /** iTwin that the iModel belongs to */
15
- readonly iTwinId: GuidString;
16
- /** Id of the iModel */
17
- readonly iModelId: GuidString;
18
- /** changeset for the checkpoint */
19
- readonly changeset: ChangesetIdWithIndex;
20
- /** If true, then the latest successful v2 checkpoint at or before the provided changeset will be returned when calling queryV2Checkpoint. */
21
- readonly allowPreceding?: boolean;
22
- /** The number of seconds before the current token expires to attempt to reacquire a new token. Default is 1 hour. */
23
- readonly reattachSafetySeconds?: number;
24
- }
25
- /** Return value from [[ProgressFunction]].
26
- * @public
27
- */
28
- export declare enum ProgressStatus {
29
- /** Continue download. */
30
- Continue = 0,
31
- /** Abort download. */
32
- Abort = 1
33
- }
34
- /** Called to show progress during a download. If this function returns non-zero, the download is aborted.
35
- * @public
36
- */
37
- export declare type ProgressFunction = (loaded: number, total: number) => ProgressStatus;
38
- /** The parameters that specify a request to download a checkpoint file from iModelHub.
39
- * @internal
40
- */
41
- export interface DownloadRequest {
42
- /** name of local file to hold the downloaded data. */
43
- localFile: LocalFileName;
44
- /** A list of full fileName paths to test before downloading. If a valid file exists by one of these names,
45
- * no download is performed and `localFile` is updated to reflect the fact that the file exists with that name.
46
- * This can be used, for example, to look for checkpoints from previous versions if the naming strategy changes.
47
- */
48
- readonly aliasFiles?: ReadonlyArray<string>;
49
- /** Properties of the checkpoint to be downloaded */
50
- readonly checkpoint: CheckpointProps;
51
- /** If present, this function will be called to indicate progress as the briefcase is downloaded. If this
52
- * function returns a non-zero value, the download is aborted.
53
- */
54
- readonly onProgress?: ProgressFunction;
55
- }
56
- /** @internal */
57
- export interface DownloadJob {
58
- request: DownloadRequest;
59
- promise?: Promise<any>;
60
- }
61
- /** @internal */
62
- export declare class Downloads {
63
- private static _active;
64
- private static process;
65
- static isInProgress(pathName: LocalFileName): DownloadJob | undefined;
66
- static download<T>(request: DownloadRequest, downloadFn: (job: DownloadJob) => Promise<T>): Promise<any>;
67
- }
68
- /**
69
- * Utility class for opening V2 checkpoints from cloud containers, and also for downloading them.
70
- * @internal
71
- */
72
- export declare class V2CheckpointManager {
73
- static readonly cloudCacheName = "v2Checkpoints";
74
- private static _cloudCache?;
75
- private static containers;
76
- static getFolder(): LocalDirName;
77
- static cleanup(): void;
78
- static getFileName(checkpoint: CheckpointProps): LocalFileName;
79
- private static get cloudCache();
80
- /** Member names differ slightly between the V2Checkpoint api and the CloudSqlite api. Add aliases `accessName` for `accountName` and `accessToken` for `sasToken` */
81
- private static toCloudContainerProps;
82
- private static getContainer;
83
- static attach(checkpoint: CheckpointProps): Promise<{
84
- dbName: string;
85
- container: CloudSqlite.CloudContainer;
86
- }>;
87
- private static performDownload;
88
- /** Fully download a V2 checkpoint to a local file that can be used to create a briefcase or to work offline.
89
- * @returns a Promise that is resolved when the download completes with the changesetId of the downloaded checkpoint (which will
90
- * be the same as the requested changesetId or the most recent checkpoint before it.)
91
- */
92
- static downloadCheckpoint(request: DownloadRequest): Promise<ChangesetId>;
93
- }
94
- /** Utility class to deal with downloading V1 checkpoints from iModelHub.
95
- * @internal
96
- */
97
- export declare class V1CheckpointManager {
98
- static getFolder(iModelId: GuidString): LocalDirName;
99
- static getFileName(checkpoint: CheckpointProps): LocalFileName;
100
- static getCheckpointDb(request: DownloadRequest): Promise<SnapshotDb>;
101
- /** Download a V1 checkpoint */
102
- static downloadCheckpoint(request: DownloadRequest): Promise<ChangesetId>;
103
- private static downloadAndOpen;
104
- private static performDownload;
105
- }
106
- /** @internal */
107
- export declare class CheckpointManager {
108
- static readonly onDownloadV1: BeEvent<(job: DownloadJob) => void>;
109
- static readonly onDownloadV2: BeEvent<(job: DownloadJob) => void>;
110
- static getKey(checkpoint: CheckpointProps): string;
111
- private static doDownload;
112
- static updateToRequestedVersion(request: DownloadRequest): Promise<void>;
113
- /** Download a checkpoint file from iModelHub into a local file specified in the request parameters. */
114
- static downloadCheckpoint(request: DownloadRequest): Promise<void>;
115
- /** checks a file's dbGuid & iTwinId for consistency, and updates the dbGuid when possible */
116
- static validateCheckpointGuids(checkpoint: CheckpointProps, snapshotDb: SnapshotDb): void;
117
- /** @returns true if the file is the checkpoint requested */
118
- static verifyCheckpoint(checkpoint: CheckpointProps, fileName: LocalFileName): boolean;
119
- /** try to open an existing local file to satisfy a download request */
120
- static tryOpenLocalFile(request: DownloadRequest): SnapshotDb | undefined;
121
- }
1
+ /** @packageDocumentation
2
+ * @module iModels
3
+ */
4
+ import { BeEvent, GuidString } from "@itwin/core-bentley";
5
+ import { ChangesetId, ChangesetIdWithIndex, LocalDirName, LocalFileName } from "@itwin/core-common";
6
+ import { CloudSqlite } from "./CloudSqlite";
7
+ import { SnapshotDb, TokenArg } from "./IModelDb";
8
+ /**
9
+ * Properties of a checkpoint
10
+ * @public
11
+ */
12
+ export interface CheckpointProps extends TokenArg {
13
+ readonly expectV2?: boolean;
14
+ /** iTwin that the iModel belongs to */
15
+ readonly iTwinId: GuidString;
16
+ /** Id of the iModel */
17
+ readonly iModelId: GuidString;
18
+ /** changeset for the checkpoint */
19
+ readonly changeset: ChangesetIdWithIndex;
20
+ /** If true, then the latest successful v2 checkpoint at or before the provided changeset will be returned when calling queryV2Checkpoint. */
21
+ readonly allowPreceding?: boolean;
22
+ /** The number of seconds before the current token expires to attempt to reacquire a new token. Default is 1 hour. */
23
+ readonly reattachSafetySeconds?: number;
24
+ }
25
+ /** Return value from [[ProgressFunction]].
26
+ * @public
27
+ */
28
+ export declare enum ProgressStatus {
29
+ /** Continue download. */
30
+ Continue = 0,
31
+ /** Abort download. */
32
+ Abort = 1
33
+ }
34
+ /** Called to show progress during a download. If this function returns non-zero, the download is aborted.
35
+ * @public
36
+ */
37
+ export declare type ProgressFunction = (loaded: number, total: number) => ProgressStatus;
38
+ /** The parameters that specify a request to download a checkpoint file from iModelHub.
39
+ * @internal
40
+ */
41
+ export interface DownloadRequest {
42
+ /** name of local file to hold the downloaded data. */
43
+ localFile: LocalFileName;
44
+ /** A list of full fileName paths to test before downloading. If a valid file exists by one of these names,
45
+ * no download is performed and `localFile` is updated to reflect the fact that the file exists with that name.
46
+ * This can be used, for example, to look for checkpoints from previous versions if the naming strategy changes.
47
+ */
48
+ readonly aliasFiles?: ReadonlyArray<string>;
49
+ /** Properties of the checkpoint to be downloaded */
50
+ readonly checkpoint: CheckpointProps;
51
+ /** If present, this function will be called to indicate progress as the briefcase is downloaded. If this
52
+ * function returns a non-zero value, the download is aborted.
53
+ */
54
+ readonly onProgress?: ProgressFunction;
55
+ }
56
+ /** @internal */
57
+ export interface DownloadJob {
58
+ request: DownloadRequest;
59
+ promise?: Promise<any>;
60
+ }
61
+ /** @internal */
62
+ export declare class Downloads {
63
+ private static _active;
64
+ private static process;
65
+ static isInProgress(pathName: LocalFileName): DownloadJob | undefined;
66
+ static download<T>(request: DownloadRequest, downloadFn: (job: DownloadJob) => Promise<T>): Promise<any>;
67
+ }
68
+ /**
69
+ * Utility class for opening V2 checkpoints from cloud containers, and also for downloading them.
70
+ * @internal
71
+ */
72
+ export declare class V2CheckpointManager {
73
+ static readonly cloudCacheName = "v2Checkpoints";
74
+ private static _cloudCache?;
75
+ private static containers;
76
+ static getFolder(): LocalDirName;
77
+ static cleanup(): void;
78
+ static getFileName(checkpoint: CheckpointProps): LocalFileName;
79
+ private static get cloudCache();
80
+ /** Member names differ slightly between the V2Checkpoint api and the CloudSqlite api. Add aliases `accessName` for `accountName` and `accessToken` for `sasToken` */
81
+ private static toCloudContainerProps;
82
+ private static getContainer;
83
+ static attach(checkpoint: CheckpointProps): Promise<{
84
+ dbName: string;
85
+ container: CloudSqlite.CloudContainer;
86
+ }>;
87
+ private static performDownload;
88
+ /** Fully download a V2 checkpoint to a local file that can be used to create a briefcase or to work offline.
89
+ * @returns a Promise that is resolved when the download completes with the changesetId of the downloaded checkpoint (which will
90
+ * be the same as the requested changesetId or the most recent checkpoint before it.)
91
+ */
92
+ static downloadCheckpoint(request: DownloadRequest): Promise<ChangesetId>;
93
+ }
94
+ /** Utility class to deal with downloading V1 checkpoints from iModelHub.
95
+ * @internal
96
+ */
97
+ export declare class V1CheckpointManager {
98
+ static getFolder(iModelId: GuidString): LocalDirName;
99
+ static getFileName(checkpoint: CheckpointProps): LocalFileName;
100
+ static getCheckpointDb(request: DownloadRequest): Promise<SnapshotDb>;
101
+ /** Download a V1 checkpoint */
102
+ static downloadCheckpoint(request: DownloadRequest): Promise<ChangesetId>;
103
+ private static downloadAndOpen;
104
+ private static performDownload;
105
+ }
106
+ /** @internal */
107
+ export declare class CheckpointManager {
108
+ static readonly onDownloadV1: BeEvent<(job: DownloadJob) => void>;
109
+ static readonly onDownloadV2: BeEvent<(job: DownloadJob) => void>;
110
+ static getKey(checkpoint: CheckpointProps): string;
111
+ private static doDownload;
112
+ static updateToRequestedVersion(request: DownloadRequest): Promise<void>;
113
+ /** Download a checkpoint file from iModelHub into a local file specified in the request parameters. */
114
+ static downloadCheckpoint(request: DownloadRequest): Promise<void>;
115
+ /** checks a file's dbGuid & iTwinId for consistency, and updates the dbGuid when possible */
116
+ static validateCheckpointGuids(checkpoint: CheckpointProps, snapshotDb: SnapshotDb): void;
117
+ /** @returns true if the file is the checkpoint requested */
118
+ static verifyCheckpoint(checkpoint: CheckpointProps, fileName: LocalFileName): boolean;
119
+ /** try to open an existing local file to satisfy a download request */
120
+ static tryOpenLocalFile(request: DownloadRequest): SnapshotDb | undefined;
121
+ }
122
122
  //# sourceMappingURL=CheckpointManager.d.ts.map