import type { EventName } from '../constants';
import type { AttachedPolicyToUserData } from './attachedPolicyToUserEvent';
import type { CancelPolicyRequestedData } from './cancelPolicyRequestedEvent';
import type { CepAutocompletedData } from './cepAutocompletedEvent';
import type { FormStepRenderData } from './formStepRenderEvent';
import type { PaymentMethodUpdatedData } from './paymentMethodUpdatedEvent';
import type { PersonAutocompletedData } from './personAutocompletedEvent';
import type { TransactionData } from './transactionEvent';
import type { TutorialBeginData, TutorialCompleteData } from './tutorialEvents';
import type { UserAccountOnboardingCompletedData } from './userAccountOnboardingCompletedEvent';
import type { VehicleAutocompletedData } from './vehicleAutocompletedEvent';
import type { OtpErrorEvent } from './otpErrorEvent';
import type { OneClickCheckoutCompletedEvent } from './oneClickCheckoutCompletedEvent';
export type EventDataMap = {
    attached_policy_to_user: AttachedPolicyToUserData;
    cancel_policy_requested: CancelPolicyRequestedData;
    cep_autocompleted: CepAutocompletedData;
    form_step_render: FormStepRenderData;
    payment_method_updated: PaymentMethodUpdatedData;
    person_autocompleted: PersonAutocompletedData;
    transaction: TransactionData;
    tutorial_begin: TutorialBeginData;
    tutorial_complete: TutorialCompleteData;
    user_account_onboarding_completed: UserAccountOnboardingCompletedData;
    vehicle_autocompleted: VehicleAutocompletedData;
    otp_error: OtpErrorEvent;
    one_click_checkout_completed: OneClickCheckoutCompletedEvent;
};
export type Events<T extends EventName = EventName> = {
    data: T extends keyof EventDataMap ? EventDataMap[T] : unknown;
    name: T;
};
export type { AttachedPolicyToUserData, CancelPolicyRequestedData, CepAutocompletedData, FormStepRenderData, PaymentMethodUpdatedData, PersonAutocompletedData, TransactionData, TutorialBeginData, TutorialCompleteData, UserAccountOnboardingCompletedData, VehicleAutocompletedData, OtpErrorEvent, OneClickCheckoutCompletedEvent, };
