import type { ComponentSize, ThemeColor } from '../../types';
/** Typing indicator component properties */
export type OreTypingIndicatorProps = {
/** Theme color for the dots */
color?: ThemeColor;
/** Accessible label announced once via a polite live region (default: `"Typing…"`) */
label?: string;
/** Dot size preset */
size?: ComponentSize;
};
/**
* Three bouncing dots signaling that the other side of a conversation is composing a reply —
* the moment before any content exists. For a message whose content is already streaming in,
* use `ore-chat-message`'s `streaming` attribute (a blinking cursor) instead.
*
* The dots are decorative (`aria-hidden`) — `label` is the entire accessibility contract,
* announced through the shared singleton live region (`core/announcer.ts`) rather than a
* static `aria-live` element in the template. A live region populated in the same paint as
* its own insertion is unreliable across browsers/screen readers; routing through the shared
* announcer (pre-existing region, clear-then-set) is the same pattern already used for other
* transient status messages across this package.
*
* @element ore-typing-indicator
*
* @attr {string} label - Accessible label announced once via a polite live region (default: "Typing…")
* @attr {string} color - Theme color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'error'
* @attr {string} size - 'sm' | 'md' | 'lg'
*
* @cssprop --typing-indicator-color - Dot color
* @cssprop --typing-indicator-size - Dot diameter
* @cssprop --typing-indicator-gap - Gap between dots
*
* @part dots - Dots container.
* @part dot - Individual dot element.
* @example
* ```html
*
*
* ```
*/
export declare const TYPING_INDICATOR_TAG: "ore-typing-indicator";
//# sourceMappingURL=typing-indicator.d.ts.map