/* 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'; import type { WebhookEventType } from './WebhookEventType'; import { WebhookEventTypeFromJSON, WebhookEventTypeFromJSONTyped, WebhookEventTypeToJSON, WebhookEventTypeToJSONTyped, } from './WebhookEventType'; /** * * @export * @interface WebhookCreateRequest */ export interface WebhookCreateRequest { /** * * @type {string} * @memberof WebhookCreateRequest */ name?: string | null; /** * * @type {string} * @memberof WebhookCreateRequest */ url: string; /** * * @type {Set} * @memberof WebhookCreateRequest */ events: Set; } /** * Check if a given object implements the WebhookCreateRequest interface. */ export function instanceOfWebhookCreateRequest(value: object): value is WebhookCreateRequest { if (!('url' in value) || value['url'] === undefined) return false; if (!('events' in value) || value['events'] === undefined) return false; return true; } export function WebhookCreateRequestFromJSON(json: any): WebhookCreateRequest { return WebhookCreateRequestFromJSONTyped(json, false); } export function WebhookCreateRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): WebhookCreateRequest { if (json == null) { return json; } return { 'name': json['name'] == null ? undefined : json['name'], 'url': json['url'], 'events': (new Set((json['events'] as Array).map(WebhookEventTypeFromJSON))), }; } export function WebhookCreateRequestToJSON(json: any): WebhookCreateRequest { return WebhookCreateRequestToJSONTyped(json, false); } export function WebhookCreateRequestToJSONTyped(value?: WebhookCreateRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'name': value['name'], 'url': value['url'], 'events': (Array.from(value['events'] as Set).map(WebhookEventTypeToJSON)), }; }