import { Link } from '../../common/model/LinkEntity'; import { DeliveryMethod } from '../../common/model/DeliveryMethod'; import { FeatureKey } from '../../common/model/FeatureKey'; export interface Account { id: string; name: string; products: Product[]; manager: string; status: AccountStatus; type: AccountType; marketSegment: MarketSegment; deliveryMethod?: DeliveryMethod; defaultLicenseDurationYears?: number; currency?: string; features?: { [key in FeatureKey]?: boolean; }; createdAt?: Date; marketingInformation?: MarketingInformation; totalActiveUsers?: number; links?: { deleteAccount?: Link; accountUsers?: Link; accountBulkUsers?: Link; accountContentPackages?: Link; }; accessExpiresOn?: Date; subAccounts?: SubAccount[]; } export interface SubAccount { id: string; name: string; } export declare enum Product { INTEGRATE = "INTEGRATE", LTI = "LTI", LIBRARY = "LIBRARY", CLASSROOM = "CLASSROOM" } export declare enum AccountStatus { ACTIVE = "ACTIVE", EXPIRED = "EXPIRED", ARCHIVED = "ARCHIVED" } export declare enum AccountType { DEMO = "DEMO", TRIAL = "TRIAL", STANDARD = "STANDARD" } export declare enum MarketSegment { HIGHER_EDUCATION = "HIGHER_EDUCATION", K12 = "K12" } export interface MarketingInformation { country?: string; companySegments?: string[]; }