type PurposesKeys = 'Cookies' | 'CookiesAnalytics' | 'CookiesSocial' | 'AdvertisingPersonalization' | 'CookiesMarketing' | 'Analytics' | 'ContentPersonalization' | 'AdDelivery' | 'DeviceAccess' | 'OfflineMatch' | 'LinkDevices' | 'PreciseGeo' | 'SelectBasicAds' | 'CreateAdsProfile' | 'SelectPersonalizedAds' | 'CreateContentProfile' | 'SelectPersonalizedContent' | 'MeasureAdPerformance' | 'MeasureContentPerformance' | 'MarketResearch' | 'ImproveProducts' | 'DeviceCharacteristics' | 'GeolocationData' | 'UseLimitedDataToSelectContent' | 'mesureda-6qyqaZXC' | 'publicite-9qedKJMX' | 'activation-gGierZpp' | 'attributio-nChbC4e9' | 'activation-bVrTKmmw'; type PurposesValues = 'cookies' | 'cookies_analytics' | 'cookies_social' | 'advertising_personalization' | 'cookies_marketing' | 'analytics' | 'content_personalization' | 'ad_delivery' | 'device_access' | 'offline_match' | 'link_devices' | 'precise_geo' | 'select_basic_ads' | 'create_ads_profile' | 'select_personalized_ads' | 'create_content_profile' | 'select_personalized_content' | 'measure_ad_performance' | 'measure_content_performance' | 'market_research' | 'improve_products' | 'device_characteristics' | 'geolocation_data' | 'use_limited_data_to_select_content' | 'mesureda-6qyqaZXC' | 'publicite-9qedKJMX' | 'activation-gGierZpp' | 'attributio-nChbC4e9' | 'activation-bVrTKmmw'; type PurposesList = Record; export interface PurposeDefinition { id: string; key?: PurposesValues; name?: string; description?: string; } export interface VendorDefinition { id: string; name?: string; description?: string; purposes?: PurposesValues[]; legitimate_interest_purposes?: PurposesValues[]; } export interface DidomiData { purposes: Partial>; vendors: Record; version?: string; } interface Notice { show: () => void; } export interface Transaction { enablePurpose: (purpose: PurposesValues) => void; disablePurpose: (purpose: PurposesValues) => void; enableVendor: (vendorId: string) => void; disableVendor: (vendorId: string) => void; commit: () => void; } export interface DidomiStatus { purposes: Record; vendors: Record; } export interface Didomi { CCPA: string[]; Purposes: PurposesList; data?: DidomiData; notice: Notice; preferences: { hide: () => void; isVisible: () => void; show: () => void; }; theme: string[]; version: string; getCurrentUserStatus: () => { purposes: Record; vendors: Record; }; reset: () => void; openCurrentUserStatusTransaction: () => Transaction; setUserAgreeToAll(): void; addVendorStatusListener: (vendor: string, callback: (status: { enabled: boolean; id: string; }) => void) => void; setCurrentUserStatus(status: DidomiStatus): Promise; shouldUserStatusBeCollected: () => boolean; } export type DidomiOnReady = ((Didomi: Didomi) => void)[]; interface EventListener { event: string; listener: () => void; } export type DidomiEventListeners = EventListener[]; export interface CmpType { consentEventsCount: number; disableReloading: boolean; } export interface TcData { eventStatus: string; listenerId: number; } export {};