import type { UseFormReturn } from "react-hook-form";
import type { inferSSRProps } from "@calcom/types/inferSSRProps";
import type { Brand } from "@calcom/types/utils";
import type { RoutingFormWithResponseCount, RoutingForm } from "../types/types";
import { getServerSidePropsForSingleFormView } from "./getServerSidePropsSingleForm";
type SingleFormComponentProps = {
    form: RoutingFormWithResponseCount;
    appUrl: string;
    Page: React.FC<{
        form: RoutingFormWithResponseCount;
        appUrl: string;
        hookForm: UseFormReturn<RoutingFormWithResponseCount>;
    }>;
    enrichedWithUserProfileForm: inferSSRProps<typeof getServerSidePropsForSingleFormView>["enrichedWithUserProfileForm"];
};
/**
 * It has the the ongoing changes in the form along with enrichedWithUserProfileForm specific data.
 * So, it can be used to test the form in the test preview dialog without saving the changes even.
 */
type UptoDateForm = Brand<NonNullable<SingleFormComponentProps["enrichedWithUserProfileForm"]>, "UptoDateForm">;
export declare const TestForm: ({ form, supportsTeamMembersMatchingLogic, showAllData, renderFooter, }: {
    form: UptoDateForm | RoutingForm;
    supportsTeamMembersMatchingLogic: boolean;
    showAllData?: boolean;
    renderFooter?: (onClose: () => void) => React.ReactNode;
}) => JSX.Element;
export declare const TestFormDialog: ({ form, isTestPreviewOpen, setIsTestPreviewOpen, }: {
    form: UptoDateForm;
    isTestPreviewOpen: boolean;
    setIsTestPreviewOpen: (value: boolean) => void;
}) => JSX.Element;
export default function SingleFormWrapper({ form: _form, ...props }: SingleFormComponentProps): JSX.Element | null;
export { getServerSidePropsForSingleFormView };
//# sourceMappingURL=SingleForm.d.ts.map