cwmsjs
Version:
CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps
218 lines (209 loc) • 6.72 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 {
Location,
LocationFromJSON,
LocationFromJSONTyped,
LocationToJSON,
} from './Location';
import {
LockLocationLevelRef,
LockLocationLevelRefFromJSON,
LockLocationLevelRefFromJSONTyped,
LockLocationLevelRefToJSON,
} from './LockLocationLevelRef';
import {
LookupType,
LookupTypeFromJSON,
LookupTypeFromJSONTyped,
LookupTypeToJSON,
} from './LookupType';
/**
*
* @export
* @interface Lock
*/
export interface Lock {
/**
*
* @type {CwmsId}
* @memberof Lock
*/
projectId: CwmsId;
/**
*
* @type {Location}
* @memberof Lock
*/
location: Location;
/**
*
* @type {LookupType}
* @memberof Lock
*/
chamberType?: LookupType;
/**
*
* @type {number}
* @memberof Lock
*/
lockWidth?: number;
/**
*
* @type {number}
* @memberof Lock
*/
lockLength?: number;
/**
*
* @type {number}
* @memberof Lock
*/
normalLockLift?: number;
/**
*
* @type {number}
* @memberof Lock
*/
maximumLockLift?: number;
/**
*
* @type {string}
* @memberof Lock
*/
lengthUnits?: string;
/**
*
* @type {string}
* @memberof Lock
*/
volumeUnits?: string;
/**
*
* @type {number}
* @memberof Lock
*/
volumePerLockage?: number;
/**
*
* @type {number}
* @memberof Lock
*/
minimumDraft?: number;
/**
*
* @type {LockLocationLevelRef}
* @memberof Lock
*/
highWaterUpperPoolLocationLevel?: LockLocationLevelRef;
/**
*
* @type {LockLocationLevelRef}
* @memberof Lock
*/
lowWaterLowerPoolLocationLevel?: LockLocationLevelRef;
/**
*
* @type {LockLocationLevelRef}
* @memberof Lock
*/
highWaterLowerPoolLocationLevel?: LockLocationLevelRef;
/**
*
* @type {LockLocationLevelRef}
* @memberof Lock
*/
lowWaterUpperPoolLocationLevel?: LockLocationLevelRef;
/**
*
* @type {number}
* @memberof Lock
*/
highWaterUpperPoolWarningLevel?: number;
/**
*
* @type {number}
* @memberof Lock
*/
highWaterLowerPoolWarningLevel?: number;
/**
*
* @type {string}
* @memberof Lock
*/
elevationUnits?: string;
}
export function LockFromJSON(json: any): Lock {
return LockFromJSONTyped(json, false);
}
export function LockFromJSONTyped(json: any, ignoreDiscriminator: boolean): Lock {
if ((json === undefined) || (json === null)) {
return json;
}
return {
'projectId': CwmsIdFromJSON(json['project-id']),
'location': LocationFromJSON(json['location']),
'chamberType': !exists(json, 'chamber-type') ? undefined : LookupTypeFromJSON(json['chamber-type']),
'lockWidth': !exists(json, 'lock-width') ? undefined : json['lock-width'],
'lockLength': !exists(json, 'lock-length') ? undefined : json['lock-length'],
'normalLockLift': !exists(json, 'normal-lock-lift') ? undefined : json['normal-lock-lift'],
'maximumLockLift': !exists(json, 'maximum-lock-lift') ? undefined : json['maximum-lock-lift'],
'lengthUnits': !exists(json, 'length-units') ? undefined : json['length-units'],
'volumeUnits': !exists(json, 'volume-units') ? undefined : json['volume-units'],
'volumePerLockage': !exists(json, 'volume-per-lockage') ? undefined : json['volume-per-lockage'],
'minimumDraft': !exists(json, 'minimum-draft') ? undefined : json['minimum-draft'],
'highWaterUpperPoolLocationLevel': !exists(json, 'high-water-upper-pool-location-level') ? undefined : LockLocationLevelRefFromJSON(json['high-water-upper-pool-location-level']),
'lowWaterLowerPoolLocationLevel': !exists(json, 'low-water-lower-pool-location-level') ? undefined : LockLocationLevelRefFromJSON(json['low-water-lower-pool-location-level']),
'highWaterLowerPoolLocationLevel': !exists(json, 'high-water-lower-pool-location-level') ? undefined : LockLocationLevelRefFromJSON(json['high-water-lower-pool-location-level']),
'lowWaterUpperPoolLocationLevel': !exists(json, 'low-water-upper-pool-location-level') ? undefined : LockLocationLevelRefFromJSON(json['low-water-upper-pool-location-level']),
'highWaterUpperPoolWarningLevel': !exists(json, 'high-water-upper-pool-warning-level') ? undefined : json['high-water-upper-pool-warning-level'],
'highWaterLowerPoolWarningLevel': !exists(json, 'high-water-lower-pool-warning-level') ? undefined : json['high-water-lower-pool-warning-level'],
'elevationUnits': !exists(json, 'elevation-units') ? undefined : json['elevation-units'],
};
}
export function LockToJSON(value?: Lock | null): any {
if (value === undefined) {
return undefined;
}
if (value === null) {
return null;
}
return {
'project-id': CwmsIdToJSON(value.projectId),
'location': LocationToJSON(value.location),
'chamber-type': LookupTypeToJSON(value.chamberType),
'lock-width': value.lockWidth,
'lock-length': value.lockLength,
'normal-lock-lift': value.normalLockLift,
'maximum-lock-lift': value.maximumLockLift,
'length-units': value.lengthUnits,
'volume-units': value.volumeUnits,
'volume-per-lockage': value.volumePerLockage,
'minimum-draft': value.minimumDraft,
'high-water-upper-pool-location-level': LockLocationLevelRefToJSON(value.highWaterUpperPoolLocationLevel),
'low-water-lower-pool-location-level': LockLocationLevelRefToJSON(value.lowWaterLowerPoolLocationLevel),
'high-water-lower-pool-location-level': LockLocationLevelRefToJSON(value.highWaterLowerPoolLocationLevel),
'low-water-upper-pool-location-level': LockLocationLevelRefToJSON(value.lowWaterUpperPoolLocationLevel),
'high-water-upper-pool-warning-level': value.highWaterUpperPoolWarningLevel,
'high-water-lower-pool-warning-level': value.highWaterLowerPoolWarningLevel,
'elevation-units': value.elevationUnits,
};
}