/**
 * 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 { PersonalAccessToken } from '../../generated/models';
import { PersonalAccessTokenRelation } from '../../generated/models';
import { PersonalAccessTokenRotateResponse } from '../../generated/models';
import { PersonalAccessTokenUserCreate } from '../../generated/models';
import { PersonalAccessTokenUserRotate } from '../../generated/models';
/**
 * UsersPersonalAccessTokensApiService - Auto-generated
 */
export declare class UsersPersonalAccessTokensApiService extends ApiBaseService {
    /**
     *
     * @summary Create a new personal access token for the authenticated user.
     * @param {PersonalAccessTokenUserCreate} personalAccessTokenUserCreate A JSON object containing the resource data
     */
    addUserPersonalAccessToken(personalAccessTokenUserCreate: PersonalAccessTokenUserCreate): Promise<ApiResponse<PersonalAccessToken>>;
    /**
     *
     * @summary Get details of a specific personal access token.
     * @param {string} personalAccessTokenId The ID of the personal access token.
     */
    getUserPersonalAccessToken(personalAccessTokenId: string): Promise<ApiResponse<PersonalAccessToken>>;
    /**
     *
     * @summary List the personal access tokens of authenticated user.
     * @param {number} [page] Number of the page to be retrieved
     * @param {number} [perPage] Number of items returned per page
     */
    listUserPersonalAccessTokens(page?: number, perPage?: number): Promise<ApiResponse<Array<PersonalAccessTokenRelation>>>;
    /**
     *
     * @summary Revoke a specific personal access token.
     * @param {string} personalAccessTokenId The ID of the personal access token.
     */
    revokeUserPersonalAccessToken(personalAccessTokenId: string): Promise<ApiResponse<void>>;
    /**
     *
     * @summary Rotate a specific personal access token.
     * @param {string} personalAccessTokenId The ID of the personal access token.
     * @param {PersonalAccessTokenUserRotate} personalAccessTokenUserRotate A JSON object containing the resource data
     */
    rotateUserPersonalAccessToken(personalAccessTokenId: string, personalAccessTokenUserRotate: PersonalAccessTokenUserRotate): Promise<ApiResponse<PersonalAccessTokenRotateResponse>>;
}
