import type { useStoreAutosave } from '../hooks/useStoreAutosave';
import type { useBlockAutosave } from '../hooks/useBlockAutosave';
import type { createEditorUiStore } from '../ui/editorUiStore';
type UseAutosaveTriggersProps = {
    uiStore: ReturnType<typeof createEditorUiStore>;
    metadataAutosave: ReturnType<typeof useStoreAutosave>;
    blockAutosave: ReturnType<typeof useBlockAutosave>;
    /** Content autosave - only provided for content entries (not pages) */
    contentAutosave?: ReturnType<typeof useStoreAutosave> | null;
    hasRoute: boolean;
    /** When false, does not trigger background autosaves (manual-save mode). */
    enableTriggers?: boolean;
};
/**
 * Hook that orchestrates autosave triggering based on draft state changes.
 *
 * Uses VERSION-BASED TRIGGERING to handle continuous editing correctly:
 * - Metadata: Triggers when status='pending' AND version changed
 * - Content: Triggers when status='pending' AND version changed (content entries only)
 * - Blocks: Triggers when any block has status='pending' AND version changed
 *
 * This solves the "autosave only fires once" bug that occurred with status
 * transition tracking. When a user continues editing during/after save,
 * status stays 'pending' but version increments, so we still trigger.
 */
export declare function useAutosaveTriggers({ uiStore, metadataAutosave, blockAutosave, contentAutosave, hasRoute, enableTriggers, }: UseAutosaveTriggersProps): void;
export {};
