Files
bigcapital/packages/server/src/interfaces/TransactionsByVendors.ts
2024-02-17 23:36:29 +02:00

51 lines
1.5 KiB
TypeScript

import { IFinancialSheetCommonMeta } from './FinancialStatements';
import { IFinancialTable } from './Table';
import {
ITransactionsByContactsAmount,
ITransactionsByContactsTransaction,
ITransactionsByContactsFilter,
} from './TransactionsByContacts';
export interface ITransactionsByVendorsAmount
extends ITransactionsByContactsAmount {}
export interface ITransactionsByVendorsTransaction
extends ITransactionsByContactsTransaction {}
export interface ITransactionsByVendorsVendor {
vendorName: string;
openingBalance: ITransactionsByVendorsAmount;
closingBalance: ITransactionsByVendorsAmount;
transactions: ITransactionsByVendorsTransaction[];
}
export interface ITransactionsByVendorsFilter
extends ITransactionsByContactsFilter {
vendorsIds: number[];
}
export type ITransactionsByVendorsData = ITransactionsByVendorsVendor[];
export interface ITransactionsByVendorsStatement {
data: ITransactionsByVendorsData;
query: ITransactionsByVendorsFilter;
meta: ITransactionsByVendorMeta;
}
export interface ITransactionsByVendorsService {
transactionsByVendors(
tenantId: number,
filter: ITransactionsByVendorsFilter
): Promise<ITransactionsByVendorsStatement>;
}
export interface ITransactionsByVendorTable extends IFinancialTable {
query: ITransactionsByVendorsFilter;
meta: ITransactionsByVendorMeta;
}
export interface ITransactionsByVendorMeta extends IFinancialSheetCommonMeta {
formattedFromDate: string;
formattedToDate: string;
formattedDateRange: string;
}