/* tslint:disable */ /* eslint-disable */ /** * Boat Public API v1 * Public JSON API for creating, operating, prompting, observing, and exposing Boat sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1. * * The version of the OpenAPI document: 1.0.0 * * * 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'; /** * * @export * @interface DataRetentionPolicyResponse */ export interface DataRetentionPolicyResponse { /** * * @type {boolean} * @memberof DataRetentionPolicyResponse */ ok: boolean; /** * * @type {DataRetentionPolicyResponseTypeEnum} * @memberof DataRetentionPolicyResponse */ type: DataRetentionPolicyResponseTypeEnum; /** * * @type {boolean} * @memberof DataRetentionPolicyResponse */ enabled: boolean; /** * * @type {Date} * @memberof DataRetentionPolicyResponse */ enabledAt: Date | null; /** * Archived Boxes newly queued for deletion by this policy update. * @type {number} * @memberof DataRetentionPolicyResponse */ queuedBoxes?: number; /** * Always true on updates. Disabling the policy does not cancel accepted deletion operations. * @type {boolean} * @memberof DataRetentionPolicyResponse */ acceptedDeletionOperationsIrreversible?: boolean; } /** * @export */ export const DataRetentionPolicyResponseTypeEnum = { DataRetentionInfo: 'data_retention.info', DataRetentionUpdated: 'data_retention.updated' } as const; export type DataRetentionPolicyResponseTypeEnum = typeof DataRetentionPolicyResponseTypeEnum[keyof typeof DataRetentionPolicyResponseTypeEnum]; /** * Check if a given object implements the DataRetentionPolicyResponse interface. */ export function instanceOfDataRetentionPolicyResponse(value: object): value is DataRetentionPolicyResponse { if (!('ok' in value) || value['ok'] === undefined) return false; if (!('type' in value) || value['type'] === undefined) return false; if (!('enabled' in value) || value['enabled'] === undefined) return false; if (!('enabledAt' in value) || value['enabledAt'] === undefined) return false; return true; } export function DataRetentionPolicyResponseFromJSON(json: any): DataRetentionPolicyResponse { return DataRetentionPolicyResponseFromJSONTyped(json, false); } export function DataRetentionPolicyResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): DataRetentionPolicyResponse { if (json == null) { return json; } return { 'ok': json['ok'], 'type': json['type'], 'enabled': json['enabled'], 'enabledAt': (json['enabledAt'] == null ? null : new Date(json['enabledAt'])), 'queuedBoxes': json['queuedBoxes'] == null ? undefined : json['queuedBoxes'], 'acceptedDeletionOperationsIrreversible': json['acceptedDeletionOperationsIrreversible'] == null ? undefined : json['acceptedDeletionOperationsIrreversible'], }; } export function DataRetentionPolicyResponseToJSON(json: any): DataRetentionPolicyResponse { return DataRetentionPolicyResponseToJSONTyped(json, false); } export function DataRetentionPolicyResponseToJSONTyped(value?: DataRetentionPolicyResponse | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'ok': value['ok'], 'type': value['type'], 'enabled': value['enabled'], 'enabledAt': value['enabledAt'] == null ? value['enabledAt'] : value['enabledAt'].toISOString(), 'queuedBoxes': value['queuedBoxes'], 'acceptedDeletionOperationsIrreversible': value['acceptedDeletionOperationsIrreversible'], }; }