/* 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 { TransferSipTrunkRequestData } from './TransferSipTrunkRequestData';
import {
    TransferSipTrunkRequestDataFromJSON,
    TransferSipTrunkRequestDataFromJSONTyped,
    TransferSipTrunkRequestDataToJSON,
    TransferSipTrunkRequestDataToJSONTyped,
} from './TransferSipTrunkRequestData';

/**
 * 
 * @export
 * @interface TransferSipTrunkRequest
 */
export interface TransferSipTrunkRequest {
    /**
     * 
     * @type {TransferSipTrunkRequestData}
     * @memberof TransferSipTrunkRequest
     */
    data: TransferSipTrunkRequestData;
}

/**
 * Check if a given object implements the TransferSipTrunkRequest interface.
 */
export function instanceOfTransferSipTrunkRequest(value: object): value is TransferSipTrunkRequest {
    if (!('data' in value) || value['data'] === undefined) return false;
    return true;
}

export function TransferSipTrunkRequestFromJSON(json: any): TransferSipTrunkRequest {
    return TransferSipTrunkRequestFromJSONTyped(json, false);
}

export function TransferSipTrunkRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransferSipTrunkRequest {
    if (json == null) {
        return json;
    }
    return {
        
        'data': TransferSipTrunkRequestDataFromJSON(json['data']),
    };
}

export function TransferSipTrunkRequestToJSON(json: any): TransferSipTrunkRequest {
    return TransferSipTrunkRequestToJSONTyped(json, false);
}

export function TransferSipTrunkRequestToJSONTyped(value?: TransferSipTrunkRequest | null, ignoreDiscriminator: boolean = false): any {
    if (value == null) {
        return value;
    }

    return {
        
        'data': TransferSipTrunkRequestDataToJSON(value['data']),
    };
}

