UNPKG

@usercentrics/cmp-browser-sdk

Version:
99 lines (98 loc) 4.03 kB
import { ACMVendor, TCFData, TCFUserDecisions } from '../interfaces/TCF'; import { AcmData, TcfData as TcfSettingsData } from './interfaces'; import { CoreTcf, DpsJsonResponse, LegacySettings, LegacyTCF2 } from '../../Api/interfaces'; import { DataTransferSettings } from '../../../modules/helpers'; import { EncodingOptions, TCModel } from '../../../../libs/@iabtcf/core'; import { ResurfaceOptions, TCFChangedPurposes } from '../interfaces'; import { TCF_DECISION_UI_LAYER } from '../enums/TCF'; import DefaultData from './DefaultData'; declare class Tcf extends DefaultData implements TcfSettingsData { acmData: AcmData; advertiserConsentModeEnabled?: boolean; gcmEnabled: boolean; changedPurposes: TCFChangedPurposes; cmpId: number; cmpVersion: number; consensuScriptPath: string; consensuSubdomain: string; disabledSpecialFeatures: number[]; gdprApplies: boolean; hideLegitimateInterestToggles: boolean; isAnalyticsEnabled: boolean; isApiV2Enabled: boolean; isConsentXDeviceEnabled: boolean; publisherCountryCode: string; purposeOneTreatment: boolean; resurfaceOptions: ResurfaceOptions; stackIds: number[]; tcfv2HistoryDisabled: boolean; useGranularChoice: boolean; vendorIds: number[]; vendorIdsOutsideEUList: number[]; dataRetentionLabel?: string; updateControllerId(value: string): void; private policyVersion; private dataTransferSettings; private locationInstance; private botInstance; private previousStorage; private selectedVendorsIncludeNonDisclosed; private cmpApi; private tcModel; private tcfData; private vendors; private selectedLanguage; private excludeAcceptAllVendors; private enableDeprecatedV1ConsentSaving?; applySpecialCasesForVendors(): void; acceptAllDisclosed(fromLayer: TCF_DECISION_UI_LAYER): Promise<void>; areAllPurposesAccepted(): boolean; areAllVendorsAccepted(): boolean; changeLanguage(language: string, newTcfSettings?: LegacyTCF2): Promise<void>; denyAllDisclosed(fromLayer: TCF_DECISION_UI_LAYER): Promise<void>; getSelectedVendorsIncludeNonDisclosed(): boolean; getTcModel(): TCModel | null; getTCFData(): TCFData; /** * If GDPR applies is false, then GDPR applies is set to true in TC String. * If GDPR applies is true and user is inside EU, set it to true in TC String. * If GDPR applies is true and user is outside EU, set it to false in TC String. * (refs EUD-487) * */ getGdprApplies(): Promise<boolean>; getACString(): string; getTCString(encodingOptions?: EncodingOptions): string; getTCFDisclosedVendorsSegmentString(): string; init(isEuMode: boolean): Promise<void>; setUIAsClosed(): Promise<void>; setUIAsOpen(): Promise<void>; shouldResurfaceUI(): boolean; updateChoices(decisions: TCFUserDecisions, fromLayer: TCF_DECISION_UI_LAYER): Promise<void>; resetTcf(): void; private applyPurposeRestrictions; private cmpApiUpdate; private getVendors; initTCModel({ tcString, acString }: { tcString: string; acString: string; }, isEuMode: boolean): Promise<void>; private setEnableAdvertiserConsentMode; private setAddtlConsent; private resetGVLWithLanguage; private resetTcfData; private setSelectedVendorsIncludeNonDisclosed; private savePurposes; private saveSpecialFeatures; private saveVendors; private setVendors; private getTcfData; injectTCString(tcString: string): Promise<boolean>; isPolicyVersion2(): boolean; private saveTCFData; private updateTCString; getVendorsCount(): number; getAcmVendors(): ACMVendor[]; getAcmVendorsCount(): number; constructor(legacySettings: LegacySettings, coreTcf: CoreTcf, dpsJson: DpsJsonResponse, dataTransferSettings: DataTransferSettings, controllerId: string, language: string, excludeAcceptAllVendors: number[], enableDeprecatedV1ConsentSaving?: boolean); } export default Tcf;