/** The signed-in user's profile as rendered by the Profile page and the * sidebar -- nulls mean "not set". */ export interface ProfileDTO { firstName: string | null; lastName: string | null; avatar: string | null; } /** A shared identity display: name when the account set one (profile or * sign-up name), otherwise null and the email stands on its own. */ export interface LinkAccountIdentity { id: string; email: string; name: string | null; avatar: string | null; } /** A pending link request addressed to the signed-in account (they asked, * we decide). */ export interface PendingLinkRequestDTO extends LinkAccountIdentity { requestId: string; requestedAtLabel: string; } /** A confirmed link: the other account in the pair. */ export interface LinkedAccountDTO extends LinkAccountIdentity { linkId: string; } /** An account the signed-in account blocked from sending link requests. */ export interface BlockedRequesterDTO extends LinkAccountIdentity { blockId: string; blockedAtLabel: string; }