UNPKG

@speckle/shared

Version:

Shared code between various Speckle JS packages

30 lines 3.4 kB
import { ProjectNoAccessError, ProjectNotEnoughPermissionsError, ProjectNotFoundError, SavedViewGroupNotFoundError, SavedViewNoAccessError, SavedViewNotFoundError, ServerNoAccessError, ServerNoSessionError, ServerNotEnoughPermissionsError, UngroupedSavedViewGroupLockError, WorkspaceNoAccessError, WorkspaceNotEnoughPermissionsError, WorkspacePlanNoFeatureAccessError, WorkspaceReadOnlyError, WorkspacesNotEnabledError, WorkspaceSsoSessionNoAccessError } from '../domain/authErrors.js'; import { MaybeUserContext, ProjectContext, SavedViewContext, SavedViewGroupContext } from '../domain/context.js'; import { Loaders } from '../domain/loaders.js'; import { AuthPolicyEnsureFragment } from '../domain/policies.js'; import { StringEnumValues } from '../../core/index.js'; export declare const WriteTypes: Readonly<{ UpdateGeneral: "UpdateGeneral"; MoveView: "MoveView"; EditTitle: "EditTitle"; EditDescription: "EditDescription"; SetHomeView: "SetHomeView"; }>; export type WriteTypes = StringEnumValues<typeof WriteTypes>; /** * Ensure the user can access the view */ export declare const ensureCanAccessSavedViewFragment: AuthPolicyEnsureFragment<typeof Loaders.getSavedView | typeof Loaders.getProject | typeof Loaders.getEnv | typeof Loaders.getServerRole | typeof Loaders.getWorkspaceRole | typeof Loaders.getWorkspace | typeof Loaders.getWorkspacePlan | typeof Loaders.getWorkspaceSsoProvider | typeof Loaders.getWorkspaceSsoSession | typeof Loaders.getAdminOverrideEnabled | typeof Loaders.getProjectRole, MaybeUserContext & ProjectContext & SavedViewContext & { access: 'read' | WriteTypes; /** * In some cases we want to just ignore a view being non-existant, instead of throwing */ allowNonExistent?: boolean; }, InstanceType<typeof SavedViewNotFoundError | typeof SavedViewNoAccessError | typeof ProjectNotFoundError | typeof ServerNoAccessError | typeof ServerNoSessionError | typeof ProjectNoAccessError | typeof WorkspaceNoAccessError | typeof WorkspaceSsoSessionNoAccessError | typeof ServerNotEnoughPermissionsError | typeof ProjectNotEnoughPermissionsError | typeof WorkspaceNotEnoughPermissionsError | typeof WorkspacesNotEnabledError | typeof WorkspaceReadOnlyError | typeof WorkspacePlanNoFeatureAccessError>>; /** * Ensure the user can access the view group */ export declare const ensureCanAccessSavedViewGroupFragment: AuthPolicyEnsureFragment<typeof Loaders.getSavedViewGroup | typeof Loaders.getProject | typeof Loaders.getEnv | typeof Loaders.getServerRole | typeof Loaders.getWorkspaceRole | typeof Loaders.getWorkspace | typeof Loaders.getWorkspacePlan | typeof Loaders.getWorkspaceSsoProvider | typeof Loaders.getWorkspaceSsoSession | typeof Loaders.getProjectRole, MaybeUserContext & ProjectContext & SavedViewGroupContext & { access: 'read' | 'write'; }, InstanceType<typeof SavedViewGroupNotFoundError | typeof ProjectNotFoundError | typeof ServerNoAccessError | typeof ServerNoSessionError | typeof ProjectNoAccessError | typeof WorkspaceNoAccessError | typeof WorkspaceSsoSessionNoAccessError | typeof ServerNotEnoughPermissionsError | typeof ProjectNotEnoughPermissionsError | typeof WorkspaceNotEnoughPermissionsError | typeof WorkspacesNotEnabledError | typeof WorkspaceReadOnlyError | typeof WorkspacePlanNoFeatureAccessError | typeof UngroupedSavedViewGroupLockError>>; //# sourceMappingURL=savedViews.d.ts.map