import type { App_RoutingForms_Form } from '../../../prisma-client';
import type { z } from "zod";
import type { FormResponse, SerializableForm } from "../types/types";
export declare function findMatchingRoute({ form, response, }: {
    form: Pick<SerializableForm<App_RoutingForms_Form>, "routes" | "fields">;
    response: Record<string, Pick<FormResponse[string], "value">>;
}): {
    id: string;
    action: {
        type: import("../zod").RouteActionType;
        value: string;
        eventTypeId?: number | undefined;
    };
    queryValue: ({
        type: "group";
        id?: string | undefined;
        children1?: Record<string, {
            type?: string | undefined;
            properties?: {
                field?: any;
                operator?: any;
                value?: any;
                valueSrc?: any;
                valueError?: (string | null)[] | undefined;
                valueType?: any;
            } | undefined;
        }> | undefined;
        properties?: any;
    } & z.BRAND<"formFieldsQueryValue">) | ({
        type: "switch_group";
        id?: string | undefined;
        children1?: Record<string, {
            type?: string | undefined;
            properties?: {
                field?: any;
                operator?: any;
                value?: any;
                valueSrc?: any;
                valueError?: (string | null)[] | undefined;
                valueType?: any;
            } | undefined;
        }> | undefined;
        properties?: any;
    } & z.BRAND<"formFieldsQueryValue">);
    name?: string | undefined;
    attributeIdForWeights?: string | undefined;
    attributeRoutingConfig?: {
        skipContactOwner?: boolean | undefined;
        salesforce?: {
            rrSkipToAccountLookupField?: boolean | undefined;
            rrSKipToAccountLookupFieldName?: string | undefined;
        } | undefined;
    } | null | undefined;
    attributesQueryValue?: {
        type: "group";
        id?: string | undefined;
        children1?: Record<string, {
            type?: string | undefined;
            properties?: {
                field?: any;
                operator?: any;
                value?: any;
                valueSrc?: any;
                valueError?: (string | null)[] | undefined;
                valueType?: any;
            } | undefined;
        }> | undefined;
        properties?: any;
    } | {
        type: "switch_group";
        id?: string | undefined;
        children1?: Record<string, {
            type?: string | undefined;
            properties?: {
                field?: any;
                operator?: any;
                value?: any;
                valueSrc?: any;
                valueError?: (string | null)[] | undefined;
                valueType?: any;
            } | undefined;
        }> | undefined;
        properties?: any;
    } | undefined;
    fallbackAttributesQueryValue?: {
        type: "group";
        id?: string | undefined;
        children1?: Record<string, {
            type?: string | undefined;
            properties?: {
                field?: any;
                operator?: any;
                value?: any;
                valueSrc?: any;
                valueError?: (string | null)[] | undefined;
                valueType?: any;
            } | undefined;
        }> | undefined;
        properties?: any;
    } | {
        type: "switch_group";
        id?: string | undefined;
        children1?: Record<string, {
            type?: string | undefined;
            properties?: {
                field?: any;
                operator?: any;
                value?: any;
                valueSrc?: any;
                valueError?: (string | null)[] | undefined;
                valueType?: any;
            } | undefined;
        }> | undefined;
        properties?: any;
    } | undefined;
    isFallback?: boolean | undefined;
} | null;
//# sourceMappingURL=processRoute.d.ts.map