import { ITradeIdeaImage } from './trade-idea-image.i'
import { ITradeIdeaStrategSumaryCalc } from './trade-idea-strategy-summary-calc.i'

export type ITradeIdeaStrategyOrdersType = 'ALLOCATION' | 'STANDARD'

export interface ITradeIdeaStrategy {
	// this one is the only one that must be there
	reference: string // all NFT IDEAs with the same of this reference AND FROM SAME CREATOR are parts of one "STRATEGY CHAIN".

	uniqueKey?: string // user dont need to pass but we build it and deliver
	// strategyKey: string =>> that is reference

	// Those are REQUIRED if it is the very first idea of the strategy chain, otherwise we populate from latest
	name?: string
	description?: string

	// populated from pricing provider data
	createdAt?: number
	changedAt?: number

	// Those optional and we populate from latest
	image?: ITradeIdeaImage
	externalLink?: string
	ordersType?: ITradeIdeaStrategyOrdersType // Defaults to STANDARD
	// raw?: any
	summaryCalc?: ITradeIdeaStrategSumaryCalc
	portfolio?: { [key: string]: number }
	portfolioAllocated?: number
	raw?: any
}
