import { FanfareError } from '@fanfare-io/fanfare-sdk-core/errors'; import { JourneyHandle, JourneySnapshot, JourneyView } from '@fanfare-io/fanfare-sdk-core/experiences'; import { MaybeAccessor } from '../utils/to-accessor'; export interface ExperienceJourneyOptions { accessCode?: MaybeAccessor; autoEnterWaitlist?: MaybeAccessor; /** * Whether core may enter the consumer on the consumer's behalf when routing lands on a * distribution the merchant set to enter on arrival. Left unset, core's default (`true`) * applies; `false` keeps every entry an explicit one the consumer presses. */ automaticEntry?: MaybeAccessor; } export interface UseExperienceJourneyOptions extends ExperienceJourneyOptions { autoStart?: MaybeAccessor; } export interface UseExperienceJourneyResult { journey: () => JourneyHandle | null; view: () => JourneyView | null; snapshot: () => JourneySnapshot | null; error: () => string | null; fanfareError: () => FanfareError | null; start: (options?: ExperienceJourneyOptions) => Promise; } export declare function useExperienceJourney(experienceId: MaybeAccessor, options?: UseExperienceJourneyOptions): UseExperienceJourneyResult;