/** * Shell Data & Reporting APIsLib * * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ). */ import { array, lazy, nullable, object, optional, Schema } from '../schema.js'; import { InvoicesSummaries, invoicesSummariesSchema, } from './invoicesSummaries.js'; import { LastStatementOfAccount2, lastStatementOfAccount2Schema, } from './lastStatementOfAccount2.js'; import { MonthlyInvoiceTrend, monthlyInvoiceTrendSchema, } from './monthlyInvoiceTrend.js'; import { PastStatementOfAccounts, pastStatementOfAccountsSchema, } from './pastStatementOfAccounts.js'; import { PaymentsSinceLastSOA, paymentsSinceLastSOASchema, } from './paymentsSinceLastSOA.js'; export interface StatementOfAccountResp { lastStatementOfAccount?: LastStatementOfAccount2; monthlyInvoiceTrend?: MonthlyInvoiceTrend[] | null; pastStatementOfAccounts?: PastStatementOfAccounts[]; paymentsSinceLastSOA?: PaymentsSinceLastSOA[] | null; invoicesSummaries?: InvoicesSummaries[] | null; } export const statementOfAccountRespSchema: Schema = lazy( () => object({ lastStatementOfAccount: [ 'LastStatementOfAccount', optional(lastStatementOfAccount2Schema), ], monthlyInvoiceTrend: [ 'MonthlyInvoiceTrend', optional(nullable(array(monthlyInvoiceTrendSchema))), ], pastStatementOfAccounts: [ 'PastStatementOfAccounts', optional(array(pastStatementOfAccountsSchema)), ], paymentsSinceLastSOA: [ 'PaymentsSinceLastSOA', optional(nullable(array(paymentsSinceLastSOASchema))), ], invoicesSummaries: [ 'InvoicesSummaries', optional(nullable(array(invoicesSummariesSchema))), ], }) );