/**
 * devopness API
 * Devopness API - Painless essential DevOps to everyone
 *
 * The version of the OpenAPI document: latest
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { ApiBaseService } from "../../../services/ApiBaseService";
import { ApiResponse } from "../../../common/ApiResponse";
import { Variable } from '../../generated/models';
import { VariableCreate } from '../../generated/models';
import { VariableRelation } from '../../generated/models';
import { VariableUpdate } from '../../generated/models';
/**
 * VariablesApiService - Auto-generated
 */
export declare class VariablesApiService extends ApiBaseService {
    /**
     *
     * @summary Create a new variable linked to a resource
     * @param {number} resourceId The resource ID.
     * @param {string} resourceType The resource type to get variables from.
     * @param {VariableCreate} variableCreate A JSON object containing the resource data
     */
    addVariable(resourceId: number, resourceType: string, variableCreate: VariableCreate): Promise<ApiResponse<Variable>>;
    /**
     *
     * @summary Delete a variable by ID
     * @param {number} variableId The ID of the variable.
     */
    deleteVariable(variableId: number): Promise<ApiResponse<void>>;
    /**
     *
     * @summary Get a variable by ID
     * @param {number} variableId The ID of the variable.
     */
    getVariable(variableId: number): Promise<ApiResponse<Variable>>;
    /**
     *
     * @summary Return a list of variables belonging to a resource
     * @param {number} resourceId The resource ID.
     * @param {string} resourceType The resource type to get variables from.
     * @param {number} [page] Number of the page to be retrieved
     * @param {number} [perPage] Number of items returned per page
     */
    listVariablesByResourceType(resourceId: number, resourceType: string, page?: number, perPage?: number): Promise<ApiResponse<Array<VariableRelation>>>;
    /**
     *
     * @summary Update an existing variable
     * @param {number} variableId The ID of the variable.
     * @param {VariableUpdate} variableUpdate A JSON object containing the resource data
     */
    updateVariable(variableId: number, variableUpdate: VariableUpdate): Promise<ApiResponse<void>>;
}
