import type { StepConfig } from '../types';
/** ── Domain → API routing ─────────────────────────────────────────────────────
 * In ideal state this will be done based on the requirement keys from an endpoint in
 * Requirement API provider router (a facade representing Unified customer data),
 * which is not part of initial POC
 */
interface UseCustomerDataResult {
    /** Call with the TanStack Form values to dispatch updates to the correct APIs. */
    submit: (formValues: Record<string, unknown>) => Promise<void>;
}
/**
 * Routes DynamicForm submission to the correct API mutations based on the data path prefix
 * declared in each `ComponentConfig`:
 *
 * - `organization.*` / `individual.*` → `useUpdateLegalEntity` (PATCH)
 * - `businessLine.*`                  → `useCreateBusinessLine` (POST, no id) /
 *                                       `useUpdateBusinessLine` (POST, with id)
 *
 * @param steps          - step config from the server response; used to enumerate data paths
 *                         for current task
 * @param legalEntityId  - override the legal entity ID for non-root entities (e.g. UBOs).
 *                         Defaults to `rootLegalEntityId` from `ApiContext`.
 */
export declare function useCustomerData(steps: StepConfig[]): UseCustomerDataResult;
export {};
