UNPKG

cwmsjs

Version:

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

461 lines (368 loc) 18.8 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, StreamLocation, StreamLocationFromJSON, StreamLocationToJSON, } from '../models'; export interface DeleteStreamLocationsWithNameRequest { name: string; office: string; streamId: string; } export interface GetStreamLocationsRequest { officeMask?: string; streamIdMask?: string; nameMask?: string; stationUnit?: string; stageUnit?: string; areaUnit?: string; } export interface GetStreamLocationsWithNameRequest { name: string; office: string; streamId: string; stationUnit?: string; stageUnit?: string; areaUnit?: string; } export interface GetStreamLocationsWithOfficeWithNameDownstreamLocationsRequest { office: string; name: string; allDownstream?: boolean; sameStreamOnly?: boolean; stationUnit?: string; stageUnit?: string; areaUnit?: string; } export interface GetStreamLocationsWithOfficeWithNameUpstreamLocationsRequest { office: string; name: string; allUpstream?: boolean; sameStreamOnly?: boolean; stationUnit?: string; stageUnit?: string; areaUnit?: string; } export interface PatchStreamLocationsWithNameRequest { name: string; streamLocation: StreamLocation; } export interface PostStreamLocationsRequest { streamLocation: StreamLocation; failIfExists?: boolean; } /** * */ export class StreamLocationsApi extends runtime.BaseAPI { /** * Delete CWMS Stream Location * Delete streamLocations with name */ async deleteStreamLocationsWithNameRaw(requestParameters: DeleteStreamLocationsWithNameRequest, 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 deleteStreamLocationsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling deleteStreamLocationsWithName.'); } if (requestParameters.streamId === null || requestParameters.streamId === undefined) { throw new runtime.RequiredError('streamId','Required parameter requestParameters.streamId was null or undefined when calling deleteStreamLocationsWithName.'); } const queryParameters: any = {}; if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } if (requestParameters.streamId !== undefined) { queryParameters['stream-id'] = requestParameters.streamId; } 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-locations/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Delete CWMS Stream Location * Delete streamLocations with name */ async deleteStreamLocationsWithName(requestParameters: DeleteStreamLocationsWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.deleteStreamLocationsWithNameRaw(requestParameters, initOverrides); } /** * Returns matching CWMS Stream Location Data for a Reservoir Project. * Get streamLocations */ async getStreamLocationsRaw(requestParameters: GetStreamLocationsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<StreamLocation>>> { const queryParameters: any = {}; if (requestParameters.officeMask !== undefined) { queryParameters['office-mask'] = requestParameters.officeMask; } if (requestParameters.streamIdMask !== undefined) { queryParameters['stream-id-mask'] = requestParameters.streamIdMask; } if (requestParameters.nameMask !== undefined) { queryParameters['name-mask'] = requestParameters.nameMask; } if (requestParameters.stationUnit !== undefined) { queryParameters['station-unit'] = requestParameters.stationUnit; } if (requestParameters.stageUnit !== undefined) { queryParameters['stage-unit'] = requestParameters.stageUnit; } if (requestParameters.areaUnit !== undefined) { queryParameters['area-unit'] = requestParameters.areaUnit; } 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-locations`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamLocationFromJSON)); } /** * Returns matching CWMS Stream Location Data for a Reservoir Project. * Get streamLocations */ async getStreamLocations(requestParameters: GetStreamLocationsRequest = {}, initOverrides?: RequestInit): Promise<Array<StreamLocation>> { const response = await this.getStreamLocationsRaw(requestParameters, initOverrides); return await response.value(); } /** * Returns CWMS Stream Location Data * Get streamLocations with name */ async getStreamLocationsWithNameRaw(requestParameters: GetStreamLocationsWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<StreamLocation>>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getStreamLocationsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getStreamLocationsWithName.'); } if (requestParameters.streamId === null || requestParameters.streamId === undefined) { throw new runtime.RequiredError('streamId','Required parameter requestParameters.streamId was null or undefined when calling getStreamLocationsWithName.'); } 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; } if (requestParameters.stageUnit !== undefined) { queryParameters['stage-unit'] = requestParameters.stageUnit; } if (requestParameters.areaUnit !== undefined) { queryParameters['area-unit'] = requestParameters.areaUnit; } 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-locations/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamLocationFromJSON)); } /** * Returns CWMS Stream Location Data * Get streamLocations with name */ async getStreamLocationsWithName(requestParameters: GetStreamLocationsWithNameRequest, initOverrides?: RequestInit): Promise<Array<StreamLocation>> { const response = await this.getStreamLocationsWithNameRaw(requestParameters, initOverrides); return await response.value(); } /** * Returns matching downstream stream locations. * Get streamLocations with office with name downstreamLocations */ async getStreamLocationsWithOfficeWithNameDownstreamLocationsRaw(requestParameters: GetStreamLocationsWithOfficeWithNameDownstreamLocationsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<StreamLocation>>> { if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getStreamLocationsWithOfficeWithNameDownstreamLocations.'); } if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getStreamLocationsWithOfficeWithNameDownstreamLocations.'); } const queryParameters: any = {}; if (requestParameters.allDownstream !== undefined) { queryParameters['all-downstream'] = requestParameters.allDownstream; } if (requestParameters.sameStreamOnly !== undefined) { queryParameters['same-stream-only'] = requestParameters.sameStreamOnly; } if (requestParameters.stationUnit !== undefined) { queryParameters['station-unit'] = requestParameters.stationUnit; } if (requestParameters.stageUnit !== undefined) { queryParameters['stage-unit'] = requestParameters.stageUnit; } if (requestParameters.areaUnit !== undefined) { queryParameters['area-unit'] = requestParameters.areaUnit; } 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-locations/{office}/{name}/downstream-locations`.replace(`{${"office"}}`, encodeURIComponent(String(requestParameters.office))).replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamLocationFromJSON)); } /** * Returns matching downstream stream locations. * Get streamLocations with office with name downstreamLocations */ async getStreamLocationsWithOfficeWithNameDownstreamLocations(requestParameters: GetStreamLocationsWithOfficeWithNameDownstreamLocationsRequest, initOverrides?: RequestInit): Promise<Array<StreamLocation>> { const response = await this.getStreamLocationsWithOfficeWithNameDownstreamLocationsRaw(requestParameters, initOverrides); return await response.value(); } /** * Returns matching upstream stream locations. * Get streamLocations with office with name upstreamLocations */ async getStreamLocationsWithOfficeWithNameUpstreamLocationsRaw(requestParameters: GetStreamLocationsWithOfficeWithNameUpstreamLocationsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<StreamLocation>>> { if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getStreamLocationsWithOfficeWithNameUpstreamLocations.'); } if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getStreamLocationsWithOfficeWithNameUpstreamLocations.'); } const queryParameters: any = {}; if (requestParameters.allUpstream !== undefined) { queryParameters['all-upstream'] = requestParameters.allUpstream; } if (requestParameters.sameStreamOnly !== undefined) { queryParameters['same-stream-only'] = requestParameters.sameStreamOnly; } if (requestParameters.stationUnit !== undefined) { queryParameters['station-unit'] = requestParameters.stationUnit; } if (requestParameters.stageUnit !== undefined) { queryParameters['stage-unit'] = requestParameters.stageUnit; } if (requestParameters.areaUnit !== undefined) { queryParameters['area-unit'] = requestParameters.areaUnit; } 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-locations/{office}/{name}/upstream-locations`.replace(`{${"office"}}`, encodeURIComponent(String(requestParameters.office))).replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamLocationFromJSON)); } /** * Returns matching upstream stream locations. * Get streamLocations with office with name upstreamLocations */ async getStreamLocationsWithOfficeWithNameUpstreamLocations(requestParameters: GetStreamLocationsWithOfficeWithNameUpstreamLocationsRequest, initOverrides?: RequestInit): Promise<Array<StreamLocation>> { const response = await this.getStreamLocationsWithOfficeWithNameUpstreamLocationsRaw(requestParameters, initOverrides); return await response.value(); } /** * Update CWMS Stream Location * Patch streamLocations with name */ async patchStreamLocationsWithNameRaw(requestParameters: PatchStreamLocationsWithNameRequest, 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 patchStreamLocationsWithName.'); } if (requestParameters.streamLocation === null || requestParameters.streamLocation === undefined) { throw new runtime.RequiredError('streamLocation','Required parameter requestParameters.streamLocation was null or undefined when calling patchStreamLocationsWithName.'); } const queryParameters: any = {}; 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-locations/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'PATCH', headers: headerParameters, query: queryParameters, body: StreamLocationToJSON(requestParameters.streamLocation), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Update CWMS Stream Location * Patch streamLocations with name */ async patchStreamLocationsWithName(requestParameters: PatchStreamLocationsWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.patchStreamLocationsWithNameRaw(requestParameters, initOverrides); } /** * Create CWMS Stream Location * Post streamLocations */ async postStreamLocationsRaw(requestParameters: PostStreamLocationsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { if (requestParameters.streamLocation === null || requestParameters.streamLocation === undefined) { throw new runtime.RequiredError('streamLocation','Required parameter requestParameters.streamLocation was null or undefined when calling postStreamLocations.'); } 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-locations`, method: 'POST', headers: headerParameters, query: queryParameters, body: StreamLocationToJSON(requestParameters.streamLocation), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Create CWMS Stream Location * Post streamLocations */ async postStreamLocations(requestParameters: PostStreamLocationsRequest, initOverrides?: RequestInit): Promise<void> { await this.postStreamLocationsRaw(requestParameters, initOverrides); } }