cwmsjs
Version:
CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps
194 lines (185 loc) • 5.33 kB
text/typescript
/* 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 { exists, mapValues } from '../runtime';
import {
CwmsId,
CwmsIdFromJSON,
CwmsIdFromJSONTyped,
CwmsIdToJSON,
} from './CwmsId';
import {
StreamflowMeasurement,
StreamflowMeasurementFromJSON,
StreamflowMeasurementFromJSONTyped,
StreamflowMeasurementToJSON,
} from './StreamflowMeasurement';
import {
SupplementalStreamflowMeasurement,
SupplementalStreamflowMeasurementFromJSON,
SupplementalStreamflowMeasurementFromJSONTyped,
SupplementalStreamflowMeasurementToJSON,
} from './SupplementalStreamflowMeasurement';
import {
UsgsMeasurement,
UsgsMeasurementFromJSON,
UsgsMeasurementFromJSONTyped,
UsgsMeasurementToJSON,
} from './UsgsMeasurement';
/**
*
* @export
* @interface Measurement
*/
export interface Measurement {
/**
*
* @type {string}
* @memberof Measurement
*/
heightUnit?: string;
/**
*
* @type {string}
* @memberof Measurement
*/
flowUnit?: string;
/**
*
* @type {string}
* @memberof Measurement
*/
tempUnit?: string;
/**
*
* @type {string}
* @memberof Measurement
*/
velocityUnit?: string;
/**
*
* @type {string}
* @memberof Measurement
*/
areaUnit?: string;
/**
*
* @type {boolean}
* @memberof Measurement
*/
used?: boolean;
/**
*
* @type {string}
* @memberof Measurement
*/
agency?: string;
/**
*
* @type {string}
* @memberof Measurement
*/
party?: string;
/**
*
* @type {string}
* @memberof Measurement
*/
wmComments?: string;
/**
*
* @type {Date}
* @memberof Measurement
*/
instant: Date;
/**
*
* @type {CwmsId}
* @memberof Measurement
*/
id: CwmsId;
/**
*
* @type {string}
* @memberof Measurement
*/
number: string;
/**
*
* @type {StreamflowMeasurement}
* @memberof Measurement
*/
streamflowMeasurement?: StreamflowMeasurement;
/**
*
* @type {SupplementalStreamflowMeasurement}
* @memberof Measurement
*/
supplementalStreamflowMeasurement?: SupplementalStreamflowMeasurement;
/**
*
* @type {UsgsMeasurement}
* @memberof Measurement
*/
usgsMeasurement?: UsgsMeasurement;
}
export function MeasurementFromJSON(json: any): Measurement {
return MeasurementFromJSONTyped(json, false);
}
export function MeasurementFromJSONTyped(json: any, ignoreDiscriminator: boolean): Measurement {
if ((json === undefined) || (json === null)) {
return json;
}
return {
'heightUnit': !exists(json, 'height-unit') ? undefined : json['height-unit'],
'flowUnit': !exists(json, 'flow-unit') ? undefined : json['flow-unit'],
'tempUnit': !exists(json, 'temp-unit') ? undefined : json['temp-unit'],
'velocityUnit': !exists(json, 'velocity-unit') ? undefined : json['velocity-unit'],
'areaUnit': !exists(json, 'area-unit') ? undefined : json['area-unit'],
'used': !exists(json, 'used') ? undefined : json['used'],
'agency': !exists(json, 'agency') ? undefined : json['agency'],
'party': !exists(json, 'party') ? undefined : json['party'],
'wmComments': !exists(json, 'wm-comments') ? undefined : json['wm-comments'],
'instant': (new Date(json['instant'])),
'id': CwmsIdFromJSON(json['id']),
'number': json['number'],
'streamflowMeasurement': !exists(json, 'streamflow-measurement') ? undefined : StreamflowMeasurementFromJSON(json['streamflow-measurement']),
'supplementalStreamflowMeasurement': !exists(json, 'supplemental-streamflow-measurement') ? undefined : SupplementalStreamflowMeasurementFromJSON(json['supplemental-streamflow-measurement']),
'usgsMeasurement': !exists(json, 'usgs-measurement') ? undefined : UsgsMeasurementFromJSON(json['usgs-measurement']),
};
}
export function MeasurementToJSON(value?: Measurement | null): any {
if (value === undefined) {
return undefined;
}
if (value === null) {
return null;
}
return {
'height-unit': value.heightUnit,
'flow-unit': value.flowUnit,
'temp-unit': value.tempUnit,
'velocity-unit': value.velocityUnit,
'area-unit': value.areaUnit,
'used': value.used,
'agency': value.agency,
'party': value.party,
'wm-comments': value.wmComments,
'instant': (value.instant.toISOString()),
'id': CwmsIdToJSON(value.id),
'number': value.number,
'streamflow-measurement': StreamflowMeasurementToJSON(value.streamflowMeasurement),
'supplemental-streamflow-measurement': SupplementalStreamflowMeasurementToJSON(value.supplementalStreamflowMeasurement),
'usgs-measurement': UsgsMeasurementToJSON(value.usgsMeasurement),
};
}