/** * Shell Data & Reporting APIsLib * * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ). */ import { array, lazy, nullable, number, object, optional, Schema, string, } from '../schema.js'; import { Accounts, accountsSchema } from './accounts.js'; export interface InvoiceDatesRequestFilters { /** * Collecting Company Code of the selected payer. * Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other countries if ColCoID is provided. * Example: * 86-Philippines * 5-UK */ colCoCode?: number | null; /** * Collecting Company Id of the selected payer. * Optional if ColCoCode is passed else Mandatory. * Example: * 1-Philippines * 5-UK */ colCoId?: number | null; /** * Payer Id of the selected payer. * Optional if PayerNumber is passed else Mandatory */ payerId?: number | null; /** * Payer Number of the selected payer. * Optional if PayerId is passed else Mandatory */ payerNumber?: string | null; /** * Invoice date searched from this date. * Optional. * This input is a search criterion, if given. * Date format: yyyyMMdd */ fromDate?: string | null; /** * Invoice date searched until this date. * Optional. * This input is a search criterion, if given. * Date format: yyyyMMdd */ toDate?: string | null; accounts?: Accounts[]; } export const invoiceDatesRequestFiltersSchema: Schema = lazy( () => object({ colCoCode: ['ColCoCode', optional(nullable(number()))], colCoId: ['ColCoId', optional(nullable(number()))], payerId: ['PayerId', optional(nullable(number()))], payerNumber: ['PayerNumber', optional(nullable(string()))], fromDate: ['FromDate', optional(nullable(string()))], toDate: ['ToDate', optional(nullable(string()))], accounts: ['Accounts', optional(array(accountsSchema))], }) );