/* tslint:disable */ /* eslint-disable */ /** * authentik * Making authentication simple. * * The version of the OpenAPI document: 2026.2.3-rc1 * Contact: hello@goauthentik.io * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { DiskRequest } from './DiskRequest'; import { DiskRequestFromJSON, DiskRequestFromJSONTyped, DiskRequestToJSON, DiskRequestToJSONTyped, } from './DiskRequest'; import type { HardwareRequest } from './HardwareRequest'; import { HardwareRequestFromJSON, HardwareRequestFromJSONTyped, HardwareRequestToJSON, HardwareRequestToJSONTyped, } from './HardwareRequest'; import type { OperatingSystemRequest } from './OperatingSystemRequest'; import { OperatingSystemRequestFromJSON, OperatingSystemRequestFromJSONTyped, OperatingSystemRequestToJSON, OperatingSystemRequestToJSONTyped, } from './OperatingSystemRequest'; import type { SoftwareRequest } from './SoftwareRequest'; import { SoftwareRequestFromJSON, SoftwareRequestFromJSONTyped, SoftwareRequestToJSON, SoftwareRequestToJSONTyped, } from './SoftwareRequest'; import type { ProcessRequest } from './ProcessRequest'; import { ProcessRequestFromJSON, ProcessRequestFromJSONTyped, ProcessRequestToJSON, ProcessRequestToJSONTyped, } from './ProcessRequest'; import type { NetworkRequest } from './NetworkRequest'; import { NetworkRequestFromJSON, NetworkRequestFromJSONTyped, NetworkRequestToJSON, NetworkRequestToJSONTyped, } from './NetworkRequest'; import type { DeviceGroupRequest } from './DeviceGroupRequest'; import { DeviceGroupRequestFromJSON, DeviceGroupRequestFromJSONTyped, DeviceGroupRequestToJSON, DeviceGroupRequestToJSONTyped, } from './DeviceGroupRequest'; import type { DeviceUserRequest } from './DeviceUserRequest'; import { DeviceUserRequestFromJSON, DeviceUserRequestFromJSONTyped, DeviceUserRequestToJSON, DeviceUserRequestToJSONTyped, } from './DeviceUserRequest'; /** * * @export * @interface DeviceFactsRequest */ export interface DeviceFactsRequest { /** * * @type {OperatingSystemRequest} * @memberof DeviceFactsRequest */ os?: OperatingSystemRequest | null; /** * * @type {Array} * @memberof DeviceFactsRequest */ disks?: Array | null; /** * * @type {NetworkRequest} * @memberof DeviceFactsRequest */ network?: NetworkRequest | null; /** * * @type {HardwareRequest} * @memberof DeviceFactsRequest */ hardware?: HardwareRequest | null; /** * * @type {Array} * @memberof DeviceFactsRequest */ software?: Array | null; /** * * @type {Array} * @memberof DeviceFactsRequest */ processes?: Array | null; /** * * @type {Array} * @memberof DeviceFactsRequest */ users?: Array | null; /** * * @type {Array} * @memberof DeviceFactsRequest */ groups?: Array | null; /** * * @type {{ [key: string]: any; }} * @memberof DeviceFactsRequest */ vendor?: { [key: string]: any; }; } /** * Check if a given object implements the DeviceFactsRequest interface. */ export function instanceOfDeviceFactsRequest(value: object): value is DeviceFactsRequest { return true; } export function DeviceFactsRequestFromJSON(json: any): DeviceFactsRequest { return DeviceFactsRequestFromJSONTyped(json, false); } export function DeviceFactsRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): DeviceFactsRequest { if (json == null) { return json; } return { 'os': json['os'] == null ? undefined : OperatingSystemRequestFromJSON(json['os']), 'disks': json['disks'] == null ? undefined : ((json['disks'] as Array).map(DiskRequestFromJSON)), 'network': json['network'] == null ? undefined : NetworkRequestFromJSON(json['network']), 'hardware': json['hardware'] == null ? undefined : HardwareRequestFromJSON(json['hardware']), 'software': json['software'] == null ? undefined : ((json['software'] as Array).map(SoftwareRequestFromJSON)), 'processes': json['processes'] == null ? undefined : ((json['processes'] as Array).map(ProcessRequestFromJSON)), 'users': json['users'] == null ? undefined : ((json['users'] as Array).map(DeviceUserRequestFromJSON)), 'groups': json['groups'] == null ? undefined : ((json['groups'] as Array).map(DeviceGroupRequestFromJSON)), 'vendor': json['vendor'] == null ? undefined : json['vendor'], }; } export function DeviceFactsRequestToJSON(json: any): DeviceFactsRequest { return DeviceFactsRequestToJSONTyped(json, false); } export function DeviceFactsRequestToJSONTyped(value?: DeviceFactsRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'os': OperatingSystemRequestToJSON(value['os']), 'disks': value['disks'] == null ? undefined : ((value['disks'] as Array).map(DiskRequestToJSON)), 'network': NetworkRequestToJSON(value['network']), 'hardware': HardwareRequestToJSON(value['hardware']), 'software': value['software'] == null ? undefined : ((value['software'] as Array).map(SoftwareRequestToJSON)), 'processes': value['processes'] == null ? undefined : ((value['processes'] as Array).map(ProcessRequestToJSON)), 'users': value['users'] == null ? undefined : ((value['users'] as Array).map(DeviceUserRequestToJSON)), 'groups': value['groups'] == null ? undefined : ((value['groups'] as Array).map(DeviceGroupRequestToJSON)), 'vendor': value['vendor'], }; }