/* 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 UpdateBoxRequest */ export interface UpdateBoxRequest { /** * New display name. Empty strings are rejected; longer names are truncated to 120 chars by the backend. * @type {string} * @memberof UpdateBoxRequest */ name?: string; /** * New archival TTL. `null` disables auto-stop. * @type {number} * @memberof UpdateBoxRequest */ ttlSeconds?: number | null; /** * Rename the Boat's stable subdomain (the `.on.ascii.dev` label). Lowercase letters, digits and hyphens; no leading/trailing/double hyphens; cannot end in `-desktop` or `-` (reserved for the desktop and hosted-port URLs). Must be globally unique. The base URL, desktop URL and every live `host ` URL are re-pointed to the new name with no downtime and their access tokens preserved; the old URLs stop resolving. On a transient routing error the rename is saved but returns 502 `gateway_error` - retry with the same value to finish activating routes. * @type {string} * @memberof UpdateBoxRequest */ subdomain?: string; } /** * Check if a given object implements the UpdateBoxRequest interface. */ export function instanceOfUpdateBoxRequest(value: object): value is UpdateBoxRequest { return true; } export function UpdateBoxRequestFromJSON(json: any): UpdateBoxRequest { return UpdateBoxRequestFromJSONTyped(json, false); } export function UpdateBoxRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateBoxRequest { if (json == null) { return json; } return { 'name': json['name'] == null ? undefined : json['name'], 'ttlSeconds': json['ttlSeconds'] == null ? undefined : json['ttlSeconds'], 'subdomain': json['subdomain'] == null ? undefined : json['subdomain'], }; } export function UpdateBoxRequestToJSON(json: any): UpdateBoxRequest { return UpdateBoxRequestToJSONTyped(json, false); } export function UpdateBoxRequestToJSONTyped(value?: UpdateBoxRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'name': value['name'], 'ttlSeconds': value['ttlSeconds'], 'subdomain': value['subdomain'], }; }