import { AmountData, amountDataFromJson } from './AmountData'; import { IntentStatus, intentStatusFromJson } from './IntentStatus'; export class IntentData { amount?: AmountData; secret?: string; expirationDate?: string; isLive?: boolean; id?: string; status?: IntentStatus; constructor(params: { amount?: AmountData; secret?: string; expirationDate?: string; isLive?: boolean; id?: string; status?: IntentStatus; }) { this.amount = params.amount; this.secret = params.secret; this.expirationDate = params.expirationDate; this.isLive = params.isLive; this.id = params.id; this.status = params.status; } } export function intentDataFromJson(json: { [key: string]: any }): IntentData { return new IntentData({ amount: json.amount ? amountDataFromJson(json.amount) : undefined, secret: json.secret, expirationDate: json.expiration_date || json.expirationDate, isLive: json.is_live || json.isLive, id: json.id, status: json.status ? intentStatusFromJson(json.status) : undefined, }); }