import type { ArkmeBackgroundSoundEligibilityReason, ArkmeMessageSnapshotDetail, ArkmeTimelineItem } from '../types.js'; export declare function arkmeMessageSnapshotDurationLabel(value: number): string; export declare function arkmeCanOpenMessageSnapshot(item: ArkmeTimelineItem): boolean; /** Equally samples the full recording and maps it onto the desktop 1–20px waveform. */ export declare function arkmeMessageSnapshotWaveformHeights(amplitudes: readonly number[]): number[]; export declare function ArkmeMessageSnapshotDialogContent({ item, detail, previewText, metadataUnavailable, createdAtMillis, loading, loadError, backgroundSoundEnabled, backgroundSoundSupported, backgroundSoundEligibilityReason, onEnableBackgroundSound }: { item: ArkmeTimelineItem; detail?: ArkmeMessageSnapshotDetail; previewText?: string; metadataUnavailable?: string | undefined; createdAtMillis?: number | undefined; loading?: boolean; loadError?: string; backgroundSoundEnabled?: boolean; backgroundSoundSupported?: boolean; backgroundSoundEligibilityReason?: ArkmeBackgroundSoundEligibilityReason; onEnableBackgroundSound?: () => void; }): import("react").JSX.Element; export declare function ArkmeMessageSnapshotDialog({ item, detail, previewText, metadataUnavailable, createdAtMillis, loading, loadError, backgroundSoundEnabled, backgroundSoundSupported, backgroundSoundEligibilityReason, onEnableBackgroundSound, onClose }: { item: ArkmeTimelineItem; detail?: ArkmeMessageSnapshotDetail; previewText?: string; metadataUnavailable?: string | undefined; createdAtMillis?: number | undefined; loading?: boolean; loadError?: string; backgroundSoundEnabled?: boolean; backgroundSoundSupported?: boolean; backgroundSoundEligibilityReason?: ArkmeBackgroundSoundEligibilityReason; onEnableBackgroundSound?: () => void; onClose: () => void; }): import("react").ReactPortal; //# sourceMappingURL=ArkmeMessageSnapshotDialog.d.ts.map