// tslint:disable /** * 3Di API * 3Di simulation API (latest stable version: v3) Framework release: 3.0.1 3Di core release: 2.3.0.dev0 deployed on: 10:42AM (UTC) on October 04, 2022 * * The version of the OpenAPI document: v3 * Contact: info@nelen-schuurmans.nl * * 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'; /** * * @export * @interface TimedStructureControl */ export interface TimedStructureControl { /** * * @type {number} * @memberof TimedStructureControl */ readonly id?: number; /** * * @type {string} * @memberof TimedStructureControl */ readonly url?: string; /** * * @type {string} * @memberof TimedStructureControl */ readonly simulation?: string; /** * offset of event in simulation in seconds * @type {number} * @memberof TimedStructureControl */ offset: number; /** * * @type {number} * @memberof TimedStructureControl */ duration: number; /** * * @type {Array} * @memberof TimedStructureControl */ value: Array; /** * * @type {string} * @memberof TimedStructureControl */ type: TimedStructureControlTypeEnum; /** * * @type {number} * @memberof TimedStructureControl */ structureId?: number | null; /** * * @type {string} * @memberof TimedStructureControl */ structureType: TimedStructureControlStructureTypeEnum; /** * * @type {string} * @memberof TimedStructureControl */ readonly state?: TimedStructureControlStateEnum; /** * * @type {object} * @memberof TimedStructureControl */ readonly stateDetail?: object; /** * * @type {number} * @memberof TimedStructureControl */ gridId?: number | null; /** * * @type {string} * @memberof TimedStructureControl */ readonly uid?: string; } export function TimedStructureControlFromJSON(json: any): TimedStructureControl { return { 'id': !exists(json, 'id') ? undefined : json['id'], 'url': !exists(json, 'url') ? undefined : json['url'], 'simulation': !exists(json, 'simulation') ? undefined : json['simulation'], 'offset': json['offset'], 'duration': json['duration'], 'value': json['value'], 'type': json['type'], 'structureId': !exists(json, 'structure_id') ? undefined : json['structure_id'], 'structureType': json['structure_type'], 'state': !exists(json, 'state') ? undefined : json['state'], 'stateDetail': !exists(json, 'state_detail') ? undefined : json['state_detail'], 'gridId': !exists(json, 'grid_id') ? undefined : json['grid_id'], 'uid': !exists(json, 'uid') ? undefined : json['uid'], }; } export function TimedStructureControlToJSON(value?: TimedStructureControl): any { if (value === undefined) { return undefined; } return { 'offset': value.offset, 'duration': value.duration, 'value': value.value, 'type': value.type, 'structure_id': value.structureId, 'structure_type': value.structureType, 'grid_id': value.gridId, }; } /** * @export * @enum {string} */ export enum TimedStructureControlTypeEnum { DischargeCoefficients = 'set_discharge_coefficients', CrestLevel = 'set_crest_level', PumpCapacity = 'set_pump_capacity' } /** * @export * @enum {string} */ export enum TimedStructureControlStructureTypeEnum { Pumpstation = 'v2_pumpstation', Pipe = 'v2_pipe', Orifice = 'v2_orifice', Culvert = 'v2_culvert', Weir = 'v2_weir', Channel = 'v2_channel' } /** * @export * @enum {string} */ export enum TimedStructureControlStateEnum { Processing = 'processing', Valid = 'valid', Invalid = 'invalid' }