import { Index } from "../Index/Index" ; import { Percentage } from "../Percentage" ; import { Fund } from "./Fund" ; export class Etf implements Fund { constructor ( private name , private symbol , private isin , private logo , private totalExpenseRatio , private internalTransactionCosts , private dividendLeak , private index , private kiid , private factsheet ) { } getName ( ) { return this . name ; } getIdentifier ( ) { return this . symbol ; } getIsin ( ) { return this . isin ; } getLogo ( ) { return this . logo ; } getTotalExpenseRatio ( ) { return this . totalExpenseRatio ; } getInternalTransactionCosts ( ) { return this . internalTransactionCosts ; } getDividendLeak ( ) { return this . dividendLeak ; } getTotalRecurringCosts ( ) { return this . totalExpenseRatio . add ( this . dividendLeak ) ; } getTrackedIndex ( ) { return this . index ; } getKiid ( ) { return this . kiid ; } getFactsheet ( ) { return this . factsheet ; } getMarketCapitalization ( ) { return this . index . percentageOfTotalMarketCapitalization ; } getEsgExclusions ( ) { return new Percentage ( 0 ) ; } containsSmallCaps ( ) { return this . index . sizes . includes ( 'small' ) ; } }