/** * CaptureStitchStatsToast — auto-dismissing toast that shows the * batch-stitcher's leaveBiggestComponent telemetry + the resolved * cv::Stitcher mode after every successful finalize. * * Pattern: top-center capsule, dark translucent background, dismisses * itself after `dismissAfterMs` (default 4500). Replaces the * Alert.alert blocking modal that used to interrupt the next * capture. See `useStitchStatsToast` hook for the matching * imperative API. * * Layer-2 hosts can mount this directly + pass their own message; * Layer-1 `` mounts it under `settings.debug` and feeds * the formatted message from the finalize result automatically. */ import React from 'react'; import type { IncrementalFinalizeResult } from '../stitching/incremental'; export interface CaptureStitchStatsToastProps { /** Toast message to show. Pass null to hide. */ message: string | null; /** * Optional bold title rendered above the message (e.g. an action ask * like "Pan more slowly"). Omit for a plain single-line toast. */ title?: string | null; /** Top inset for safe-area placement. Toast pinned `topInset + 12`. */ topInset?: number; /** * Vertical placement. 'top' (default) pins it `topInset + 12` from the * top; 'center' vertically centers it — more prominent, and dodges the * notch / Dynamic Island entirely. */ placement?: 'top' | 'center'; } export declare function CaptureStitchStatsToast({ message, title, topInset, placement, }: CaptureStitchStatsToastProps): React.JSX.Element | null; /** * Imperative API for showing transient stitch-stats toasts. * * Returns `{ message, showFor, showResult }`: * - `message` — current toast text (pass to CaptureStitchStatsToast) * - `showFor` — show an arbitrary string, auto-dismiss * - `showResult` — format an `IncrementalFinalizeResult` into the * standard "Stitch: N/M frames • thresh X.XX • * N attempt(s) • mode" line and show it. Convenience * for hosts that just want the canonical format. * * Auto-clears its setTimeout on unmount so callers don't have to * worry about setState-on-unmounted warnings. */ export interface UseStitchStatsToastReturn { message: string | null; /** Optional bold title shown above `message` (pass to the toast). */ title: string | null; showFor: (msg: string, ms?: number, title?: string) => void; showResult: (result: IncrementalFinalizeResult, ms?: number) => void; } export declare function useStitchStatsToast(): UseStitchStatsToastReturn; //# sourceMappingURL=CaptureStitchStatsToast.d.ts.map