UNPKG

@itwin/core-backend

Version:
59 lines 3.12 kB
/** @packageDocumentation * @module Workspace */ import { GuidString } from "@itwin/core-bentley"; import { WorkspaceContainerId, WorkspaceDbSettingsProps } from "./Workspace"; import { EditableWorkspaceContainer, WorkspaceEditor } from "./WorkspaceEditor"; /** The default resource name used to store settings in a [[WorkspaceDb]]. * This is the key under which all settings are stored in the SQLite `strings` table. * When loading settings at runtime via [[Workspace.loadSettingsDictionary]], the `resourceName` defaults * to this value, ensuring the read and write paths always agree on which key to use. * @internal */ export declare const settingsResourceName = "settingsDictionary"; /** @internal */ export declare namespace SettingsEditor { /** The type of workspace container used to store settings. */ const containerType = "settings"; /** * Create a new [[SettingsEditor]] for creating new versions of [[SettingsDb]]s. * @note The caller becomes the owner of the SettingsEditor and is responsible for calling [[SettingsEditor.close]] on it when finished. * @note It is illegal to have more than one SettingsEditor active in a single session. */ function constructForITwin(iTwinId: GuidString): Promise<{ editor: WorkspaceEditor; container: EditableWorkspaceContainer; }>; /** * Obtain a [[SettingsEditor]] for the existing settings container associated with an iTwin. * @returns The editor and container, or `undefined` if no settings container exists for the iTwin. * @note The caller becomes the owner of the SettingsEditor and is responsible for calling [[SettingsEditor.close]] on it when finished. * @note It is illegal to have more than one SettingsEditor active in a single session. */ function getForITwin(iTwinId: GuidString): Promise<{ editor: WorkspaceEditor; container: EditableWorkspaceContainer; } | undefined>; } /** * Help locate and obtain access to known containers with type "settings". * @internal */ export declare namespace SettingsContainers { /** * Query the [[BlobContainer]] service for the single settings container associated with a given iTwin. * @returns The containerId, or `undefined` if no container exists. * @throws if more than one settings container is found. */ function getITwinContainerId(iTwinId: GuidString): Promise<WorkspaceContainerId | undefined>; /** * Look up settings containers for an iTwin and its account iTwin and obtain read-only access tokens. * @returns Container props needed by [[IModelHost.getITwinWorkspace]]. The requested iTwin's settings * container is returned at [[SettingsPriority.iTwin]]; the account iTwin container is returned at * [[SettingsPriority.organization]]. * @note Requires [[IModelHost.authorizationClient]] to be configured. * @note Requires [[BlobContainer.service]] to be configured. */ function getITwinSettingsSources(iTwinId: GuidString): Promise<WorkspaceDbSettingsProps[] | undefined>; } //# sourceMappingURL=SettingsEditor.d.ts.map