import React from 'react'; import { AudioRecordingProps, IMessage } from '../Models'; export declare const isVoiceRecordingAvailable: boolean; export declare const formatElapsed: (ms: number) => string; /** Live recording state surfaced to the InputToolbar so it can render the bar. */ export interface VoiceRecordingState { active: boolean; locked: boolean; elapsed: number; cancelArmed: boolean; /** * Recent microphone amplitudes, 0..1, oldest first. Drives the live waveform * the toolbar draws while a recording is locked. */ levels: number[]; } export interface VoiceMessageInputHandle { /** Discard the in-progress recording (used by the bar's Cancel button). */ cancel: () => void; } export interface VoiceMessageInputProps { config?: AudioRecordingProps; onSend?: (message: Partial, shouldResetInputToolbar: boolean) => void; /** Reports recording state up so the toolbar can draw the timer/cancel bar. */ onStateChange?: (state: VoiceRecordingState) => void; /** * Single tap on the mic. When provided, the control switches to tap-to-toggle * (voice <-> video) and only records once the press is held, matching Telegram. */ onTap?: () => void; } export declare const VoiceMessageInput: React.ForwardRefExoticComponent>; //# sourceMappingURL=VoiceMessageInput.d.ts.map