/**
 * 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 { SshKey } from '../../generated/models';
import { SshKeyEnvironmentCreate } from '../../generated/models';
import { SshKeyRelation } from '../../generated/models';
import { SshKeyUpdate } from '../../generated/models';
/**
 * SSHKeysApiService - Auto-generated
 */
export declare class SSHKeysApiService extends ApiBaseService {
    /**
     *
     * @summary Create an SSH key and link it to the given environment
     * @param {number} environmentId The ID of the environment.
     * @param {SshKeyEnvironmentCreate} sshKeyEnvironmentCreate A JSON object containing the resource data
     */
    addEnvironmentSshKey(environmentId: number, sshKeyEnvironmentCreate: SshKeyEnvironmentCreate): Promise<ApiResponse<SshKey>>;
    /**
     *
     * @summary Delete a given SSH key
     * @param {number} sshKeyId The ID of the ssh key.
     */
    deleteSshKey(sshKeyId: number): Promise<ApiResponse<void>>;
    /**
     *
     * @summary Get a SSH key by ID
     * @param {number} sshKeyId The ID of the ssh key.
     */
    getSshKey(sshKeyId: number): Promise<ApiResponse<SshKey>>;
    /**
     *
     * @summary Return a list of all SSH keys added to an environment
     * @param {number} environmentId The ID of the environment.
     * @param {number} [page] Number of the page to be retrieved
     * @param {number} [perPage] Number of items returned per page
     */
    listEnvironmentSshKeys(environmentId: number, page?: number, perPage?: number): Promise<ApiResponse<Array<SshKeyRelation>>>;
    /**
     *
     * @summary Update an existing SSH key
     * @param {number} sshKeyId The ID of the ssh key.
     * @param {SshKeyUpdate} sshKeyUpdate A JSON object containing the resource data
     */
    updateSshKey(sshKeyId: number, sshKeyUpdate: SshKeyUpdate): Promise<ApiResponse<void>>;
}
