import IModel from '@/models/IModel'
import ICurrency from '@/models/ICurrency'
import IExchange from '@/models/IExchange'
import TransactionTag from '@/enums/TransactionTag'
import TransactionType from '@/enums/TransactionType'
import ISplit from '@/models/ISplit'
import ILocation from './ILocation'

export default interface ITransaction extends IModel {
  name: string
  accountId: string
  date: Date
  amount: number
  payBy: string
  payFor: ISplit[]
  userIds: string[]
  mainCurrency: ICurrency
  transactionType: TransactionType
  currencies: ICurrency[]
  exchange: IExchange | null
  tag: TransactionTag
  location?: ILocation
}
