/**
 * UserBadge – Shows the authenticated user's display name.
 *
 * On hover, reveals a JWT details popover with email, handle, UID,
 * issued/expiry timestamps, roles, and the raw decoded claims.
 *
 * The trigger text and the popover share a single container so the
 * popover stays open while the mouse travels from the label into it.
 *
 * @module views/profile
 */
import React from 'react';
export interface UserBadgeProps {
    /** Raw JWT bearer token. */
    token: string;
    /** Display variant for the claims overlay. */
    variant?: 'full' | 'small';
    /**
     * When the popover is rendered in the ``small`` variant, show a ``+``
     * affordance in the top-right corner of the header that lets the user
     * expand the overlay to the ``full`` variant (raw JSON claims).
     *
     * Defaults to ``true``.  Ignored when ``variant`` is already ``full``.
     */
    showExpandToggle?: boolean;
    /**
     * Threshold (in milliseconds) below which the expiration timestamp is
     * rendered in ``attention.fg`` (yellow) to warn that the token is about
     * to expire.  Tokens already past ``exp`` render in ``danger.fg`` (red);
     * tokens further out than this threshold render in ``success.fg``
     * (green).  Defaults to ``3_600_000`` (1 hour).
     */
    expirationWarningMs?: number;
}
export declare const UserBadge: React.FC<UserBadgeProps>;
export default UserBadge;
