/**
 * use_field_action_slot - Hook that resolves per-field action slots for a
 * `HazoCollabForm*` component.
 *
 * Returns `{ row_end, row_below }` — two JSX elements (each possibly null)
 * ready to drop into the row. Components with a custom layout (checkbox,
 * radio, doc) call this directly; `BaseFieldLayout` calls it on behalf of
 * every component that uses it.
 *
 * Resolution order (v5.10+):
 *   1. If `field_actions` is non-empty in context → use `FieldActionArraySlot`
 *      for both positions (new composable path).
 *   2. Otherwise fall back to the legacy `FieldActionSlot` / `field_action_components`
 *      path (5.9.x parity).
 *
 * The hook silently yields null entries when:
 *
 *   - the consuming app renders the component outside HazoCollabFormView
 *     (no FormViewContext) — keeps backward compatibility with non-view callers
 *     and other one-off usages, and
 *   - neither `field_actions` nor `field_action_components` is set.
 */
import React from 'react';
export interface FieldActionSlots {
    /** Inline at the end of the row (after UnifiedFieldControls). */
    row_end: React.ReactElement | null;
    /** Full-width block immediately below the row. */
    row_below: React.ReactElement | null;
}
/**
 * @param effective_field_id The id used for form_data / metadata lookups in
 *   the consuming component — typically `field_data_id || field_id_final`.
 *   For additional entries the `:N` suffix is stripped so the lookup hits
 *   the parent field's config.
 */
export declare function use_field_action_slot(effective_field_id: string): FieldActionSlots;
//# sourceMappingURL=use_field_action_slot.d.ts.map