import { type NewActivityPayload, type Patient, type Pathway } from '@awell-health/extensions-core';
import z from 'zod';
import { BrazeClient } from './api/client';
import { SettingsValidationSchema } from '../settings';
import { type Activity } from '@awell-health/extensions-core/dist/types/Activity';
type ValidateAndCreateBrazeClient = <T extends z.ZodTypeAny, P extends NewActivityPayload<any, any>>(args: {
    fieldsSchema: T;
    payload: P;
    requiresAppId?: boolean;
}) => Promise<{
    brazeClient: BrazeClient;
    appId: string;
    fields: z.infer<(typeof args)['fieldsSchema']>;
    settings: z.infer<typeof SettingsValidationSchema>;
    pathway: Pathway;
    patient: Patient;
    activity: Activity;
}>;
export declare const validateAndCreateClient: ValidateAndCreateBrazeClient;
export {};
