import { JsonInteractionHandler, type PodStore } from '@solid/community-server'; import type { Json, JsonInteractionHandlerInput, JsonRepresentation, JsonView } from '@solid/community-server'; export interface AccountStorageBindingsHandlerOptions { podStore: PodStore; /** The current Xpod storage root, used to scope Local bindings. */ storageBaseUrl?: string; /** Existing runtime edition. Cloud/server Accounts can own remote SP Pods. */ edition?: string; } export interface AccountStorageBinding { [key: string]: Json | undefined; storageUrl: string; webId: string; } /** * Exposes the exact WebID/storage pairs owned by an authenticated Account. * * Account Pod and WebID controls are deliberately separate in CSS. Pairing * those arrays in the browser loses ownership information, so this handler * derives each pair directly from PodStore ownership facts. Local scopes to * its storage root; Cloud/server also exposes its Account-owned remote Pods. */ export declare class AccountStorageBindingsHandler extends JsonInteractionHandler implements JsonView { private readonly podStore; private readonly storageRoot?; private readonly localOnly; constructor(options: AccountStorageBindingsHandlerOptions); getView({ accountId }: JsonInteractionHandlerInput): Promise; handle(input: JsonInteractionHandlerInput): Promise; private findBindings; }