import type { AccessContext, Workspace } from "../types.js"; type WorkspaceNavigationStorage = Pick; export type RootWorkspaceSearch = { workspaceId?: string; }; export declare function workspaceNavigationPreferenceStorageId(subjectId: string): string; export declare function parseRootWorkspaceSearch(search: Record): RootWorkspaceSearch; export declare function readLastWorkspaceId(preferenceStorageId: string, storage?: WorkspaceNavigationStorage | null): string | null; export declare function writeLastWorkspaceId(preferenceStorageId: string, workspaceId: string, storage?: WorkspaceNavigationStorage | null): void; /** * The last workspace used in each organization, so switching organization * returns there. Browser-local, namespaced by subject like the landing * preference, and only a hint: callers validate it against the current list. */ export declare function organizationWorkspacePreferenceStorageId(subjectId: string): string; export declare function readLastWorkspaceIdsByOrganization(preferenceStorageId: string, storage?: WorkspaceNavigationStorage | null): Record; export declare function writeLastWorkspaceIdForOrganization(preferenceStorageId: string, accountId: string, workspaceId: string, storage?: WorkspaceNavigationStorage | null): void; export declare function isAuthorizedWorkspaceId(workspaceId: string | null | undefined, workspaces: readonly Workspace[], accessContext: AccessContext): workspaceId is string; export declare function resolveLandingWorkspaceId(input: { requestedWorkspaceId?: string | null; rememberedWorkspaceId?: string | null; workspaces: readonly Workspace[]; accessContext: AccessContext; }): string | null; export {};