/* tslint:disable */ /* eslint-disable */ /** * AutoGlue API * API for managing K3s clusters across cloud providers * * The version of the OpenAPI document: dev * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from "../runtime"; import type { HandlersCreateUserKeyRequest, HandlersUserAPIKeyOut, } from "../models/index"; import { HandlersCreateUserKeyRequestFromJSON, HandlersCreateUserKeyRequestToJSON, HandlersUserAPIKeyOutFromJSON, HandlersUserAPIKeyOutToJSON, } from "../models/index"; export interface CreateUserAPIKeyRequest { handlersCreateUserKeyRequest: HandlersCreateUserKeyRequest; } export interface DeleteUserAPIKeyRequest { id: string; } /** * */ export class MeAPIKeysApi extends runtime.BaseAPI { /** * Returns the plaintext key once. Store it securely on the client side. * Create a new user API key */ async createUserAPIKeyRaw( requestParameters: CreateUserAPIKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction, ): Promise> { if (requestParameters["handlersCreateUserKeyRequest"] == null) { throw new runtime.RequiredError( "handlersCreateUserKeyRequest", 'Required parameter "handlersCreateUserKeyRequest" was null or undefined when calling createUserAPIKey().', ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters["Content-Type"] = "application/json"; if (this.configuration && this.configuration.apiKey) { headerParameters["X-API-KEY"] = await this.configuration.apiKey("X-API-KEY"); // ApiKeyAuth authentication } if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // BearerAuth authentication } let urlPath = `/me/api-keys`; const response = await this.request( { path: urlPath, method: "POST", headers: headerParameters, query: queryParameters, body: HandlersCreateUserKeyRequestToJSON( requestParameters["handlersCreateUserKeyRequest"], ), }, initOverrides, ); return new runtime.JSONApiResponse(response, (jsonValue) => HandlersUserAPIKeyOutFromJSON(jsonValue), ); } /** * Returns the plaintext key once. Store it securely on the client side. * Create a new user API key */ async createUserAPIKey( requestParameters: CreateUserAPIKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction, ): Promise { const response = await this.createUserAPIKeyRaw( requestParameters, initOverrides, ); return await response.value(); } /** * Delete a user API key */ async deleteUserAPIKeyRaw( requestParameters: DeleteUserAPIKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction, ): Promise> { if (requestParameters["id"] == null) { throw new runtime.RequiredError( "id", 'Required parameter "id" was null or undefined when calling deleteUserAPIKey().', ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // BearerAuth authentication } let urlPath = `/me/api-keys/{id}`; urlPath = urlPath.replace( `{${"id"}}`, encodeURIComponent(String(requestParameters["id"])), ); const response = await this.request( { path: urlPath, method: "DELETE", headers: headerParameters, query: queryParameters, }, initOverrides, ); return new runtime.VoidApiResponse(response); } /** * Delete a user API key */ async deleteUserAPIKey( requestParameters: DeleteUserAPIKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction, ): Promise { await this.deleteUserAPIKeyRaw(requestParameters, initOverrides); } /** * List my API keys */ async listUserAPIKeysRaw( initOverrides?: RequestInit | runtime.InitOverrideFunction, ): Promise>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-API-KEY"] = await this.configuration.apiKey("X-API-KEY"); // ApiKeyAuth authentication } if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // BearerAuth authentication } let urlPath = `/me/api-keys`; const response = await this.request( { path: urlPath, method: "GET", headers: headerParameters, query: queryParameters, }, initOverrides, ); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(HandlersUserAPIKeyOutFromJSON), ); } /** * List my API keys */ async listUserAPIKeys( initOverrides?: RequestInit | runtime.InitOverrideFunction, ): Promise> { const response = await this.listUserAPIKeysRaw(initOverrides); return await response.value(); } }