import { ActionEntity } from "../InteractiveEntities/ActionEntity";
/**
 * Represents an API action that can be performed on a dynamic form.
 */
export declare class APIAction extends ActionEntity {
    /**
     * The URL to which the API action should be performed.
     */
    private url;
    /**
     * The HTTP method to be used for the API action.
     */
    private method;
    /**
     * The payload to be sent with the API action.
     */
    private payload?;
    /**
     * The headers to be sent with the API action.
     */
    private headers?;
    /**
     * The key to be used to insert the data in the provided payload.
     */
    private dataKey?;
    /**
     * Creates a new instance of the APIAction class.
     * @param {string} url - The URL to which the API action should be performed.
     * @param {string} method - The HTTP method to be used for the API action.
     */
    constructor(url: string, method: string);
    /**
     * Returns the URL to which the API action should be performed.
     * @returns {string} The URL to which the API action should be performed.
     */
    getURL(): string;
    /**
     * Returns the HTTP method to be used for the API action.
     * @returns {string} The HTTP method to be used for the API action.
     */
    getMethod(): string;
    /**
     * Returns the payload to be sent with the API action.
     * @returns {Object} The payload to be sent with the API action.
     */
    getPayload(): Object | undefined;
    /**
     * Sets the payload to be sent with the API action.
     * @param {Object} payload - The payload to be sent with the API action.
     */
    setPayload(payload: Object): void;
    /**
     * Returns the headers to be sent with the API action.
     * @returns {Object} The headers to be sent with the API action.
     */
    getHeaders(): Object | undefined;
    /**
     * Sets the headers to be sent with the API action.
     * @param {Object} headers - The headers to be sent with the API action.
     */
    setHeaders(headers: Object): void;
    /**
     * Returns the key to be used to insert the data in the provided payload.
     * @returns {string} The key to be used to insert the data in the provided payload.
     */
    getDataKey(): string | undefined;
    /**
     * Sets the key to be used to insert the data in the provided payload.
     * @param {string} dataKey - The key to be used to insert the data in the provided payload.
     */
    setDataKey(dataKey: string): void;
    static fromJSON(json: any): APIAction;
}
