import { EventEmitter, OnInit } from '@angular/core'; import { FormValidatorService, AlertService } from 'ngx-techlify-core'; import { FormGroup, FormBuilder, FormArray, AbstractControl } from '@angular/forms'; import { Expense } from '../expense.model'; import { ExpenseService } from '../expense.service'; import { TaxService } from '../../sale/tax/tax.service'; import { PaymentMethodTypeEnum } from '../../sale/payment/payment-method-type.enum'; import * as i0 from "@angular/core"; /** * Controller that add a new expense * * @author Floyd Kisson * @since 20210722 */ export declare class ExpenseFormComponent implements OnInit { private formValidatorService; private expenseService; private alertService; private formBuilder; private taxService; expense: any; type: string; expenseableType: string; expenseableId: number; saved: EventEmitter; cancelled: EventEmitter; form: FormGroup; isSaving: boolean; totalAmount: number; taxes: any[]; constructor(formValidatorService: FormValidatorService, expenseService: ExpenseService, alertService: AlertService, formBuilder: FormBuilder, taxService: TaxService); ngOnInit(): void; /** * Get the line items. */ get lineItems(): FormArray; /** * Update category price on category selection change. * * @param category * @param index */ onCategorySelectionChange(category: any, index: number): void; /** * Clear all the line items from invoice. */ clearAllLineItems(): void; /** * Add or update line item to list. * * @param data */ addLineItem(data?: any): void; /** * Remove line item from list. * * @param index */ deleteLineItem(index: number): void; /** * Save the expense with line items. */ save(resetForm?: boolean): void; /** * On cancel redirect back to the last location. */ cancel(): void; /** Method to evaluate form fields*/ isFieldValid(field: string): any; /** Method to find error in form fields*/ getErrorMessage(field: string): any; /** * Calculate the total amount. * * @private */ private calculateTotalAmount; protected readonly PaymentMethodTypeEnum: typeof PaymentMethodTypeEnum; private createExpense; private cacheTaxes; onTaxSelected(tax: any, lineItemForm: AbstractControl): void; getLineItemTotal(lineItemForm: AbstractControl): number; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }