import { ActionResponse } from '../../../backend/actions/action.interface.js';
import { ActionJSON } from '../../interfaces/index.js';
import { DifferentActionParams, ActionCallCallback, UseActionResult } from './use-action.types.js';
/**
 * @load ./use-action.doc.md
 * @subcategory Hooks
 *
 * @param {ActionJSON}   action      action object
 * @param {ActionParams} params
 * @param {ActionCallCallback} onActionCall - callback triggered when action is performed
 * @return {UseActionResult}
 * @class
 * @hideconstructor
 */
export declare function useAction<K extends ActionResponse>(action: ActionJSON, params: DifferentActionParams, onActionCall?: ActionCallCallback): UseActionResult<K>;
