import type { ResolvedSkillProfile, StationSkillState, StationSkillStateInput } from "../types/skill-selection.js"; export interface ProfileClient { readonly authority: string; /** Stable whoami subject; raw credential/key identities are intentionally excluded. */ resolvePrincipal?(): Promise; resolveProfile(id: string): Promise; recordStation(id: string, state: StationSkillStateInput): Promise; getBundle(slug: string, version: string): Promise; } export type AuthenticatedProfileRole = "owner" | "admin" | "member" | "viewer"; export interface AuthenticatedProfilePrincipal { userId: string; accountId: string; role: AuthenticatedProfileRole; } export declare class HttpProfileClient implements ProfileClient { private key; readonly authority: string; private origin; constructor(key: string, origin: string); private requestRoute; private request; private read; resolveProfile(id: string): Promise; resolvePrincipal(): Promise; recordStation(id: string, input: StationSkillStateInput): Promise; getBundle(slug: string, version: string): Promise; } export declare function createProfileClient(): Promise;