import { ID, SubscriptionAddOn, SubscriptionDetails, SubscriptionLocalStoreDataView } from '@zeniai/client-epic-state';
import { DisableMode } from '../../formElements/common/common';
import { ApplyChangesSectionFormData } from './sections/applyChanges/ApplyChangesSection';
import { UpdatePlanSectionFormData } from './sections/updatePlan/UpdatePlanSection';
/**
 * Component & its Props
 */
export interface Props {
    localData: SubscriptionLocalStoreDataView;
    isDisabled?: DisableMode;
    onBackClick: () => void;
    onEstimateSuccess: () => void;
    onResetClick: (subscriptionDetail: SubscriptionDetails) => void;
    onReviewClick: () => void;
    onSubscriptionDetailsChanged: (formData: FormData) => void;
}
declare const updatePlanSectionId = "updatePlan";
declare const applyChangesSectionId = "applyChanges";
declare function SubscriptionUpdatePlanPage(props: Props): import("react/jsx-runtime").JSX.Element;
export default SubscriptionUpdatePlanPage;
/**
 * Form Data Type
 */
export interface FormData {
    [applyChangesSectionId]: ApplyChangesSectionFormData;
    [updatePlanSectionId]: UpdatePlanSectionFormData;
}
/**
 * Helpers
 */
export declare const uniqueName: (sectionId: ID) => `${string}_form`;
export declare const getRecurringAddOnsOptions: (allAddOns: SubscriptionAddOn[], subscriptionAddOnIds?: ID[]) => {
    selectedOption: string;
    allOptions: {
        label: string;
        value: string;
        isDisabled: boolean;
    }[];
}[];
export declare const getFilteredMetaDetails: (localData: SubscriptionLocalStoreDataView) => {
    plans: import('@zeniai/client-epic-state').SubscriptionPlan[];
    addOns: SubscriptionAddOn[];
    coupons: import('@zeniai/client-epic-state').SubscriptionCoupon[];
};
