UNPKG

cwmsjs

Version:

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

307 lines (245 loc) 11.6 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 { CdaError, CdaErrorFromJSON, CdaErrorToJSON, StreamReach, StreamReachFromJSON, StreamReachToJSON, } from '../models'; export interface DeleteStreamReachesWithNameRequest { name: string; office: string; } export interface GetStreamReachesRequest { officeMask?: string; streamIdMask?: string; reachIdMask?: string; configurationIdMask?: string; stationUnit?: string; } export interface GetStreamReachesWithNameRequest { name: string; office: string; streamId: string; stationUnit?: string; } export interface PatchStreamReachesWithNameRequest { name: string; name2: string; office: string; } export interface PostStreamReachesRequest { streamReach: StreamReach; failIfExists?: boolean; } /** * */ export class StreamReachesApi extends runtime.BaseAPI { /** * Delete CWMS Stream Reach * Delete streamReaches with name */ async deleteStreamReachesWithNameRaw(requestParameters: DeleteStreamReachesWithNameRequest, 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 deleteStreamReachesWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling deleteStreamReachesWithName.'); } const queryParameters: any = {}; 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: `/stream-reaches/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Delete CWMS Stream Reach * Delete streamReaches with name */ async deleteStreamReachesWithName(requestParameters: DeleteStreamReachesWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.deleteStreamReachesWithNameRaw(requestParameters, initOverrides); } /** * Returns matching CWMS Stream Reach Data for a Reservoir Project. * Get streamReaches */ async getStreamReachesRaw(requestParameters: GetStreamReachesRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<StreamReach>>> { const queryParameters: any = {}; if (requestParameters.officeMask !== undefined) { queryParameters['office-mask'] = requestParameters.officeMask; } if (requestParameters.streamIdMask !== undefined) { queryParameters['stream-id-mask'] = requestParameters.streamIdMask; } if (requestParameters.reachIdMask !== undefined) { queryParameters['reach-id-mask'] = requestParameters.reachIdMask; } if (requestParameters.configurationIdMask !== undefined) { queryParameters['configuration-id-mask'] = requestParameters.configurationIdMask; } if (requestParameters.stationUnit !== undefined) { queryParameters['station-unit'] = requestParameters.stationUnit; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/stream-reaches`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamReachFromJSON)); } /** * Returns matching CWMS Stream Reach Data for a Reservoir Project. * Get streamReaches */ async getStreamReaches(requestParameters: GetStreamReachesRequest = {}, initOverrides?: RequestInit): Promise<Array<StreamReach>> { const response = await this.getStreamReachesRaw(requestParameters, initOverrides); return await response.value(); } /** * Returns CWMS Stream Reach Data * Get streamReaches with name */ async getStreamReachesWithNameRaw(requestParameters: GetStreamReachesWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<StreamReach>>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getStreamReachesWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getStreamReachesWithName.'); } if (requestParameters.streamId === null || requestParameters.streamId === undefined) { throw new runtime.RequiredError('streamId','Required parameter requestParameters.streamId was null or undefined when calling getStreamReachesWithName.'); } const queryParameters: any = {}; if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } if (requestParameters.streamId !== undefined) { queryParameters['stream-id'] = requestParameters.streamId; } if (requestParameters.stationUnit !== undefined) { queryParameters['station-unit'] = requestParameters.stationUnit; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/stream-reaches/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamReachFromJSON)); } /** * Returns CWMS Stream Reach Data * Get streamReaches with name */ async getStreamReachesWithName(requestParameters: GetStreamReachesWithNameRequest, initOverrides?: RequestInit): Promise<Array<StreamReach>> { const response = await this.getStreamReachesWithNameRaw(requestParameters, initOverrides); return await response.value(); } /** * Rename CWMS Stream Reach * Patch streamReaches with name */ async patchStreamReachesWithNameRaw(requestParameters: PatchStreamReachesWithNameRequest, 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 patchStreamReachesWithName.'); } if (requestParameters.name2 === null || requestParameters.name2 === undefined) { throw new runtime.RequiredError('name2','Required parameter requestParameters.name2 was null or undefined when calling patchStreamReachesWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling patchStreamReachesWithName.'); } 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: `/stream-reaches/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'PATCH', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Rename CWMS Stream Reach * Patch streamReaches with name */ async patchStreamReachesWithName(requestParameters: PatchStreamReachesWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.patchStreamReachesWithNameRaw(requestParameters, initOverrides); } /** * Create CWMS Stream Reach * Post streamReaches */ async postStreamReachesRaw(requestParameters: PostStreamReachesRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { if (requestParameters.streamReach === null || requestParameters.streamReach === undefined) { throw new runtime.RequiredError('streamReach','Required parameter requestParameters.streamReach was null or undefined when calling postStreamReaches.'); } const queryParameters: any = {}; if (requestParameters.failIfExists !== undefined) { queryParameters['fail-if-exists'] = requestParameters.failIfExists; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json;version=1'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/stream-reaches`, method: 'POST', headers: headerParameters, query: queryParameters, body: StreamReachToJSON(requestParameters.streamReach), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Create CWMS Stream Reach * Post streamReaches */ async postStreamReaches(requestParameters: PostStreamReachesRequest, initOverrides?: RequestInit): Promise<void> { await this.postStreamReachesRaw(requestParameters, initOverrides); } }