/**
 * 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 { ApiToken } from '../../generated/models';
import { ApiTokenProjectCreate } from '../../generated/models';
import { ApiTokenProjectRotate } from '../../generated/models';
import { ApiTokenRelation } from '../../generated/models';
import { ApiTokenRotateResponse } from '../../generated/models';
/**
 * ProjectsAPITokensApiService - Auto-generated
 */
export declare class ProjectsAPITokensApiService extends ApiBaseService {
    /**
     *
     * @summary Create a new API token for specific project.
     * @param {number} projectId The ID of the project.
     * @param {ApiTokenProjectCreate} apiTokenProjectCreate A JSON object containing the resource data
     */
    addProjectApiToken(projectId: number, apiTokenProjectCreate: ApiTokenProjectCreate): Promise<ApiResponse<ApiToken>>;
    /**
     *
     * @summary Get details of a specific project API token.
     * @param {number} projectId The ID of the project.
     * @param {string} tokenId The ID of the token.
     */
    getProjectApiToken(projectId: number, tokenId: string): Promise<ApiResponse<ApiToken>>;
    /**
     *
     * @summary List the API tokens of specific project.
     * @param {number} projectId The ID of the project.
     * @param {number} [page] Number of the page to be retrieved
     * @param {number} [perPage] Number of items returned per page
     */
    listProjectApiTokens(projectId: number, page?: number, perPage?: number): Promise<ApiResponse<Array<ApiTokenRelation>>>;
    /**
     *
     * @summary Revoke a specific project API token.
     * @param {number} projectId The ID of the project.
     * @param {string} tokenId The ID of the token.
     */
    revokeProjectApiToken(projectId: number, tokenId: string): Promise<ApiResponse<void>>;
    /**
     *
     * @summary Rotate a specific project API token.
     * @param {number} projectId The ID of the project.
     * @param {string} tokenId The ID of the token.
     * @param {ApiTokenProjectRotate} apiTokenProjectRotate A JSON object containing the resource data
     */
    rotateProjectApiToken(projectId: number, tokenId: string, apiTokenProjectRotate: ApiTokenProjectRotate): Promise<ApiResponse<ApiTokenRotateResponse>>;
}
