import { ReactNode } from 'react'; export type FoodsPage = { title?: string; subtitle?: ReactNode; icon?: React.JSX.Element; content: ReactNode; }; export type DisplayTextOptions = { title: ReactNode; subtitle?: ReactNode; nextPage: ReactNode; previousPage: ReactNode; finalPage?: ReactNode; syncingMessage?: ReactNode; savingDefaultMessage?: ReactNode; errorDefaultMessage?: ReactNode; warningText?: ReactNode; }; export type ConfirmOptionsType = { titleText: ReactNode; infoText?: ReactNode; confirmText: ReactNode; cancelText: ReactNode; onConfirm: () => void; onCancel: () => void; }; export type ConfirmOptions = { confirmExit: false; } | { confirmExit: true; confirmOptions: ConfirmOptionsType; }; export type FoodsFormValidationResult = boolean | void; export type FoodsFormBaseProps = ConfirmOptions & { pages: FoodsPage[]; children?: ReactNode; textOptions: DisplayTextOptions; startingPage?: number; onClose?: () => void; onValidate?: () => FoodsFormValidationResult | Promise; onPageChange?: (newPageIndex: number, previousPageIndex: number) => void; showSync?: boolean; isLoading?: boolean; }; export declare const FoodsFormBase: (props: FoodsFormBaseProps) => import("react/jsx-runtime").JSX.Element;