@usercentrics/cmp-browser-sdk
Version:
Usercentrics CMP Browser SDK
65 lines (64 loc) • 1.6 kB
TypeScript
import { CONSENT_ACTION, CONSENT_TYPE } from '../enums';
import { Consent as ServiceConsent } from '../../SettingsV2/interfaces';
export interface Consent {
action: CONSENT_ACTION;
status: boolean;
type: CONSENT_TYPE;
}
export interface DataTransferObject {
applicationVersion: string;
consent: Consent;
service: {
id: string;
categorySlug: string;
name: string;
processorId: string;
version: string;
};
settings: {
controllerId: string;
id: string;
language: string;
referrerControllerId: string;
version: string;
};
timestamp: number;
}
export interface DataFacadeService {
categorySlug: string;
consent: ServiceConsent;
id: string;
name: string;
processorId: string;
version: string;
}
export interface ConsentV2 {
consentStatus: boolean;
consentTemplateId: string;
consentTemplateVersion: string;
}
export interface ConsentV2Metadata {
timestamp: number;
vendors: (number | number[])[][];
vendorsDisclosed?: number[];
}
export interface ConsentDTOV2 {
action: CONSENT_ACTION;
analytics: boolean;
controllerId: string;
appVersion: string;
language: string;
settingsId: string;
settingsVersion: string;
consentString?: string;
acString?: string;
consentMeta?: string;
consents: ConsentV2[];
timestamp?: number;
xdevice: boolean;
}
type IndexSignature<O extends object> = {
[P in keyof O]: O[P];
};
export type ConsentDTOV2Record = IndexSignature<ConsentDTOV2>;
export {};