/* tslint:disable */ /* eslint-disable */ /** * Defined Networking API *

This API enables automated administration of Defined Networking hosts, roles, logs, and more. To authenticate, obtain an api key to use as a bearer token from your Defined Networking admin panel [API Keys page](https://admin.defined.net/settings/api-keys). API keys must be given the appropriate permission scopes for every method and endpoint, as specified throughout this documentation. Please [contact us](https://www.defined.net/contact?reason=support) for any questions or issues. In the event of a token leak, please take care to [rotate the key](/guides/rotating-api-keys).
* * 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 { exists, mapValues } from '../runtime'; import type { FirewallRule } from './FirewallRule'; import { FirewallRuleFromJSON, FirewallRuleFromJSONTyped, FirewallRuleToJSON, } from './FirewallRule'; /** * * @export * @interface RoleCreateRequest */ export interface RoleCreateRequest { /** * Name of the new role * @type {string} * @memberof RoleCreateRequest */ name: string; /** * Optional description * @type {string} * @memberof RoleCreateRequest */ description?: string; /** * Incoming firewall rules * @type {Array} * @memberof RoleCreateRequest */ firewallRules?: Array; } /** * Check if a given object implements the RoleCreateRequest interface. */ export function instanceOfRoleCreateRequest(value: object): boolean { let isInstance = true; isInstance = isInstance && "name" in value; return isInstance; } export function RoleCreateRequestFromJSON(json: any): RoleCreateRequest { return RoleCreateRequestFromJSONTyped(json, false); } export function RoleCreateRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): RoleCreateRequest { if ((json === undefined) || (json === null)) { return json; } return { 'name': json['name'], 'description': !exists(json, 'description') ? undefined : json['description'], 'firewallRules': !exists(json, 'firewallRules') ? undefined : ((json['firewallRules'] as Array).map(FirewallRuleFromJSON)), }; } export function RoleCreateRequestToJSON(value?: RoleCreateRequest | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'name': value.name, 'description': value.description, 'firewallRules': value.firewallRules === undefined ? undefined : ((value.firewallRules as Array).map(FirewallRuleToJSON)), }; }