export declare const STEALTH_HEALTH_ENROLL_QUESTIONNAIRE_COMPLETED_EVENT = "enroll.questionnaire.completed";
export declare const STEALTH_HEALTH_SHORT_REPORT_COMPLETED_EVENT = "metabolic_code.short_report.completed";
export declare const STEALTH_HEALTH_TENANT_JUNCTION_ORDER_EVENT = "enroll.junction_order.created";
export type MetabolicStealthHealthWebhookUser = {
    uid: string | null;
    email: string | null;
    firstname: string | null;
    lastname: string | null;
    birthday: string | null;
    telephone: string | null;
};
export type MetabolicStealthHealthEnrollPage = {
    id: string;
    slug?: string | null;
    slugs?: string[] | null;
    data?: Record<string, unknown> | null;
};
export type SubmitStealthHealthQuestionnaireSubmissionOptions = {
    functionsBaseUrl: string;
    questionnaireResponseId: string;
    questionnaireId: string;
    enrollSlug?: string | null;
    profileData?: unknown;
    selectedMedication?: unknown;
    partnerRef?: unknown;
    whiteLabelDomain?: string | null;
    fetchImpl?: typeof fetch;
    signal?: AbortSignal;
};
export type SubmitStealthHealthPatientLabOrderOptions = {
    functionsBaseUrl: string;
    body: string;
    fetchImpl?: typeof fetch;
    signal?: AbortSignal;
};
export type DispatchMetabolicStealthHealthAppointmentCompletedWebhookOptions = {
    apiKey: string;
    appointmentId: string;
    enrollPage: MetabolicStealthHealthEnrollPage;
    enrollSlug?: string | null;
    questionnaireId: string;
    questionnaireResponseId: string;
    responseData: Record<string, unknown>;
    user: MetabolicStealthHealthWebhookUser;
    occurredAt?: string;
    fetchImpl?: typeof fetch;
    signal?: AbortSignal;
};
export type DispatchMetabolicStealthHealthShortReportWebhookOptions = Omit<DispatchMetabolicStealthHealthAppointmentCompletedWebhookOptions, "appointmentId"> & {
    submissionId?: string | null;
};
export type DispatchMetabolicStealthHealthJunctionOrderWebhookOptions = {
    apiKey: string;
    enrollPage: MetabolicStealthHealthEnrollPage;
    requestBody?: Record<string, unknown> | null;
    responseData: unknown;
    appointmentData?: Record<string, unknown> | null;
    occurredAt?: string;
    fetchImpl?: typeof fetch;
    signal?: AbortSignal;
};
export declare class MetabolicStealthHealthRequestError extends Error {
    readonly status: number;
    readonly statusText: string;
    readonly body: unknown;
    constructor(message: string, status: number, statusText: string, body: unknown);
}
export declare function submitStealthHealthQuestionnaireSubmission({ functionsBaseUrl, questionnaireResponseId, questionnaireId, enrollSlug, profileData, selectedMedication, partnerRef, whiteLabelDomain, fetchImpl, signal, }: SubmitStealthHealthQuestionnaireSubmissionOptions): Promise<Record<string, unknown>>;
export declare function submitStealthHealthPatientLabOrder({ functionsBaseUrl, body, fetchImpl, signal, }: SubmitStealthHealthPatientLabOrderOptions): Promise<Record<string, unknown>>;
export declare function buildMetabolicStealthHealthAppointmentCompletedWebhookPayload({ appointmentId, enrollPage, enrollSlug, questionnaireId, questionnaireResponseId, responseData, user, occurredAt, }: Omit<DispatchMetabolicStealthHealthAppointmentCompletedWebhookOptions, "apiKey" | "fetchImpl" | "signal">): Record<string, unknown>;
export declare function dispatchMetabolicStealthHealthAppointmentCompletedWebhook({ apiKey, fetchImpl, signal, ...payloadOptions }: DispatchMetabolicStealthHealthAppointmentCompletedWebhookOptions): Promise<Response>;
export declare function buildMetabolicStealthHealthShortReportWebhookPayload({ submissionId, ...payloadOptions }: Omit<DispatchMetabolicStealthHealthShortReportWebhookOptions, "apiKey" | "fetchImpl" | "signal">): Record<string, unknown>;
export declare function dispatchMetabolicStealthHealthShortReportWebhook({ apiKey, fetchImpl, signal, ...payloadOptions }: DispatchMetabolicStealthHealthShortReportWebhookOptions): Promise<Response>;
export declare function resolveMetabolicStealthHealthJunctionOrderId(data: unknown): string;
export declare function resolveMetabolicStealthHealthJunctionStatus(data: unknown): string;
export declare function buildMetabolicStealthHealthJunctionOrderWebhookPayload({ enrollPage, requestBody, responseData, appointmentData, occurredAt, }: Omit<DispatchMetabolicStealthHealthJunctionOrderWebhookOptions, "apiKey" | "fetchImpl" | "signal">): Record<string, unknown> | null;
export declare function dispatchMetabolicStealthHealthJunctionOrderWebhook({ apiKey, fetchImpl, signal, ...payloadOptions }: DispatchMetabolicStealthHealthJunctionOrderWebhookOptions): Promise<Response | null>;
