Contentful Personalization & Analytics
    Preparing search index...

    Collection of shared stateful Core signals.

    interface Signals {
        blockedEvent: Signal<BlockedEvent | undefined>;
        canOptimize: ReadonlySignal<boolean>;
        changes: Signal<
            | {
                key: string;
                meta: { experienceId: string; variantIndex: number };
                type: "Variable";
                value: string | number | boolean | Record<string, JSONType> | null;
            }[]
            | undefined,
        >;
        consent: Signal<boolean | undefined>;
        event: Signal<OptimizationEventStreamEvent | undefined>;
        experienceRequestState: Signal<ExperienceRequestState>;
        locale: Signal<string | undefined>;
        online: Signal<boolean | undefined>;
        persistenceConsent: Signal<boolean | undefined>;
        previewPanelAttached: Signal<boolean>;
        previewPanelOpen: Signal<boolean>;
        profile: Signal<
            | {
                audiences: string[];
                id: string;
                location: {
                    city?: string;
                    continent?: string;
                    coordinates?: { latitude: number; longitude: number };
                    country?: string;
                    countryCode?: string;
                    postalCode?: string;
                    region?: string;
                    regionCode?: string;
                    timezone?: string;
                };
                random: number;
                session: {
                    activeSessionLength: number;
                    averageSessionLength: number;
                    count: number;
                    id: string;
                    isReturningVisitor: boolean;
                    landingPage: {
                        path: string;
                        query: Record<string, string>;
                        referrer: string;
                        search: string;
                        title?: string;
                        url: string;
                        [key: string]: JSONType;
                    };
                };
                stableId: string;
                traits: Record<string, JSONType>;
            }
            | undefined,
        >;
        selectedOptimizations: Signal<
            | {
                experienceId: string;
                sticky?: boolean;
                variantIndex: number;
                variants: Record<string, string>;
            }[]
            | undefined,
        >;
    }
    Index

    Properties

    blockedEvent: Signal<BlockedEvent | undefined>

    Most recent blocked-event metadata.

    canOptimize: ReadonlySignal<boolean>

    Whether optimization selection data is available.

    changes: Signal<
        | {
            key: string;
            meta: { experienceId: string; variantIndex: number };
            type: "Variable";
            value: string | number | boolean | Record<string, JSONType> | null;
        }[]
        | undefined,
    >

    Most recent optimization changes payload.

    consent: Signal<boolean | undefined>

    Current consent signal.

    Most recent emitted event signal.

    experienceRequestState: Signal<ExperienceRequestState>

    Outcome of the most recent Experience API request.

    locale: Signal<string | undefined>

    Resolved Contentful locale signal.

    online: Signal<boolean | undefined>

    Runtime connectivity signal.

    persistenceConsent: Signal<boolean | undefined>

    Durable profile-continuity persistence consent signal.

    previewPanelAttached: Signal<boolean>

    Preview panel attachment signal.

    previewPanelOpen: Signal<boolean>

    Preview panel open-state signal.

    profile: Signal<
        | {
            audiences: string[];
            id: string;
            location: {
                city?: string;
                continent?: string;
                coordinates?: { latitude: number; longitude: number };
                country?: string;
                countryCode?: string;
                postalCode?: string;
                region?: string;
                regionCode?: string;
                timezone?: string;
            };
            random: number;
            session: {
                activeSessionLength: number;
                averageSessionLength: number;
                count: number;
                id: string;
                isReturningVisitor: boolean;
                landingPage: {
                    path: string;
                    query: Record<string, string>;
                    referrer: string;
                    search: string;
                    title?: string;
                    url: string;
                    [key: string]: JSONType;
                };
            };
            stableId: string;
            traits: Record<string, JSONType>;
        }
        | undefined,
    >

    Active profile signal.

    selectedOptimizations: Signal<
        | {
            experienceId: string;
            sticky?: boolean;
            variantIndex: number;
            variants: Record<string, string>;
        }[]
        | undefined,
    >

    Selected optimization variants signal.