UNPKG

@xompass/sdk-cloud-api

Version:

Xompass Client for cloud-api

623 lines (617 loc) 16.3 kB
import {ModelDefinition} from './BaseModels'; import {Alert} from './Alert'; import {AlertHistory} from './AlertHistory'; import {AssetMilestone} from './AssetMilestone'; import {AssetOperabilitySummary} from './AssetOperabilitySummary'; import {AssetRestrictionTable} from './AssetRestrictionTable'; import {AssetStaff} from './AssetStaff'; import {AssetState} from './AssetState'; import {AssetStateChange} from './AssetStateChange'; import {AssetTemplate} from './AssetTemplate'; import {AssetWizardType} from './AssetWizardType'; import {Credential} from './Credential'; import {Admin} from './Admin'; import {Customer} from './Customer'; import {Dataset} from './Dataset'; import {EdgeAgent} from './EdgeAgent'; import {Event} from './Event'; import {EventGroup} from './EventGroup'; import {EventSummary} from './EventSummary'; import {EventSummaryForAsset} from './EventSummaryForAsset'; import {EventTrigger} from './EventTrigger'; import {HealthcheckEvent} from './HealthcheckEvent'; import {Log} from './Log'; import {Manager} from './Manager'; import {Project} from './Project'; import {RateLimit} from './RateLimit'; import {ResponseProtocol} from './ResponseProtocol'; import {Sensor} from './Sensor'; import {SensorUptime} from './SensorUptime'; import {SensorUptimeCollector} from './SensorUptimeCollector'; import {Summary} from './Summary'; declare var Object: any; export interface AssetInterface { type: string; name?: string; icon?: string; description?: string; referenceId?: string; uri?: string; path?: Array<any>; requested?: Date; settingsType?: string; healthcheckEventsEnabled?: boolean; currentHealthStatus?: string; currentHealthStatusDetails?: any; tags?: Array<any>; created?: Date; modified?: Date; deleted?: Date; id?: any; assetId?: any; _config?: any; currentStateId?: any; templateId?: any; assetWizardTypeId?: any; customerId?: any; projectId?: any; _rateLimit?: any; responseProtocolId?: any; _token?: any; assets?: Asset[]; asset?: Asset; alerts?: Alert[]; alertHistory?: AlertHistory[]; config?: any[]; milestone?: AssetMilestone; operabilitySummaries?: AssetOperabilitySummary[]; restrictionTable?: AssetRestrictionTable; staffs?: AssetStaff[]; assetStates?: AssetState[]; currentState?: AssetState; nextState?: AssetStateChange; container?: any; template?: AssetTemplate; assetWizardType?: AssetWizardType; credentials?: Credential[]; admins?: Admin[]; customer?: Customer; datasets?: Dataset[]; edgeAgents?: EdgeAgent[]; events?: Event[]; eventGroups?: EventGroup[]; eventSummaries?: EventSummary[]; eventSummaryForAssets?: EventSummaryForAsset[]; eventTriggers?: EventTrigger[]; features?: any[]; healthcheckEvents?: HealthcheckEvent[]; trackingLogs?: Log[]; managers?: Manager[]; project?: Project; rateLimit?: RateLimit[]; responseProtocol?: ResponseProtocol; sensors?: Sensor[]; sensorUptimes?: SensorUptime[]; sensorUptimeCollectors?: SensorUptimeCollector[]; summaries?: Summary[]; token?: any[]; } export class Asset implements AssetInterface { type: string; name: string; icon: string; description: string; referenceId: string; uri: string; path: Array<any> = []; requested: Date; settingsType: string; healthcheckEventsEnabled: boolean; currentHealthStatus: string; currentHealthStatusDetails: any; tags: Array<any> = []; created: Date; modified: Date; deleted: Date; id: any; assetId: any; _config: any; currentStateId: any; templateId: any; assetWizardTypeId: any; customerId: any; projectId: any; _rateLimit: any; responseProtocolId: any; _token: any; assets?: Asset[]; asset?: Asset; alerts?: Alert[]; alertHistory?: AlertHistory[]; config?: any[]; milestone?: AssetMilestone; operabilitySummaries?: AssetOperabilitySummary[]; restrictionTable?: AssetRestrictionTable; staffs?: AssetStaff[]; assetStates?: AssetState[]; currentState?: AssetState; nextState?: AssetStateChange; container?: any; template?: AssetTemplate; assetWizardType?: AssetWizardType; credentials?: Credential[]; admins?: Admin[]; customer?: Customer; datasets?: Dataset[]; edgeAgents?: EdgeAgent[]; events?: Event[]; eventGroups?: EventGroup[]; eventSummaries?: EventSummary[]; eventSummaryForAssets?: EventSummaryForAsset[]; eventTriggers?: EventTrigger[]; features?: any[]; healthcheckEvents?: HealthcheckEvent[]; trackingLogs?: Log[]; managers?: Manager[]; project?: Project; rateLimit?: RateLimit[]; responseProtocol?: ResponseProtocol; sensors?: Sensor[]; sensorUptimes?: SensorUptime[]; sensorUptimeCollectors?: SensorUptimeCollector[]; summaries?: Summary[]; token?: any[]; constructor(data?: AssetInterface) { Object.assign(this, data); } /** * The name of the model represented by this $resource, * i.e. `Asset`. */ public static getModelName(): string { return 'Asset'; } /** * @method factory * @author Jonathan Casarrubias * @license MIT * This method creates an instance of Asset for dynamic purposes. */ public static factory(data: AssetInterface): Asset{ return new Asset(data); } /** * @method getModelDefinition * @author Julien Ledun * @license MIT * This method returns an object that represents some of the model * definitions. */ public static getModelDefinition(): ModelDefinition { return { name: 'Asset', plural: 'Assets', path: 'Assets', idName: 'id', properties: { type: { name: 'type', type: 'string' }, name: { name: 'name', type: 'string' }, icon: { name: 'icon', type: 'string' }, description: { name: 'description', type: 'string' }, referenceId: { name: 'referenceId', type: 'string' }, uri: { name: 'uri', type: 'string' }, path: { name: 'path', type: 'Array&lt;any&gt;', default: [] }, requested: { name: 'requested', type: 'Date' }, settingsType: { name: 'settingsType', type: 'string' }, healthcheckEventsEnabled: { name: 'healthcheckEventsEnabled', type: 'boolean' }, currentHealthStatus: { name: 'currentHealthStatus', type: 'string' }, currentHealthStatusDetails: { name: 'currentHealthStatusDetails', type: 'any' }, tags: { name: 'tags', type: 'Array&lt;any&gt;', default: [] }, created: { name: 'created', type: 'Date' }, modified: { name: 'modified', type: 'Date' }, deleted: { name: 'deleted', type: 'Date', default: undefined }, id: { name: 'id', type: 'any' }, assetId: { name: 'assetId', type: 'any' }, _config: { name: '_config', type: 'any' }, currentStateId: { name: 'currentStateId', type: 'any' }, templateId: { name: 'templateId', type: 'any' }, assetWizardTypeId: { name: 'assetWizardTypeId', type: 'any' }, customerId: { name: 'customerId', type: 'any' }, projectId: { name: 'projectId', type: 'any' }, _rateLimit: { name: '_rateLimit', type: 'any' }, responseProtocolId: { name: 'responseProtocolId', type: 'any' }, _token: { name: '_token', type: 'any' }, }, relations: { assets: { name: 'assets', type: 'Asset[]', model: 'Asset', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, asset: { name: 'asset', type: 'Asset', model: 'Asset', relationType: 'belongsTo', keyFrom: 'assetId', keyTo: 'id' }, alerts: { name: 'alerts', type: 'Alert[]', model: 'Alert', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, alertHistory: { name: 'alertHistory', type: 'AlertHistory[]', model: 'AlertHistory', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, config: { name: 'config', type: 'any[]', model: '', relationType: 'embedsOne', keyFrom: '_config', keyTo: 'id' }, milestone: { name: 'milestone', type: 'AssetMilestone', model: 'AssetMilestone', relationType: 'hasOne', keyFrom: 'id', keyTo: 'assetId' }, operabilitySummaries: { name: 'operabilitySummaries', type: 'AssetOperabilitySummary[]', model: 'AssetOperabilitySummary', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, restrictionTable: { name: 'restrictionTable', type: 'AssetRestrictionTable', model: 'AssetRestrictionTable', relationType: 'hasOne', keyFrom: 'id', keyTo: 'assetId' }, staffs: { name: 'staffs', type: 'AssetStaff[]', model: 'AssetStaff', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, assetStates: { name: 'assetStates', type: 'AssetState[]', model: 'AssetState', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, currentState: { name: 'currentState', type: 'AssetState', model: 'AssetState', relationType: 'belongsTo', keyFrom: 'currentStateId', keyTo: 'id' }, nextState: { name: 'nextState', type: 'AssetStateChange', model: 'AssetStateChange', relationType: 'hasOne', keyFrom: 'id', keyTo: 'assetId' }, container: { name: 'container', type: 'any', model: '', relationType: 'hasOne', keyFrom: 'id', keyTo: 'assetId' }, template: { name: 'template', type: 'AssetTemplate', model: 'AssetTemplate', relationType: 'belongsTo', keyFrom: 'templateId', keyTo: 'id' }, assetWizardType: { name: 'assetWizardType', type: 'AssetWizardType', model: 'AssetWizardType', relationType: 'belongsTo', keyFrom: 'assetWizardTypeId', keyTo: 'id' }, credentials: { name: 'credentials', type: 'Credential[]', model: 'Credential', relationType: 'hasMany', modelThrough: 'CredentialAsset', keyThrough: 'credentialId', keyFrom: 'id', keyTo: 'assetId' }, admins: { name: 'admins', type: 'Admin[]', model: 'Admin', relationType: 'hasMany', modelThrough: 'AdminAsset', keyThrough: 'adminId', keyFrom: 'id', keyTo: 'assetId' }, customer: { name: 'customer', type: 'Customer', model: 'Customer', relationType: 'belongsTo', keyFrom: 'customerId', keyTo: 'id' }, datasets: { name: 'datasets', type: 'Dataset[]', model: 'Dataset', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, edgeAgents: { name: 'edgeAgents', type: 'EdgeAgent[]', model: 'EdgeAgent', relationType: 'hasMany', modelThrough: 'EdgeAgentAsset', keyThrough: 'edgeAgentId', keyFrom: 'id', keyTo: 'assetId' }, events: { name: 'events', type: 'Event[]', model: 'Event', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, eventGroups: { name: 'eventGroups', type: 'EventGroup[]', model: 'EventGroup', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, eventSummaries: { name: 'eventSummaries', type: 'EventSummary[]', model: 'EventSummary', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, eventSummaryForAssets: { name: 'eventSummaryForAssets', type: 'EventSummaryForAsset[]', model: 'EventSummaryForAsset', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, eventTriggers: { name: 'eventTriggers', type: 'EventTrigger[]', model: 'EventTrigger', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, features: { name: 'features', type: 'any[]', model: '', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, healthcheckEvents: { name: 'healthcheckEvents', type: 'HealthcheckEvent[]', model: 'HealthcheckEvent', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, trackingLogs: { name: 'trackingLogs', type: 'Log[]', model: 'Log', relationType: 'hasMany', keyFrom: 'id', keyTo: 'trackingModelId' }, managers: { name: 'managers', type: 'Manager[]', model: 'Manager', relationType: 'hasMany', modelThrough: 'ManagerAsset', keyThrough: 'managerId', keyFrom: 'id', keyTo: 'assetId' }, project: { name: 'project', type: 'Project', model: 'Project', relationType: 'belongsTo', keyFrom: 'projectId', keyTo: 'id' }, rateLimit: { name: 'rateLimit', type: 'RateLimit[]', model: 'RateLimit', relationType: 'embedsOne', keyFrom: '_rateLimit', keyTo: 'id' }, responseProtocol: { name: 'responseProtocol', type: 'ResponseProtocol', model: 'ResponseProtocol', relationType: 'belongsTo', keyFrom: 'responseProtocolId', keyTo: 'id' }, sensors: { name: 'sensors', type: 'Sensor[]', model: 'Sensor', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, sensorUptimes: { name: 'sensorUptimes', type: 'SensorUptime[]', model: 'SensorUptime', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, sensorUptimeCollectors: { name: 'sensorUptimeCollectors', type: 'SensorUptimeCollector[]', model: 'SensorUptimeCollector', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, summaries: { name: 'summaries', type: 'Summary[]', model: 'Summary', relationType: 'hasMany', keyFrom: 'id', keyTo: 'assetId' }, token: { name: 'token', type: 'any[]', model: '', relationType: 'embedsOne', keyFrom: '_token', keyTo: 'id' }, } }; } }