import { FC } from 'react'; /** * The assistant's brand mark beside each of its messages. * * ★★ `active` must be the turn's IN-FLIGHT flag — `isStreaming`, which * `AssistantChatArea` derives through `isTurnInFlight`. That flag is already * true on the first frame of `provisioning`, so the cold-start wait animates * too, and it goes false on complete, on error, on interrupt (the processing * entry is deleted) and while an approval is pending (the turn settles to * `complete` first). Keying off "has text" would miss the whole wait before the * first token; keying off the message id latches forever — the bug recorded * beside `activeStreamingMessageId`. * * ★ Every settled message draws this same avatar, so the motion MUST be gated on * `active` or the entire transcript breathes. * * ★ Motion is `motion-safe:` only. An OS reduced-motion preference reaches this * through that media query; the product's own preference through * `:root[data-reduce-motion]` in tokens.css. Both paths stop it. It is purely * decorative — the transcript's `aria-busy` already conveys the state — so it is * hidden from assistive technology. */ export declare const AssistantAvatar: FC<{ active?: boolean; }>; //# sourceMappingURL=AssistantAvatar.d.ts.map