@ringer-tel/ivy
Version:
TypeScript SDK for Ringer APIs
237 lines (223 loc) • 7.57 kB
text/typescript
/* 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.6
* 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';
/**
* Information required to add and tokenize a new credit card.
* @export
* @interface CreditCardCreateRequest
*/
export interface CreditCardCreateRequest {
/**
*
* @type {string}
* @memberof CreditCardCreateRequest
*/
name: string;
/**
* Inactive cards will not be charged when a payment is made.
* @type {boolean}
* @memberof CreditCardCreateRequest
*/
active: boolean;
/**
* When you make a payment, we will attempt to charge payment methods in order from highest priority (closest to 100) to lowest.
* @type {number}
* @memberof CreditCardCreateRequest
*/
priority: number;
/**
* The card holder's first name.
* @type {string}
* @memberof CreditCardCreateRequest
*/
fname: string;
/**
* The card holder's last name.
* @type {string}
* @memberof CreditCardCreateRequest
*/
lname: string;
/**
* Card holder\'s street address.
* @type {string}
* @memberof CreditCardCreateRequest
*/
addr1: string;
/**
* Apartment or suite number, if applicable.
* @type {string}
* @memberof CreditCardCreateRequest
*/
addr2?: string;
/**
* Country where card holder resides.
* @type {string}
* @memberof CreditCardCreateRequest
*/
country: string;
/**
* State where card holder resides, if applicable.
* @type {string}
* @memberof CreditCardCreateRequest
*/
state?: string;
/**
* City where card holder resides.
* @type {string}
* @memberof CreditCardCreateRequest
*/
city: string;
/**
* Postal/ZIP code where card holder resides.
* @type {string}
* @memberof CreditCardCreateRequest
*/
postalcode: string;
/**
* Contact email of card holder.
* @type {string}
* @memberof CreditCardCreateRequest
*/
email?: string;
/**
* Daytime phone number of card holder.
* @type {string}
* @memberof CreditCardCreateRequest
*/
dayphone?: string;
/**
* Evening phone number of card holder.
* @type {string}
* @memberof CreditCardCreateRequest
*/
eveningphone?: string;
/**
* Type of credit card.
* @type {string}
* @memberof CreditCardCreateRequest
*/
cardtype: CreditCardCreateRequestCardtypeEnum;
/**
* Credit card number.
* @type {string}
* @memberof CreditCardCreateRequest
*/
cardnumber: string;
/**
* Month of credit card's expiration date.
* @type {string}
* @memberof CreditCardCreateRequest
*/
cardexpmonth: string;
/**
* Year of credit card\'s expiration date.
* @type {string}
* @memberof CreditCardCreateRequest
*/
cardexpyear: string;
/**
* CVV on back of credit card.
* @type {string}
* @memberof CreditCardCreateRequest
*/
cvv: string;
}
/**
* @export
*/
export const CreditCardCreateRequestCardtypeEnum = {
Visa: 'Visa',
Mastercard: 'Mastercard',
AmericanExpress: 'American Express',
Discover: 'Discover'
} as const;
export type CreditCardCreateRequestCardtypeEnum = typeof CreditCardCreateRequestCardtypeEnum[keyof typeof CreditCardCreateRequestCardtypeEnum];
/**
* Check if a given object implements the CreditCardCreateRequest interface.
*/
export function instanceOfCreditCardCreateRequest(value: object): value is CreditCardCreateRequest {
if (!('name' in value) || value['name'] === undefined) return false;
if (!('active' in value) || value['active'] === undefined) return false;
if (!('priority' in value) || value['priority'] === undefined) return false;
if (!('fname' in value) || value['fname'] === undefined) return false;
if (!('lname' in value) || value['lname'] === undefined) return false;
if (!('addr1' in value) || value['addr1'] === undefined) return false;
if (!('country' in value) || value['country'] === undefined) return false;
if (!('city' in value) || value['city'] === undefined) return false;
if (!('postalcode' in value) || value['postalcode'] === undefined) return false;
if (!('cardtype' in value) || value['cardtype'] === undefined) return false;
if (!('cardnumber' in value) || value['cardnumber'] === undefined) return false;
if (!('cardexpmonth' in value) || value['cardexpmonth'] === undefined) return false;
if (!('cardexpyear' in value) || value['cardexpyear'] === undefined) return false;
if (!('cvv' in value) || value['cvv'] === undefined) return false;
return true;
}
export function CreditCardCreateRequestFromJSON(json: any): CreditCardCreateRequest {
return CreditCardCreateRequestFromJSONTyped(json, false);
}
export function CreditCardCreateRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreditCardCreateRequest {
if (json == null) {
return json;
}
return {
'name': json['name'],
'active': json['active'],
'priority': json['priority'],
'fname': json['fname'],
'lname': json['lname'],
'addr1': json['addr1'],
'addr2': json['addr2'] == null ? undefined : json['addr2'],
'country': json['country'],
'state': json['state'] == null ? undefined : json['state'],
'city': json['city'],
'postalcode': json['postalcode'],
'email': json['email'] == null ? undefined : json['email'],
'dayphone': json['dayphone'] == null ? undefined : json['dayphone'],
'eveningphone': json['eveningphone'] == null ? undefined : json['eveningphone'],
'cardtype': json['cardtype'],
'cardnumber': json['cardnumber'],
'cardexpmonth': json['cardexpmonth'],
'cardexpyear': json['cardexpyear'],
'cvv': json['cvv'],
};
}
export function CreditCardCreateRequestToJSON(json: any): CreditCardCreateRequest {
return CreditCardCreateRequestToJSONTyped(json, false);
}
export function CreditCardCreateRequestToJSONTyped(value?: CreditCardCreateRequest | null, ignoreDiscriminator: boolean = false): any {
if (value == null) {
return value;
}
return {
'name': value['name'],
'active': value['active'],
'priority': value['priority'],
'fname': value['fname'],
'lname': value['lname'],
'addr1': value['addr1'],
'addr2': value['addr2'],
'country': value['country'],
'state': value['state'],
'city': value['city'],
'postalcode': value['postalcode'],
'email': value['email'],
'dayphone': value['dayphone'],
'eveningphone': value['eveningphone'],
'cardtype': value['cardtype'],
'cardnumber': value['cardnumber'],
'cardexpmonth': value['cardexpmonth'],
'cardexpyear': value['cardexpyear'],
'cvv': value['cvv'],
};
}