UNPKG

@ringer-tel/ivy

Version:
184 lines (172 loc) 5.62 kB
/* tslint:disable */ /* eslint-disable */ /** * Ringer Business API * This API provides comprehensive endpoints for the Ringer Business system. It includes functionality for managing customer accounts, addresses, sites, phone numbers, payments, users, and other business resources. Operations typically require authentication and appropriate permissions. * * The version of the OpenAPI document: 1.0.5 * Contact: support@ringer.tel * * 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 { ItemResponse } from './ItemResponse'; import { ItemResponseFromJSON, ItemResponseFromJSONTyped, ItemResponseToJSON, ItemResponseToJSONTyped, } from './ItemResponse'; import type { PlanResponseAllOfPackages } from './PlanResponseAllOfPackages'; import { PlanResponseAllOfPackagesFromJSON, PlanResponseAllOfPackagesFromJSONTyped, PlanResponseAllOfPackagesToJSON, PlanResponseAllOfPackagesToJSONTyped, } from './PlanResponseAllOfPackages'; import type { SchemasLink } from './SchemasLink'; import { SchemasLinkFromJSON, SchemasLinkFromJSONTyped, SchemasLinkToJSON, SchemasLinkToJSONTyped, } from './SchemasLink'; /** * Detailed information about a subscription plan. * @export * @interface PlanResponse */ export interface PlanResponse { /** * * @type {number} * @memberof PlanResponse */ id: number; /** * * @type {string} * @memberof PlanResponse */ name: string; /** * * @type {string} * @memberof PlanResponse */ description?: string | null; /** * * @type {string} * @memberof PlanResponse */ totalCost: string; /** * * @type {string} * @memberof PlanResponse */ currency: string; /** * * @type {boolean} * @memberof PlanResponse */ removable: boolean; /** * * @type {boolean} * @memberof PlanResponse */ active: boolean; /** * * @type {boolean} * @memberof PlanResponse */ approved: boolean; /** * * @type {boolean} * @memberof PlanResponse */ finalized: boolean; /** * A list of individual billable items or features included or defined by this plan. * @type {Array<ItemResponse>} * @memberof PlanResponse */ items?: Array<ItemResponse> | null; /** * * @type {PlanResponseAllOfPackages} * @memberof PlanResponse */ packages?: PlanResponseAllOfPackages | null; /** * HATEOAS links related to this plan. * @type {Array<SchemasLink>} * @memberof PlanResponse */ links?: Array<SchemasLink> | null; } /** * Check if a given object implements the PlanResponse interface. */ export function instanceOfPlanResponse(value: object): value is PlanResponse { if (!('id' in value) || value['id'] === undefined) return false; if (!('name' in value) || value['name'] === undefined) return false; if (!('totalCost' in value) || value['totalCost'] === undefined) return false; if (!('currency' in value) || value['currency'] === undefined) return false; if (!('removable' in value) || value['removable'] === undefined) return false; if (!('active' in value) || value['active'] === undefined) return false; if (!('approved' in value) || value['approved'] === undefined) return false; if (!('finalized' in value) || value['finalized'] === undefined) return false; return true; } export function PlanResponseFromJSON(json: any): PlanResponse { return PlanResponseFromJSONTyped(json, false); } export function PlanResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlanResponse { if (json == null) { return json; } return { 'id': json['id'], 'name': json['name'], 'description': json['description'] == null ? undefined : json['description'], 'totalCost': json['total_cost'], 'currency': json['currency'], 'removable': json['removable'], 'active': json['active'], 'approved': json['approved'], 'finalized': json['finalized'], 'items': json['items'] == null ? undefined : ((json['items'] as Array<any>).map(ItemResponseFromJSON)), 'packages': json['packages'] == null ? undefined : PlanResponseAllOfPackagesFromJSON(json['packages']), 'links': json['links'] == null ? undefined : ((json['links'] as Array<any>).map(SchemasLinkFromJSON)), }; } export function PlanResponseToJSON(json: any): PlanResponse { return PlanResponseToJSONTyped(json, false); } export function PlanResponseToJSONTyped(value?: PlanResponse | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'id': value['id'], 'name': value['name'], 'description': value['description'], 'total_cost': value['totalCost'], 'currency': value['currency'], 'removable': value['removable'], 'active': value['active'], 'approved': value['approved'], 'finalized': value['finalized'], 'items': value['items'] == null ? undefined : ((value['items'] as Array<any>).map(ItemResponseToJSON)), 'packages': PlanResponseAllOfPackagesToJSON(value['packages']), 'links': value['links'] == null ? undefined : ((value['links'] as Array<any>).map(SchemasLinkToJSON)), }; }