import type { SelectChangeEvent } from '@mui/material';

import type { CompanyDbModel } from '../../../Companies/Components/CompaniesComponents.helper';
import type { FinancialsModel } from '../FinancialsForm/FinancialsForm.helper';

export interface Financials {
	financials: { value: string }[];
	class: string;
	id: string;
	label: string;
	handleChange: (event: SelectChangeEvent) => void;
}

export interface FinancialsInputInterface {
	title: string;
	className: string;
	getMonthHandler: (event: SelectChangeEvent) => void;
	getYearHandler: (event: SelectChangeEvent) => void;
}

export interface FinancialsSelected {
	select: string;
	selected: string;
	collapseContainer: string;
}

export interface FinancialsHomeInterface {
	financialsTableClass: string;
	financialsTable: string;
	financialsTableContainer: string;
	addIcon: string;
	changeHandler: () => void;
	collapseContainer: string;
	financialsList: string;
	payload: string;
	financialsListForm: string;
	recordUpdated: string;
	listOfCompanies: CompanyDbModel[] | string;
	financialsId: string;
	itemForEdit: (event: FinancialsModel) => void;
	isCompanySelected: boolean;
	addFinancials?: boolean;
	formAdvisor: string;
	lastUpdate: string;
}

export const DUMMY_FORM_ARRAY = {
	timePeriod: [
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Financials Start Date'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Financials End Date'
		}
	],
	baseNumber: [
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Revenue'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Cost of Sales (CoGS)'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Gross Profit'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'EBIT'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations,",
			label: 'Net Profit'
		}
	],
	OtherInfo: [
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Depreciation & Amortisation'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Interest Paid / Received'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Other Income / Expenses'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Dividends / Drawings'
		}
	],
	Assets: [
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Cash in Bank'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Trade Debtors'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Stock Days WIP'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Total Current Assets'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Fixed Assets'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Total Assets'
		}
	],
	Liabilities: [
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Trade Creditors'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Total Current Liabilities'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Total Liabilities'
		}
	],
	Funding: [
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Bank Loans - current'
		},
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Bank Loans - non current'
		}
	],
	SalesForecast: [
		{
			tooltip:
				"Total amount of income generated by the sale of goods or services related to the company's primary operations",
			label: 'Increase Revenue by'
		}
	]
};
