export type UserIdentifierInfoType = 'USER_POINT' | 'USER_ACCOUNT' | 'USER_EMAIL' | 'USER_AGENT' | 'USER_DEVICE_POINT'; export type UUID = string; export type VectorId = string; export type TimeStamp = number; export type UserEmailIdentifierProviderResource = unknown; export type UserAgentInfo = unknown; export type UserIdentifierInfo = UserDevicePointIdentifierInfo | UserPointIdentifierInfo | UserEmailIdentifierInfo | UserAccountIdentifierInfo | UserAgentIdentifierInfo; export declare enum UserDeviceTechnicalIdentifierType { MUM_ID = "MUM_ID", MOBILE_ADVERTISING_ID = "MOBILE_ADVERTISING_ID", MOBILE_VENDOR_ID = "MOBILE_VENDOR_ID", INSTALLATION_ID = "INSTALLATION_ID", CUSTOM_DEVICE_ID = "CUSTOM_DEVICE_ID", NETWORK_DEVICE_ID = "NETWORK_DEVICE_ID", TV_ADVERTISING_ID = "TV_ADVERTISING_ID", IP_V4_ADDRESS_ID = "IP_V4_ADDRESS_ID", IP_V6_ADDRESS_ID = "IP_V6_ADDRESS_ID" } export interface UserDevicePointIdentifierTechnicalIdentifierResource { type: UserDeviceTechnicalIdentifierType; user_agent_id: string; registry_id: string; creation_ts: TimeStamp; last_activity_ts: TimeStamp; expiration_ts?: TimeStamp; } export interface UserDevicePointIdentifierInfo { type: 'USER_DEVICE_POINT'; id?: string; device?: UserAgentInfo; creation_ts: TimeStamp; last_activity_ts: TimeStamp; technical_identifiers: Array; } export interface UserPointIdentifierInfo { type: 'USER_POINT'; user_point_id: UUID; creation_ts: TimeStamp; } export interface UserEmailIdentifierInfo { type: 'USER_EMAIL'; hash: string; email?: string; operator?: string; creation_ts: TimeStamp; last_activity_ts: TimeStamp; providers: Array; } export interface UserAccountIdentifierInfo { type: 'USER_ACCOUNT'; user_account_id: string; creation_ts: TimeStamp; compartment_id?: number; } export interface UserAgentIdentifierInfo { type: 'USER_AGENT'; vector_id: VectorId; device?: UserAgentInfo; creation_ts: TimeStamp; last_activity_ts: TimeStamp; providers: Array; mappings: Array; } export interface UserAgentIdMappingResource { user_agent_id: string; realm_name: string; last_activity_ts: number; } export interface UserAgentIdentifierProviderResource { technical_name: string; creation_ts?: TimeStamp; last_activity_ts?: TimeStamp; expiration_ts?: TimeStamp; }