/**
 * @file ChatDictationButton.tsx
 * @input Uses React, StyleX, Button, Icon, useChatDictation return
 * @output Exports ChatDictationButton for voice input in chat composer
 * @position UI component — renders in sendActions slot of ChatComposer
 *
 * A toggle button that connects to useChatDictation. Shows a microphone
 * icon when idle. When listening, replaces the icon with volume-reactive
 * frequency bars (equalizer style) that respond to real mic input.
 * Bars use the accent color and hue-shift when volume clips past 10%.
 *
 * SYNC: When modified, update:
 * - /packages/core/src/Chat/index.ts (exports)
 * - /packages/cli/assets/templates/blocks/components/ChatDictationButton/ (block examples)
 */
import React from 'react';
import type { UseSpeechRecognitionReturn } from './useSpeechRecognition';
import type { BaseProps } from '../BaseProps';
export interface ChatDictationButtonProps extends BaseProps<HTMLSpanElement> {
    ref?: React.Ref<HTMLSpanElement>;
    /** The return value from useChatDictation or useSpeechRecognition. */
    dictation: UseSpeechRecognitionReturn;
    /** Button size. @default "md" */
    size?: 'sm' | 'md';
    /** Hide the button when SpeechRecognition is not supported. @default true */
    isHiddenWhenUnsupported?: boolean;
    /** Accessible label override. */
    label?: string;
}
/**
 * Microphone button for voice input in a chat composer.
 * Requires the return value of useChatDictation.
 *
 * @example
 * ```
 * <ChatDictationButton dictation={dictation} />
 * ```
 */
export declare function ChatDictationButton({ ref, dictation, size, isHiddenWhenUnsupported, label, xstyle, className, style, ...rest }: ChatDictationButtonProps): React.JSX.Element | null;
export declare namespace ChatDictationButton {
    var displayName: string;
}
//# sourceMappingURL=ChatDictationButton.d.ts.map