/* tslint:disable */ /* eslint-disable */ /** * My API * API documentation for my Laravel app * * 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 { TransactionType } from './TransactionType'; import { TransactionTypeFromJSON, TransactionTypeFromJSONTyped, TransactionTypeToJSON, TransactionTypeToJSONTyped, } from './TransactionType'; import type { PaymentMethod } from './PaymentMethod'; import { PaymentMethodFromJSON, PaymentMethodFromJSONTyped, PaymentMethodToJSON, PaymentMethodToJSONTyped, } from './PaymentMethod'; import type { PaymentSource } from './PaymentSource'; import { PaymentSourceFromJSON, PaymentSourceFromJSONTyped, PaymentSourceToJSON, PaymentSourceToJSONTyped, } from './PaymentSource'; import type { PaymentStatus } from './PaymentStatus'; import { PaymentStatusFromJSON, PaymentStatusFromJSONTyped, PaymentStatusToJSON, PaymentStatusToJSONTyped, } from './PaymentStatus'; /** * * @export * @interface TransactionResource */ export interface TransactionResource { /** * * @type {number} * @memberof TransactionResource */ id?: number | null; /** * * @type {PaymentSource} * @memberof TransactionResource */ paymentSource: PaymentSource; /** * * @type {PaymentMethod} * @memberof TransactionResource */ paymentMethod: PaymentMethod; /** * * @type {TransactionType} * @memberof TransactionResource */ type: TransactionType; /** * * @type {PaymentStatus} * @memberof TransactionResource */ status: PaymentStatus; /** * * @type {number} * @memberof TransactionResource */ amount: number; /** * * @type {number} * @memberof TransactionResource */ surcharge: number; /** * * @type {number} * @memberof TransactionResource */ totalAmount: number; /** * * @type {number} * @memberof TransactionResource */ refundedAmount: number; /** * * @type {number} * @memberof TransactionResource */ unrefundedAmount: number; /** * * @type {string} * @memberof TransactionResource */ reference: string; /** * * @type {string} * @memberof TransactionResource */ description?: string | null; /** * * @type {string} * @memberof TransactionResource */ extendedData?: string | null; /** * * @type {string} * @memberof TransactionResource */ riskScore?: string | null; /** * * @type {string} * @memberof TransactionResource */ fraudDecision?: string | null; /** * * @type {number} * @memberof TransactionResource */ refundedTransactionId?: number | null; /** * * @type {Date} * @memberof TransactionResource */ createdAt?: Date | null; } /** * Check if a given object implements the TransactionResource interface. */ export function instanceOfTransactionResource(value: object): value is TransactionResource { if (!('paymentSource' in value) || value['paymentSource'] === undefined) return false; if (!('paymentMethod' in value) || value['paymentMethod'] === undefined) return false; if (!('type' in value) || value['type'] === undefined) return false; if (!('status' in value) || value['status'] === undefined) return false; if (!('amount' in value) || value['amount'] === undefined) return false; if (!('surcharge' in value) || value['surcharge'] === undefined) return false; if (!('totalAmount' in value) || value['totalAmount'] === undefined) return false; if (!('refundedAmount' in value) || value['refundedAmount'] === undefined) return false; if (!('unrefundedAmount' in value) || value['unrefundedAmount'] === undefined) return false; if (!('reference' in value) || value['reference'] === undefined) return false; return true; } export function TransactionResourceFromJSON(json: any): TransactionResource { return TransactionResourceFromJSONTyped(json, false); } export function TransactionResourceFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionResource { if (json == null) { return json; } return { 'id': json['id'] == null ? undefined : json['id'], 'paymentSource': PaymentSourceFromJSON(json['paymentSource']), 'paymentMethod': PaymentMethodFromJSON(json['paymentMethod']), 'type': TransactionTypeFromJSON(json['type']), 'status': PaymentStatusFromJSON(json['status']), 'amount': json['amount'], 'surcharge': json['surcharge'], 'totalAmount': json['totalAmount'], 'refundedAmount': json['refundedAmount'], 'unrefundedAmount': json['unrefundedAmount'], 'reference': json['reference'], 'description': json['description'] == null ? undefined : json['description'], 'extendedData': json['extendedData'] == null ? undefined : json['extendedData'], 'riskScore': json['riskScore'] == null ? undefined : json['riskScore'], 'fraudDecision': json['fraudDecision'] == null ? undefined : json['fraudDecision'], 'refundedTransactionId': json['refundedTransactionId'] == null ? undefined : json['refundedTransactionId'], 'createdAt': json['createdAt'] == null ? undefined : (new Date(json['createdAt'])), }; } export function TransactionResourceToJSON(json: any): TransactionResource { return TransactionResourceToJSONTyped(json, false); } export function TransactionResourceToJSONTyped(value?: TransactionResource | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'id': value['id'], 'paymentSource': PaymentSourceToJSON(value['paymentSource']), 'paymentMethod': PaymentMethodToJSON(value['paymentMethod']), 'type': TransactionTypeToJSON(value['type']), 'status': PaymentStatusToJSON(value['status']), 'amount': value['amount'], 'surcharge': value['surcharge'], 'totalAmount': value['totalAmount'], 'refundedAmount': value['refundedAmount'], 'unrefundedAmount': value['unrefundedAmount'], 'reference': value['reference'], 'description': value['description'], 'extendedData': value['extendedData'], 'riskScore': value['riskScore'], 'fraudDecision': value['fraudDecision'], 'refundedTransactionId': value['refundedTransactionId'], 'createdAt': value['createdAt'] === null ? null : ((value['createdAt'] as any)?.toISOString()), }; }