import { NonNullablePaths } from '@wix/sdk-types'; interface CookieBannerSettings { /** * @deprecated * @replacedBy enabled * @targetRemovalDate 2024-04-08 */ appEnabled?: boolean; /** * @deprecated * @targetRemovalDate 2024-04-08 */ audience?: AudienceWithLiterals; /** Whether the site contributor has acknowledged the consent policy requirements. */ cookiePolicyRequirementApproved?: boolean; /** Configuration settings for the "decline all" button. */ declineAllConfig?: DeclineAllConfig; /** For internal use. */ expiryDate?: Date | null; /** * @deprecated * @replacedBy privacy_policy_link * @targetRemovalDate 2024-04-08 */ privacyPolicyPage?: string; /** * @deprecated * @replacedBy privacy_policy_link * @targetRemovalDate 2024-04-08 */ privacyPolicyType?: PrivacyPolicyTypeWithLiterals; /** Texts to be displayed on the cookie banner. See [Banner texts]() for details. */ texts?: Record; /** Visual theme. */ theme?: ThemeWithLiterals; /** Configuration settings for the "revisit settings" button. */ revisitSettingsConfig?: RevisitSettingsConfig; /** Custom theme configuration. */ customThemeConfig?: CustomThemeConfig; /** Whether the banner is activated. */ enabled?: boolean; /** Location of the site's privacy policy. */ privacyPolicyPageInfo?: PrivacyPolicyPageInfo; } declare enum PrivacyPolicyDetailsReferenceType { UNKNOWN_PRIVACY_POLICY_TYPE = "UNKNOWN_PRIVACY_POLICY_TYPE", SLUG = "SLUG", EXTERNAL_PAGE_URL = "EXTERNAL_PAGE_URL" } /** @enumType */ type PrivacyPolicyDetailsReferenceTypeWithLiterals = PrivacyPolicyDetailsReferenceType | 'UNKNOWN_PRIVACY_POLICY_TYPE' | 'SLUG' | 'EXTERNAL_PAGE_URL'; interface SlugDetails { /** * Slug of the site page containing the privacy policy. * @format URL_SLUG */ slug?: string; } interface ExternalPageUrlDetails { /** * URL of the external page containing the privacy policy. * @format WEB_URL */ externalPageUrl?: string; } declare enum ButtonPosition { unknown_button_position = "unknown_button_position", bottom_right = "bottom_right", bottom_left = "bottom_left", center_right = "center_right", center_left = "center_left" } /** @enumType */ type ButtonPositionWithLiterals = ButtonPosition | 'unknown_button_position' | 'bottom_right' | 'bottom_left' | 'center_right' | 'center_left'; interface SiteColor { /** Color name. */ name?: string | null; /** Color value in [hex](https://www.color-hex.com/color-palette/1018144) format. */ value?: string; } declare enum CornerRadius { unknown_corner_radius = "unknown_corner_radius", square = "square", rounded_corners = "rounded_corners", round = "round" } /** @enumType */ type CornerRadiusWithLiterals = CornerRadius | 'unknown_corner_radius' | 'square' | 'rounded_corners' | 'round'; declare enum Audience { unknown_audience = "unknown_audience", all_visitors = "all_visitors", eu_visitors = "eu_visitors" } /** @enumType */ type AudienceWithLiterals = Audience | 'unknown_audience' | 'all_visitors' | 'eu_visitors'; interface DeclineAllConfig { /** Whether to show the "decline all" button on the cookie banner. */ enabled?: boolean; /** @deprecated */ geo?: string[]; } declare enum PrivacyPolicyType { unknown_privacy_policy_type = "unknown_privacy_policy_type", page_on_site = "page_on_site", external_url = "external_url" } /** @enumType */ type PrivacyPolicyTypeWithLiterals = PrivacyPolicyType | 'unknown_privacy_policy_type' | 'page_on_site' | 'external_url'; declare enum Theme { unknown_theme = "unknown_theme", light = "light", dark = "dark", custom = "custom" } /** @enumType */ type ThemeWithLiterals = Theme | 'unknown_theme' | 'light' | 'dark' | 'custom'; interface RevisitSettingsConfig { /** Whether to show a minimized cookie banner on all pages at all times. */ enabled?: boolean; /** Position of the minimized cookie banner. */ buttonPosition?: ButtonPositionWithLiterals; } interface CustomThemeConfig { /** Primary color displayed on the cookie banner in [hex](https://www.color-hex.com/color-palette/1018144) format. */ primaryColor?: SiteColor; /** Secondary color displayed on the cookie banner in [hex](https://www.color-hex.com/color-palette/1018144) format. */ secondaryColor?: SiteColor; /** Font displayed on the cookie banner. */ fontFamily?: string; /** Font size displayed on the cookie banner. */ fontSize?: string; /** Corner style for buttons on the cookie banner. */ cornerRadius?: CornerRadiusWithLiterals; } interface PrivacyPolicyPageInfo extends PrivacyPolicyPageInfoDetailsOneOf { /** Internal page slug containing the privacy policy. */ slugDetails?: SlugDetails; /** External URL containing the privacy policy. */ externalPageUrlDetails?: ExternalPageUrlDetails; privacyPolicyDetailsReferenceType?: PrivacyPolicyDetailsReferenceTypeWithLiterals; } /** @oneof */ interface PrivacyPolicyPageInfoDetailsOneOf { /** Internal page slug containing the privacy policy. */ slugDetails?: SlugDetails; /** External URL containing the privacy policy. */ externalPageUrlDetails?: ExternalPageUrlDetails; } interface GetCookieBannerPreviewSettingsRequest { languageCode?: string; } interface GetCookieBannerPreviewSettingsResponse { settings?: CookieBannerSettings; } interface SetCookieBannerPreviewSettingsRequest { settings?: CookieBannerSettings; } interface SetCookieBannerPreviewSettingsResponse { settings?: CookieBannerSettings; } interface DeleteCookieBannerPreviewSettingsRequest { } interface DeleteCookieBannerPreviewSettingsResponse { } interface GetChannelPermissionsRequest { channel?: Channel; subscriber?: Subscriber; } interface Channel { name?: string; } interface Subscriber { _id?: string; type?: string; } interface GetChannelPermissionsResponse { read?: boolean; write?: boolean; } interface InstallCookieBannerRequest { settings?: CookieBannerSettings; consentPolicy?: ConsentPolicy; } interface ConsentPolicy { /** Whether the site uses cookies that are essential to site operation. Always `true`. */ essential?: boolean | null; /** Whether the site uses cookies that affect site performance and other functional measurements. */ functional?: boolean | null; /** Whether the site uses cookies that collect analytics about how the site is used (in order to improve it). */ analytics?: boolean | null; /** Whether the site uses cookies that collect information allowing better customization of the experience for a current visitor. */ advertising?: boolean | null; /** CCPA compliance flag. */ dataToThirdParty?: boolean | null; } interface InstallCookieBannerResponse { } interface GetCookieBannerSettingsRequest { /** Language code in [ISO 639-1](https://en.wikipedia.org/wiki/ISO_639-1) format, to return translated texts. All [languages supported by Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-languages-available) can be passed. */ languageCode?: string; } interface GetCookieBannerSettingsResponse { /** Cookie banner settings. */ settings?: CookieBannerSettings; /** Translated texts, if requested. */ translations?: Record; } interface SetCookieBannerSettingsRequest { settings?: CookieBannerSettings; } interface SetCookieBannerSettingsResponse { settings?: CookieBannerSettings; } interface UpdateCookieBannerSettingsRequest { /** Cookie banner settings to update. */ settings?: CookieBannerSettings; } interface UpdateCookieBannerSettingsResponse { /** Updated cookie banner settings. */ settings?: CookieBannerSettings; } interface InstallCookieBannerOptions { settings?: CookieBannerSettings; consentPolicy?: ConsentPolicy; } /** * Retrieves the cookie banner settings. * @public * @param options - Field options. * @permissionId COOKIE_CONSENT.GET_BANNER * @applicableIdentity APP * @fqn com.wixpress.cookie_banner_settings.v1.CookieBannerSettingsService.GetCookieBannerSettings */ declare function getCookieBannerSettings(options?: GetCookieBannerSettingsOptions): Promise>; interface GetCookieBannerSettingsOptions { /** Language code in [ISO 639-1](https://en.wikipedia.org/wiki/ISO_639-1) format, to return translated texts. All [languages supported by Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-languages-available) can be passed. */ languageCode?: string; } /** * Updates the cookie banner settings. * @public * @param options - Field options. * @permissionId COOKIE_CONSENT.UPDATE_BANNER * @applicableIdentity APP * @fqn com.wixpress.cookie_banner_settings.v1.CookieBannerSettingsService.UpdateCookieBannerSettings */ declare function updateCookieBannerSettings(options?: UpdateCookieBannerSettingsOptions): Promise>; interface UpdateCookieBannerSettingsOptions { /** Cookie banner settings to update. */ settings?: CookieBannerSettings; } export { Audience, type AudienceWithLiterals, ButtonPosition, type ButtonPositionWithLiterals, type Channel, type ConsentPolicy, type CookieBannerSettings, CornerRadius, type CornerRadiusWithLiterals, type CustomThemeConfig, type DeclineAllConfig, type DeleteCookieBannerPreviewSettingsRequest, type DeleteCookieBannerPreviewSettingsResponse, type ExternalPageUrlDetails, type GetChannelPermissionsRequest, type GetChannelPermissionsResponse, type GetCookieBannerPreviewSettingsRequest, type GetCookieBannerPreviewSettingsResponse, type GetCookieBannerSettingsOptions, type GetCookieBannerSettingsRequest, type GetCookieBannerSettingsResponse, type InstallCookieBannerOptions, type InstallCookieBannerRequest, type InstallCookieBannerResponse, PrivacyPolicyDetailsReferenceType, type PrivacyPolicyDetailsReferenceTypeWithLiterals, type PrivacyPolicyPageInfo, type PrivacyPolicyPageInfoDetailsOneOf, PrivacyPolicyType, type PrivacyPolicyTypeWithLiterals, type RevisitSettingsConfig, type SetCookieBannerPreviewSettingsRequest, type SetCookieBannerPreviewSettingsResponse, type SetCookieBannerSettingsRequest, type SetCookieBannerSettingsResponse, type SiteColor, type SlugDetails, type Subscriber, Theme, type ThemeWithLiterals, type UpdateCookieBannerSettingsOptions, type UpdateCookieBannerSettingsRequest, type UpdateCookieBannerSettingsResponse, getCookieBannerSettings, updateCookieBannerSettings };