import { IUser } from "@api-client/core/build/browser.js";
/**
 * A class that caches user info in memory so the application reduces the number
 * of requests to the backend requesting a user info.
 */
declare class UserCache {
    protected cached: Map<string, IUser | undefined>;
    /**
     * Application configuration broadcast channel.
     */
    protected configBroadcast: BroadcastChannel;
    constructor();
    getUser(key: string): Promise<IUser | undefined>;
    protected requestUser(key: string): Promise<IUser | undefined>;
    protected handleConfigBroadcast(e: MessageEvent): void;
}
declare const instance: UserCache;
export default instance;
//# sourceMappingURL=UserCache.d.ts.map