data-and-reporting-sdk
Version:
Data And Reporting product consists of API's which provides details of transaction and invoice informations about shell cards. The Shell Card Transaction and Invoice API is REST-based and employs Basic authentication in Version 1 and Oauth authentication
62 lines (58 loc) • 1.84 kB
text/typescript
/**
* 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';
import {
InvoicesSummaries,
invoicesSummariesSchema,
} from './invoicesSummaries';
import {
LastStatementOfAccount,
lastStatementOfAccountSchema,
} from './lastStatementOfAccount';
import {
MonthlyInvoiceTrend,
monthlyInvoiceTrendSchema,
} from './monthlyInvoiceTrend';
import {
PastStatementOfAccounts,
pastStatementOfAccountsSchema,
} from './pastStatementOfAccounts';
import {
PaymentsSinceLastSOA,
paymentsSinceLastSOASchema,
} from './paymentsSinceLastSOA';
export interface StatementOfAccountResp {
/** Latest statement of the account generated for the given Payer. */
lastStatementOfAccount?: LastStatementOfAccount;
monthlyInvoiceTrend?: MonthlyInvoiceTrend[] | null;
pastStatementOfAccounts?: PastStatementOfAccounts[];
paymentsSinceLastSOA?: PaymentsSinceLastSOA[] | null;
invoicesSummaries?: InvoicesSummaries[] | null;
}
export const statementOfAccountRespSchema: Schema<StatementOfAccountResp> = object(
{
lastStatementOfAccount: [
'LastStatementOfAccount',
optional(lazy(() => lastStatementOfAccountSchema)),
],
monthlyInvoiceTrend: [
'MonthlyInvoiceTrend',
optional(nullable(array(lazy(() => monthlyInvoiceTrendSchema)))),
],
pastStatementOfAccounts: [
'PastStatementOfAccounts',
optional(array(lazy(() => pastStatementOfAccountsSchema))),
],
paymentsSinceLastSOA: [
'PaymentsSinceLastSOA',
optional(nullable(array(lazy(() => paymentsSinceLastSOASchema)))),
],
invoicesSummaries: [
'InvoicesSummaries',
optional(nullable(array(lazy(() => invoicesSummariesSchema)))),
],
}
);