UNPKG

@gridscale/api

Version:
71 lines (55 loc) 1.88 kB
import { APIClass, ApiResult, GenericApiResult, RequestOptions, VoidApiResult } from '../api'; import * as models from './../Specs'; class ObjectStorage { // Naming public _api: APIClass; /** * Create Object Endpoint * * * @param _api API Class Instance * @param _path Path to the Object */ constructor(_api: APIClass) { this._api = _api; } /** * List Access Keys * * * @param _options * @param _callback * @returns {Promise<ApiResult<models.AccessKeysGetResponse>>} */ accessKeys(_options: RequestOptions, _callback?: (response: Response, result: ApiResult<GenericApiResult>) => void): Promise<ApiResult<models.AccessKeysGetResponse>> { return this._api.get( '/objects/objectstorages/access_keys', _options, _callback); } /** * Get Single Object by UUID * * @param _uuid * @param _callback */ accessKey(_access_key: string, _callback?: Function): Promise<ApiResult<models.AccessKeyGetResponse>> { return this._api.get( '/objects/objectstorages/access_keys/' + _access_key, _callback); } /** * Remove Access Key * * @param _uuid * @param _callback */ removeAccessKey(_access_key: string, _callback?: (response: Response, result: ApiResult<GenericApiResult>) => void): Promise<ApiResult<VoidApiResult>> { return this._api.remove( '/objects/objectstorages/access_keys/' + _access_key, _callback); } /** * Creates new Access Key * * @param _callback * @returns {Promise<ApiResult<models.AccessKeyCreateResponse>>} */ createAccessKey(_callback?: Function): Promise<ApiResult<models.AccessKeyCreateResponse>> { return this._api.post( '/objects/objectstorages/access_keys' , _callback); } } export { ObjectStorage };