UNPKG

box-node-sdk

Version:

Official SDK for Box Platform APIs

215 lines (214 loc) 7.07 kB
import { serializeEnterpriseBase } from './enterpriseBase'; import { deserializeEnterpriseBase } from './enterpriseBase'; import { serializeUserBase } from './userBase'; import { deserializeUserBase } from './userBase'; import { serializeDateTime } from '../internal/utils'; import { deserializeDateTime } from '../internal/utils'; import { EnterpriseBase } from './enterpriseBase'; import { UserBase } from './userBase'; import { BoxSdkError } from '../box/errors'; import { DateTime } from '../internal/utils'; import { SerializedData } from '../serialization/json'; import { sdIsEmpty } from '../serialization/json'; import { sdIsBoolean } from '../serialization/json'; import { sdIsNumber } from '../serialization/json'; import { sdIsString } from '../serialization/json'; import { sdIsList } from '../serialization/json'; import { sdIsMap } from '../serialization/json'; export type ShieldInformationBarrierTypeField = 'shield_information_barrier'; export type ShieldInformationBarrierStatusField = | 'draft' | 'pending' | 'disabled' | 'enabled' | 'invalid' | string; export interface ShieldInformationBarrier { /** * The unique identifier for the shield information barrier. */ readonly id?: string; /** * The type of the shield information barrier. */ readonly type?: ShieldInformationBarrierTypeField; /** * The `type` and `id` of enterprise this barrier is under. */ readonly enterprise?: EnterpriseBase; /** * Status of the shield information barrier. */ readonly status?: ShieldInformationBarrierStatusField; /** * ISO date time string when this * shield information barrier object was created. */ readonly createdAt?: DateTime; /** * The user who created this shield information barrier. */ readonly createdBy?: UserBase; /** * ISO date time string when this shield information barrier was updated. */ readonly updatedAt?: DateTime; /** * The user that updated this shield information barrier. */ readonly updatedBy?: UserBase; /** * ISO date time string when this shield information barrier was enabled. */ readonly enabledAt?: DateTime; readonly enabledBy?: UserBase; readonly rawData?: SerializedData; } export function serializeShieldInformationBarrierTypeField( val: ShieldInformationBarrierTypeField, ): SerializedData { return val; } export function deserializeShieldInformationBarrierTypeField( val: SerializedData, ): ShieldInformationBarrierTypeField { if (val == 'shield_information_barrier') { return val; } throw new BoxSdkError({ message: "Can't deserialize ShieldInformationBarrierTypeField", }); } export function serializeShieldInformationBarrierStatusField( val: ShieldInformationBarrierStatusField, ): SerializedData { return val; } export function deserializeShieldInformationBarrierStatusField( val: SerializedData, ): ShieldInformationBarrierStatusField { if (val == 'draft') { return val; } if (val == 'pending') { return val; } if (val == 'disabled') { return val; } if (val == 'enabled') { return val; } if (val == 'invalid') { return val; } if (sdIsString(val)) { return val; } throw new BoxSdkError({ message: "Can't deserialize ShieldInformationBarrierStatusField", }); } export function serializeShieldInformationBarrier( val: ShieldInformationBarrier, ): SerializedData { return { ['id']: val.id, ['type']: val.type == void 0 ? val.type : serializeShieldInformationBarrierTypeField(val.type), ['enterprise']: val.enterprise == void 0 ? val.enterprise : serializeEnterpriseBase(val.enterprise), ['status']: val.status == void 0 ? val.status : serializeShieldInformationBarrierStatusField(val.status), ['created_at']: val.createdAt == void 0 ? val.createdAt : serializeDateTime(val.createdAt), ['created_by']: val.createdBy == void 0 ? val.createdBy : serializeUserBase(val.createdBy), ['updated_at']: val.updatedAt == void 0 ? val.updatedAt : serializeDateTime(val.updatedAt), ['updated_by']: val.updatedBy == void 0 ? val.updatedBy : serializeUserBase(val.updatedBy), ['enabled_at']: val.enabledAt == void 0 ? val.enabledAt : serializeDateTime(val.enabledAt), ['enabled_by']: val.enabledBy == void 0 ? val.enabledBy : serializeUserBase(val.enabledBy), }; } export function deserializeShieldInformationBarrier( val: SerializedData, ): ShieldInformationBarrier { if (!sdIsMap(val)) { throw new BoxSdkError({ message: 'Expecting a map for "ShieldInformationBarrier"', }); } if (!(val.id == void 0) && !sdIsString(val.id)) { throw new BoxSdkError({ message: 'Expecting string for "id" of type "ShieldInformationBarrier"', }); } const id: undefined | string = val.id == void 0 ? void 0 : val.id; const type: undefined | ShieldInformationBarrierTypeField = val.type == void 0 ? void 0 : deserializeShieldInformationBarrierTypeField(val.type); const enterprise: undefined | EnterpriseBase = val.enterprise == void 0 ? void 0 : deserializeEnterpriseBase(val.enterprise); const status: undefined | ShieldInformationBarrierStatusField = val.status == void 0 ? void 0 : deserializeShieldInformationBarrierStatusField(val.status); if (!(val.created_at == void 0) && !sdIsString(val.created_at)) { throw new BoxSdkError({ message: 'Expecting string for "created_at" of type "ShieldInformationBarrier"', }); } const createdAt: undefined | DateTime = val.created_at == void 0 ? void 0 : deserializeDateTime(val.created_at); const createdBy: undefined | UserBase = val.created_by == void 0 ? void 0 : deserializeUserBase(val.created_by); if (!(val.updated_at == void 0) && !sdIsString(val.updated_at)) { throw new BoxSdkError({ message: 'Expecting string for "updated_at" of type "ShieldInformationBarrier"', }); } const updatedAt: undefined | DateTime = val.updated_at == void 0 ? void 0 : deserializeDateTime(val.updated_at); const updatedBy: undefined | UserBase = val.updated_by == void 0 ? void 0 : deserializeUserBase(val.updated_by); if (!(val.enabled_at == void 0) && !sdIsString(val.enabled_at)) { throw new BoxSdkError({ message: 'Expecting string for "enabled_at" of type "ShieldInformationBarrier"', }); } const enabledAt: undefined | DateTime = val.enabled_at == void 0 ? void 0 : deserializeDateTime(val.enabled_at); const enabledBy: undefined | UserBase = val.enabled_by == void 0 ? void 0 : deserializeUserBase(val.enabled_by); return { id: id, type: type, enterprise: enterprise, status: status, createdAt: createdAt, createdBy: createdBy, updatedAt: updatedAt, updatedBy: updatedBy, enabledAt: enabledAt, enabledBy: enabledBy, } satisfies ShieldInformationBarrier; }