UNPKG

cwmsjs

Version:

CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps

279 lines (224 loc) 10.3 kB
/* tslint:disable */ /* eslint-disable */ /** * CWMS Data API * CWMS REST API for Data Retrieval * * The version of the OpenAPI document: 2.4.0-2026.3.16 * * * 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 { Basin, BasinFromJSON, BasinToJSON, CdaError, CdaErrorFromJSON, CdaErrorToJSON, DeleteMethod, DeleteMethodFromJSON, DeleteMethodToJSON, } from '../models'; export interface DeleteBasinsWithNameRequest { name: string; office: string; method: DeleteMethod; } export interface GetBasinsRequest { office?: string; unit?: string; } export interface GetBasinsWithNameRequest { name: string; office: string; unit?: string; } export interface PatchBasinsWithNameRequest { name: string; name2: string; office: string; } /** * */ export class BasinsApi extends runtime.BaseAPI { /** * Deletes CWMS Basin * Delete basins with name */ async deleteBasinsWithNameRaw(requestParameters: DeleteBasinsWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling deleteBasinsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling deleteBasinsWithName.'); } if (requestParameters.method === null || requestParameters.method === undefined) { throw new runtime.RequiredError('method','Required parameter requestParameters.method was null or undefined when calling deleteBasinsWithName.'); } const queryParameters: any = {}; if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } if (requestParameters.method !== undefined) { queryParameters['method'] = requestParameters.method; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/basins/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Deletes CWMS Basin * Delete basins with name */ async deleteBasinsWithName(requestParameters: DeleteBasinsWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.deleteBasinsWithNameRaw(requestParameters, initOverrides); } /** * Returns CWMS Basin Data. This endpoint handles multiple accept header types, including named pg json. For more information about accept header usage, <a href=\"legacy-format/\">see this page.</a> * Get basins */ async getBasinsRaw(requestParameters: GetBasinsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Basin>> { const queryParameters: any = {}; if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } if (requestParameters.unit !== undefined) { queryParameters['unit'] = requestParameters.unit; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/basins`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BasinFromJSON(jsonValue)); } /** * Returns CWMS Basin Data. This endpoint handles multiple accept header types, including named pg json. For more information about accept header usage, <a href=\"legacy-format/\">see this page.</a> * Get basins */ async getBasins(requestParameters: GetBasinsRequest = {}, initOverrides?: RequestInit): Promise<Basin> { const response = await this.getBasinsRaw(requestParameters, initOverrides); return await response.value(); } /** * Returns CWMS Basin Data. This endpoint handles multiple accept header types, including named pg json. For more information about accept header usage, <a href=\"legacy-format/\">see this page.</a> * Get basins with name */ async getBasinsWithNameRaw(requestParameters: GetBasinsWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Basin>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getBasinsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getBasinsWithName.'); } const queryParameters: any = {}; if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } if (requestParameters.unit !== undefined) { queryParameters['unit'] = requestParameters.unit; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/basins/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BasinFromJSON(jsonValue)); } /** * Returns CWMS Basin Data. This endpoint handles multiple accept header types, including named pg json. For more information about accept header usage, <a href=\"legacy-format/\">see this page.</a> * Get basins with name */ async getBasinsWithName(requestParameters: GetBasinsWithNameRequest, initOverrides?: RequestInit): Promise<Basin> { const response = await this.getBasinsWithNameRaw(requestParameters, initOverrides); return await response.value(); } /** * Renames CWMS Basin * Patch basins with name */ async patchBasinsWithNameRaw(requestParameters: PatchBasinsWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling patchBasinsWithName.'); } if (requestParameters.name2 === null || requestParameters.name2 === undefined) { throw new runtime.RequiredError('name2','Required parameter requestParameters.name2 was null or undefined when calling patchBasinsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling patchBasinsWithName.'); } const queryParameters: any = {}; if (requestParameters.name2 !== undefined) { queryParameters['name'] = requestParameters.name2; } if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/basins/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'PATCH', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Renames CWMS Basin * Patch basins with name */ async patchBasinsWithName(requestParameters: PatchBasinsWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.patchBasinsWithNameRaw(requestParameters, initOverrides); } /** * Creates CWMS Basin * Post basins */ async postBasinsRaw(initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/basins`, method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Creates CWMS Basin * Post basins */ async postBasins(initOverrides?: RequestInit): Promise<void> { await this.postBasinsRaw(initOverrides); } }