import { DrivingDistance, IAddress, IAvailableInsuranceOption, IInsuranceAddon, IInsuranceOption, IVehicle, PaymentType } from '@wayke-se/ecom'; import { IAccessory } from '@wayke-se/ecom/dist-types/orders/types'; import { PaymentLookupResponse } from '@wayke-se/ecom/dist-types/payments/payment-lookup-response'; import { Dispatch } from 'redux'; import { BaseAction } from '../@types/BaseAction'; import { ICreditAssessmentStatus } from '../@types/CreditAssessmentStatus'; import { PartialCustomer } from '../@types/Customer'; import { ViewTypes } from '../@types/Navigation'; import { OrderOptions } from '../@types/OrderOptions'; import { PaymentLookup } from '../@types/PaymentLookup'; import { StageTypes } from '../@types/Stages'; import { TradeInCarData } from '../@types/TradeIn'; import { Vehicle } from '../@types/Vehicle'; import { ReducerState } from './reducer'; export declare const RESET = "RESET"; export type RESET_TYPE = BaseAction & { id: string; }; export declare const reset: (id: string) => (dispatch: Dispatch) => { type: string; id: string; }; export declare const SET_ORDER = "SET_ORDER"; export type SET_ORDER_TYPE = BaseAction & { order: OrderOptions; vehicle?: Vehicle; }; export declare const setOrder: (order: OrderOptions, vehicle?: Vehicle) => (dispatch: Dispatch) => { type: string; order: OrderOptions; vehicle: Vehicle | undefined; }; export declare const SET_ID = "SET_ID"; export type SET_ID_TYPE = BaseAction & { id: string; }; export declare const setId: (id: string) => (dispatch: Dispatch) => { type: string; id: string; }; export declare const SET_CONTACT_EMAIL_AND_PHONE = "SET_CONTACT_EMAIL_AND_PHONE"; export type SET_CONTACT_EMAIL_AND_PHONE_TYPE = BaseAction & { value: PartialCustomer; }; export declare const setContactAndPhone: (value: PartialCustomer) => (dispatch: Dispatch) => { type: string; value: PartialCustomer; }; export declare const SET_SOCIAL_ID_AND_ADDRESS = "SET_SOCIAL_ID_AND_ADDRESS"; export type SET_SOCIAL_ID_AND_ADDRESS_TYPE = BaseAction & { socialId: string; address: IAddress; lastStage: boolean; }; export declare const setSocialIdAndAddress: (socialId: string, address: IAddress, lastStage: boolean) => (dispatch: Dispatch) => { type: string; socialId: string; address: IAddress; lastStage: boolean; }; export declare const SET_ADDRESS = "SET_ADDRESS"; export type SET_ADDRESS_TYPE = BaseAction & { address: IAddress; lastStage: boolean; }; export declare const setAddress: (address: IAddress, lastStage: boolean) => (dispatch: Dispatch) => { type: string; address: IAddress; lastStage: boolean; }; export declare const SET_HOME_DELIVERY = "SET_HOME_DELIVERY"; export type SET_HOME_DELIVERY_TYPE = BaseAction & { homeDelivery: boolean; lastStage: boolean; }; export declare const setHomeDelivery: (homeDelivery: boolean, lastStage: boolean) => (dispatch: Dispatch) => { type: string; homeDelivery: boolean; lastStage: boolean; }; export declare const SET_DEALER = "SET_DEALER"; export type SET_DEALER_TYPE = BaseAction & { dealer: string; lastStage: boolean; }; export declare const setDealer: (dealer: string, lastStage: boolean) => (dispatch: Dispatch) => { type: string; dealer: string; lastStage: boolean; }; export declare const INIT_TRADE_IN = "INIT_TRADE_IN"; export type INIT_TRADE_IN_TYPE = BaseAction & { lastStage: boolean; }; export declare const initTradeIn: (lastStage: boolean) => (dispatch: Dispatch) => { type: string; lastStage: boolean; }; export declare const SET_TRADE_IN = "SET_TRADE_IN"; export type SET_TRADE_IN_TYPE = BaseAction & { lastStage: boolean; tradeIn?: TradeInCarData; tradeInVehicle?: IVehicle; }; export declare const setTradeIn: (lastStage: boolean, tradeIn?: TradeInCarData | undefined, tradeInVehicle?: IVehicle) => (dispatch: Dispatch) => { type: string; lastStage: boolean; tradeIn: TradeInCarData | undefined; tradeInVehicle: IVehicle | undefined; }; export declare const SET_FINANCIAL = "SET_FINANCIAL"; export type SET_FINANCIAL_TYPE = BaseAction & { paymentType: PaymentType; lastStage: boolean; }; export declare const setFinancial: (paymentType: PaymentType, lastStage: boolean) => (dispatch: Dispatch) => { type: string; paymentType: PaymentType; lastStage: boolean; }; export declare const SET_PAYMENT_LOOKUP_RESPONSE = "SET_PAYMENT_LOOKUP_RESPONSE"; export type SET_PAYMENT_LOOKUP_RESPONSE_TYPE = BaseAction & { paymentLookupResponse: PaymentLookup; }; export declare const setPaymentLookupResponse: (paymentLookupResponse: PaymentLookupResponse) => (dispatch: Dispatch) => { type: string; paymentLookupResponse: PaymentLookup; }; export declare const RESET_PAYMENT_LOOKUP_RESPONSE = "RESET_PAYMENT_LOOKUP_RESPONSE"; export type RESET_PAYMENT_LOOKUP_RESPONSE_TYPE = BaseAction; export declare const resetPaymentLookupResponse: () => (dispatch: Dispatch) => { type: string; }; export declare const SET_DRIVING_DISTANCE = "SET_DRIVING_DISTANCE"; export type SET_DRIVING_DISTANCE_TYPE = BaseAction & { drivingDistance: DrivingDistance; }; export declare const setDrivingDistance: (drivingDistance: DrivingDistance) => (dispatch: Dispatch) => { type: string; drivingDistance: DrivingDistance; }; export declare const COMPLETE_STAGE = "COMPLETE_STAGE"; export type COMPLETE_STAGE_TYPE = BaseAction & { lastStage: boolean; }; export declare const completeStage: (lastStage: boolean) => (dispatch: Dispatch) => { type: string; lastStage: boolean; }; export declare const SET_OR_REMOVE_INSURANCE = "SET_OR_REMOVE_INSURANCE"; export type SET_OR_REMOVE_INSURANCE_TYPE = BaseAction & { insurance?: IInsuranceOption; }; export declare const addOrRemoveInsurance: (insurance?: IInsuranceOption) => (dispatch: Dispatch) => { type: string; insurance: IInsuranceOption | undefined; }; export declare const SET_OR_REMOVE_INSURANCE_ADDONS = "SET_OR_REMOVE_INSURANCE_ADDONS"; export type SET_OR_REMOVE_INSURANCE_ADDONS_TYPE = BaseAction & { insurance: IInsuranceOption; insuranceAddons: IInsuranceAddon[]; }; export declare const addOrRemoveInsuranceAddon: (insurance: IInsuranceOption, insuranceAddons: IInsuranceAddon[]) => (dispatch: Dispatch) => { type: string; insurance: IInsuranceOption; insuranceAddons: IInsuranceAddon[]; }; export declare const SET_OR_REMOVE_FREE_INSURANCE = "SET_OR_REMOVE_FREE_INSURANCE"; export type SET_OR_REMOVE_FREE_INSURANCE_TYPE = BaseAction & { freeInsurance?: IAvailableInsuranceOption; }; export declare const addOrRemoveFreeInsurance: (freeInsurance: IAvailableInsuranceOption) => (dispatch: Dispatch) => { type: string; freeInsurance: IAvailableInsuranceOption; }; export declare const SET_OR_REMOVE_ACCESSORY = "SET_OR_REMOVE_ACCESSORY"; export type SET_OR_REMOVE_ACCESSORY_TYPE = BaseAction & { accessory: IAccessory; }; export declare const addOrRemoveAccessory: (accessory: IAccessory) => (dispatch: Dispatch) => { type: string; accessory: IAccessory; }; export declare const GO_TO = "GO_TO"; export type GO_TO_TYPE = BaseAction & { view: ViewTypes; index?: number; subStage?: number; }; export declare const goTo: (view: ViewTypes, index?: number, subStage?: number) => (dispatch: Dispatch) => { type: string; view: ViewTypes; index: number | undefined; subStage: number | undefined; }; export declare const SET_STAGES = "SET_STAGES"; export type SET_STAGES_TYPE = BaseAction & { stages: StageTypes[]; }; export declare const setStages: (stages: StageTypes[]) => (dispatch: Dispatch) => { type: string; stages: StageTypes[]; }; export declare const SET_CREATED_ORDER_ID = "SET_CREATED_ORDER_ID"; export type SET_CREATED_ORDER_ID_TYPE = BaseAction & { id: string | null | undefined; payment?: { type: string; url: string; }; }; export declare const setCreatedOrderId: (id: string | null | undefined, payment?: { type: string; url: string; }) => (dispatch: Dispatch) => { type: string; id: string | null | undefined; payment: { type: string; url: string; } | undefined; }; export declare const SET_CREDIT_ASSESSMENT_RESPONSE = "SET_CREDIT_ASSESSMENT_RESPONSE"; export type SET_CREDIT_ASSESSMENT_RESPONSE_TYPE = BaseAction & { caseId?: string; creditAssessmentResponse?: ICreditAssessmentStatus; }; export declare const setCreditAssessmentResponse: (caseId?: string, creditAssessmentResponse?: ICreditAssessmentStatus) => (dispatch: Dispatch) => { type: string; caseId: string | undefined; creditAssessmentResponse: ICreditAssessmentStatus | undefined; }; export declare const SET_STATE = "SET_STATE"; export type SET_STATE_TYPE = BaseAction & { state: ReducerState; }; export declare const setState: (state: ReducerState) => (dispatch: Dispatch) => { type: string; state: ReducerState; }; export type Action = RESET_TYPE | SET_ORDER_TYPE | SET_ID_TYPE | SET_CONTACT_EMAIL_AND_PHONE_TYPE | SET_SOCIAL_ID_AND_ADDRESS_TYPE | SET_ADDRESS_TYPE | SET_HOME_DELIVERY_TYPE | SET_DEALER_TYPE | INIT_TRADE_IN_TYPE | SET_TRADE_IN_TYPE | SET_FINANCIAL_TYPE | SET_PAYMENT_LOOKUP_RESPONSE_TYPE | RESET_PAYMENT_LOOKUP_RESPONSE_TYPE | SET_DRIVING_DISTANCE_TYPE | SET_OR_REMOVE_INSURANCE_ADDONS_TYPE | SET_OR_REMOVE_INSURANCE_TYPE | SET_OR_REMOVE_FREE_INSURANCE_TYPE | SET_OR_REMOVE_ACCESSORY_TYPE | GO_TO_TYPE | SET_STAGES_TYPE | COMPLETE_STAGE_TYPE | SET_CREATED_ORDER_ID_TYPE | SET_CREDIT_ASSESSMENT_RESPONSE_TYPE | SET_STATE_TYPE;