<?php

namespace Formatrica\Submission\Integrations;

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * Interface for integration dispatchers
 */
interface Integration_Dispatcher_Interface
{
    /**
     * Dispatch submission to the integration
     *
     * @param array<string, mixed> $settings
     * @param array<string, mixed> $form
     * @param array<string, mixed> $payload
     * @param array<string, mixed> $context
     * @param array<int, array<string, mixed>> $field_meta
     */
    public function dispatch(array $settings, array $form, array $payload, array $context, array $field_meta): void;
}
