Files
bigcapital/server/src/interfaces/Journal.ts
Ahmed Bouhuolia d49992a6d7 refactoring: balance sheet report.
refactoring: trial balance sheet report.
refactoring: general ledger report.
refactoring: journal report.
refactoring: P&L report.
2020-12-10 13:04:49 +02:00

47 lines
896 B
TypeScript

export interface IJournalEntry {
id: number,
index?: number,
date: Date,
credit: number,
debit: number,
account: number,
referenceType: string,
referenceId: number,
transactionType?: string,
note?: string,
userId?: number,
contactType?: string,
contactId?: number,
};
export interface IJournalPoster {
entries: IJournalEntry[],
credit(entry: IJournalEntry): void;
debit(entry: IJournalEntry): void;
removeEntries(ids: number[]): void;
saveEntries(): void;
saveBalance(): void;
deleteEntries(): void;
getAccountBalance(accountId: number, closingDate?: Date | string, dateType?: string): number;
getAccountEntries(accountId: number): IJournalEntry[];
}
export type TEntryType = 'credit' | 'debit';
export interface IAccountChange {
credit: number,
debit: number,
};
export interface IAccountsChange {
[key: string]: IAccountChange,
};