import { Dispatch, MutableRefObject, SetStateAction } from 'react'; import { ApolloClient } from '@apollo/client/core'; import { Tour } from '../types'; interface UseTourMutationsArgs { globalClient: ApolloClient | null | undefined; userId: string | undefined; productSlug: string; moduleId: string | undefined; pageId: string | undefined; workspaceId: string | undefined; setAllTours: Dispatch>; allToursRef: MutableRefObject; progressMutationVersionRef: MutableRefObject; latestProgressMutationByTourRef: MutableRefObject>; } export type TrackEventType = 'TOUR_STARTED' | 'TOUR_COMPLETED' | 'TOUR_SKIPPED' | 'TOUR_DISMISSED' | 'STEP_VIEWED' | 'STEP_COMPLETED' | 'STEP_SKIPPED' | 'INTERACTION'; export interface TrackEventOptions { stepId?: string; stepOrder?: number; duration?: number; metadata?: Record; } export declare function useTourMutations({ globalClient, userId, productSlug, moduleId, pageId, workspaceId, setAllTours, allToursRef, progressMutationVersionRef, latestProgressMutationByTourRef, }: UseTourMutationsArgs): { trackProgress: (tourId: string, status: "started" | "completed" | "skipped", _stepId?: string) => Promise; recordStepCompletion: (tourId: string, stepId: string) => Promise; trackEvent: (eventType: TrackEventType, tourId: string, options?: TrackEventOptions) => Promise; }; export {}; //# sourceMappingURL=useTourMutations.d.ts.map