import { DateRangeFilter, HistoryChange } from '@reltio/mdm-sdk';
import { ActivityTypes } from '../activity-log/types';
import { AttributeOption } from '../../types';
export declare enum FakeTypes {
    FAKE_NAVIGATE_PROFILE = "FAKE_NAVIGATE_PROFILE",
    FAKE_FILTERED_INCOMING = "FAKE_FILTERED_INCOMING",
    FAKE_FILTERED_OUTGOING = "FAKE_FILTERED_OUTGOING",
    FAKE_UPDATE = "FAKE_UPDATE"
}
export declare const HistoryChangeTypes: {
    FAKE_NAVIGATE_PROFILE: FakeTypes.FAKE_NAVIGATE_PROFILE;
    FAKE_FILTERED_INCOMING: FakeTypes.FAKE_FILTERED_INCOMING;
    FAKE_FILTERED_OUTGOING: FakeTypes.FAKE_FILTERED_OUTGOING;
    FAKE_UPDATE: FakeTypes.FAKE_UPDATE;
    MODEL_UPDATED: ActivityTypes.MODEL_UPDATED;
    ENTITY_REMOVED: ActivityTypes.ENTITY_REMOVED;
    ENTITY_CREATED: ActivityTypes.ENTITY_CREATED;
    ENTITY_CHANGED: ActivityTypes.ENTITY_CHANGED;
    ENTITIES_MERGED: ActivityTypes.ENTITIES_MERGED;
    ENTITIES_SPLITTED: ActivityTypes.ENTITIES_SPLITTED;
    ENTITY_LOST_MERGE: ActivityTypes.ENTITY_LOST_MERGE;
    RELATIONSHIP_CREATED: ActivityTypes.RELATIONSHIP_CREATED;
    RELATIONSHIP_REMOVED: ActivityTypes.RELATIONSHIP_REMOVED;
    RELATIONSHIP_CHANGED: ActivityTypes.RELATIONSHIP_CHANGED;
    POTENTIAL_MATCHES_FOUND: ActivityTypes.POTENTIAL_MATCHES_FOUND;
    NOT_MATCHES_SET: ActivityTypes.NOT_MATCHES_SET;
    NOT_MATCHES_RESET: ActivityTypes.NOT_MATCHES_RESET;
    PERIODIC_TASK_SCHEDULED: ActivityTypes.PERIODIC_TASK_SCHEDULED;
    ENTITIES_MERGED_MANUALLY: ActivityTypes.ENTITIES_MERGED_MANUALLY;
    POTENTIAL_MATCHES_REMOVED: ActivityTypes.POTENTIAL_MATCHES_REMOVED;
    ENTITIES_MERGED_ON_THE_FLY: ActivityTypes.ENTITIES_MERGED_ON_THE_FLY;
    USER_LOGIN: ActivityTypes.USER_LOGIN;
    USER_LOGOUT: ActivityTypes.USER_LOGOUT;
    USER_SEARCH: ActivityTypes.USER_SEARCH;
    USER_PROFILE_VIEW: ActivityTypes.USER_PROFILE_VIEW;
    COMMENT_ADDED: ActivityTypes.COMMENT_ADDED;
    COMMENT_UPDATED: ActivityTypes.COMMENT_UPDATED;
    COMMENT_DELETED: ActivityTypes.COMMENT_DELETED;
    ANALYTICS_ATTRIBUTES_CHANGED: ActivityTypes.ANALYTICS_ATTRIBUTES_CHANGED;
    ATTRIBUTE_UNMASKED: ActivityTypes.ATTRIBUTE_UNMASKED;
    SFDC_CONNECTOR_SYNCHRONIZATION_ISSUE: ActivityTypes.SFDC_CONNECTOR_SYNCHRONIZATION_ISSUE;
    GROUP_CREATED: ActivityTypes.GROUP_CREATED;
    GROUP_REMOVED: ActivityTypes.GROUP_REMOVED;
    GROUP_CHANGED: ActivityTypes.GROUP_CHANGED;
    SEGMENT_CREATE: ActivityTypes.SEGMENT_CREATE;
    SEGMENT_DELETE: ActivityTypes.SEGMENT_DELETE;
    SEGMENT_UPDATE: ActivityTypes.SEGMENT_UPDATE;
    INTERACTION_CREATE: ActivityTypes.INTERACTION_CREATE;
    INTERACTION_UPDATE: ActivityTypes.INTERACTION_UPDATE;
};
export type HistoryChangeTypes = typeof HistoryChangeTypes;
export declare enum HistoryActivityType {
    UPDATE = "UPDATE",
    MERGE = "MERGE",
    UNMERGE = "UNMERGE"
}
export type HistoryRowData = HistoryChange & {
    index?: number;
    height?: number;
    fakeType?: string;
    label?: string;
};
export type HistoryFilter = {
    dateRange?: DateRangeFilter;
    users?: string[];
    activities?: HistoryActivityType[];
    attributes?: AttributeOption[];
};
export type HistoryLife = {
    start?: HistoryRowData;
    end?: HistoryRowData;
};
export type HistoryLane = {
    index: number;
    lifeTime: HistoryLife[];
};
export type HistoryData = {
    rows: HistoryRowData[];
    historyLanes: Record<string, HistoryLane>;
};
