import Weight from "../weight/weight"; import Height from "../height/height"; import { BodyType } from "../bodyType/bodyType"; import { Color } from "../colors/colors"; import { FacialFeatures } from "../faces/faces"; import { Hair } from "../hair/hair"; import { IToMarkdown } from "../markdown/markdown"; import Race from "../race/Race"; import { Age } from "./Age"; export default class PhysicalDescription implements IToMarkdown { readonly age: Age; readonly height: Height; readonly weight: Weight; readonly bodyType: BodyType; readonly eyeColor: Color; readonly face: FacialFeatures; readonly hairColor: Color; readonly hairStyle: Hair; readonly skinColor: Color; constructor({ age, height, weight, bodyType, eyeColor, face, hairColor, hairStyle, skinColor, }: { age: Age; height: Height; weight: Weight; bodyType: BodyType; eyeColor: Color; face: FacialFeatures; hairColor: Color; hairStyle: Hair; skinColor: Color; }); toMarkdown(): string; static parse(lines: string[]): PhysicalDescription; static random({ minAge, maxAge, minWeight, maxWeight, minHeight, maxHeight, race, }: { minAge?: number; maxAge?: number; minWeight?: Weight; maxWeight?: Weight; minHeight?: Height; maxHeight?: Height; race: Race; }): PhysicalDescription; }