import { Trait } from "../../../flex-ui-core/src"; import { ProfilesAndHistoryConfigurationProfileTraitGroup, ProfilesAndHistoryConfigurationRecentActivityGroup, ProfilesAndHistoryConfigurationTraitFieldType } from "../../../core/FlexDataClient"; type CustomerProfileLoadingState = { profile: boolean; traits: boolean; traitGroups: boolean; recentActivityGroups: boolean; traitsAndRecentActivityGroups: boolean; }; type SecondaryProperty = { label?: string; value?: string; type?: string; }; type RecentEventGroup = { groupName?: string; eventName: string; timeframe?: number | undefined; limit?: number | undefined | null; primaryProperty: string; secondaryProperty?: SecondaryProperty; propertyImage: string; order?: number; }; type UserActivity = { primaryProperty?: string; secondaryProperty?: string; secondaryPropertyType?: string; label?: string; image?: string; }; type ReferenceSidTrait = { referenceSid: string; fieldType: ProfilesAndHistoryConfigurationTraitFieldType; trait: Trait; }; type Stat = { value?: object | string | number | null; name: string; colWidth?: number; fieldType: ProfilesAndHistoryConfigurationTraitFieldType; }; type StatGroup = { title?: string; stats: Stat[]; type?: string; order: number | undefined; }; type RecentActivityGroup = { group?: RecentEventGroup; activities?: UserActivity[]; groupName?: string; profileGroup?: ProfilesAndHistoryConfigurationRecentActivityGroup | undefined | null; order?: number | undefined; }; type CustomerPredictionData = { propensityToChurnValue?: number | null; lifetTimeValueTraitValue?: number | null; }; type CategorizedTraits = { [key: string]: { traits: { [referenceId: string]: { key: string; friendlyName: string; order: number | undefined; fieldType: ProfilesAndHistoryConfigurationTraitFieldType; }; }; order: number | undefined; }; }; declare enum GroupTypeName { StatGroup = "StatGroup", RecentWidgetGroup = "RecentActivityGroup" } type GroupType = { order: number | undefined | null; group: RecentActivityGroup | StatGroup; type: GroupTypeName.RecentWidgetGroup | GroupTypeName.StatGroup; }; type TraitToGroup = { [key: string]: ProfilesAndHistoryConfigurationProfileTraitGroup; }; type TraitModel = { sid: string; from: string; to?: string; categories?: Array; friendlyName?: string; }; type TraitConfigReference = { friendlyNameOverride?: string; order: number; referenceSid: string; }; type ProfileTraitReferenceGroup = { groupName?: string; order?: number; traits: TraitConfigReference[]; }; type ProfileTraitGroup = { groupName?: string; order?: number; traits: TraitModel[]; }; export { CategorizedTraits, CustomerPredictionData, CustomerProfileLoadingState, GroupType, GroupTypeName, ProfileTraitGroup, ProfileTraitReferenceGroup, RecentActivityGroup, RecentEventGroup, ReferenceSidTrait, SecondaryProperty, Stat, StatGroup, TraitConfigReference, TraitToGroup, UserActivity };