import { ValidationState } from './checkWork';
type UseDelayedSubmissionPendingOptions = {
    /** Delay in milliseconds before showing pending UI (default: 500ms) */
    delayMs?: number;
    /** Function to call to submit the answer */
    submitAction: () => void;
    /** Current validation state of the answer */
    validationState: ValidationState;
    /** Whether the answer was just submitted */
    justSubmitted?: boolean;
};
/**
 * Hook for delayed submission pending UI feedback.
 *
 * Shows a "Checking..." message only if submission takes longer than the specified delay.
 * Prevents duplicate submissions while in-flight. Automatically clears the pending state
 * when validation completes (via validationState change from "unvalidated") or when a new
 * answer is submitted (via justSubmitted flag).
 *
 * The delay default (500ms) balances user experience:
 * - Avoids flashing spinners for quick validations
 * - Shows feedback for slow network/computation requests
 *
 * @returns Object with isPending state and submitActionWithPending function
 */
export declare function useDelayedSubmissionPending({ delayMs, submitAction, validationState, justSubmitted, }: UseDelayedSubmissionPendingOptions): {
    isPending: boolean;
    submitActionWithPending: () => void;
};
export {};
//# sourceMappingURL=useDelayedSubmissionPending.d.ts.map