import { JsonInteractionHandler } from '@solid/community-server'; import type { JsonInteractionHandlerInput, JsonRepresentation, JsonView, ProviderFactory } from '@solid/community-server'; import type { PodOwnershipResolver } from './PodOwnershipResolver'; import { RememberedClientGrantStore } from './RememberedClientGrantStore'; export interface ScopedPickWebIdHandlerOptions { ownershipResolver: PodOwnershipResolver; providerFactory: ProviderFactory; storageBaseUrl?: string; provisionBaseUrl?: string; rememberedClientGrantStore?: RememberedClientGrantStore; } /** * CSS-compatible WebID picker scoped to the current storage provider. * * The handler owns only the OIDC interaction flow. WebID account links and * Pod placement are resolved behind the injected PodOwnershipResolver so the * consent path does not know which database or storage implementation backs * CSS identity data. */ export declare class ScopedPickWebIdHandler extends JsonInteractionHandler implements JsonView { private readonly logger; private readonly ownershipResolver; private readonly providerFactory; private readonly storageBaseUrl?; private readonly provisionBaseUrl?; private readonly rememberedClientGrantStore?; constructor(options: ScopedPickWebIdHandlerOptions); getView({ accountId, oidcInteraction }: JsonInteractionHandlerInput): Promise; private findResumeWebId; handle({ oidcInteraction, accountId, json }: JsonInteractionHandlerInput): Promise; private clearSelectedWebId; private resolveScopedEntries; private resolveTargetStorage; }